Ich versuche, eine SMTP-E-Mail mit log4sh zu senden. Alle anderen Protokolle wie stdout und File Appender funktionieren, aber das SMTP-Ding funktioniert nicht.
log4sh.eigenschaften:
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
Unten ist der Code, der für stdout und Datei, aber nicht für SMTP funktioniert:
logger_error "This is a test";
Unten ist der Link für log4sh:
http://svn.code.sf.net/p/log4sh/svn/trunk/source/1.5/doc/log4sh.html
Antwort1
Standardmäßig versendet nicht alle Linux-Software E-Mails direkt. Stattdessen sollten Sie ein SMTP-Relay auf Ihrem System ordnungsgemäß konfigurieren, indem Sie einen Mailserver wie Postfix richtig konfigurieren.
Die entsprechende Dokumentation finden Sie problemlos im Internet.
Antwort2
Es gibt viele Details zum Protokollieren von Shell-Skripten über globale Shell-Variablen. Wir können eine ähnliche Art des Protokollierens in Shell-Skripten emulieren:http://www.cubicrace.com/2016/03/log-tracing-mechnism-for-shell-scripts.html
Der Beitrag enthält Details zur Einführung von Protokollebenen wie INFO, DEBUG, ERROR. Ablaufverfolgungsdetails wie Skripteintrag, Skriptausgang, Funktionseintrag, Funktionsausgang.