SMTPAppender для log4j - не могу заставить его работать
Я пытаюсь добавить SMTPAppender в приложение для уведомления об ошибках (приложение tomcat). Я не смог заставить его работать до этого момента. Я пробовал использовать конфигурацию как в файле log4j.properties, так и через конфигурацию log4j.xml. Я не вижу ошибок в журнале, связанных с неправильной настройкой настройки приложения. Я просто не вижу никаких попыток по электронной почте. Первоначально мне нужно было ввести javax.mail и javax.activation, чтобы я знал, что он пытается настроить и использовать SMTPAppender, но я не вижу ничего, кроме ошибок конфигурации или электронных писем, которые отправляются при возникновении ошибок.
Вот log4j.properties, которые я попробовал (изменил личную информацию)
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%-5p %d [%t] %c: %m%n
log4j.appender.email=org.apache.log4j.net.SMTPAppender
log4j.appender.email.Threshold=ERROR
log4j.appender.email.BufferSize=512
log4j.appender.email.To=myemail@mydomain.com
log4j.appender.email.From=from@mydomain.com
log4j.appender.email.SMTPHost=mysmtphost
log4j.appender.email.Subject=MULE -- error
log4j.appender.email.layout=org.apache.log4j.PatternLayout
log4j.appender.email.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.email.SMTPUsername=mysmtpuser
log4j.appender.email.SMTPPassword=mysmtppassword
Вот конфигурация, которую я попробовал в файле log4j.xml
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%5p (%F:%L) - %m%n" />
</layout>
</appender>
<appender name="file" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="/apps/data/pbymuleservices.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="1000KB"/>
<param name="MaxBackupIndex" value="10"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%5p [%d{ISO8601}] (%F:%L) - %m%n"/>
</layout>
</appender>
<appender name="email" class="org.apache.log4j.net.SMTPAppender">
<param name="BufferSize" value="512" />
<param name="SMTPHost" value="mysmtphost" />
<param name="SMTPUsername" value="mysmtpusername" />
<param name="SMTPPassword" value="mysmtppassword" />
<param name="From" value="fromemail@mydomain.com" />
<param name="To" value="toemail@mydomain.com" />
<param name="Threshold" value="error" />
<param name="Subject" value="MULE -- Error" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%d{ISO8601}]%n%n%-5p%n%n%c%n%n%m%n%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="error" />
<param name="LevelMax" value="fatal" />
</filter>
</appender>
<logger name="com.mytoplevel.package" additivity="false">
<level value="INFO"/>
<appender-ref ref="console"/>
<appender-ref ref="file"/>
</logger>
<logger name="org.mule" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
<appender-ref ref="file"/>
</logger>
<logger name="com.mulesource" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
<appender-ref ref="file"/>
</logger>
<root>
<priority value="error" />
<appender-ref ref="console" />
<appender-ref ref="file"/>
<appender-ref ref="email"/>
</root>
Кто-нибудь видит что-нибудь, что должно мешать этому работать? Я не вижу никаких ошибок, связанных с конфигурацией в журнале, но я также не вижу электронных писем при возникновении ошибок. Спасибо
1 ответ
Добавьте этот параметр в переменную CATALINA_OPTS env: -Dlog4j.debug. Он выведет, откуда берется конфигурация регистрации.