我如何获得Haproxy不logging本地请求?

我试图从我的机器上清除一些日志混乱,并开始删除从服务器本身生成的请求。 我有caching预热器昼夜不停地运行,我不希望这些污染日志。

我能够通过为本地IP添加一个dontlog来让apache停止logging本地请求:

 SetEnvIf Remote_Addr "RE\.DA\.CT\.ED" dontlog CustomLog "|logger -p local3.info -t http" combined env=!dontlog 

现在我正在寻找类似于Haproxy日志的configuration。 如何防止写入Haproxy日志的127.0.0.1请求?

更新:2/15/11

我使用优秀的loggly服务来提取云中的日志,但是我看到很多这样的日志:

 2011 Feb 15 06:09:42.000 [REDACTED] http: RE.DA.CT.ED - - [15/Feb/2011:06:09:42 -0500] "HEAD /search/Nevad/predictive/txt HTTP/1.0" 200 - "-" "Wget/1.10.2 (Red Hat modified)" 2011 Feb 15 06:09:42.000 127.0.0.1 haproxy[10390]: 127.0.0.1:58408 [15/Feb/2011:06:09:42] www i-5dd7a331.0 0/0/0/8/8 200 210 - - --NI 0/0/0 0/0 "HEAD /search/Nevad/predictive/txt HTTP/1.1" 

我想让他们走了 这个问题的重点是如何从写入到服务器端日志首先删除haproxy日志行。

现在根据ACL禁用日志是不可能的(尽pipe它在路线图中)。 同时,您应该了解日志是由前端定义的。 因此,你可以有两个前端,一个是公共的,一个是使用相同后端的私有的。 私人前端不会在公共场合login。

一般来说,不build议禁用日志logging,这使得检测错误的时间更长。 您也可以使用“选项dontlog-normal”来仅logging意外事件(超时,错误等)。 这明智地减less了日志的数量,你仍然保持你应该关心的事件的痕迹。

HAProxy文档讨论了在8.3.1节中的一些过滤。 它说禁用外部testing的日志logging可以用“monitor-net”声明来完成。 不知道这是否会影响stream量 – 文档似乎表明它确实如此,所以要小心。

您可能还想为您的内部地址创build一个ACL列表,然后closures这些匹配的日志logging。 虽然我不是HAProxy guru,所以我会把这样的build议configuration给别人!