logging到syslog-ng程序名的squid有括号

使用Ubuntu 10.04.4 LTS和Squid3我想login到syslog-ng

编辑/etc/squid3/squid.conf并添加以下行:

access_log syslog squid 

正在编写日志,但程序名称“squid”正被添加到括号中,而对于其他日志,程序名称不是

 Jul 25 17:26:23 ubuntuserver kernel: Jul 25 17:26:24 ubuntuserver named[1231]: Jul 25 16:17:56 ubuntuserver (squid): 

我假设这是squid3告诉系统日志ng“我的程序名是(鱿鱼)”,我无法find任何地方configuration不同,因为我想删除括号。

在syslog-ng的configuration文件中,我已经有了输出日志的function,而$ PROGRAMmacros也包含了括号,表示它来自鱿鱼,因为这个页面表示如下: http : //www.balabit.com/网站/默认/文件/文件/ syslog-ng的pipe理员,guide_en.html / reference_macros.html

程序:发送消息的程序的名称。 请注意,$ PROGRAMvariables的内容可能不是完全可信的,因为它是由构build消息的客户机程序提供的。

我怎样才能删除括号?

您可以使用重写规则来修正程序名称无论如何你想要的:

 rewrite r_brackets { subst ("\((.+)\)", "$1", value (PROGRAM)); }; ... log { source (...); ....; rewrite (r_brackets); destination (...); ...; }; 

请尝试在这里后面的论坛发布 – 它概述了如何使用syslog-ng与LogZillaconfigurationSquid。 在文章中,使用的configuration正确地发送程序名称。