I removed all the ap_assert() calls. The "master" process that is forked at the beginning will simply bow-out gracefully if it loses self-confidence, which will result in the pipe being closed. When a child processes detects this (or any other IPC or mutex problem) it will log an error and go into a "logging disabled" state where it will ignore all subsequent transactions and generally do as little as possible.
http://code.google.com/p/mod-sflow/source/browse/trunk/mod_sflow.c?r=22 Does anyone have any comments about the choice of performance counters for HTTP? typedef struct _SFLHTTP_counters { uint32_t method_option_count; uint32_t method_get_count; uint32_t method_head_count; uint32_t method_post_count; uint32_t method_put_count; uint32_t method_delete_count; uint32_t method_trace_count; uint32_t method_connect_count; uint32_t method_other_count; uint32_t status_1XX_count; uint32_t status_2XX_count; uint32_t status_3XX_count; uint32_t status_4XX_count; uint32_t status_5XX_count; uint32_t status_other_count; } SFLHTTP_counters; For example, Ganglia already supports sFlow for monitoring cluster performance and could easily be extended to monitor web-farms using these counters. http://blog.sflow.com/2010/10/ganglia.html Neil On Jan 10, 2011, at 3:52 PM, Nick Kew wrote: > On Fri, 7 Jan 2011 15:06:19 -0800 > Neil McKee <neil.mc...@inmon.com> wrote: > >> Hello all, >> >> A new module that exports log data using the sFlow protocol is available for >> review: >> >> http://mod-sflow.googlecode.com > > I started to look at it, then got distracted. > > Five-minute review: > (1) It looks well-formed as a module. If the question was > meant to be "have I got the basics", then the answer is yes. > (2) I don't like modules that die on error. Use of ap_assert > makes me uneasy. > > -- > Nick Kew > > Available for work, contract or permanent. > http://www.webthing.com/~nick/cv.html