1.說明
HAproxy在默認情況不會記錄日志,
不僅要在haproxy.conf中配置日志輸出,
還需要修改系統日志的配置文件。
2.修改haproxy.conf
在haproxy.conf文件中增加如下日志配置,
defaults下面增加日志相關的配置:
defaults
log global
option httplog
log 127.0.0.1 local7
日志的級別為local0~local7,
另外16~23保留為本地使用:
級別 | 代碼 | 描述 |
---|---|---|
emerg | 0 | 系統不可用 |
alert | 1 | 必須馬上采取行動的事件 |
crit | 2 | 關鍵的事件 |
err | 3 | 錯誤事件 |
warning | 4 | 警告事件 |
notice | 5 | 普通但重要的事件 |
info | 6 | 有用的信息 |
debug | 7 | 調試信息 |
3.修改系統日志配置
vim /etc/rsyslog.conf
指定日志文件haproxy.log保存的位置,
haproxy.log會自動生成:
$ModLoad imudp
$UDPServerRun 514
local7.* /root/haproxy/log/haproxy.log
由於haproxy的日志是用udp傳輸的,所以要啟用rsyslog的udp監聽。
4.配置rsyslog的主配置文件,開啟遠程日志
vim /etc/sysconfig/rsyslog
SYSLOGD_OPTIONS="-r -m 0 -c 2"
參數說明:
#-r 開啟遠程日志
#-m 0 標記時間戳。單位是分鍾,為0時,表示禁用該功能
#-c 2 使用兼容模式,默認是 -c 5
5.重啟rsyslog服務
systemctl restart rsyslog
6.重啟haproxy服務
/etc/init.d/haproxy restart
或者:
ps -ef | grep haproxy
kill -9 PID
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg
7.查看日志
重啟后查看haproxy.log日志:
2020-08-25T17:44:26+08:00 localhost haproxy[21028]: Proxy baidu started.
對應haproxy.conf如下配置生效了:
listen baidu
bind 0.0.0.0:18025
mode http
server baiduServer 180.101.49.131:80