I would like to do a soap/xml check against a web server and it appears the parameters are “cleaned” through php Purify and it’s stripping the xml out of the request. If I run the command from the CLI it works fine. If I use the straight XML and turn on the verbose logging, I can see it strip all of the XML and just leave the actual data piece. If I try to encode the XML the web server sees it as a text string and doesn’t know what to do with the data (aka no “<soap…” just “<…”. If I comment out the purify line in /includes/services.inc.php it works fine, but when the next code release comes along it will re-enable purify and break all of my soap/xml monitoring.
Here’s my CLI command that works:
/usr/lib64/nagios/plugins/check_http -H host -I host -S -w 3 -c 5 -u /InfoService -T ‘text/xml’ -P ‘<soapenv:Envelope xmlns:soapenv=“http://schemas.xmlsoap.org/soap/envelope/” xmlns:ser=“http://service.app.pg.com/”>soapenv:Header/soapenv:Bodyser:invokeGetDatacc:123456</ser:invokeGetData></soapenv:Body></soapenv:Envelope>’ -R ‘cc:123456’ -v