systemd 저널을 사용하여 심각한 오류를 이메일로 자동 보낼 수 있나요?

systemd 저널을 사용하여 심각한 오류를 이메일로 자동 보낼 수 있나요?

Fedora OS에서는 journalctl오류 메시지를 기록하는 새로운 방법을 도입했습니다. 최근 업그레이드를 하면서 이 사실을 알게 되었습니다. var/log/messages그리고 다른 많은 로그 파일은 이제 디렉터리 .journal내의 파일 로 결합됩니다 var/log/journal.

이전 버전을 사용하여 심각한 오류를 기록하기 위해 특별히 생성된 사용자 정의 로그가 있습니다 rsyslog.

*.crit  /var/log/critical/log

이 파일은 나에게 이메일로 전송되며 오류가 있는 한 cron 작업을 사용하여 매시간 순환됩니다. 이제 를 사용하면 어떻게 될까요 journalctl? 옵션이 journald.conf예쁜 것 같아요제한된. 그래도 rsyslog이 작업을 수행 해야 합니까 ?

답변1

이 명령은 비슷한 출력을 생성합니다.

journalctl --since="$(date '+%Y-%m-%d %H:%M:%S' -d '1 hour ago')" --priority=crit --quiet

답변2

FWIW 나는 마지막으로 실행된 이후 저널 메시지에 대한 브리핑을 제공하기 위해 저널 브리프(journal-brief)라는 작은 프로그램을 작성했습니다.

https://github.com/twaugh/journal-brief

cron에서 실행하면(예: Journal-brief -p err) 결과가 메일로 전송됩니다.

저널 커서를 기억하여 이전 위치에 북마크를 지정하므로 중복된 로그 항목을 보내지 않습니다.

관련 정보