Java --> Logback日志框架

打印 上一主题 下一主题

主题 526|帖子 526|积分 1578

 
 
Logback快速入门:
需求:导入Logback日志技术到项目中,用于记录系统的日志信息

  • 第一步:在项目下新建文件夹,导入Logback的相关jar包到改文件夹下,并添加到项目依赖库中。
在模块位置右键new一个directory,命名为lib,将相关jar包拷贝到lib下:

 
 添加到依赖库:

 
 出现如下箭头说明添加成功:

 

  •  第二步:将Logback的核心配置文件logback.xml直接拷贝到src目录下(必须是src目录下)
点击此处下载logback.xml文件,跳转到网页之后在页面右键即可下载

  • 第三步:在代码中获取日志的对象
  1. public static final Logger LOGGER = LoggerFactory.getLogger("类对象");
复制代码
Logback日志技术初识示例:
  1. 1 import org.slf4j.Logger;
  2. 2 import org.slf4j.LoggerFactory;
  3. 3
  4. 4 public class Test {
  5. 5     //创建Logback的日志对象,代表了日志技术
  6. 6     public static final Logger LOGGER = LoggerFactory.getLogger("Test.class");
  7. 7     public static void main(String[] args) {
  8. 8         try {
  9. 9             LOGGER.debug("main方法开始执行");
  10. 10             LOGGER.info("我开始记录第二行日志,开始做除法");
  11. 11             int a = 10;
  12. 12             int b = 0;
  13. 13             LOGGER.trace("a = " + a);
  14. 14             LOGGER.trace("b = " + b);
  15. 15             System.out.println(a/b);
  16. 16         } catch (Exception e) {
  17. 17             e.printStackTrace();
  18. 18             LOGGER.error("功能出现异常:" + e);
  19. 19         }
  20. 20     }
  21. 21 }
复制代码
可以在logback.xml配置文件中更改相关的配置信息(如日志的打印位置):

 
 示例程序运行结果:

 
 相应的,磁盘中也保存的有与控制台一样的日志信息:

 
 由此看来,使用日志可以达到长久有效地保存信息,并且还详细地记录了某项功能地访问,即便是日后项目上线,也可以在文件中实时的检测项目地运行状况。

  • Logback日志输出位置、格式设置:
logback.xml内部详细信息及设置:
  1. 1 <?xml version="1.0" encoding="UTF-8"?>
  2. 2 <configuration>
  3. 3     
  4. 6     <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
  5. 7         
  6. 8         <target>System.out</target>
  7. 9         <encoder>
  8. 10            
  9. 12             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level]  %c [%thread] : %msg%n</pattern>
  10. 13         </encoder>
  11. 14     </appender>
  12. 15
  13. 16     
  14. 17     <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  15. 18         <encoder>
  16. 19             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
  17. 20             <charset>utf-8</charset>
  18. 21         </encoder>
  19. 22         
  20. 23         <file>D:/Intellij_IDEA_install/code/logback_message.log</file>
  21. 24         
  22. 25         <rollingPolicy
  23. 26                 class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
  24. 27            
  25. 28             <fileNamePattern>D:/Intellij_IDEA_install/code/logback_message-%d{yyyy-MMdd}.log%i.gz</fileNamePattern>
  26. 29            
  27. 30             <maxFileSize>1MB</maxFileSize>
  28. 31         </rollingPolicy>
  29. 32     </appender>
  30. 33
  31. 34     
  32. 40     <root level="ALL">
  33. 41         <appender-ref ref="CONSOLE"/>
  34. 42         <appender-ref ref="FILE" />
  35. 43     </root>
  36. 44 </configuration>
复制代码

  • 日志级别设置:

  • TRACE < DEBUG < INFO < WARN < ERROR
  • 默认级别时DEBUG(忽略大小写),只输出不低于当前级别的日志
  • ALL和OFF分别时打开全部日志和关闭全部日志

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

河曲智叟

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表