Module
java.logging
Package java.util.logging
提供Java¢2平台核心日志记录工具的类和接口。 日志API的核心目标是支持在客户站点维护和维护软件。
日志有四个主要目标用途:
- 最终用户和系统管理员的问题诊断 。 这包括简单记录可以在本地修复或跟踪的常见问题,例如资源耗尽,安全故障和简单的配置错误。
- 现场服务工程师的问题诊断 。 现场服务工程师使用的日志信息可能比系统管理员要求的复杂和冗长。 通常,这些信息将需要在特定子系统内进行额外的记录
- 发展组织的问题诊断 。 当现场出现问题时,可能需要将捕获的记录信息返回原始开发团队进行诊断。 这种记录信息可能非常详细和不可忽视。 这些信息可能包括对特定子系统的内部执行的详细跟踪。
- 开发人员的问题诊断 Logging API也可用于帮助调试正在开发的应用程序。 这可能包括目标应用程序生成的记录信息以及下级库生成的日志信息。 但是请注意,尽管这种使用是完全合理的,但记录API并不打算替代开发环境中可能已经存在的正常调试和剖析工具。
该包的关键要素包括:
- 记录器 :应用程序进行日志记录调用的主要实体。 Logger对象用于记录特定系统或应用程序组件的消息。
- LogRecord :用于在日志记录框架和各个日志处理程序之间传递日志请求。
- 处理程序 :将LogRecord对象导出到各种目标,包括内存,输出流,控制台,文件和套接字。 为此目的存在各种Handler子类。 附加处理程序可能由第三方开发并交付在核心平台之上。
- 级别 :定义可用于控制日志记录输出的一组标准日志记录级别。 程序可以配置为输出某些级别的日志记录,而忽略其他级别的输出。
- 过滤器 :提供对日志记录的精细控制,超出日志级别提供的控制。 日志记录API支持通用过滤器机制,允许应用程序代码附加任意过滤器来控制日志输出。
- 格式化器 :支持格式化LogRecord对象。 该包包括两个格式化程序SimpleFormatter和XMLFormatter,用于分别以纯文本或XML格式化日志记录。 与处理程序一样,第三方可能会开发其他格式化程序。
日志API提供静态和动态配置控制。 静态控制使现场服务人员可以设置特定配置,然后使用新的日志记录设置重新启动应用程序。 动态控制允许在当前运行的程序中更新日志记录配置。 API还允许为系统的不同功能区域启用或禁用日志记录。 例如,现场服务工程师可能有兴趣跟踪所有AWT事件,但可能对套接字事件或内存管理不感兴趣。
空指针
通常,除非在javadoc中另有说明,否则方法和构造函数将抛出NullPointerException(如果传递一个空参数)。 这个规则的一个大例外是Logger类中的记录方便方法(config,enter,exiting,fine,fine,finest,log,logp,logrb,severe,throwing和warning方法)将接受null值所有参数除了初始的Level参数(如果有的话)。
相关文档
有关控制流程的概述,请参阅Java Logging Overview
- 从以下版本开始:
- 1.4
-
接口摘要 接口 描述 Filter 可以使用过滤器对超出记录级别提供的控制范围内的记录进行细粒度控制。LoggingMXBean Deprecated. LoggingMXBean
不再是platform MXBean
,而是用PlatformLoggingMXBean
替代。 -
类摘要 Class 描述 ConsoleHandler 这个Handler
发布日志记录到System.err
。ErrorManager 可以将ErrorManager对象附加到处理程序,以处理在记录期间在处理程序中发生的任何错误。FileHandler 简单文件记录Handler
。Formatter 格式化程序提供对LogRecords进行格式化的支持。Handler 一个Handler
对象从需要日志消息Logger
和出口他们。Level Level类定义了一组可用于控制日志输出的标准日志记录级别。Logger Logger对象用于记录特定系统或应用程序组件的消息。LoggingPermission 当SecurityManager运行的代码调用其中一个日志控件方法(如Logger.setLevel)时,SecurityManager将检查该权限。LogManager 有一个全局LogManager对象用于维护关于日志记录器和日志服务的一组共享状态。LogRecord LogRecord对象用于在日志框架和各个日志处理程序之间传递日志请求。MemoryHandler Handler
缓冲区内存中循环缓冲区中的请求。SimpleFormatter 以人类可读格式打印LogRecord
的简要摘要。SocketHandler 简单网络记录Handler
。StreamHandler 基于流的日志记录Handler
。XMLFormatter 将LogRecord格式化为标准XML格式。