haproxy 1.8版本没有日志输出,参考1.7版本配置

一、问题、haproxy启动后,

  • 重新安装haproxy1.8版本,配置好haproxy.cfg,可以测试到转发效果,但是/var/log下没有haproxy.log日志,看不到请求链接数据以及重启haproxy.cfg信息

二、参考网上,修改/etc/haproxy/haproxy.cfg,但是日志并没有生成

global
	# log /dev/log	local0
	# log /dev/log	local1 notice
	log 127.0.0.1	local1 notice

三、对比haproxy1.7和haproxy1.8,/etc/rsyslog.d/49-haproxy.conf配置,发现有不同,将1.8的49-haproxy.conf,改成使用1.7,重启

、修改49-haproxy.conf测试,修改/etc/rsyslog.d/49-haproxy.conf

 Create an additional socket in haproxy's chroot in order to allow logging via
# /dev/log to chroot'ed HAProxy processes
$AddUnixListenSocket /var/lib/haproxy/dev/log

# Send HAProxy messages to a dedicated logfile
# :programname, startswith, "haproxy" {
#   /var/log/haproxy.log
#   stop
# }

if ($programname == 'haproxy') then -/var/log/haproxy/haproxy.log
& ~
  • 重启rsyslog和haproxy,可以看到日志
sudo service rsyslog restart
haproxy -c -f  /etc/haproxy/haproxy.cfg
sudo service rsyslog restart

在这里插入图片描述

  • 重新修改回haprxoy1.8的配置,重启rsyslog和haproxy,也可以看到日志
 Create an additional socket in haproxy's chroot in order to allow logging via
# /dev/log to chroot'ed HAProxy processes
$AddUnixListenSocket /var/lib/haproxy/dev/log

# Send HAProxy messages to a dedicated logfile
:programname, startswith, "haproxy" {
  /var/log/haproxy.log
  stop
}

四、haproxy常见问题

  • sudo service haproxy reload 出现HAProxy: [ALERT] sendmsg logger #2 failed: Resource temporarily unavailable
# 将10改成100,max_dgram_qlen:域通信 Socket 在数据报( UDP )方式下,队列里最大数据报个数
vim /proc/sys/net/unix/max_dgram_qlen
sudo service rsyslog restart

# 保持修改,创建sysctl配置,To make changes persistent, create sysctl settings
sudo su
echo "net.unix.max_dgram_qlen = 100" > /etc/sysctl.d/dgram_qlen.conf

总结

  • 猜测,安装haproxy1.8时候,生成/etc/rsyslog.d/49-haproxy.conf配置,但是没有重启rsyslog,导致没有日志输出

参考

猜你喜欢

转载自blog.csdn.net/tianjiewang/article/details/83048899