HAProxy는 단순히 파일에 대한 로깅을 지원하지 않습니다.
문서 - https://cbonte.github.io/haproxy-dconv/2.5/configuration.html#8
https://www.haproxy.com/blog/introduction-to-haproxy-logging/
HAProxy는 syslog서버에서 처리하기 위한 로그메시지를 내보낼 수 있으며,
Rsyslog 및 journald와 호환이 됩니다. 그리고, Logstash 및 Fluentd와 같은 로그전달자를 활용해서 중앙 로그 수집기로 로그를 보낼 수 있습니다.
로그를 로컬에 쌓고 싶은 경우,
로컬에 rsyslog를 설치하여, haproxy가 보내는 syslog를 수집 및 처리하도록 구성할 수 있습니다.
[Rsyslog 설치]
Ubuntu
# apt install -y rsyslog
CentOS
# yum install -y rsyslog
Rsyslog가 설치완료되면, 구성을 편집합니다.
구성파일 : /etc/rsyslog.conf OR /etc/rsyslog.d/haproxy.conf
# Collect log with UDP $ModLoad imudp $UDPServerAddress 127.0.0.1 $UDPServerRun 514 # Creating separate log files based on the severity local0.* /var/log/haproxy-traffic.log local0.notice /var/log/haproxy-admin.log 출처: <https://www.haproxy.com/blog/introduction-to-haproxy-logging/> |
그런 다음 rsyslog를 재시작합니다.
# systemctl restart rsyslog
위의 설정은 rsyslog가 기본 udp 포트 514에서 IP 127.0.0.1을 수신합니다.
[HAProxy 설정]
그럼 HAProxy.cfg 파일에서 Log 설정은 아래와 같이 설정합니다.
global log127.0.0.1:514 local0 |
[HAProxy Log /var/log/message에 저장하지 않도록 설정하기]
Path : /etc/rsyslog.conf
HAProxy Log를 /var/log/message 로그에도 동시에 저장을하는 경우,
Message Log가 비대하게 커져서 본래의 역할을 수행할 수 없게 된다.
따라서, HAProxy Log가 생성되도록 지정한 facility "local0"는 message Log에 저장하지 않도록 한다.
수정후 적용 : systemctl restart rsyslog
'IT Knowledge > HAProxy' 카테고리의 다른 글
Testing Your HAProxy Config (2) | 2023.08.10 |
---|---|
Customize HAProxy Log format(Mode TCP / HTTP) (0) | 2023.08.10 |
keepalived 설정 파일 옵션 정리 (0) | 2022.01.29 |
Keepalived 설치 및 동작방식(feat. HAProxy의 고가용성 구성) (0) | 2022.01.29 |
HAProxy Config파일 옵션 정리!! (0) | 2022.01.24 |
댓글