log4j使用方法(一)——先跑起来再说
log4j作为apache的一个开源项目,因其灵活、方便为很多开发者所青睐,最近我也要使用log4j进行日志记录,记录一下我的学习过程。
学一个新工具的第一步肯定是将其用起来,写一个demo之类的。
初步使用log4j的步骤如下:
1、下载log4j的包:logging-log4j.jar,如果是maven工程则在pom文件中配置相应的dependency,一般log4j会和commons-logging.jar一起使用,这里就不用了。
2、将log4j的包引用到工程中以后,就可以使用了。但是在正式记录日志之前需要对log4j进行一些配置,这些配置有两种方式:直接在程序中写死和通过配置文件配置。推荐通过配置文件来进行配置,这样程序会更加灵活。
我的配置文件内容如下:
#日志配置文件 log4j.rootLogger=DEBUG, rootlogger #-----------所有日志都会记录,这里只是打印到控制台上,不输出到文件中-----### log4j.appender.rootlogger=org.apache.log4j.ConsoleAppender log4j.appender.rootlogger.layout=org.apache.log4j.PatternLayout log4j.appender.rootlogger.layout.ConversionPattern=[%-5p] %-4r %d{yyy-MM-dd HH:mm:ss} %30c # %m%n
在上面的配置文件中包含了:rootLogger的设置——log4j.rootLogger,其中第一个参数标示日志记录的优先级,只有等于、大于这个级别的日志才会被输出。log4j的日志的级别共有以下几种:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL,但是我们一般只是用ERROR、WARN、INFO、DEBUG这四种(这里按照从高到低给出)。
还设置了日志的输出位置org.apache.log4j.ConsoleAppender:表示将日志输出到控制台,还设置了日志输出的信息布局以及日志输出格式。
3、在写好配置文件以后就可以使用log4j来记录日志了。
1、获取log4j的实例:
Logger.getLogger ( yourclass.class.getName () );
将yourclass换成你调用log4j的类名就可以了。
2、加载你的配置文件
PropertyConfigurator.configure(WriteLog.class.getProtectionDomain().getCodeSource().getLocation().getFile() + "log4j.properties");
需要将参数换成你的配置文件所在路径,配置文件这种东西最好统一放在一个地方管理,我这里是放在了src的根目录下,是一个相对路劲,也可以用绝对路径,如:“d:\log4j.properties”
3、有了以上两步就可以记录日志了:
logger.info("this is just a test!!");
这样就基本完成了一个简单的使用log4j的demo,但是我们大部分情况下还会有这些需求:
1、将日志记录到文件
2、每天都要新建一个文件记录日志
3、不同的业务逻辑的日志记录到不同的日志文件
4、改变一下日志记录的格式
……
今天写到这里,明天把上面的问题解决了在写一篇。