すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:コンテナーログ収集エラーのトラブルシューティング

最終更新日:Sep 16, 2025

Logtail が標準コンテナーまたは Kubernetes コンテナーからログを収集できない場合は、このトピックの手順に従って問題をトラブルシューティングし、実行ステータスを確認してください。

マシングループのハートビートエラーの確認

マシングループのハートビートステータスを確認して、Logtail がコンテナー環境に正しくインストールされているかどうかを判断します。

  1. マシングループのハートビートステータスを確認します。

    1. Simple Log Service コンソールにログインします。

    2. [プロジェクト] セクションで、目的のプロジェクトをクリックします。

      image

    3. ナビゲーションウィンドウで、[リソース] > [マシングループ] を選択します。

    4. マシングループのリストで、対象のマシングループをクリックします。

    5. [マシングループ設定] ページで、マシングループのステータスを表示し、ハートビートステータスが [OK] のノード数を記録します。

  2. コンテナークラスター内のワーカーノードの数を確認します。

    1. クラスターに接続する

    2. 次のコマンドを実行して、クラスター内のワーカーノードの数を表示します。

      kubectl get node | grep -v master

      次のような結果が返されます。

      NAME                                 STATUS    ROLES     AGE       VERSION
      cn-hangzhou.i-bp17enxc2us3624wexh2   Ready     <none>    238d      v1.10.4
      cn-hangzhou.i-bp1ad2b02jtqd1shi2ut   Ready     <none>    220d      v1.10.4
  3. ハートビートステータスが [OK] のノード数とコンテナークラスター内のワーカーノードの数を比較します。比較結果に基づいて問題をトラブルシューティングします。

    • マシングループ内のすべてのノードのハートビートステータスが [失敗] です。

    • ハートビートステータスが [OK] のノード数が、クラスター内のワーカーノード数よりも少ないです。

      • DaemonSet が YAML ファイルを使用して手動でデプロイされているかどうかを確認します。

        1. 次のコマンドを実行します。結果が返された場合は、DaemonSet が YAML ファイルを使用して手動でデプロイされたことを意味します。

          kubectl get po -n kube-system -l k8s-app=logtail
        2. DaemonSet テンプレートの最新バージョンをダウンロードします。

        3. ${your_region_name}${your_aliyun_user_id}${your_machine_group_name} などのパラメーターを実際の値で構成します。

        4. 次のコマンドを実行してファイルを更新します。

          kubectl apply -f ./logtail-daemonset.yaml
      • その他の場合は、チケットを送信

コンテナーログ収集エラーの確認

Simple Log Service コンソールの [プレビュー] ページまたは Logstore クエリページでログが見つからない場合は、Simple Log Service がコンテナーログを収集していないことを示します。この場合、コンテナーのステータスを確認してから、次のチェックを実行します。

重要
  • コンテナーファイルからログを収集する際は、次の点にご注意ください。

    • Logtail は増分ログのみを収集します。Logtail 構成の適用後にログファイルが更新されない場合、Logtail はそのファイルからログを収集しません。詳細については、「ログファイルの読み取り」をご参照ください。

    • Logtail は、デフォルトのコンテナーストレージを使用するか、ローカルパスにマウントされているファイルからのみログを収集できます。他のストレージメソッドはサポートされていません。

  • ログが収集された後、Logstore でログをクエリおよび分析するためのインデックスを作成する必要があります。詳細については、「インデックスの作成」をご参照ください。

  1. マシングループのハートビートエラーを確認します。詳細については、「マシングループのハートビートエラーの確認」をご参照ください。

  2. Logtail 構成が正しいかどうかを確認します。

    Logtail 構成の IncludeLabelExcludeLabelIncludeEnvExcludeEnv、およびその他の設定が要件を満たしているかどうかを確認します。

    説明
    • ラベルはコンテナーラベルであり、Docker inspect の出力にあるラベルであり、Kubernetes ラベルではありません。

    • IncludeLabelExcludeLabelIncludeEnv、および ExcludeEnv の設定を一時的に削除して、ログを収集できるかどうかを確認できます。ログを収集できる場合は、これらのパラメーターの設定が正しくないことを示します。

その他の O&M 操作

