Java日志组件logback使用:加载非类路径下的配置文件并设置定时更新
2017-12-22 16:20
1441 查看
logback加载非类路径下的logback配置文件并设置定时更新
定时重新加载logback配置文件
logback.xml<configuration scan="true" scanPeriod="30 seconds"> .... </configuration>
配置说明:
- scan: 设置为true,代表会在指定的时间内重新加载日志配置文件
- scanPeriod:当scan=true时,日志配置文件会在指定的单位时间内重新加载,默认是每分钟会重载一次。
- scanPeriod的配置说明:
时间单位:milliseconds, seconds, minutes , hours
eg:
5分钟: <configuration scan="true" scanPeriod="5 minutes"> 1小时: <configuration scan="true" scanPeriod="1 hours">
加载非类路径下的logback.xml配置文件
主方法中调用如下代码:
//logback.xml的路径名 File file = new File(System.getProperty("user.dir") + "/conf/logback.xml"); LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory(); JoranConfigurator joranConfigurator = new JoranConfigurator(); joranConfigurator.setContext(loggerContext); loggerContext.reset(); try { joranConfigurator.doConfigure(file); } catch (Exception e) { System.out.println(String.format("Load logback config file error. Message: ", e.getMessage())); } StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext);
剥离代码为一个类:
import ch.qos.logback.classic.LoggerContext; import ch.qos.logback.classic.joran.JoranConfigurator; import ch.qos.logback.core.util.StatusPrinter; import org.slf4j.LoggerFactory; import java.io.File; /** * Created by xuyh at 2017/11/20 14:32. */ public class LogbackInit { /** * 设置logback.xml配置文件并加载 * * @param configFilepathName 配置文件路径名 */ public static void initLogback(String configFilepathName) { File file = new File(configFilepathName); LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory(); JoranConfigurator joranConfigurator = new JoranConfigurator(); joranConfigurator.setContext(loggerContext); loggerContext.reset(); try { joranConfigurator.doConfigure(file); } catch (Exception e) { System.out.println(String.format("Load logback config file error. Message: ", e.getMessage())); } StatusPrinter.printInCaseOfErrorsOrWarnings(loggerContext); } }
调用
//初始化logback日志配置文件 LogbackInit.initLogback(System.getProperty("user.dir") + "/conf/logback.xml");
相关文章推荐
- java日志组件logback、slf4j的介绍及配置使用方法(一)
- java 日志组件logback的介绍及配置使用方法
- java日志组件logback、slf4j的介绍及配置使用方法(二)
- JAVA使用笔记一(配置日志文件logback以及jetty配置)
- javaee web.xml中如何设置配置文件的加载路径实例详解
- java获取当前路径及加载配置文件
- 日志组件logback的介绍及配置使用方法(一)
- 日志组件logback的介绍及配置使用方法(二)
- java logback手动加载配置文件
- java基于xml配置的通用excel单表数据导入组件(二、xml配置文件解析加载)
- 日志组件logback的介绍及配置使用方法(一)
- [BAT][JAVA]定时任务之-Quartz使用篇(通过这个配置可以知道在做Quartz的时候需要的jar文件/Cron表达式使用语法/常用Cron表达式)
- java日志log4j配置文件设置
- 日志组件logback的介绍及配置使用方法(一)
- 日志组件logback的介绍及配置使用方法(二)
- 日志组件logback的介绍及配置使用方法
- 【struts2】配置log4j,设置日志文件保存路径
- 日志组件logback的介绍及配置使用方法(一)
- 资源加载 - 相对路径获取JAVA配置文件
- JAVA日志文件的使用与配置文件的读取