モニタリング・エージェントのログ・レベルの構成
ログ・レベルによって、エージェントのロギングのタイプと量が決まります。 ログ・レベルを構成するには、パラメーターとログ・レベル引数を追加します。
モニター・エージェントはログ・エントリーを draios.log
ファイルに書き込みます。
- ログ・ファイルのサイズが 10 MB に達すると、ログ・ファイルが交替します。
- 最新の 10 個のログ・ファイルが保持されます。 ファイル名に付加される日付スタンプが、保持するファイルの判別に使用されます。
- ログ・ファイルは、
/opt/draios/logs/
ディレクトリーにあります。
デフォルトでは、モニタリング・エージェントをデプロイすると、ログ・レベルは info
に設定されます。
有効なログ・レベルは、none、error、warning、info、debug、および trace です。
モニタリング・エージェントがログ・ファイルに書き込む詳細情報のレベルを構成できます。
ログ・レベル | 詳細 |
---|---|
none |
エラーは報告されません。 |
info |
1 秒あたり 1 回、集計されたメトリックがバックエンド・サーバーに送信されるたびにエントリーが報告されます。 警告やエラーのエントリーを報告する。 |
error |
エラー・ログのみが報告されます。 |
trace |
報告できるログがすべて報告されます。 |
- 取得するログ・エントリーの数を最小限にするには、ログ・レベルを error に設定します。
- 取得できるログをすべて取得するには、ログ・レベルを trace に設定します。
エージェント関連の問題をトラブルシューティングするには、ログ・レベルを info、debug、または trace に設定する必要があります。
例として、ユース・ケースに応じて、エージェントのログに記録するデータを指示するために構成できるログ・セクションを次に示します。
ユース・ケース | log セクションのエントリー |
---|---|
エージェントの動作のトラブルシューティング | file_priority: debug |
コンテナー・コンソールの出力の削減 | console_priority: warning |
重大度別のイベントのフィルター処理 | event_priority: warning |
含まれるメトリックと除外されるメトリックの確認 | metrics_excess_log: true |
エージェントのログ・レベルの確認
Linux のモニタリング・エージェント
Linux モニタリング・エージェントのログ・レベルを取得するには、端末から以下のコマンドを実行します。
more /opt/draios/etc/statsite.ini | grep log_level
例えば、以下の結果が返される可能性があります。
# more /opt/draios/etc/statsite.ini | grep log_level
log_level = INFO
Docker のモニタリング・エージェント
Docker モニタリング・エージェントのログ・レベルを取得するには、以下のコマンドを実行します。
docker exec -ti sysdig-agent more /opt/draios/etc/statsite.ini | grep log_level
例えば、以下の結果が返される可能性があります。
# docker exec -ti sysdig-agent more /opt/draios/etc/statsite.ini | grep log_level
log_level = INFO
Kubernetes のモニタリング・エージェント
Kubernetes モニタリング・エージェントのログ・レベルを取得するには、以下の手順を実行します。
-
クラスター環境をセットアップします。 以下のコマンドを実行します。
最初に、環境変数を設定して Kubernetes 構成ファイルをダウンロードするためのコマンドを取得します。
ibmcloud ks cluster config --cluster <cluster_name_or_ID>
-
エージェントのログ・レベルを取得します。 以下のコマンドを実行します。
kubectl describe daemonset sysdig-agent -n ibm-observe | grep file_priority
コマンドから値が返されない場合は、ログ・レベルがデフォルト値
info
に設定されています。
ログ・レベルの構成
ログ・レベルによって、エージェントのロギングのタイプと量が決まります。 ログ・レベルを構成するには、パラメーターとログ・レベル引数を追加します。
Linux のモニタリング・エージェント
ログ・レベルを構成するには、** ファイルの **log/opt/draios/etc/dragent.yaml
セクションをカスタマイズする必要があります。
デフォルトでは、dragent.yaml
ファイルには以下の情報が含まれています。
customerid: xxxxxxxxxxxxxxxxx
collector: ingest.us-south.monitoring.cloud.ibm.com
collector_port: 6443
ssl: true
sysdig_capture_enabled: false
ログ・レベルを構成するには、このファイルを編集し、ログに関する情報を追加する必要があります。
- ログ・レベルを設定するには、file_priority を設定する必要があります。
- 有効なログ・レベルは、none、error、warning、info、debug、および trace です。
以下の構成例は、error に設定されたログ・レベルを示しています。
customerid: xxxxxxxxxxxxxxxxx
collector: ingest.us-south.monitoring.cloud.ibm.com
collector_port: 6443
ssl: true
sysdig_capture_enabled: false
log:
file_priority: error
dragent.yaml ファイルを編集したら、エージェントを再始動して変更を有効にする必要があります。 以下のコマンドを実行します。
service dragent restart
Docker のモニタリング・エージェント
Docker モニタリング・エージェントのログ・レベルを変更するには、以下の手順を実行します。
-
実行中のコンテナーでシェルを開きます。
docker exec –it sysdig-agent /bin/bash
-
ローカル・マシンに
dragent.yaml
ファイルをコピーします。docker cp sysdig-agent:/opt/draios/etc/dragent.yaml <local directory>/dragent.yaml
-
構成ファイルを変更します。 設定するログ・レベルおよびコンソール・ログ・レベルに関する情報を指定します。 以下のセクションが含まれていない場合は追加してください。
log: file_priority: error console_priority: warning
file_priority はログ・レベルを制御します。 有効なログ・レベルは、none、error、warning、info、debug、および trace です。
console_priority はコンソール出力を制御します。 有効なコンソール・ログ・レベルは、none、error、warning、info、debug、および trace です。
以下の構成例では、ログ・レベルを error、コンソール・ログ・レベルを warning に設定しています。
customerid: xxxxxxxxxxxxxxxx tags: location:us-east collector: ingest.us-east.monitoring.cloud.ibm.com collector_port: 6443 ssl: true sysdig_capture_enabled: false use_promscrape: true log: file_priority: error console_priority: warning
-
エージェントの構成ファイルを更新します。 以下のコマンドを実行します。
docker cp <local directory>/dragent.yaml sysdig-agent:/opt/draios/etc/dragent.yaml
-
エージェントを再始動します。 以下のコマンドを実行します。
docker restart sysdig-agent
-
レベルが設定されていることを確認します。 以下のコマンドを実行します。
docker exec -ti sysdig-agent more /opt/draios/etc/statsite.ini | grep log_level
dragent.yaml
ファイルに指定したログ・レベルが表示されます。
Kubernetes のモニタリング・エージェント
Kubernetes モニタリング・エージェントのログ・レベルを変更するには、以下の手順を実行します。
-
クラスター環境をセットアップします。 以下のコマンドを実行します。
最初に、環境変数を設定して Kubernetes 構成ファイルをダウンロードするためのコマンドを取得します。
ibmcloud ks cluster config --cluster <cluster_name_or_ID>
-
エージェントの DaemonSet ファイルを変更します。 設定するログ・レベルおよびコンソール・ログ・レベルに関する情報を指定します。
以下のコマンドを実行して、構成マップを編集します。
kubectl edit daemonset sysdig-agent -n ibm-observe
その後、次のログ・エントリーを追加または変更します。
log: file_priority: error console_priority: warning
file_priority はログ・レベルを制御します。 有効なログ・レベルは、none、error、warning、info、debug、および trace です。
console_priority はコンソール出力を制御します。 有効なコンソール・ログ・レベルは、none、error、warning、info、debug、および trace です。
以下の構成例では、ログ・レベルを debug、コンソール・ログ・レベルを error に設定しています。
... spec: revisionHistoryLimit: 10 selector: matchLabels: app: sysdig-agent template: metadata: creationTimestamp: null labels: app: sysdig-agent spec: containers: - image: icr.io/ext/sysdig/agent:latest imagePullPolicy: Always name: sysdig-agent env: - name: ADDITIONAL_CONF value: "log:\n file_priority: debug\n console_priority: error" readinessProbe: ...
変更を保存すると、ログ・レベルの変更が適用されます。
既にログ・レベルを変更した場合、DaemonSet セクションは次のようになります。
...
spec:
revisionHistoryLimit: 10
selector:
matchLabels:
app: sysdig-agent
template:
metadata:
creationTimestamp: null
labels:
app: sysdig-agent
spec:
containers:
- env:
- name: ADDITIONAL_CONF
value: |-
log:
file_priority: debug
console_priority: error
image: icr.io/ext/sysdig/agent:latest
imagePullPolicy: Always
...
次のコマンドを実行して configmap をダウンロードすることもできます: kubectl get daemonset sysdig-agent -o yaml -n ibm-observe > sysdig-agent-ds.yaml
。 変更を適用するには、kubectl apply -f sysdig-agent-ds.yaml -n ibm-observe
を実行します。