gpt4 book ai didi

java - 在外部库中启用日志记录

转载 作者:太空狗 更新时间:2023-10-29 14:23:29 24 4
gpt4 key购买 nike

我正在使用 retrofit来自 square 的库(添加为 jar 依赖项),它配置了一个记录器。 ( link )

  private static final Logger LOGGER = Logger.getLogger(RestAdapter.class.getName());

如何(从我的应用程序)在此库中启用日志记录。

我看到像 this 这样的支票

if (LOGGER.isLoggable(Level.FINE)) {
logResponseBody(url, body, statusCode, elapsedTime);
}

看起来,我可能必须获取此记录器并设置日志级别。或者 java 记录器是否从配置文件、环境、类路径读取日志级别设置??

我对java平台不熟悉。感谢您在控制台中记录来自此(外部)库的消息的任何帮助。例如,我需要在我的 android 控制台/logCat(设置为详细级别)中查看来自此类 (RestAdapter) 的所有日志消息。

谢谢。

编辑 1:

我将以下内容添加到我的入口点,我可以看到它已被调用。还是没有相关日志

static final String LOGGER_NAME = "retrofit.http.RestAdapter";

@Override
public void onCreate() {
super.onCreate();
Logger mLoggerInstance = Logger.getLogger(LOGGER_NAME);
if (mLoggerInstance != null) {
mLoggerInstance.setLevel(Level.FINE);
}
}

编辑 2:

我编辑了外部库,将日志级别 FINE 的引用更改为 DEBUG。这让我看到了日志,仍然想知道单独通过记录器配置可以达到同样的效果。

我在这里看到一个帖子,但没有用。 Logging with Logger under Android

不确定,但看起来 Debug 以下的调试级别在 Android 中被抑制了。 ( source )

最佳答案

这是 Java 日志记录 API。默认情况下,它使用全局 jre/lib/logging.properties 配置文件。您可以将它复制到您的应用程序文件夹,更改它并将其作为 java arg 传递

java -Djava.util.logging.config.file=logging.properties ...

阅读 Oracle 的概述 http://docs.oracle.com/javase/7/docs/api/java/util/logging/package-summary.html或这篇文章 http://tutorials.jenkov.com/java-logging/configuration.html更多详情

关于java - 在外部库中启用日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14575193/

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