配置
配置语法
正如先前的示例以及后面的示例所示,Log4j允许你轻松地重新定义日志记录行为,而无需修改应用程序。可以禁用应用程序的某些部分的日志记录,仅在满足特定标准时记录日志,例如为特定用户执行的动作,将输出路由到Flume或日志报告系统等。能够做到这一点需要理解配置文件的语法。
XML文件中的配置元素接受几个属性:
属性名称 | 描述 |
---|---|
advertiser | (可选)用于通知单个FileAppender或SocketAppender配置的通知者插件名称。提供的唯一通知者插件是“multicastdns”。 |
dest | 或者为输出到stderr的“err”,或者为文件路径或URL。 |
monitorInterval | 检查文件配置更改之前必须经过的最短时间(以秒为单位)。 |
name | 配置的名称。 |
packages | 以逗号分隔的包名称列表,用于搜索插件。每个类加载器只加载一次插件,因此更改此值可能对重新配置没有任何影响。 |
schema | 标识类加载器找到用于验证配置的XML模式的位置。仅当strict设置为true时有效。如果未设置,将不会发生模式验证。 |
shutdownHook | 指定当JVM关闭时Log4j是否应该自动关闭。关闭挂接默认情况下启用,但可以通过此属性将其设置为“禁用”。 |
shutdownTimeout | 指定JVM关闭时将关闭的Appender和后台任务的毫秒数。 默认值为零,这意味着每个Appender使用其默认超时,并且不等待后台任务。 并不是所有的Appender都会尊重这一点,这是一个提示,而不是一个绝对的保证,关机程序不会花更长时间。设置过低会增加丢失尚未写入最终目标的未完成日志事件的风险。请参阅LoggerContext.stop(long,java.util.concurrent.TimeUnit)。(如果shutdownHook 设置为“disable”,则不使用)。 |
status | 应该记录到控制台的内部Log4j事件的级别。此属性的有效值为“trace”,“debug”,“info”,“warn”,“error”和“fatal”。Log4j会将有关初始化,翻转和其他内部操作的详细信息记录到状态记录器。如果您需要对log4j进行故障排除,则设置status=“trace”是您可以使用的第一个工具之一。 |
strict | 允许使用严格的XML格式。JSON配置不支持。 |
verbose | 在加载插件时启用诊断信息。 |