1. 日志配置参数
配置HAproxy记录日志到指定日志文件中。
主要相关参数如下 :
log global: 实例中使用该选项时,会使用global中的配置相同。section:defaults、frontend、listen、backend。log <address> [len <length>] [format <format>] [sample <ranges>:<sample_size>] <facility> [<level> [<minlevel>]]: 设置日志格式。section:defaults、frontend、listen、backend。address: 支持IPV4、IPv6、socket,不一定是本地IPlen: 日志的最大长度 , 如果实际日志消息大于这个值 , 将被截取后发送。默认是1024, 该值的区别80–65535, 不在这个区间将无法启动。format:日志格式规范 , 可选项rfc3164、rfc5424, 默认是rfc3164。facility: 日志的级别为local0~local7。level: 传输的最大日志等级minlevel: 设置最低日志等级
no log: 不记录log。section:defaults、frontend、listen、backend。log-send-hostname: 在syslog日志开头字段中设置主机名。section:global
2. 日志配置流程
HAProxy日志配置,分为两个部分: 一个是HAProxy中的配置,二是通过配置日志服务, 类似于rsyslog服务。
HAProxy配置如下#在HAproxy中配置远程的udp的rsyslog root@ubuntu:~#cat /etc/haproxy/haproxy.cfg global log 192.168.194.136:514 local3 info listen web_port log global #haproxy2.4 版本以后支持tcp的rsyslog协议 #在Haproxy中配置远程的tcp的rsyslog root@ubuntu:~#cat /etc/haproxy/haproxy.cfg global log tcp@192.168.194.136:514 local3 info listen web_port log globalrsyslog配置[root@centos7 ~]# cat /etc/rsyslog.conf $ModLoad imudp $UDPServerRun 514 local3.* /var/log/haproxy.log 或者配置tcp协议 [root@centos7 ~]# cat /etc/rsyslog.conf $ModLoad imtcp $InputTCPServerRun 514 local3.* /var/log/haproxy.log日志验证
在rsyslog的日志服务器中查看日志文件
/var/log/haproxy.log[root@centos7 ~]# tailf /var/log/haproxy.log Jun 4 11:26:07 192.168.194.134 haproxy[1596]: 192.168.194.1:6453 [04/Jun/2022:11:26:07.678] web_port web_port/web1 0/0/0/63/63 200 296 - - ---- 2/2/0/0/0 0/0 "GET / HTTP/1.1" Jun 4 11:26:35 192.168.194.134 haproxy[1596]: 192.168.194.1:6453 [04/Jun/2022:11:26:35.865] web_port web_port/web1 0/0/0/1/1 304 158 - - ---- 2/2/0/0/0 0/0 "GET / HTTP/1.1"