Reputation: 73
I have configured the log4j xml to send e-mail when an error encounters in my application, but still i could not get any mails.Could you please suggest me if i have to do something else other than this configuration.Below is the configuration done in xml file for e-mails
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
<appender name="XMPAYROLAppender"
class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="log/XMPAYROLLogger.log" />
<param name="datePattern" value="'.'yyyy-MM-dd" />
<param name="append" value="true" />
<param name="Encoding" value="UTF-8" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p %C{1} - %m%n" />
</layout>
</appender>
<appender name="AdministratorEmail" class="org.apache.log4j.net.SMTPAppender">
<param name="BufferSize" value="1024" />
<param name="SMTPHost" value="smtp.gmail.com" />
<param name="From" value="[email protected]" />
<param name="To" value="[email protected]" />
<param name="Subject" value="test mail" />
<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="XMPAYROLLogger" additivity="true">
<level class="org.apache.log4j.Level" value="INFO" />
<appender-ref ref="XMPAYROLAppender" />
</logger>
</log4j:configuration>
Upvotes: 1
Views: 583
Reputation: 41200
There is SMTPAppender
class exists in Log4j
which sends an email through SMTP for each logged message.
<appender name="AdministratorEmail" class="org.apache.log4j.net.SMTPAppender">
<param name="BufferSize" value="512" />
<param name="SMTPHost" value="some.email.host.org" />
<param name="From" value="[email protected]" />
<param name="To" value="[email protected],[email protected]" />
<param name="SMTPUsername" value="[email protected]" />
<param name="SMTPPassword" value="abcdpassword" />
<param name="SMTPDebug" value="true" />
<param name="Subject" value="SomeApplication on SomeServer12" />
<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>
Upvotes: 2