如何在rsyslog中启用haproxy的日志记录

时间:2019-08-20 17:58:14  来源:igfitidea点击:

在centos6.4中安装HAproxy 1.4之后,默认情况下HAproxy的日志记录不是启用。

要启用HAProxy的日志记录必须在rsyslog中启用

要在HAproxy中设置日志记录,请按照以下步骤操作

在haproxy.cfg中的全局段落中,输入值“log 127.0.0.1 local0”。如下所示

global
        log 127.0.0.1   local0

在/etc/rsyslog.d中创建新的haproxy配置文件。

这里我们将日志保存在本地主机中

  1. local0.=info -/var/log/haproxy.log将http日志保存在haproxy.log文件
  2. local0.notice -/var/log/haproxy-status.log将服务器状态,如启动、停止、重新启动、关闭、启动等,保存在haproxy-status.log
  3. UDPServerRun 514打开UDP端口514监听haproxy消息
vi /etc/rsyslog.d/haproxy.conf

$ModLoad imudp
$UDPServerRun 514 
$template Haproxy,"%msg%n"
local0.=info -/var/log/haproxy.log;Haproxy
local0.notice -/var/log/haproxy-status.log;Haproxy
### keep logs in localhost ##
local0.* ~

重启HAproxy服务

/etc/init.d/haproxy restart

重新启动haproxy服务后,将自行创建两个日志,即haproxy.log文件和haproxy-status.log

查看haproxy的滚动日志

如果在/etc/logrotate.d中没有haproxy文件,我们看创建一个。

这里,我们将滚动保存日志设置为120天。

cat /etc/logrotate.d/haproxy

/var/log/haproxy.log {
    missingok
    notifempty
    sharedscripts
    rotate 120
    daily
    compress
    postrotate
        reload rsyslog >/dev/null 2>&1 || true
    endscript
}