Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/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通过Logback自定义日志文件_Java_Logging_Logback_Dropwizard - Fatal编程技术网

Java Dropwizard通过Logback自定义日志文件

Java Dropwizard通过Logback自定义日志文件,java,logging,logback,dropwizard,Java,Logging,Logback,Dropwizard,查看dropwizard的源代码,我可以看到有自定义的粘合代码来读取.yml文件并设置日志记录 我想要我自己的自定义日志文件,但我想使用dropwizard中已经存在的旋转和压缩 除了克隆代码之外,有没有其他方法可以做到这一点 具体来说,它看起来需要创建我自己的类,该类继承自io.dropwizard.FileAppenderFactory 还是我从错误的角度解决了这个问题?如果我正确理解了您的意思,您只想指定要正确记录的文件 在这种情况下,在configuration.yml文件中,您只需要

查看dropwizard的源代码,我可以看到有自定义的粘合代码来读取.yml文件并设置日志记录

我想要我自己的自定义日志文件,但我想使用dropwizard中已经存在的旋转和压缩

除了克隆代码之外,有没有其他方法可以做到这一点

具体来说,它看起来需要创建我自己的类,该类继承自io.dropwizard.FileAppenderFactory


还是我从错误的角度解决了这个问题?

如果我正确理解了您的意思,您只想指定要正确记录的文件

在这种情况下,在configuration.yml文件中,您只需要添加一个文件日志记录配置:

logging:

  # The default level of all loggers. Can be OFF, ERROR, WARN, INFO,
  # DEBUG, TRACE, or ALL.
  level: DEBUG

  appenders:
    - type: file
      currentLogFilename: ./path/to/logfile.log
      archivedLogFilenamePattern: ./path/to/logfile-%d.log.gz
      archivedFileCount: 5
      timeZone: UTC
将“/path/to/logfile”替换为您希望文件日志的路径。不是轮换时的%d将替换为轮换日期,根据


另外,请检查文件记录器的不同。有一种方法,但如果使用库,则需要更改dropwizard的源代码并重新编译。在要扩展的dropwizard的应用程序类中,存在类似blow的静态块,只需对这些行进行注释,并使用您自己的logback.xml文件。这真的是一件痛苦的事

static {
    // make sure spinning up Hibernate Validator doesn't yell at us
    LoggingFactory.bootstrap();
}

注意:dropwizard 0.6不支持在配置文件中使用“appenders”,但0.7支持。我可以将现有的logback.xml文件与yml文件一起使用吗?