3.4. デバッグログを設定する
各ポリシーコントローラーのデバッグログを設定して収集するときに、ログレベルを調整できます。
注: デバッグログの量を減らすと、ログから表示される情報が少なくなります。
ポリシーコントローラーによって発行されるデバッグログを減らして、エラーのみのバグをログに表示するようにできます。デバッグログを減らすには、アノテーションで debug log の値を -1 に設定します。それぞれの値が何を表すかを確認してください。
-
-1: エラーログのみ -
0: 情報ログ -
1: デバッグログ -
2: 詳細なデバッグログ
Kubernetes 設定コントローラーの第 2 レベルのデバッグ情報を受け取るには、値が 2 の log-level アノテーションを ManagedClusterAddOn カスタムリソースに追加します。デフォルトでは、log-level は 0 に設定されています。つまり、情報メッセージを受信します。以下の例を参照してください。
apiVersion: addon.open-cluster-management.io/v1alpha1
kind: ManagedClusterAddOn
metadata:
name: config-policy-controller
namespace: cluster1
annotations:
log-level: "2"
spec:
installNamespace: open-cluster-management-agent-addon
さらに、ConfigurationPolicy リソース内のそれぞれの spec.object-template[] で、recordDiff パラメーターを Log に設定できます。objectDefinition とマネージドクラスター上のオブジェクトとの差異が、マネージドクラスター上の config-policy-controller Pod のログに記録されます。以下の例を参照してください。
recordDiff: Log に設定した ConfigurationPolicy リソース
apiVersion: policy.open-cluster-management.io/v1
kind: ConfigurationPolicy
metadata:
name: my-config-policy
spec:
object-templates:
- complianceType: musthave
recordDiff: Log
objectDefinition:
apiVersion: v1
kind: ConfigMap
metadata:
name: my-configmap
data:
fieldToUpdate: "2"
クラスターの ConfigMap リソースに fieldToUpdate: "1" がリストされていると、config-policy-controller Pod のログに次の情報を含む差異が表示されます。
Logging the diff:
--- default/my-configmap : existing
+++ default/my-configmap : updated
@@ -2,3 +2,3 @@
data:
- fieldToUpdate: "1"
+ fieldToUpdate: "2"
kind: ConfigMap
重要: セキュアなオブジェクトの差異をログに記録しないでください。差異はプレーンテキストで記録されます。