我有一个在 20 台 Web 服务器上运行的 PHP 应用程序。检查每台服务器的 PHP 错误日志是愚蠢的。我计划将错误日志集中在一台服务器上(不是 Web 服务器,而是仅用于监控的服务器)。
PHP 确实支持通过简单的更改“error_log = syslog”来记录到 syslog。然后我将配置 syslogd 以记录到我的中央服务器。
有人试过吗?有什么建议吗?我应该注意什么?这会影响性能吗?
答案1
是的,我这样做过。它运行良好,没有任何真正的问题。除非你记录了太多错误,否则性能不是问题真的想要修复其中的一些,或者您正在登录到一个真正远程的网络位置(出于各种原因,这都是一个坏主意)。
答案2
如果您的 PHP 经常抛出错误,它只会对速度产生真正的影响,并且修复这些问题将比处理它们所花费的 CPU 节省更多的时间。
答案3
你最好不要发明自行车:只需使用一个由 cron 运行的简单脚本并使用命令logger
将所有内容从 PHP error_log 复制到 syslog,甚至复制到远程主机:)