log4j 详解
来源:互联网 发布:cnzz数据统计 编辑:程序博客网 时间:2024/06/15 15:17
log4j的输出级别分为 OFF(关闭日志) > FATAL(致命错误) > ERROR(错误) > WARN(警告) > INFO > DEBUG > ALL(打开日志)
log4j建议只使用 四种级别 ERROR,WARN,INFO,DEBUG
当日志的输出级别定义为 ERROR时 日志级别小的不会被打印
log4j 基本组成部分(优先级,日志输出地址,输出格式)
优先级
log4j.rootLogger = INFO, appenderName, appenderName, …
日志输出地址
ConsoleAppender(控制台),
FileAppender(文件),
DailyRollingFileAppender(每天产生一个日志文件),
RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
WriterAppender(将日志信息以流格式发送到任意指定的地方)
输出格式
HTMLLayout(以HTML表格形式布局),
PatternLayout(可以灵活地指定布局模式),
SimpleLayout(包含日志信息的级别和信息字符串),
TTCCLayout(包含日志产生的时间、线程、类别等等信息)
%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 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。
log4j 基本配置步骤
1. 新建一个java项目,新建一个lib文件夹
2.将 log4j-1.2.9.jar 拖进lib文件夹中,点击log4j-1.2.9.jar 右键 build path 选择 add to build path
3.新建log4j.properties 文件 写入内容 如代码片段1
4.在项目的src 先新建一个 Text.java,写入 代码片段2
log4j.rootLogger=INFO,Console,File,D#\u8F93\u51FA\u4FE1\u606F\u5230\u63A7\u5236\u53F0log4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.Target=System.outlog4j.appender.Console.layout = org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=[%c] - %m%n#\u8F93\u51FA\u6240\u6709\u65E5\u5FD7\u5230E://logs/log.log\u6587\u4EF6\u5939\u4E0Blog4j.appender.File = org.apache.log4j.RollingFileAppenderlog4j.appender.File.File = E://logs/log.loglog4j.appender.File.MaxFileSize = 10MBlog4j.appender.File.Threshold = ALLlog4j.appender.File.layout = org.apache.log4j.PatternLayoutlog4j.appender.File.layout.ConversionPattern =[%p] [%d{yyyy-MM-dd HH\:mm\:ss}][%c]%m%n#\u8F93\u51FAdebug\u7EA7\u522B\u4EE5\u4E0A\u4FE1\u606Flog4j.appender.D = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File = E://logs/debug.loglog4j.appender.D.Append = truelog4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
private static Logger logger = Logger.getLogger(Test.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详解
- log4j详解
- log4j详解
- log4j详解
- log4j详解
- log4j详解
- log4j详解
- log4j详解
- Log4j详解
- log4j 详解
- Log4j详解
- log4j 详解
- log4j详解
- log4j 详解
- log4j详解
- LOG4J详解
- log4j详解
- 关于Android手机设置好Vpn之后无法连接到服务器
- JVM 内存模型和垃圾回收(四): 并发回收(Concurrent Mark-Sweep Collector)
- spring boot
- NGN-android开发中的知识点(二)
- Linux常用命令
- log4j 详解
- 苹果核
- 导入Beautifulsoup 报错 AttributeError: 'module' object has no attribute '_base'
- 字符串排序算法概述
- shell——tr的用法
- React生命周期过程说明
- CocoaPods的安装
- Kotlin的那些事儿
- JS对应键盘的值