【发布时间】:2021-09-29 22:30:15
【问题描述】:
我正在使用confluentinc/cp-kafka Docker 映像在本地运行 Kafka,并且我正在设置以下日志记录容器环境变量:
KAFKA_LOG4J_ROOT_LOGLEVEL: ERROR
KAFKA_LOG4J_LOGGERS: >-
org.apache.zookeeper=ERROR,
org.apache.kafka=ERROR,
kafka=ERROR,
kafka.cluster=ERROR,
kafka.controller=ERROR,
kafka.coordinator=ERROR,
kafka.log=ERROR,
kafka.server=ERROR,
kafka.zookeeper=ERROR,
state.change.logger=ERROR
我在 Kafka 日志中看到 Kafka 以以下配置开始:
===> ENV Variables ...
ALLOW_UNSIGNED=false
COMPONENT=kafka
CONFLUENT_DEB_VERSION=1
CONFLUENT_PLATFORM_LABEL=
CONFLUENT_VERSION=5.4.1
...
KAFKA_LOG4J_LOGGERS=org.apache.zookeeper=ERROR, org.apache.kafka=ERROR, kafka=ERROR, kafka.cluster=ERROR, kafka.controller=ERROR, kafka.coordinator=ERROR, kafka.log=ERROR, kafka.server=ERROR, kafka.zookeeper=ERROR, state.change.logger=ERROR
KAFKA_LOG4J_ROOT_LOGLEVEL=ERROR
...
我仍然在日志中看到INFO 和TRACE 日志级别。例如:
[2020-03-26 16:22:12,838] INFO [Controller id=1001] Ready to serve as the new controller with epoch 1 (kafka.controller.KafkaController)
[2020-03-26 16:22:12,848] INFO [Controller id=1001] Partitions undergoing preferred replica election: (kafka.controller.KafkaController)
[2020-03-26 16:22:12,849] INFO [Controller id=1001] Partitions that completed preferred replica election: (kafka.controller.KafkaController)
[2020-03-26 16:22:12,855] INFO [Controller id=1001] Skipping preferred replica election for partitions due to topic deletion: (kafka.controller.KafkaController)
如何才能真正停用低于某个级别的日志?在上面的例子中,我真的只想要ERROR 日志。
- 上面的方法就是Confluent documentation中描述的方法。
- Apache Kafka source code 列出了我无法使用
KAFKA_LOG4J_LOGGERSDocker 环境变量影响的各种记录器。
【问题讨论】:
-
您看到
INFO级别的日志仅用于控制器吗? -
@GiorgosMyrianthous 不仅仅是控制器。同时我发现了这个问题。请参阅我发布的答案。
标签: docker logging apache-kafka log4j