• Spring Boot中使用logback日志框架


    说明:Spring Boot在最新的版本中默认使用了logback框架。一般来说使用时只需在classpath下创建logback.xml即可,而官方推荐使用logback-spring.xml替代,效果更好,并且官方的application.properties文件也可以配置,但是选项较少。

    logback.xml文件参考:http://www.cnblogs.com/EasonJim/p/7801231.html

    application.properties文件参考:

    logging.config = #记录配置文件的位置。例如Logback的`classpath:logback.xml` 
    logging.exception-conversion-word =%wEx #记录异常时使用的转换字。
    logging.file =#日志文件名称。例如`myapp.log` 
    logging.level.* = #日志级别严重性映射。例如`logging.level.org.springframework = DEBUG` 
    logging.path = #日志文件的位置。例如`/var/log` 
    logging.pattern.console = #输出到控制台的Appender模式。仅支持默认的登录设置。
    logging.pattern.file = #输出到文件的Appender模式。仅支持默认的登录设置。
    logging.pattern.level = #日志级别的Appender模式(默认%5p)。仅支持默认的登录设置。
    logging.register-shutdown-hook = false#初始化时为日志系统注册一个关闭钩子

    通过启动参数设置:

    Spring的配置(可以通过启动是--xxx指定)系统属性(可以通过启动是-Dxxx指定)注释

    logging.exception-conversion-word

    LOG_EXCEPTION_CONVERSION_WORD

    记录异常时使用的转换字。

    logging.file

    LOG_FILE

    用于默认日志配置(如果已定义)。

    logging.path

    LOG_PATH

    用于默认日志配置(如果已定义)。

    logging.pattern.console

    CONSOLE_LOG_PATTERN

    在控制台上使用的日志模式(stdout)。(仅支持默认的登录设置。)

    logging.pattern.file

    FILE_LOG_PATTERN

    在文件中使用的日志模式(如果启用LOG_FILE)。(仅支持默认的登录设置。)

    logging.pattern.level

    LOG_LEVEL_PATTERN

    用于呈现日志级别的格式(默认%5p)。(仅支持默认的登录设置。)

    PID

    PID

    当前的进程ID(如果可能,还没有被定义为OS环境变量时发现)。

    说明:上面表格可以通过properties指定,也可以通过启动参考--xxx指定,同时也支持系统属性-Dxxx启动时指定。

    配置技巧:

    1、logging.config=classpath:logback-boot.xml,可以指定xml的配置文件,但是不要使用logback.xml,因为logback.xml的加载早于application.properties。

    2、默认情况下,spring boot从控制台打印出来的日志级别只有ERROR, WARN 还有INFO,如果你想要打印debug级别的日志,可以通过application.properites配置debug=true,也可以这样指定java -jar C:UsersAdministratorDesktopxxdemo.jar --debug

    配置项参考:

    logging.level.root=INFO
    logging.level.org.springframework.web=DEBUG
    logging.level.org.hibernate=ERROR

    3、默认情况下spring boot是不将日志输出到日志文件中,但你可以通过在application.properites文件中配置logging.file文件名称和logging.path文件路径,将日志输出到文件中。

    配置项参考:

    logging.path=F:\demo
    logging.file=demo.log
    logging.level.root=info

    4、logging.path与logging.file的配置注意事项

    • 里若不配置具体的包的日志级别,日志文件信息将为空
    • 若只配置logging.path,那么将会在F:demo文件夹生成一个日志文件为spring.log(ps:该文件名是固定的,不能更改)。如果path路径不存在,会自动创建该文件夹
    • 若只配置logging.file,那将会在项目的当前路径下生成一个demo.log日志文件。这里可以使用绝对路径如,会自动在e盘下创建文件夹和相应的日志文件。
      logging.file=e:\demo\demo.log
    • logging.path和logging.file同时配置,不会在这个路径有F:demodemo.log日志生成,logging.path和logging.file不会进行叠加(要注意)
    • logging.path和logging.file的value都可以是相对路径或者绝对路径

    参考:

    https://docs.spring.io/spring-boot/docs/1.5.7.RELEASE/reference/htmlsingle/#boot-features-custom-log-configuration(官方配置文件)

    http://www.cnblogs.com/lixuwu/p/5804793.html(以上部分内容转自此篇文章)

    http://blog.csdn.net/lu1005287365/article/details/53382283

    http://blog.csdn.net/sun_t89/article/details/52130839

    https://springframework.guru/using-logback-spring-boot/

  • 相关阅读:
    外键的缺陷
    laravel 关联模型
    n的阶乘末尾出现的次数
    JavaScript的self和this使用小结
    cocos2dx中的内存管理方式
    c++ 与 lua 简单交互参数介绍
    c++的单例模式及c++11对单例模式的优化
    cocos2dx帧动画
    cocos2dx中坐标系
    cocos2dx中替代goto的用法:do{}while(0)和CC_BREAK_IF
  • 原文地址:https://www.cnblogs.com/EasonJim/p/7801486.html
Copyright © 2020-2023  润新知