DropWizard 0.7.1 记录文件追加器问题
DropWizard 0.7.1 logging file appender issues
使用 DW 0.7.1 我成功地看到了具有以下配置的 http 请求日志:
server:
requestLog:
appenders:
- type: file
currentLogFilename: /var/test/http-test.log
archivedLogFilenamePattern: /var/test/http-test-%d.log
archivedFileCount: 5
timeZone: UTC
但是,对于非 http 请求日志记录的日志记录 yml 条目配置如下(仅使用基本定义)
logging:
# The default level of all loggers.
# Can be OFF, ERROR, WARN, INFO, DEBUG, TRACE, or ALL.
level: ERROR
appenders:
- type: file
currentLogFilename: /var/test/test.log
archivedLogFilenamePattern: /var/test/test-%d.log
archivedFileCount: 5
timeZone: UTC
我从来没有在/var/test/
看到日志
相反,我看到它只是将默认日志信息级别的内容假脱机到控制台。注意:如果我用控制台替换 'file',引导启动会告诉我“currentLogFilename 不是控制台的属性”等,所以 DI 正在触发。似乎如果我使用文件...我无法将它带到除默认信息级别的控制台之外的任何地方。
我知道问题出在哪里了。
我的 ApiConfiguration(io.dropwizard.Configuration 的扩展名)试图绑定到 'logging' 值,如下所示
@Valid
@NotNull
@JsonProperty("logging")
private LoggingFactory loggingFactory = new LoggingFactory();
public LoggingFactory getLoggingFactory()
{
return loggingFactory;
}
凭直觉,我简单地删除了 ApiConfiguration 中的绑定,现在日志以预期的日志级别写入我预期的 /var/test/ 位置。
使用 DW 0.7.1 我成功地看到了具有以下配置的 http 请求日志:
server:
requestLog:
appenders:
- type: file
currentLogFilename: /var/test/http-test.log
archivedLogFilenamePattern: /var/test/http-test-%d.log
archivedFileCount: 5
timeZone: UTC
但是,对于非 http 请求日志记录的日志记录 yml 条目配置如下(仅使用基本定义)
logging:
# The default level of all loggers.
# Can be OFF, ERROR, WARN, INFO, DEBUG, TRACE, or ALL.
level: ERROR
appenders:
- type: file
currentLogFilename: /var/test/test.log
archivedLogFilenamePattern: /var/test/test-%d.log
archivedFileCount: 5
timeZone: UTC
我从来没有在/var/test/
看到日志相反,我看到它只是将默认日志信息级别的内容假脱机到控制台。注意:如果我用控制台替换 'file',引导启动会告诉我“currentLogFilename 不是控制台的属性”等,所以 DI 正在触发。似乎如果我使用文件...我无法将它带到除默认信息级别的控制台之外的任何地方。
我知道问题出在哪里了。
我的 ApiConfiguration(io.dropwizard.Configuration 的扩展名)试图绑定到 'logging' 值,如下所示
@Valid
@NotNull
@JsonProperty("logging")
private LoggingFactory loggingFactory = new LoggingFactory();
public LoggingFactory getLoggingFactory()
{
return loggingFactory;
}
凭直觉,我简单地删除了 ApiConfiguration 中的绑定,现在日志以预期的日志级别写入我预期的 /var/test/ 位置。