本文概述了如何在使用 Azure SDK for Java 的应用程序中,通过 java.util.logging
添加日志记录。 框架 java.util.logging
是 JDK 的一部分。 如在 Azure SDK for Java 中配置日志记录中所述,所有 Azure 客户端库都通过 适用于 Java 的简单日志记录外观进行日志(SLF4J),因此可以使用日志记录框架,例如 java.util.logging
。
若要启用 java.util.logging
,必须执行两项作:
- 包括 SLF4J 适配器作为
java.util.logging
依赖项, - 在 /src/main/resources 项目目录下创建名为 logging.properties 的文件。
有关配置记录器的详细信息,请参阅 Oracle 文档中 配置日志记录输出。
添加 Maven 依赖项
若要添加 Maven 依赖项,请在项目的 pom.xml 文件中包含以下 XML。 将 1.7.30
版本号替换为 SLF4J JDK14 绑定页上显示的最新已发布版本号。
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>1.7.30</version> <!-- replace this version with the latest available version on Maven central -->
</dependency>
向项目添加 logging.properties
若要使用 java.util.logging
进行记录,请在项目的 ./src/main/resources 目录下或其他地方创建名为 logging.properties 的文件。 此文件包含用于自定义日志记录需求的日志记录配置。 通过设置 java.util.logging.config.file
系统属性来提供文件的路径。 在创建记录器实例之前,必须设置此属性。 有关详细信息,请参阅 Java 日志记录:配置。
控制台日志记录
可以创建配置以登录到控制台,如以下示例所示。 此示例配置为记录 INFO 级别或更高级别的所有日志记录事件,无论事件来自何处。
handlers = java.util.logging.ConsoleHandler
.level = INFO
java.util.logging.ConsoleHandler.level = INFO
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.SimpleFormatter.format=[%1$tF %1$tH:%1$tM:%1$tS.%1$tL] [%4$s] %3$s %5$s %n
将日志记录到文件
前面的示例将日志记录到控制台,这通常不是记录日志的首选位置。 若要配置为将日志记录到文件,请使用以下配置:
handlers = java.util.logging.FileHandler
.level = INFO
java.util.logging.FileHandler.pattern = %h/myapplication.log
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
java.util.logging.FileHandler.level = INFO
此代码将在主目录中创建名为 myapplication.log 的文件(%h
)。 此记录器在特定时间段后不支持自动文件轮换。 如果需要此功能,则需要编写计划程序来管理日志文件轮换。
后续步骤
本文介绍了 java.util.logging
的配置以及如何让 Java 版的 Azure SDK 使用它进行日志记录。 由于 Azure SDK for Java 适用于所有 SLF4J 日志记录框架,因此请考虑查看 SLF4J 用户手动 以了解更多详细信息。
掌握日志记录后,请考虑了解 Azure 在 Spring 等框架中提供的集成。