log4j简易入门

来源:互联网 发布:网络名誉权侵权起诉书 编辑:程序博客网 时间:2024/04/27 20:53
本文转载http://www.cnblogs.com/maxupeng/archive/2011/07/25/2116378.html
package test.log4j;import org.apache.log4j.Logger;public class HelloLog4j {    private static final Logger logger = Logger.getLogger(HelloLog4j.class);    public static void main(String[] args) {        logger.debug("This is debug message");        logger.info("This is info message");        logger.warn("This is warn message");        logger.error("This is error message");    }}
复制代码

log4j简单配置log4j.properties

复制代码
#可以设置级别:debug < info < warn < error#debug: 显示debug, info, warn, error#info: 显示info, warn, error#warn: 显示warn, error#error: 只显示error#日志的输出级别由rootLogger和普通Logger设置的最高级别决定。#log4j.rootLogger=debug,appender1#log4j.rootLogger=info,appender1log4j.rootLogger=warn,appender1#log4j.rootLogger=error,appender1#输出到控制台log4j.appender.appender1=org.apache.log4j.ConsoleAppender#样式为TTCCLayoutlog4j.appender.appender1.layout=org.apache.log4j.TTCCLayout#这里配置的是类所在的包test.log4j, 逗号之前未配置日志输出级别,默认为根logger的级别log4j.logger.test.log4j=, TESTlog4j.appender.TEST=org.apache.log4j.ConsoleAppenderlog4j.appender.TEST.layout=org.apache.log4j.TTCCLayout
复制代码

log4j提供的Appender

org.apache.log4j.ConsoleAppender(控制台),org.apache.log4j.FileAppender(文件),org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

log4j提供的Layout

org.apache.log4j.HTMLLayout(以HTML表格形式布局),org.apache.log4j.PatternLayout(可以灵活地指定布局模式),org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
复制代码
Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下: 
  %m 输出代码中指定的消息  %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL  %r 输出自应用启动到输出该log信息耗费的毫秒数  %c 输出所属的类目,通常就是所在类的全名  %t 输出产生该日志事件的线程名  %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”  %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921  %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)
复制代码

以上资料参考:http://www.iteye.com/topic/378077

slf4j简介

SLF4J不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部署其应用时使用其所希望的日志系统。

实际上,SLF4J所提供的核心API是一些接口以及一个LoggerFactory的工厂类。从某种程度上,SLF4J有点类似JDBC,不过比JDBC更简单,在JDBC中,你需要指定驱动程序,而在使用SLF4J的时候,不需要在代码中或配置文件中指定你打算使用那个具体的日志系统。如同使用JDBC基本不用考虑具体数据库一样,SLF4J提供了统一的记录日志的接口,只要按照其提供的方法记录即可,最终日志的格式、记录级别、输出方式等通过具体日志系统的配置来实现,因此可以在应用中灵活切换日志系统

slf4j简单示例

复制代码
package test.slf4j;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloSlf4j {    private static final Logger logger = LoggerFactory.getLogger(HelloSlf4j.class);    public static void main(String[] args) {        logger.debug("This is debug message");        logger.info("This is info message");        logger.warn("This is warn message");        logger.error("This is error message");    }}
复制代码

假设使用log4j做为底层日志工具,运行以上程序需要三个包:log4j-1.2.xx.jar、slf4j-api-x.x.x.jar、以及slf4j-log4j12-x.x.x.jar,后两个包由slf4j提供,包名中的x表示版本号。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 电脑被u盘中毒怎么办 电脑一分钟重启怎么办 创维电视音量小怎么办 捷豹pin码忘记了怎么办 华为手机版本更新下载不了怎么办? 微信钱包没有钱怎么办 微信钱包里没有钱怎么办 微信没有收到退款怎么办 微信转账退款没有收到怎么办 礼物跟人家送重复怎么办 你已被steam封禁怎么办 武装突袭3被锁定怎么办 绝地求生右下角小地图变大怎么办 ctrl z 误删了怎么办 武装突袭3渴了怎么办 武装突袭3枪卡壳怎么办 玩武装突袭3CPU不好怎么办? 户户通001信号中断怎么办 电脑运行速度特别慢怎么办 win8.1电脑太卡怎么办 电线厂非法战地没拆够怎么办 久笔记本电脑玩彩虹六号卡怎么办 彩虹六号一直建立小队进不去怎么办 小佩喂食器离线怎么办 手机打游戏掉帧怎么办 电脑打游戏掉帧怎么办 武装突袭3太卡怎么办 英语b级考不过怎么办 绝地求生被燃烧瓶烧了怎么办 搜狗输入法打字出现问好怎么办 全民k歌解码失败怎么办 视频声音小怎么办调大 乐视2视频声音小怎么办 录视频声音太小怎么办 显卡装了没反应怎么办 笔记本关闭核显黑屏怎么办 驱动补丁被卸了怎么办 网络驱动被删了怎么办 新装系统网卡没驱动怎么办 核显没有dp口怎么办 苹果7屏幕太小了怎么办