53.6. logging


Cruise Control 本身有可配置的日志记录器:

  • rootLogger.level

Cruise Control 使用 Apache log4j2 日志记录器实现。

使用 logging 属性配置日志记录器和日志记录器级别。

您可以通过直接指定日志记录器和级别(在线)或使用自定义(外部) ConfigMap 来设置日志级别。如果使用 ConfigMap,您可以将 logging.valueFrom.configMapKeyRef.name 属性设置为包含外部日志记录配置的 ConfigMap 的名称。在 ConfigMap 中,日志记录配置使用 log4j.properties 描述。logging.valueFrom.configMapKeyRef.namelogging.valueFrom.configMapKeyRef.key 属性都是强制的。使用指定的确切日志记录配置的 ConfigMap 会在 Cluster Operator 运行时使用自定义资源创建,然后在每次协调后重新创建。如果没有指定自定义 ConfigMap,则使用默认日志记录设置。如果没有设置特定的日志记录器值,则会为该日志记录器继承上级日志记录器设置。

在这里,我们看到 内联外部日志记录 的示例。inline 日志记录指定根日志记录器级别。您还可以通过将特定类或日志记录器添加到 loggers 属性来设置日志级别。

内联日志记录

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
# ...
spec:
  cruiseControl:
    # ...
    logging:
      type: inline
      loggers:
        rootLogger.level: INFO
        logger.exec.name: com.linkedin.kafka.cruisecontrol.executor.Executor 
1

        logger.exec.level: TRACE 
2

        logger.go.name: com.linkedin.kafka.cruisecontrol.analyzer.GoalOptimizer 
3

        logger.go.level: DEBUG 
4

    # ...
Copy to Clipboard Toggle word wrap

1
为 Cruise Control Executor 类创建一个日志记录器。
2
设置 Executor 类的日志级别。
3
为 Cruise Control GoalOptimizer 类创建一个日志记录器。
4
GoalOptimizer 类设置日志记录级别。
注意

在调查 Cruise Control 的问题时,通常足以将 rootLogger 更改为 DEBUG,以获得更详细的日志。但请注意,将日志级别设置为 DEBUG 可能会导致大量日志输出,并可能会影响性能。

外部日志记录

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
# ...
spec:
  cruiseControl:
    # ...
    logging:
      type: external
      valueFrom:
        configMapKeyRef:
          name: customConfigMap
          key: cruise-control-log4j.properties
    # ...
Copy to Clipboard Toggle word wrap

垃圾收集器(GC)

垃圾回收收集器日志记录也可以使用 jvmOptions 属性启用 (或禁用)。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat