Re: anybody know how to health check a twisted xmlrpc server?

From: Willy Tarreau <w#1wt.eu>
Date: Thu, 24 Dec 2009 08:26:30 +0100


On Wed, Dec 23, 2009 at 10:40:17PM -0800, David Birdsong wrote:
> On Wed, Dec 23, 2009 at 10:07 PM, David Birdsong
> <david.birdsong#gmail.com> wrote:
> > On Wed, Dec 23, 2009 at 9:57 PM, Willy Tarreau <w#1wt.eu> wrote:
> >> On Wed, Dec 23, 2009 at 09:48:15PM -0800, David Birdsong wrote:
> >>> i see that POST is a valid httpchk parameter, but without ripping
> >>> twisted apart, i'm not sure how it could allow an empty POST through
> >>> to code that could return a 200 or 204.
> >>>
> >>> has anybody already gone through this?
> >>
> >> Never tested, but right now you can still post contents and headers,
> >> though it's a ugly hack. It consists in appending the headers and
> >> data after the HTTP version :
> >>
> >>        option httpchk POST /something HTTP/1.0\r\nContent-length:\ 7\r\n\r\nfoo=bar
> >>
> > i was wondering if contents were allowed after the headers.  i'll give
> > it a shot.
> >
>
> ugly, and so far not working:
> option httpchk POST /db_api/lucene_check.php HTTP/1.0\r\n\r\n<?xml
> version="1.0" encoding="iso-8859-1"?> <methodCall>
> <methodName>query</methodName> <params> <param> <value>
> <string>kafjkdfajdfkjfkajdf</string> </value> </param> </params>
> </methodCall>
>
> if that line wrapped, i have it all on one line in the config.

But you forgot to escape all spaces. The option takes only 3 args max, so the rest is dropped. You should also escape the quotes. I'm just realizing that it should be easier to quote the whole block than escaping all spaces BTW.

Regards,
Willy Received on 2009/12/24 08:26

This archive was generated by hypermail 2.2.0 : 2009/12/24 08:30 CET