로깅 SaaS 솔루션과 관련된 이상한 문제를 디버깅하고 있습니다. SaaS로 전송된 로그를 복제하고 있는 것 같습니다. 로그는 rsyslog 전달자를 통해 TLS를 통해 전송됩니다. 원격 rsyslog 서버를 실행하고 모니터링을 위해 인스턴스 로그를 해당 서버에 전달하여 문제를 재현할 수 있는지 확인하려고 합니다. 로그 소스 서버를 guineapig
원격 rsyslog 서버라고 부릅니다 watcher
.
watcher
다음 구성을 사용하여 UDP 포트 514에서 수신하도록 구성합니다.
$ModLoad imudp.so
$UDPServerRun 514
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# log everything to the /var/log/remotesyslog file
*.* /var/log/remotesyslog
guineapig
watcher
IP 주소를 사용하여 모든 것을 전달 하도록 구성합니다 .
$ModLoad imuxsock
$ModLoad imjournal
$ModLoad imudp.so
$UDPServerRun 514
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/*.conf
$IMJournalStateFile imjournal.state
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
*.emerg *
uucp,news.crit /var/log/spooler
local7.*
/var/log/boot.log
내부에 /etc/rsyslog.d/22-remote-rsyslog.conf
:guineapig
# forward everything over UDP to watcher
*.* @@10.0.1.1:514
안타깝게도 SystemD rsyslog 서비스를 다시 시작하고 에서 로그 메시지를 트리거하려고 하면 guineapig
의 파일에 해당 메시지가 표시되지 않습니다 watcher
.
user@guineapig ~$ logger "please work"
# doesn't work
그러나 어디로 가야 할지 직접 알려주면 logger
로그 줄에 다음과 같이 표시됩니다.
user@guineapig ~$ logger -n 10.0.1.1 "please work for real"
# works
rsyslog에 대한 문서를 검토하는 데 정말 어려움을 겪고 있지만 어떤 이유로 내 로그가 watcher
.
내 구성에 명백한 문제가 있습니까 guineapig
? 두 시스템 모두 CentOS 7에서 실행됩니다.
답변1
전에 언급했듯이여기rsyslog
UDP를 통한 전달을 위해 TCP와 다른 구문을 사용하는 것으로 보입니다 .
TCP 전달의 경우:
*.* @@10.0.1.1:514
UDP 전달의 경우:
*.* @10.0.1.1:514
이 변경으로 내 로깅 설정이 수정되었습니다.
답변2
*.* action(type="omfwd" target="10.0.1.1:514" port="514" protocol="tcp")
~에서문서:
이것은 가장 간단한 전달 작업입니다.
*.* action(type="omfwd" target="192.0.2.1" port="10514" 프로토콜="tcp")
이는 다음과 같은 더 이상 사용되지 않는 이전 형식 줄과 동일합니다.
*.* @@192.0.2.1:10514 # 다시는 사용하지 마세요!