每次建立连接时都会Haproxy
记录吗?我已按照其他线程的说明通过设置日志记录rsyslogd
。即使创建了文件(haproxy.log、haproxy-info.log 和 haproxy-allbutinfo.log),也没有将日志写入任何文件。
我已经检查了 lfg.log,这些可能有助于解释这个问题:
Sep 12 22:50:44 : *Suspicious Process* PID:17551 PPID:17551 User:haproxy Uptime:62 secs EXE:/usr/sbin/haproxy CMD:/usr/sbin/haproxy -D -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid
Sep 12 22:50:44 : *Suspicious Process* PID:17552 PPID:17552 User:haproxy Uptime:62 secs EXE:/usr/sbin/haproxy CMD:/usr/sbin/haproxy -D -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid
在 csf 配置中设置RESTRICT_SYSLOG
为 3。我还将haproxy
rsyslogd 添加为允许用户,/etc/csf/csf.syslogusers
但仍然没有写入日志。有人能告诉我以下设置有什么问题吗?
csf 配置
RESTRICT_SYSLOG = "3"
# Allow incoming UDP ports
UDP_IN = "20,21,53,514"
# Allow outgoing UDP ports
# To allow outgoing traceroute add 33434:33523 to this list
UDP_OUT = "20,21,53,514"
/etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
maxconn 2048
user haproxy
group haproxy
/etc/rsyslog.d/haproxy.conf
$ModLoad imudp
$UDPServerAddress 127.0.0.1
$UDPServerRun 514
local2.* /var/log/haproxy.log
local2.=info /var/log/haproxy-info.log
local2.notice /var/log/haproxy-allbutinfo.log
“haproxy”用户已添加到 /etc/csf/csf.syslogusers
# Other users:
haproxy
更新:我刚刚禁用了 csf 并重试。haproxy 仍然没有将任何内容写入文件。
答案1
我已成功将日志写入文件。除了将日志设置添加到全局部分之外,我还应该在默认部分添加引用。引用自此教程这是我发现的唯一一篇提到这一重要设置的文章:
在您的后端或默认配置中,参考全局:
defaults
log global
我的设置位于 /etc/rsyslog/haproxy.conf
$ModLoad imudp
$UDPServerRun 514
$UDPServerAddress 127.0.0.1
local1.* -/var/log/haproxy_1.log
& ~
事实证明这与 无关csf
。我关闭了 UDP,日志记录仍然有效
答案2
请haproxy.cfg
修改日志级别。
log 127.0.0.1 local3 info
您可以配置日志级别(emerg alert crit err warning)。您可以使用一个,或者如果您需要使用多个,您可以简单地定义并给出空格。
log 127.0.0.1 local3 info warning
对于 rsyslog:
$ModLoad imudp
$UDPServerRun 514
$UDPServerAddress 127.0.0.1
将此规则包含在调试规则之前。否则您将在系统日志中看到 Haproxy 日志。
if $programname startswith 'haproxy' then
/var/log/haproxy.log & ~