2009-04-22 2 views
3

Я пытаюсь настроить log4j для использования SMTPAppender, но я все время получаю отказ в доступе к ретрансляции. Я получаю эту ошибку при выполнении моего кода на своем ноутбуке и прямо из моей общей среды размещения.Каков правильный способ настройки SMTPAppender в log4j?

Вот соответствующие конфигурации:

#CONFIGURE SMTP 
log4j.appender.email=org.apache.log4j.net.SMTPAppender 
log4j.appender.email.SMTPHost=mydomain.com 
log4j.appender.email.SMTPUsername=myuser 
log4j.appender.email.SMTPPassword=mypw 
[email protected] 
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.email.SMTPHost=mail.mydomain.com вместо этого я получаю ошибки проверки подлинности. Мой хостинг находится на DreamHost, так что бонусные баллы, если кто-то настроил log4j SMTPAppender, используя учетную запись электронной почты DreamHost.

ответ

3

Оказывается, у меня просто были все свойства. Должно быть:

#CONFIGURE SMTP 
log4j.appender.email=org.apache.log4j.net.SMTPAppender 
log4j.appender.email.SMTPHost=mail.mydomain.com 
[email protected] 
log4j.appender.email.SMTPPassword=mypw 
[email protected] 
log4j.appender.email.BufferSize=1 
log4j.appender.email.EvaluatorClass=TriggerLogEvent 
log4j.appender.email.layout=org.apache.log4j.PatternLayout 
log4j.appender.email.layout.ConversionPattern=%m 
+0

Это дает мне: _java.lang.ClassNotFoundException: TriggerLogEvent_. Это для старой версии log4j? –

+2

Оказывается, что 'TriggerLogEvent' - загружаемый класс, который вы можете использовать, если вам нужно регистрировать уровни, отличные от ERROR. Дополнительная информация здесь: http://stackoverflow.com/a/8170636/24874 –

0

SMTPHost должен указывать на ваш почтовый сервер (так, mail.mydomain.com для Dreamhost). Можете ли вы отправить почту вручную, если вы подключитесь к порту 25 и передаете учетные данные вручную?

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