远程日志记录 - 通过 Rsyslog 或任何其他替代方案的 Nginx

远程日志记录 - 通过 Rsyslog 或任何其他替代方案的 Nginx

我需要设置 Auto Scaling 实例的集中式远程访问日志记录。目前,我的 Rsyslog / Apache2 日志记录工作正常,但对于新项目,使用的是 Nginx,我认为不可能直接通过 TCP/UDP 进行日志记录。可以配置 Rsyslog 以通过读取本地文件远程发送数据,但我的目标是完全避免本地写入。

有人可以分享如何配置 Nginx 通过网络而不是本地 FS 发送消息的知识吗?或者我可能需要将日志轮换配置为 scp 文件?

答案1

创建一个 FIFO(管道),告诉 nginx 记录到该管道,然后让您的 syslog 守护进程读取 FIFO 并将这些消息发送到远程位置。rsyslog 和 syslog-ng 都可以做到这一点。

答案2

您可以尝试nginx_udplog_模块。看起来它已经有一段时间没有更新了,但它可能仍然有效。

相关内容