Forum Discussion

jprice_46912's avatar
jprice_46912
Icon for Nimbostratus rankNimbostratus
Oct 30, 2014

XML content based routing help

I'm trying to get some XML content based routing working, but having some difficulty. Hoping someone might help me out here.

Here's my xml profile:

profile xml  {
    defaults from xml
    xpath queries "//FirmID"

}

 

I have an irule that has an HTTP_REQUEST block (for other URI-based routing), and then this:

 

when XML_CONTENT_BASED_ROUTING {
    log local0. "XML: $XML_values(0)"
    switch $XML_values(0) {
        "199968" {
            log local0. "send to 10.222.248.20"
            node 10.222.248.20 443
        }
        "199905" {
            log local0. "send to 10.206.23.172"
            node 10.206.23.172 443
        }
        default {
            log local0. "default send to 10.222.248.21"
            node 10.222.248.21 443
        }
    }
}

 

Sample XML:

 

199968redactedredacted872A4C348D18178525641CCD9B570954

 

None of my log statement in the XML_CONTENT_BASED_ROUTING ever trigger. The XML statistics show documents being inspected, but zero matches. What am I missing?

Profile and irule in the comments in better formatting - can't get it to work in this post. No idea how to allow the XML code to be posted.

  •  

    profile xml name {
       defaults from xml
       xpath queries "//FirmID"
    }
    
    when XML_CONTENT_BASED_ROUTING {
        log local0. "XML: $XML_values(0)"
        switch $XML_values(0) {
            "199968" {
                log local0. "send to x.x.x.x"
                node x.x.x.x 443
            }
            "199905" {
                log local0. "send to y.y.y.y"
                node y.y.y.y 443
            }
            default {
                log local0. "default send to z.z.z.z"
                node z.z.z.z 443
            }
        }
    }