我需要设置 Auto Scaling 实例的集中式远程访问日志记录。目前我的 Rsyslog / Apache2 日志记录工作得很好,但是对于新项目使用了 Nginx,我看不到直接通过 TCP/UDP 记录的任何可能性。Rsyslog 可以配置为远程发送读取本地文件的数据,但我的目标是完全避免本地写入。
有人可以分享有关如何配置 Nginx 以通过网络而不是本地 FS 发送消息的知识吗?或者我可能需要将日志轮换配置为 scp 文件?
我需要设置 Auto Scaling 实例的集中式远程访问日志记录。目前我的 Rsyslog / Apache2 日志记录工作得很好,但是对于新项目使用了 Nginx,我看不到直接通过 TCP/UDP 记录的任何可能性。Rsyslog 可以配置为远程发送读取本地文件的数据,但我的目标是完全避免本地写入。
有人可以分享有关如何配置 Nginx 以通过网络而不是本地 FS 发送消息的知识吗?或者我可能需要将日志轮换配置为 scp 文件?
创建一个 FIFO(管道),告诉 nginx 记录到它,让你的系统日志守护进程读取 FIFO 并将这些消息发送到远程位置。rsyslog 和 syslog-ng 都可以做到这一点。
您可以尝试nginx_udplog_module。好像有一段时间没有更新了,但它可能仍然有效。