Как настроить местоположение и ротацию журнала доступа Dropwizard?
Моя конфигурация регистрации выглядит так:
logging:
level: INFO
loggers:
"com.example.broker": DEBUG
"org.apache.http.wire": DEBUG
console:
threshold: ERROR
file:
enabled: true
currentLogFilename: /opt/broker/log/broker.log
archivedLogFilenamePattern: /opt/broker/log/broker.%d.log.gz
archivedFileCount: 14
Это потрясающе, я получаю все свои журналы в указанных файлах с правильной ротацией и очисткой.
За исключением журнала доступа, который все еще идет в стандартный вывод и, таким образом, заканчивается (в моем случае) в /var/log/upstart/broker.log
который доступен только root. Я хотел бы использовать ту же или аналогичную конфигурацию ведения журнала для перенаправления этих журналов в /opt/broker/log/access.log
,
Возможно ли это и если да, то как?
3 ответа
После перехода от codahale к dropwizard.io расположение соответствующего раздела руководства теперь находится по адресу: http://www.dropwizard.io/0.9.2/docs/manual/configuration.html.
Обратите внимание, что журнал запросов теперь установлен в server
скорее, чем http
- создание соответствующей конфигурации YAML:
server:
requestLog:
timeZone: UTC
appenders:
- type: file
currentLogFilename: /opt/broker/log/access.log
threshold: ALL
archive: true
archivedLogFilenamePattern: /opt/broker/log/access.%d.log.gz
archivedFileCount: 14
Чтение документации на самом деле помогает:
http:
requestLog:
console:
enabled: false
file:
enabled: true
currentLogFilename: /opt/broker/log/access.log
archivedLogFilenamePattern: /opt/broker/log/access.%d.log.gz
archivedFileCount: 14
Конфигурация журнала доступа Dropwizard доступна здесь.
server:
requestLog:
appenders:
- type: file
currentLogFilename: /var/log/our-app/access.log
archivedLogFilenamePattern: /var/log/our-app/accedd-%d.log.gz