2015-10-29 2 views
1

У меня есть приложение Spring Boot. Я пытаюсь отправить журнал на почту с помощью SMTPAppender, но я не получаю никаких писем. Мне удалось использовать log4j для ConsoleAppender и RollingFileAppender, поэтому я думаю, что я правильно добавил log4j, и файл с свойствами log4j виден.Отправка журнала по электронной почте с помощью log4j SMTPAppender

Вот подам log4j.properties:

log4j.rootLogger = info, email, stdout, file 

log4j.appender.email=org.apache.log4j.net.SMTPAppender 
log4j.appender.email.SMTPHost=smtp.google.com 
[email protected] 
log4j.appender.email.SMTPPassword=abc123 
[email protected] 
[email protected] 
log4j.appender.email.Subject=Log 
log4j.appender.email.BufferSize=1 
log4j.appender.email.EvaluatorClass=TriggerLogEvent 
log4j.appender.email.layout=org.apache.log4j.PatternLayout 
log4j.appender.email.layout.ConversionPattern=%m 

#------------------------------------------------------------------------------------------ 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n 

#------------------------------------------------------------------------------------------ 

log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=mylog.log 
log4j.appender.file.MaxFileSize=10MB 
log4j.appender.file.MaxBackupIndex=10 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 
+0

, какой класс вы пытаетесь отправить логи из? попробуйте добавить, что в свойствах log4j – AbtPst

+0

так что SMTPAppender нуждается в другой конфигурации, чем другие приложения? Я попытаюсь добавить имя класса, но что, если я хочу использовать его во многих классах? – Someone

+0

это было бы моей догадкой. иначе как он узнает, какие журналы отправляются по электронной почте? – AbtPst

ответ

2

Я нашел важную часть из документации о SMTPAppender.

По умолчанию сообщение электронной почты будет отправлено при добавлении сообщения с ошибкой ERROR или более высокой степени серьезности. Запускающий критерии может быть изменен путем установки свойства evaluatorClass с именем класса, реализующим TriggeringEventEvaluator, установив свойство оценщика с экземпляром TriggeringEventEvaluator или гнездится в triggeringPolicy элементе, где указанный класс реализует TriggeringEventEvaluator

Кроме того, вы можете «т использовать„smtp.google.com“- это должно быть smtp.gmail.com вы должны использовать GmailSMTPAppender, подробности здесь - http://www.tgerm.com/2010/05/log4j-smtpappender-gmail-custom.html

Смежные вопросы