gpt4 book ai didi

java - Dropwizard 通过代码进行日志记录

转载 作者:太空宇宙 更新时间:2023-11-04 12:42:27 25 4
gpt4 key购买 nike

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

代码。

@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.
}

那么,我该怎么做呢?

最佳答案

您可以通过覆盖工厂来覆盖 dropwizard 中的日志记录。请参阅该类的 DefaultLogginFactory。

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

Dropwizard doesn't log custom loggers to file

本质上,您需要覆盖日志记录工厂中的构建方法并在其中添加自定义代码。

希望对您有所帮助,

阿图尔

关于java - Dropwizard 通过代码进行日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36694910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com