Docker のログ記録の構成

Log4j ログレベル

Confluent Platform コンポーネントのデフォルトの log4j ログレベルを変更したり、新しいログレベルを追加したりすることができます。log4j の設定の詳細については、Log4j の構成 を参照してください。

次の表を使用して、このセクションの {COMPONENT} を、ログレベルの変更対象となるコンポーネントの名前と置き換えてください。

コンポーネント {COMPONENT}
ZooKeeper ZOOKEEPER
Kafka KAFKA
Confluent Control Center CONTROL_CENTER
スキーマレジストリ SCHEMA_REGISTRY
REST Proxy KAFKA_REST
Kafka Connect CONNECT
ksqlDB KSQL
Replicator REPLICATOR
rootLogger のログレベルを変更するには
{COMPONENT}_LOG4J_ROOT_LOGLEVEL 環境変数を使用します。
デフォルトのロガーを追加またはオーバーライドするには

{COMPONENT}_LOG4J_LOGGERS 環境変数を使用します。この変数は、ロガー構成のコンマ区切り値を受け入れます。

たとえば、Kafka コントローラーおよびリクエストロガーのログレベルをオーバーライドするには、次のように設定します。

KAFKA_LOG4J_LOGGERS="kafka.controller=TRACE,kafka.request.logger=WARN"
ツールのログレベルを変更するには
{COMPONENT}_LOG4J_TOOLS_ROOT_LOGLEVEL 環境変数を使用します。

Kafka のログレベルを変更するコマンドの例を以下に示します。

docker run -d \
  --name=kafka-log-example \
  --net=host \
  -e KAFKA_BROKER_ID=1 \
  -e KAFKA_ZOOKEEPER_CONNECT=localhost:32181/jmx \
  -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:39092 \
  -e KAFKA_JMX_PORT=39999 \
  -e KAFKA_LOG4J_LOGGERS="kafka.controller=WARN,kafka.foo.bar=DEBUG" \
  -e KAFKA_LOG4J_ROOT_LOGLEVEL=WARN \
  -e KAFKA_TOOLS_LOG4J_LOGLEVEL=ERROR \
  -e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 \
  confluentinc/cp-kafka:6.2.4

Log4j ログ出力

デフォルトでは、すべての log4j ログが stdout に送信されます。これを変更するには、イメージを拡張 します。