终结者:log4j的真正正确使用方式
程序在运行的过程中会出现各种异常信息,为了收集这些异常信息,为维护程序提供依据,log4j日志技术营运而生,本博客为大家介绍log4j真正正确使用的方式。
第一步:导入log4j所需要的jar包(参见最下面【资源0分下载】)
第二步:在src根目录下创建名为log4j.properties的文件,文件内容如下:
log4j.rootLogger=DEBUG,Console,RollingFile#将日志信息输出到控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern= [%-5p]-[%d{yyyy-MM-dd HH:mm:ss}] -%l -%m%n#将日志信息输出到操作系统D盘根目录下的log.log文件中
log4j.appender.RollingFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.RollingFile.File=D://log.log
log4j.appender.RollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.RollingFile.layout.ConversionPattern=%d [%t] %-5p %-40.40c %X{traceId}-%m%n
说明:该文件中代码的含义请参见博客《 终结者:详述Log4j配置文件中代码的含义》
第三步:如何使用,参见下面代码:
package com.ghj.test;import org.apache.log4j.Logger;public class TestLog4j {private static final Logger logger = Logger.getLogger(TestLog4j.class);public static void main(String[] args) {try {Class.forName("ErrorClassName");} catch (ClassNotFoundException e) {logger.debug(e.getMessage(),e);//详细日报信息logger.info(e.getMessage(),e);//详细日报信息logger.warn(e.getMessage());//简单日报信息logger.error(e.getMessage());//简单日报信息}}
}
注意: 如果生成日报的详细信息请调用含有两个参数(一个参数为Object message,另一个为 Throwable t)的方法,该方法将输出堆栈中的所有信息,如下图:
【资源0分下载】
终结者:log4j的真正正确使用方式相关推荐
- log4j配置及正确使用方式
log4j相关jar的引用: gradle引用: 如果是jar: compile group: 'org.slf4j', name: 'slf4j-api', version: "1.7.2 ...
- eclipse的正确使用方式
前情提要: Eclipse版本: Eclipse Java EE IDE for Web Developers. Version: Mars.1 Release (4.5.1). Build id: ...
- python null byte_如何以“正确”的方式处理带有nullbytes的Python unicode字符串?
问题 PyWin32似乎很乐意将以null结尾的unicode字符串作为返回值.我想用"正确"的方式处理这些字符串.在 假设我得到一个字符串:u'C:\\Users\\Guest\ ...
- opengl 贴图坐标控制_材质贴图正确打开方式
哈喽,各位观众朋友们好鸭~欢迎来到讲道理画图的地方,我是黄玮宁. 最近呀经常有小伙伴来问我那些不同通道的材质贴图该怎么用,而且频率不是一般的高,所以我觉得有必要来说说这些通道贴图的用法了. 视频版(B ...
- Optional java 用法_Java8 Optional 的正确使用方式
1.当我们还在以如下几种方式使用 Optional 时, 就得开始检视自己了 调用 isPresent() 方法时 调用 get() 方法时 Optional 类型作为类/实例属性时 Optional ...
- Console控制台的正确打开方式
Console控制台的正确打开方式 console对象提供了访问浏览器调试模式的信息到控制台 -- Console对象|-- assert() 如果第一个参数断言为false,则在控制台输出错误信息| ...
- 任务队列和异步接口的正确打开方式(.NET Core版本)
layout: post title: 任务队列和异步接口的正确打开方式(.NET Core版本) category: dotnet core date: 2019-01-12 tags: dotne ...
- log python_基于Python log 的正确打开方式
保存代码到文件:logger.py import os import logbook from logbook.more import ColorizedStderrHandler import sm ...
- python四舍五入round_四舍五入就用round( )?Python四舍五入的正确打开方式!
四舍五入就用round( )?Python四舍五入的正确打开方式! 2018-09-22 21:40 阅读数 4 <>round( )函数简介 菜鸟教程中介绍到,round() 函数作用就 ...
- android 数组指针异常,Android JSON解析Json数组是[]在解析时抛出空指针异常,如何以正确的方式写入?...
我有复杂的API,我解析并显示在列表视图中,我将努力解析JSONArray.Here我将在斗争之后Json数组这是在帖子json对象"tags_name":["Activ ...
最新文章
- 互联网1分钟 |1019
- iaas层次化结构--从业务需求到设计需求
- 《Java高级程序设计》期末作业【2】-进度安排
- 项目开发优化技巧总结
- 搜索引擎蜘蛛给网站带来的危害,有效指引爬虫对应的措施(最准确搜索引擎蜘蛛名称)...
- 分享非常有用的Java程序(关键代码)(七)---抓屏程序
- JavaScript中对象的比较
- 企业手机装配线平衡改善研究
- html常用js统计图表插件
- archlinux fcitx5-rime五笔输入法
- 2022年湖北省住建厅特种作业操作证怎么报考?甘建二
- 特征选择方法-统计方法
- Unable to find image ‘XXX‘ locally docker: Error response from daemon: pull access denied for
- 农历大小月的确定方法
- 阿里云-钉钉-企业邮箱
- 计算x的n次方 高效算法
- 嵌入式linux/鸿蒙开发板(IMX6ULL)开发流程(六)烧写整个系统或更新部分系统
- MATHTYPE安装出现问题:无法打开要写入的文件;MathType打开word时“安全警告,宏已被禁用”;mathtype与AXmath不能同时使用
- PDF如何设置注释字体大小
- bump map(凹凸贴图)的一个简单生成方法
热门文章
- html5 (个人笔记)
- kickstart无人值守自动安装操作系统
- 什么是Joint Escalation Team?
- 解决Weblogic与Hibernate的jar冲突
- 设定open_basedir导致PHP程序无法上传
- 5.业务架构·应用架构·数据架构实战 --- 业务驱动的数据架构设计
- 10.Linux 高性能服务器编程 --- 信号
- 19. 配置Symfony(和环境)
- 40. Element getAttribute() 方法
- 1. Zend_Acl