Forum Discussion
tmobmai_112666
Nimbostratus
Feb 26, 2008Configuring monitor for WSDL
On 9.x LTM we are trying to create monitor that uses "GET /app/xyz/AdminService.wsdl" string. Neither http, nor SOAP template based monitors work. Meanwhile, the following command
curl http://10.xx.xx.xx:24092/app/xyz/AdminService.wsdl
executed on the same LTM generates correct output.
Is there anything special in .wsdl files that LTM doesn't like ?
Thanks.
6 Replies
- hoolio
Cirrostratus
If you have a request which generates the response you want, you should be able to configure that as the monitor send string in a custom HTTP monitor. You can use the -v flag to see the headers you're sending with curl. Then replace new lines with \r\n. Here is an example:
GET /app/xyz/AdminService.wsdl HTTP/1.1
User-Agent: curl/7.16.3 (i686-pc-cygwin) libcurl/7.16.3 OpenSSL/0.9.8g zlib/1.2.3 libssh2/0.15-CVS
Host: 10.xx.xx.xx:24092
Accept: */*
You can probably leave out the user agent header and add a connection header which tells the server to close the connection:
GET /app/xyz/AdminService.wsdl HTTP/1.1\r\nHost: 10.xx.xx.xx:24092\r\nAccept: */*\r\nConnection: close\r\n
Aaron - tmobmai_112666
Nimbostratus
Thanks a lot Aaron. Your solution worked!
But I got one more question: How would you modify
GET /app/xyz/AdminService.wsdl HTTP/1.1\r\nHost: 10.xx.xx.xx:24092\r\nAccept: */*\r\nConnection: close\r\n
to support different IPs of pool members?
I tried shortening the line :
GET /app/xyz/AdminService.wsdl HTTP/1.1\r\nHost: 10.xx\r\nConnection: close\r\n
and it works, but I don't like the fact that port number is now gone.
Thanks - hoolio
Cirrostratus
You can try taking out the host header value and see if the application still parses the request correctly. If the app accepted a request with a host header value of 10.xx, chances are it's not using the host header for anything anyhow.
GET /app/xyz/AdminService.wsdl HTTP/1.1\r\nHost: \r\nAccept: */*\r\nConnection: close\r\n
Aaron - tmobmai_112666
Nimbostratus
Thanks Aaron. I used the following string and it worked just fine:
GET /app/hlr/AdminService.wsdl HTTP/1.1\r\nHost:\r\nAccept:\r\nConnection: close\r\n - mcaballe_135435
Nimbostratus
What was used as the recieve string for this monitor? I tried using text from the WSDL itself or even the 200 OK, but the monitor would fail if any receive string was specified. Any help is appreciated.
- jquinones82_469
Nimbostratus
Same issue I'm having. SOmeone mentioned to use an external monitor.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
DevCentral Quicklinks
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com
Discover DevCentral Connects