2.8. ロギングの設定
Kafka コンポーネントおよび AMQ Streams Operator のカスタムリソースでロギングレベルを設定します。ログレベルは、カスタムリソースの spec.logging
プロパティーに直接指定できます。あるいは、configMapKeyRef
プロパティを使ってカスタムリソースで参照される ConfigMap でロギングプロパティを定義することもできます。
ConfigMap を使用する利点は、ロギングプロパティーが 1 カ所で維持され、複数のリソースにアクセスできることです。複数のリソースに ConfigMap を再利用することもできます。ConfigMap を使用して AMQ Streams Operator のロガーを指定する場合は、ロギング仕様を追加してフィルターを追加することもできます。
ロギング仕様でロギング type
を指定します。
-
ロギングレベルを直接指定する場合は
inline
-
ConfigMap を参照する場合は
external
inline
ロギングの設定例
spec: # ... logging: type: inline loggers: kafka.root.logger.level: "INFO"
external
設定の例
spec: # ... logging: type: external valueFrom: configMapKeyRef: name: my-config-map key: my-config-map-key
ConfigMap の name
と key
の値は必須です。name
や key
が設定されていない場合は、デフォルトのロギングが使用されます。
関連情報
Kafka コンポーネントのロギング
Operator のロギング
2.8.1. ロギングの ConfigMap の作成
ConfigMap を使用してロギングプロパティーを定義するには、ConfigMap を作成してから、リソースの spec
にあるロギング定義の一部としてそれを参照します。
ConfigMap には適切なロギング設定が含まれる必要があります。
-
Kafka コンポーネント、ZooKeeper、および Kafka Bridge の
log4j.properties
。 -
Topic Operator および User Operator の
log4j2.properties
設定はこれらのプロパティーの配下に配置する必要があります。
この手順では、ConfigMap は Kafka リソースのルートロガーを定義します。
手順
ConfigMap を作成します。
ConfigMap を YAML ファイルとして作成するか、プロパティーファイルから Config Map を作成します。
Kafka のルートロガー定義が含まれる ConfigMap の例:
kind: ConfigMap apiVersion: v1 metadata: name: logging-configmap data: log4j.properties: kafka.root.logger.level="INFO"
プロパティーファイルを使用している場合は、コマンドラインでファイルを指定します。
oc create configmap logging-configmap --from-file=log4j.properties
プロパティーファイルではロギング設定が定義されます。
# Define the logger kafka.root.logger.level="INFO" # ...
リソースの
spec
にexternal ロギングを定義し、logging.valueFrom.configMapKeyRef.name
に ConfigMap の名前を、logging.valueFrom.configMapKeyRef.key
にこの ConfigMap のキーを設定します。spec: # ... logging: type: external valueFrom: configMapKeyRef: name: logging-configmap key: log4j.properties
リソースを作成または更新します。
oc apply -f KAFKA-CONFIG-FILE