syslog-ng 是 syslog 的一个改进版,提供日志服务。
与 syslog 相比,首先是更清晰的配置文件,配置文件主要分为 选项(options), 源(source),目录(destination), 过滤器(filter),日志(log)五个部分。
支持更多的输入和输出方式,输入加入了文件(即可以从任意程序的日志文件读取数据), 以及 TCP 的支持(syslog只支持UDP),方便远距离传输,当然也支持 IPV6 了。
输出除了上面的输入方式外,还增加了输出到程序的支持(更加灵活了,如果他内置的过滤器功能不够,可以用外部程序接受一个日志流的输出再导向另一个日志流的输入)以及输出到用户终端。
过滤功能也有大幅度改进,可以对任意部分进行匹配。
英文文档可以参见: http://www.cs.utah.edu/~clake/docs/syslog-ng-2.0/
syslog-ng 以 GPLv2+ 发布,debian 下有 syslog-ng 包。