Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Dropwizard登录代码_Java_Rest_Dropwizard - Fatal编程技术网

Java Dropwizard登录代码

Java Dropwizard登录代码,java,rest,dropwizard,Java,Rest,Dropwizard,我正在使用dropwizard 0.7-rc1。我可以通过提供config.yaml来编写日志。 我想通过代码重写一些属性。我试过使用代码,但不起作用 代码 @覆盖 公共无效运行(XConfiguration配置,环境) 抛出异常{ configuration.setLoggingFactory(空); LoggingFactory LoggingFactory=新LoggingFactory(); FileAppenderFactory FileAppenderFactory=新FileApp

我正在使用dropwizard 0.7-rc1。我可以通过提供config.yaml来编写日志。 我想通过代码重写一些属性。我试过使用代码,但不起作用

代码

@覆盖
公共无效运行(XConfiguration配置,环境)
抛出异常{
configuration.setLoggingFactory(空);
LoggingFactory LoggingFactory=新LoggingFactory();
FileAppenderFactory FileAppenderFactory=新FileAppenderFactory();
fileAppenderFactory.setArchive(true);
fileAppenderFactory.setArchivedFileCount(7);
setArchivedLogFilenamePattern(“rest_服务-%d{yyyy MM dd}-%i.log.gz”);
持续时间=持续时间。毫秒(100);
fileAppenderFactory.setBatchDuration(duration);
setBatchSize(128);
fileAppenderFactory.setBounded(false);
fileAppenderFactory.setCurrentLogFilename(“rest_service.log”);
fileAppenderFactory.setLogFormat(“%6级[%d{HH:mm:ss.SSS}][%t]%logger{5}-%X{code}%msg%n”);
fileAppenderFactory.setThreshold(Level.INFO);
fileAppenderFactory.setTimeZone(TimeZone.getTimeZone(“UTC”);
ArrayList ArrayList=新的ArrayList();
add(fileAppenderFactory);
loggingFactory.setAppenders(arrayList);
配置。设置loggingFactory(loggingFactory);
//注册了一些资源。
}

那么,我该怎么做呢?

您可以通过覆盖工厂来覆盖登录dropwizard。有关该类,请参见DefaultLogginFactory

我在这里写了一个关于如何在dropwizard中覆盖内容的完整示例:

基本上,您需要覆盖日志工厂中的构建方法,并在那里添加自定义代码

我希望这有帮助

阿图尔

@Override
    public void run(XConfiguration configuration, Environment environment)
            throws Exception {
        configuration.setLoggingFactory(null);
        LoggingFactory loggingFactory = new LoggingFactory();
        FileAppenderFactory fileAppenderFactory = new FileAppenderFactory();
        fileAppenderFactory.setArchive(true);
        fileAppenderFactory.setArchivedFileCount(7);
        fileAppenderFactory.setArchivedLogFilenamePattern("rest_service-%d{yyyy-MM-dd}-%i.log.gz");
        Duration duration = Duration. milliseconds(100);
        fileAppenderFactory.setBatchDuration(duration);
        fileAppenderFactory.setBatchSize(128);
        fileAppenderFactory.setBounded(false);
        fileAppenderFactory.setCurrentLogFilename("rest_service.log");
        fileAppenderFactory.setLogFormat("%-6level [%d{HH:mm:ss.SSS}] [%t] %logger{5} - %X{code} %msg %n"); 
        fileAppenderFactory.setThreshold(Level.INFO);
        fileAppenderFactory.setTimeZone(TimeZone.getTimeZone("UTC"));
        ArrayList<AppenderFactory> arrayList = new ArrayList<AppenderFactory>();
        arrayList.add(fileAppenderFactory);
        loggingFactory.setAppenders(arrayList);
        configuration.setLoggingFactory(loggingFactory);

        //registered some resources.     
}