Kubernetesポッドログ

Site24x7アプリケーションログを使用して、Kubernetesポッドで稼働するアプリケーションのログを収集、追跡、監視します。
Kubernetesログファイルからログを収集します。

Kubernetesポッドログの追加

  1. Site24x7にログインします。
  2. Kubernetes監視を追加していない場合は、[サーバー]→[Kubernetes]→[クラスター]に移動して追加を行ってください。
  3. Kubernetes監視の追加後、Site24x7ポッドがKubernetesクラスターノードごとに起動されます。
  4. その後、[管理]→[アプリケーションログ]→[ログプロファイル]→画面右上の[ログプロファイルを追加]をクリックします。
  5. ログの種類ドロップダウンから[Kubernetesポッドログ]を選択します。
  6. Kubernetesポッドログのログソースフォルダーパスは/var/log/pods/です。
    Kubernetes監視を追加すると、/varフォルダーが/host/varとしてSite24x7ポッドにマウントされます。site24x7-agent.yamlファイルは親ディレクトリのパスに追加されているため、Site24x7ポッドがそのフォルダーからログを読み取ることができます。
    すべてのポッドのログを収集したい場合、ログプロファイルで次のファイルパスを指定してください。
    /host/var/log/pods/*/*/*.log
    特定のポッドからログを収集したい場合は、そのポッド名のパスを下記のように指定します。
    /host/var/log/pods/*<ポッド名>*/*/*.log
    Site24x7ポッドログを除外するには、[+]アイコンをクリック後、[除外]ボタンをを選択してファイルパスを次のように指定してください。
    /host/var/log/pods/*site24x7-agent*/site24x7-agent/*.log
  7. 「このログプロファイルをこれらサーバに関連付ける」項目で、ドロップダウンからKubernetesノードを選択します。
    Kubernetes log profile2

klogおよびJSONフォーマットのログ収集に対応しています。

Klog:サンプルログとログパターン

2022-11-08T19:29:58.894693328Z stdout F 2022-11-08 19:29:58,894 INFO reaped unknown pid 12591

$time:date:yyyy-MM-dd'T'HH:mm:ss.SSS'Z'$ $Stream$ $LogTag$ $Message$

JSON:サンプルログとログパターン

{"log":"Starting image","stream":"stdout","time":"2019-06-04T11:29:54.295671087Z", "namespace" : "kube-system", "podname" : "kube-proxy-4jrl9_323e26da", "podid": "323e26da-67d4-4ae8-ad19-a30abcb9e101", "containername" : "kube-proxy"}

json $log$ $stream$ $time:date:yyyy-MM-dd'T'HH:mm:ss.SSS'Z'$ $namespace as NameSpace$ $podname as PodName$ $podid as PodId$ $containername as ContainerName$

このログは次の項目に分けられて、値がSite24x7にアップロードされます。

項目名 項目値
log Starting image
stream stdout
time 2019-06-04T11:29:54.295671087Z
NameSpace kube-system
PodName kube-proxy-4jrl9_323e26da
PodId 323e26da-67d4-4ae8-ad19-a30abcb9e101
ContainerName kube-proxy

上記の場合、実際のログメッセージ、ネームスペース、ポッド名、ポッドID、コンテナー名といった追加のメタ情報が収集されます。

Kubernetes log pattern2

Site24x7のKubernetesイベントログを使用して、クラスター、ポッド、ノードのイベントログを管理することもできます。

関連するログの種類

関連ガイド