Logtail コンテナーへのログイン

  • 標準 Docker

    1. ホストで次のコマンドを実行して、Logtail コンテナーを見つけます。

      docker ps | grep logtail

      次のような結果が返されます。

      223****6e        registry.cn-hangzhou.aliyuncs.com/log-service/logtail                             "/usr/local/ilogta..."   8 days ago          Up 8 days                               logtail-iba
    2. 次のコマンドを実行して、Logtail コンテナーで bash シェルを開始します。

      docker exec -it 223****6e  bash

      コマンドの 223****6e はコンテナー ID です。実際の ID に置き換えてください。

  • Kubernetes

    1. 次のコマンドを実行して、Logtail ポッドを見つけます。

      kubectl get po -n kube-system | grep logtail

      次のような結果が返されます。

      logtail-ds-****d                                             1/1       Running    0          8d
      logtail-ds-****8                                             1/1       Running    0          8d
    2. 次のコマンドを実行してポッドにログインします。

      kubectl exec -it -n kube-system logtail-ds-****d -- bash

      コマンドの logtail-ds-****d はポッド ID です。実際の ID に置き換えてください。

Logtail 実行ログの表示

Logtail ログは、Logtail コンテナーの /usr/local/ilogtail/ ディレクトリに保存されます。ログファイル名は ilogtail.LOGlogtail_plugin.LOG です。

  1. Logtail コンテナーにログインします。詳細については、「Logtail コンテナーへのログイン」をご参照ください。

  2. /usr/local/ilogtail/ ディレクトリに移動します。

    cd /usr/local/ilogtail
  3. ilogtail.LOG ファイルと logtail_plugin.LOG ファイルを表示します。

    cat ilogtail.LOG
    cat logtail_plugin.LOG

Logtail コンテナーの標準出力 (stdout) の説明

Logtail コンテナーの標準出力は、トラブルシューティングに役立つ情報を提供しません。次の内容は無視してかまいません。

start umount useless mount points, /shm$|/merged$|/mqueue$
umount: /logtail_host/var/lib/docker/overlay2/3fd0043af174cb0273c3c7869500fbe2bdb95d13b1e110172ef57fe840c82155/merged: must be superuser to unmount
umount: /logtail_host/var/lib/docker/overlay2/d5b10aa19399992755de1f85d25009528daa749c1bf8c16edff44beab6e69718/merged: must be superuser to unmount
umount: /logtail_host/var/lib/docker/overlay2/5c3125daddacedec29df72ad0c52fac800cd56c6e880dc4e8a640b1e16c22dbe/merged: must be superuser to unmount
......
xargs: umount: exited with status 255; aborting
umount done
start logtail
ilogtail is running
logtail status:
ilogtail is running

Kubernetes クラスター内の Simple Log Service コンポーネントのステータスの表示

次のコマンドを実行して、Simple Log Service デプロイメントのステータスと情報を表示します。

kubectl get deploy -n kube-system | grep -E 'alibaba-log-controller|loongcollector-operator'

次の結果が返されます。

NAME                     READY   UP-TO-DATE   AVAILABLE   AGE
alibaba-log-controller   1/1     1            1           11d

DaemonSet リソースのステータス情報を表示するには、次のコマンドを実行します。

kubectl get ds  -n kube-system | grep -E 'logtail-ds|loongcollector-ds'

以下の結果が返されます。

NAME         DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR  AGE
logtail-ds   2         2         2       2            2           **ux           11d

Logtail のバージョン番号、IP アドレス、および起動時間の表示

  1. ホストで、次のコマンドを実行して、Logtail のバージョン番号、IP アドレス、および起動時間を表示します。

    この情報は、Logtail コンテナーの /usr/local/ilogtail/app_info.json ファイルに保存されます。

    kubectl exec logtail-ds-****k -n kube-system cat /usr/local/ilogtail/app_info.json

    次のような結果が返されます。

    {
       "UUID" : "",
       "hostname" : "logtail-****k",
       "instance_id" : "0EB****_172.20.4.2_1517810940",
       "ip" : "172.20.4.2",
       "logtail_version" : "0.16.2",
       "os" : "Linux; 3.10.0-693.2.2.el7.x86_64; #1 SMP Tue Sep 12 22:26:13 UTC 2017; x86_64",
       "update_time" : "2018-02-05 06:09:01"
    }

CRD によって作成された Logstore の偶発的な削除の処理

カスタムリソース定義 (CRD) によって自動的に作成された Logstore を削除すると、収集されたデータを回復することはできません。さらに、この Logstore の CRD 構成は無効になります。ログ収集エラーを防ぐには、次のいずれかのソリューションを使用します。

  • CRD 構成で別の Logstore を使用します。誤って削除された Logstore は使用しないでください。

  • alibaba-log-controller ポッドを再起動します。

    次のコマンドを実行してポッドを見つけることができます。

    kubectl get po -n kube-system | grep alibaba-log-controller