
rsyslog TCP/SSL을 통해 내 서버 중 하나에서 중앙 로그 서버로 원격 로깅을 구성했습니다.
어제까지 모든 것이 잘 작동했는데, 대부분의 파일이 전송을 중단했지만 일부는 여전히 로그 서버에서 전송/업데이트되었습니다.
내 /etc/rsyslog.d/ 안에 이 특정 구성이 있습니다.
$ModLoad imfile #Load the imfile input module
# poll every 10s
$InputFilePollInterval 10
# myfile
$InputFileName /var/log/data/myFile.log
$InputFileTag myFile:
$InputFileStateFile stat-myFile
$InputFileSeverity Info
$InputFileFacility local3
$InputRunFileMonitor
파일을 확인하면 내 애플리케이션에 의해 업데이트됩니다.
ls -la /var/log/data
-rw-r--r-- 1 adm adm 2666 Apr 22 08:52 myFile.log
이 클라이언트에서 원격 로그 서버로의 연결 설정을 확인하려고 하면 문제가 없는 것 같습니다(netstat -tulpan | grep syslog).
tcp 0 0 :42724 :10514 31839/rsyslogd 설정됨
그러나 로그 서버를 확인할 때 클라이언트의 원격 로그를 /var/log/remotelogs//에 저장합니다.
이상하게도 일부 파일(예: systemd.log, sshd.log, rsyslogd.log, ..)은 실시간으로 올바르게 업데이트되지만... myFile.log는 그렇지 않습니다.
ls -la /var/remotelogs/<clientIP>
-rw-r----- 1 root root 1945150 Apr 21 15:07 myFile.log
보시다시피.. 어제 제 시간 오후 3시쯤에 멈췄어요... 뭐죠? 서버의 네트워크 연결도 확인해 보니 모든 것이 정상인 것 같습니다.
$ sudo netstat -tulpan | grep syslog
tcp 0 0 0.0.0.0:10514 0.0.0.0:* LISTEN 3608119/rsyslogd
tcp 0 0 <serverIP>:10514 <clientIP>:42724 ESTABLISHED 3608119/rsyslogd
tcp6 0 0 :::10514 :::* LISTEN 3608119/rsyslogd
무엇이 잘못되었을지 아나요? 왜 일부 파일은 전송되지 않고 일부 파일은 전송됩니까?
답변1
나는 생각했다.. 내 동료가 어떻게든 해당 파일에 영향을 미치는 스크립트를 만들었지만(정확히 무슨 일이 일어났는지는 모르겠지만) 스크립트를 비활성화하고 파일을 다시 만들었을 때 .. 다시 매력처럼 작동했습니다 ...