-
Notifications
You must be signed in to change notification settings - Fork 0
intesar/Log4jGmail
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Receive all server errors/exceptions as email, never miss one, easy to share and discuss with the others Follow these simple steps to configure Log4j to use GMail. Step 1: Add dependencies <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version> </dependency> <!-- Log4j --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16</version> <exclusions> <exclusion> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> </exclusion> <exclusion> <groupId>javax.jms</groupId> <artifactId>jms</artifactId> </exclusion> <exclusion> <groupId>com.sun.jdmk</groupId> <artifactId>jmxtools</artifactId> </exclusion> <exclusion> <groupId>com.sun.jmx</groupId> <artifactId>jmxri</artifactId> </exclusion> </exclusions> </dependency> Step 2: Sample logging file, inline comments are self explanatory file linke : https://github.com/intesar/Log4jGmail/blob/master/src/main/resources/log4j.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <!-- Appends events to console : compliments SMTPAppender --> <appender name="Console" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[${name}] - %d{ISO8601} - %X{login} - %m%n" /> </layout> </appender> <!-- SMTP will only log error events --> <appender name="Email" class="org.apache.log4j.net.SMTPAppender"> <param name="BufferSize" value="1" /> <!-- default is 512, changed for test cases to work --> <!-- GMail will not work without this, log4j 1.2.16 is required this why earlier versions required hack--> <param name="SMTPProtocol" value="smtps" /> <param name="SMTPHost" value="smtp.gmail.com" /> <param name="SMTPPort" value="465" /> <param name="SMTPUsername" value="<email>" /> <!-- [email protected] --> <param name="SMTPPassword" value="<passowrd>" /> <!-- passowrd --> <param name="To" value="[email protected]" /> <param name="Subject" value="Zytoon.me Error Log" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[${name}] - %d{ISO8601} - %X{login} - %m%n" /> </layout> </appender> <appender name="EMAIL_ASYNC" class="org.apache.log4j.AsyncAppender"> <param name="BufferSize" value="1"/> <appender-ref ref="Email"/> </appender> <root> <priority value="trace" /> <appender-ref ref="EMAIL_ASYNC" /> <appender-ref ref="Console" /> </root> </log4j:configuration> Sample Code import org.apache.log4j.Logger; public class App { private static Logger logger = Logger.getLogger(App.class); public static void main(String[] args) throws InterruptedException { logger.trace("trace message"); logger.warn("warn message"); // if you want this to pass change appender to Email instead of ASYNC_EMAIL in root logger logger.error("error message, a very long error message!"); } }
About
Setup GMail with Log4j, and never miss any error's, easy share and discuss with others
Resources
Code of conduct
Security policy
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published