一、实例演示

 package log4jtutorial;

 import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; public class LoggingDemo { // 首先需要定义一个log对象
// 定义成static final是因为只需要这一个实例,不能再有子类,多次调用的都是这一个实例,所以我们可以一直用这个对象来记录日志,不需要创建新的对象。
// .getLogger()方法返回的是一个Logger对象实例
// 括号里面的参数用来记现在所在的类(LoggingDemo.class.getName())
private static final Logger log = LogManager.getLogger(LoggingDemo.class.getName()); public static void main(String[] args) {
log.debug("Debug message logged");
log.error("Error message logged");
log.fatal("Fatal message logged"); }
}

运行结果:

注:

1、导包是一定要注意选择如图所示的包,否则程序会报错。

二、Log4j 将检查配置文件路径的系统属性文件“Log4j.configurationFile”


如果没有定义系统属性文件,则配置顺序优先级如下:
Property ConfigurationFactory 将在 classpath 中查找 log4j2-test. Properties 配置文件

YAML ConfigurationFactory将在classpath中查找log4j2-test.yaml 和log4j2-test.yml配置文 件

JSON ConfigurationFactory将在classpath中查找log4j2-test.jsn和log4j2-test.json配置文件

XML ConfigurationFactory将在classpath中查找log4j2-test.xml配置文件

Property ConfigurationFactory将在classpath中查找log4j2.properties配置文件

YAML ConfigurationFactory将在classpath中查找log4j2.yml和log4j2.yaml配置文件

JSON ConfigurationFactory将在classpath中查找log4j2.jsn和log4j2.json配置文件

XML ConfigurationFactory将在classpath中查找log4j2.xml配置文件

如果没有提供任何配置文件,默认配置将会生效会产生以下默认行为:
1、将使用Root Logger
2、 Root Logger设为ERROR
3、 Root Logger将日志消息打印到控制台
4、 样式采用%d{HH:mm:ss.SSS}[%t]%-5level%logger{36}-%msg%n

三、

Log Level 什么时候用?
 OFF  不记录日志
 FATAL  当一个严重的错误阻止应用程序继续时用
 ERROR  当应用程序出现错误时,这种错误一般是可恢复的
 WARN  当事件可能导致错误时
 INFO  为事件记录信息
 DEBUG  有调试需求时
 TRACE  需要详细的调试消息时,通常通过应用程序捕获跟踪信息
 ALL  所有事件都应该记录

如果有不明白的小伙伴可以加群“555191854”问我,群里都是软件行业的小伙伴相互一起学习。

内容具有连惯性,未标注的地方可以看前面的博客,这是一整套关于ava+selenium自动化的内容,从java基础开始。

欢迎关注,转载请注明来源。

最新文章

  1. InstallShield 脚本语言学习笔记
  2. BZOJ3196: Tyvj 1730 二逼平衡树
  3. jQuery美女幻灯相册轮播源代码
  4. C#引用C++开发的DLL
  5. Android的系统属性SystemProperties
  6. js 实现angylar.js view层和model层双绑定(改变view刷新 model,改变model自动刷新view)
  7. 【转】SVN linux命令及 windows相关操作(二)
  8. 【动态规划】Vijos P1011 清帝之惑之顺治
  9. [iOS]C语言知识点系列视频
  10. ecshop屏蔽wap功能
  11. calling c++ from golang with swig--windows dll (四)
  12. shift+zz保存并退出
  13. 前端自动化构建工具Gulp简单入门
  14. jmeter知识总结(一)
  15. Qt UI tips
  16. method.invoke()s
  17. tomcat架构分析和源码解读
  18. Salesforce的报表和仪表板
  19. python基础知识回顾之字符串
  20. mongodb副本集修改配置问题

热门文章

  1. 使用docker启动mysql
  2. Python文件中将print的输出内容重定向到变量中
  3. 异常:Parameter 'username' not found. Available parameters are [arg1, arg0, param1, param2]
  4. Python 爬虫从入门到进阶之路(十三)
  5. 50道SQL练习题及答案与详细分析!!!
  6. 微服务-springboot-读写分离(多数据源切换)
  7. 小白开学Asp.Net Core 《七》
  8. Java编程思想:进程控制
  9. NOIP2018提高/普及成绩
  10. kali换源