![log4sh를 사용하여 쉘 스크립트에서 로깅](https://linux55.com/image/76606/log4sh%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C%20%EB%A1%9C%EA%B9%85.png)
log4sh를 사용하여 SMTP 이메일을 보내려고 합니다. 다른 모든 로깅(예: stdout, 파일 첨부자)은 제대로 작동하지만 smtp 기능은 그렇지 않습니다.
log4sh.속성:
log4sh.rootLogger=ERROR, stdout, smtp, file
log4sh.appender.smtp=SMTPAppender
log4sh.appender.smtp.Threshold=DEBUG
[email protected]
log4sh.appender.smtp.Subject=This is a test subject
log4sh.appender.smtp.layout=PatternLayout
log4sh.appender.smtp.layout.ConversionPattern=%d [%-5p] %F - %m%n
다음은 stdout 및 파일에서는 작동하지만 smtp에서는 작동하지 않는 코드입니다.
logger_error "This is a test";
log4sh에 대한 링크는 다음과 같습니다.
http://svn.code.sf.net/p/log4sh/svn/trunk/source/1.5/doc/log4sh.html
답변1
기본적으로 모든 Linux 소프트웨어는 이메일을 직접 보내지 않습니다. 대신 postfix와 같은 메일 서버를 올바르게 구성하여 시스템에서 SMTP 릴레이를 올바르게 구성해야 합니다.
인터넷에서 해당 문서를 쉽게 찾을 수 있습니다.
답변2
쉘 전역 변수를 통해 쉘 스크립트를 로깅하는 방법에 대한 자세한 정보가 많이 있습니다. 쉘 스크립트에서 유사한 로깅을 시뮬레이션할 수 있습니다.http://www.cubicrace.com/2016/03/log-tracing-mechnism-for-shell-scripts.html
이 문서에서는 INFO, DEBUG, ERROR와 같은 로그 수준을 자세히 설명합니다. 스크립트 입력, 스크립트 종료, 함수 입력, 함수 종료 등과 같은 세부 정보를 추적합니다.