在ErrorLog中执行命令并并行记录到文件中

在ErrorLog中执行命令并并行记录到文件中

我尝试使用apache2gelf 到将我的 error.log 信息发送到 graylog2 服务器。

要使用该工具,我必须将 ErrorLog 设置更改为:

ErrorLog "|| /path/to/errorlog2gelf.py --vhost example.com"

errorlog2gelf.py 本身除了将输入发送到 graylog2 服务器之外,还会再次输出错误消息,因此可以将其另外存储到本地文件中。

不幸的是我不知道如何实现这一点。我已经尝试使用以下设置将其导入文件:

ErrorLog "|| /path/to/errorlog2gelf.py --vhost example.com >/var/log/httpd/error_log"

但这只会引发 errorlog2gelf 的错误,因为该程序试图将其解释为一个参数,这显然是一个无效的选项。

那么我如何使用 errorlog2gelf 并并行写入本地 error.log 文件?

答案1

我只看到 2 个解决方案:

  1. 使该脚本直接写入文件。

  2. 记录到 syslog 并将日志从 syslog 传输到 errorlog2gelf(并只向其发送原始消息)。Syslog 更加灵活,还允许您写入文件。

相关内容