在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
Log4j教程 - Log4j安装Log4j API包是根据Apache软件许可证分发的。 最新的log4j版本,包括全源代码,类文件和文档可以在http://logging.apache.org/log4j/找到。 我们可以从上面的链接下载apache-log4j-x.x.x.tar.gz或zip文件。
支持库我们可以使用log4j将信息记录到各种目的地,例如发送电子邮件,数据库或文件。 有一个我们需要放到classpath的库的列表,以便log4j可以拿起它并使用它。 例如,当从log4j发出电子邮件时,我们需要电子邮件库jar文件。 库是可选的,并且取决于我们将要与log4j框架一起使用的功能。
Maven和Log4j首先,使用以下maven命令创建一个空的Maven项目。 C:\mvn_test>mvn archetype:generate -DgroupId=com.ogeek.ide -DartifactId=MyTest -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false 然后,转到项目文件夹并找到pom.xml,添加以下依赖关系。 <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> 之后,将以下代码添加到在resources文件夹下创建的log4j.properties。 MyTest | +-src | +-main | +-java | | | +-com | | | +-ogeek | | | +-ide | +-resources | +- log4j.properties 如上面的文件夹结构所示,资源位于java文件夹的保存级别。 对于Java Web应用程序,将log4j.properties文件存储在WEB-INF/classes目录下 将以下配置保存到log4j.properties文件中。# Root logger option log4j.rootLogger=DEBUG, stdout, file # Redirect log messages to console log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Redirect log messages to a log file, support file rolling. log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=C:\\log4j.log log4j.appender.file.MaxFileSize=5MB 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 最后一个 %L设置从记录请求的行号。 %c{1}引用通过 %-5p设置日志记录优先级,如DEBUG或ERROR。 最后添加以下代码App.java并运行应用程序。 package com.ogeek.ide; import org.apache.log4j.Logger; public class App{ final static Logger logger = Logger.getLogger(App.class); public static void main(String[] args) { App obj = new App(); obj.runMe("ogeek"); } private void runMe(String parameter){ if(logger.isDebugEnabled()){ logger.debug("This is debug : " + parameter); } if(logger.isInfoEnabled()){ logger.info("This is info : " + parameter); } logger.warn("This is warn : " + parameter); logger.error("This is error : " + parameter); logger.fatal("This is fatal : " + parameter); } } 以下代码显示如何记录异常。 import org.apache.log4j.Logger; public class App { final static Logger logger = Logger.getLogger(App.class); public static void main(String[] args) { App obj = new App(); try { obj.divide(); } catch (ArithmeticException ex) { logger.error("Sorry, something wrong!", ex); } } private void divide() { int i = 10 / 0; } } |
请发表评论