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中未生成日志文件_Java_Logging_Dropwizard - Fatal编程技术网

Java dropwizard中未生成日志文件

Java dropwizard中未生成日志文件,java,logging,dropwizard,Java,Logging,Dropwizard,我有以下日志方案。我想每4小时轮换一次日志。但当我使用这些设置启动应用程序时,/logs/mylogs.log文件不会生成。我在应用程序的目录中创建了日志目录 如果我将文件名模式更改为包含分钟,则效果很好,如- archivedLogFilenamePattern:./logs/mylogs-%d{yyyy-MM-dd-hh-MM}.log.gz 我很困惑为什么它不适用于小时模式 logging: level: WARN appenders: - type: console

我有以下日志方案。我想每4小时轮换一次日志。但当我使用这些设置启动应用程序时,
/logs/mylogs.log
文件不会生成。我在应用程序的目录中创建了
日志
目录

如果我将文件名模式更改为包含分钟,则效果很好,如-
archivedLogFilenamePattern:./logs/mylogs-%d{yyyy-MM-dd-hh-MM}.log.gz
我很困惑为什么它不适用于小时模式

logging:
  level: WARN
  appenders:
    - type: console
      threshold: WARN
    - type: file
      threshold: WARN
      logFormat: "%-6level [%d{HH:mm:ss.SSS}] [%t] %logger{5} - %X{code} %msg %n"
      currentLogFilename: ./logs/mylogs.log
      archive: true
      archivedLogFilenamePattern: ./logs/mylogs-%d{yyyy-MM-dd-hh}.log.gz
      archivedFileCount: 4
使用dropwizard 1.3.7

dropwizard用于日志记录。这里使用的滚动策略是

要在每小时开始时滚动的文件名模式:

  archivedLogFilenamePattern: ./logs/mylogs-%d{yyyy-MM-dd_HH}.log.gz
不确定是否有办法每n小时翻滚一次。您可能想考虑使用哪种DoopWistor支持。这将允许您根据大小进行滚动。例如

  - type: file
    threshold: ALL
    maxFileSize: 100MB
    currentLogFilename: ./logs/max-file-size-example.log
    archivedLogFilenamePattern: ./logs/max-file-size-example-%i.log.gz
    archivedFileCount: 5

但是
/logs/mylogs.log
在应用程序目录下。你期待什么?我将archivedLogFilenamePattern更改为你建议的模式,它现在正在按预期工作。