搜索

第 18 章 日志记录

download PDF

AMQ Broker 使用 JBoss Logging 框架进行日志记录,并通过 < broker_instance_dir> /etc/logging.properties 配置文件进行配置。此配置文件是一个键值对列表。

您可以在代理配置中指定日志记录器,将它们包括在 logging.properties 配置文件的 loggers 中,如下所示。

loggers=org.eclipse.jetty,org.jboss.logging,org.apache.activemq.artemis.core.server,org.apache.activemq.artemis.utils,org.apache.activemq.artemis.journal,org.apache.activemq.artemis.jms.server,org.apache.activemq.artemis.integration.bootstrap,org.apache.activemq.audit.base,org.apache.activemq.audit.message,org.apache.activemq.audit.resource

下表中显示了 AMQ Broker 中可用的日志记录器。

日志记录器描述

org.jboss.logging

根日志记录器。记录未被其他代理日志记录器处理的任何调用。

org.apache.activemq.artemis.core.server

记录代理内核

org.apache.activemq.artemis.utils

日志实用程序调用

org.apache.activemq.artemis.journal

日志日志调用

org.apache.activemq.artemis.jms

日志 JMS 调用

org.apache.activemq.artemis.integration.bootstrap

日志 bootstrap 调用

org.apache.activemq.audit.base

日志访问所有 JMX 对象方法

org.apache.activemq.audit.message

记录消息操作,如生产、消耗和浏览消息

org.apache.activemq.audit.resource

日志身份验证事件、从 JMX 或 AMQ Broker 管理控制台创建或删除代理资源,并在管理控制台中浏览消息

logger.handlers 键中也配置了两个默认日志记录处理程序,如下所示。

logger.handlers=FILE,CONSOLE
logger.handlers=FILE
日志记录器将日志条目输出到一个文件。
logger.handlers=CONSOLE
日志记录器将日志条目输出到 AMQ Broker 管理控制台。

18.1. 更改日志级别

所有日志记录器的默认日志记录级别是 INFO,在根日志记录器上配置,如下所示。

logger.level=INFO

您可以单独为所有其他日志记录器配置日志级别,如下所示。

logger.org.apache.activemq.artemis.core.server.level=INFO
logger.org.apache.activemq.artemis.journal.level=INFO
logger.org.apache.activemq.artemis.utils.level=INFO
logger.org.apache.activemq.artemis.jms.level=INFO
logger.org.apache.activemq.artemis.integration.bootstrap.level=INFO
logger.org.apache.activemq.audit.base.level=INFO
logger.org.apache.activemq.audit.message.level=INFO
logger.org.apache.activemq.audit.resource.level=INFO

下表描述了可用的日志记录级别。日志级别以升序列出,从最详细到最多。

级别描述

FATAL

对于指示关键服务故障的事件,使用 FATAL 日志级别。如果服务出现 FATAL 错误,则完全无法执行任何类型的请求。

ERROR

将 ERROR 日志记录级别用于指示请求中断或服务请求的能力的事件。服务应该 有一些 容量,以便在存在此级别的错误时继续服务请求。

WARN

对可能指示非关键服务错误的事件使用 WARN 日志级别。不可恢复的错误或请求预期中的次要漏洞符合此说明。WARN 和 ERROR 之间的区别是应用开发人员要做出的。进行这种区别的一个简单条件是错误是否需要用户寻求技术支持。如果错误需要技术支持,请将日志记录级别设置为 ERROR。否则,将级别设置为 WARN。

INFO

将 INFO 日志记录级别用于服务生命周期事件和其他重要信息。给定服务类别的 INFO 级别消息应清楚地指示服务所在状态。

DEBUG

使用 DEBUG 日志记录级别,记录生命周期事件的额外信息。此日志记录级别用于面向开发人员的信息或对技术支持所需的深度信息。启用 DEBUG 日志级别后,JBoss 服务器日志 不应 与服务器请求数成比例增长。给定服务类别的 DEBUG- 和 INFO 级别消息应当明确指出服务所在状态,以及它所使用的代理资源、端口、接口、日志文件等。

TRACE

在与请求活动直接关联的日志消息中使用 MERGE 日志记录级别。此类消息不应提交到日志记录器,除非日志记录器类别优先级为 threshold 表示消息将被呈现。使用 Logger.isTraceEnabled() 方法来确定是否启用了类别优先级阈值。servlet 级别日志记录可以在需要时深入探测代理行为。启用 TRACE 日志记录级别后,JBoss 日志中的消息数量至少会增加到最少a * N ,其中 N 是代理接收的请求数量,而 a 是一些常数服务器日志可能会增长到 N 的一些功能,具体取决于请求传入的层。

注意
  • INFOlogger.org.apache.ES.audit.base,logger.org.apache.apache.audit.message,以及 logger.org.apache.apache.audit.resource audit loggers 的可用日志记录级别。
  • 为根日志记录器指定的日志记录级别决定了 所有 日志记录器的最详细的日志记录级别,即使其他日志记录器在其配置中指定更详细的日志记录级别。例如,假设 org.apache.activemq.artemis.utils 指定了 DEBUG 的日志记录,而根日志记录器 org.jboss.logging 则具有指定的日志记录级别 WARN。在这种情况下,两个日志记录器都使用 WARN 的日志记录级别。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.