将 Mac OS 10.6 生成的所有日志发送到系统日志服务器?

将 Mac OS 10.6 生成的所有日志发送到系统日志服务器?

我理解应该通过添加星号 . 星号 @ip:port 来工作。这在某种程度上适用于我的 graylog2 设置。并非每个在控制台中生成并可查看的日志都会显示在 graylog2 中。有什么想法吗?

只显示了一些基本消息,我想要所有信息。Apache、secure.log 等。即使在我的配置中具体说明这一点也无济于事。

我已成功将 10.8 和 10.9 机器上的所有可用日志发送到 graylog2,效果很好。我知道这是与 10.6 实现的方法不同的方法。

答案1

syslog 守护程序只能发送通过 syslog 或 Apple System Log (asl) API 提交的日志条目。但许多程序只是直接写入恰好具有“.log”扩展名的文本文件 - 由于 syslog 守护程序从未看到这些“日志消息”,因此它永远没有机会将它们发送到日志服务器。

一些程序可以配置为通过 syslog 进行记录(而不是直接写入文件)。Apache 就是一个很好的例子:通常它直接写入文件,但它有一个系统日志模块可以配置为使用 syslog

其他程序... 您必须逐案调查。不幸的是,在许多情况下,答案是该程序不是为使用 syslog 而编写的,因此您无法通过 syslog 集中其日志(至少,在不重写相关程序的情况下)。

答案2

使用日志收集器Fluentd(Mac 软件包由 Fluentd 的赞助父级维护宝藏数据

您可以使用 brew and cask 轻松安装 Treasure Agent:

brew cask 安装 td-agent

然后按照文档用于配置代理来发送您感兴趣的转发日志。

相关内容