도커 이벤트는 어디에 저장되나요? syslog 서버로 리디렉션될 수 있나요?

도커 이벤트는 어디에 저장되나요? syslog 서버로 리디렉션될 수 있나요?

도커를 실행하는 서버가 있습니다. 이 명령을 사용하여 docker events이벤트가 발생할 때 이를 모니터링할 수 있습니다. 그러나 명령 옵션을 사용하여 --since <timestamp>이전 이벤트를 나열할 수도 있습니다 .

# docker events --since '2022-03-20'
2022-03-22T23:56:47.734684472Z network connect daee956f7a48538470209a02318f9312)
2022-03-22T23:56:47.975103504Z container start 8245dab2d81075a856594bb164be34ac)
2022-03-25T06:25:07.473690045Z container pause 8245dab2d81075a856594bb164be34ac)
2022-03-25T06:25:18.728654844Z container unpause 8245dab2d81075a856594bb164be34)
2022-03-25T06:25:26.919184476Z container exec_create: /bin/sh  8245dab2d81075a8)
2022-03-25T06:25:29.068042340Z container exec_start: /bin/sh  8245dab2d81075a85)

따라서 이벤트는 어딘가에 저장되어야 합니다. 어디에 저장되어 있나요? 한 개가 있는 걸 봤는데 <contaniner-id>-json.log비어 있었어요.

후속 질문으로. 이러한 이벤트 로그를 syslog 서버로 리디렉션/복사할 수 있습니까?

답변1

내가 아는 한, 나에게도 동일한 요구 사항이 있었기 때문에 Docker 팀은 이에 대해 논의한 후 이로 인해 거대한 로그 파일이 생성되고 누구에게도 거의 쓸모가 없을 것이라고 결정했습니다. 그럼 티켓은폐쇄.

이에 대한 태도에는 변화가 없다고 봅니다. 다른 로깅/모니터링/대시보드 도구에 이벤트 스트리밍을 제공하는 방법은 여러 가지가 있으므로 Docker 세계에서는 이를 받아들이는 방법을 배웠을 수도 있습니다.

systemd개인적으로 저는 스트림을 관찰하고, 데이터를 다듬고, 로그에 기록하고 logrotate처리하도록 하는 서비스 를 작성하겠습니다 . :)

관련 정보