DaemonSet モードで Knative Service からコンテナーテキストログを収集できます。DaemonSet モードでは、各ノードでロギングエージェントを実行して、O&M 効率を向上させます。Container Service for Kubernetes (ACK) クラスタは Simple Log Service (SLS) と互換性があり、非侵入型のログ収集をサポートしています。ログ収集コンポーネントをインストールして、各ノードにログコレクターポッドをデプロイできます。このようにして、コンポーネントは各ノードのすべてのコンテナーからログを収集できます。収集されたログに基づいてコンテナーを分析および管理できます。
前提条件
Knative がクラスターにデプロイされていること。詳細については、「Knative をデプロイおよび管理する」をご参照ください。
Knative Service が作成されていること。詳細については、「Knative アプリケーションをすばやくデプロイする」をご参照ください。
ステップ 1:ログ収集コンポーネントをインストールする
LoongCollector をインストールする
現在、LoongCollector はカナリアリリース中です。LoongCollector をインストールする前に、サポートされているリージョンを確認してください。
LoongCollector ベースのデータ収集:LoongCollector は、Simple Log Service が提供する新世代のログ収集エージェントです。LoongCollector は Logtail のアップグレードバージョンです。LoongCollector は、Managed Service for Prometheus ベースのデータ収集や Extended Berkeley Packet Filter (eBPF) テクノロジーベースの非侵入型データ収集など、Application Real-Time Monitoring Service (ARMS) の特定の収集エージェントの機能を統合することが期待されています。
既存の ACK クラスタに loongcollector コンポーネントをインストールする
ACK コンソール にログインします。左側のナビゲーションペインで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタをクリックします。左側のナビゲーションウィンドウで、[操作] > [アドオン] を選択します。
注:loongcollectorインストール[アドオン]ページの タブで、 コンポーネントを見つけて、 をクリックします。
説明loongcollector コンポーネントと logtail-ds コンポーネントを同時にインストールすることはできません。クラスターに logtail-ds コンポーネントがインストールされている場合、logtail-ds コンポーネントを loongcollector コンポーネントに直接アップグレードすることはできません。アップグレードソリューションは近日中に提供される予定です。
LoongCollector コンポーネントがインストールされると、Simple Log Service は k8s-log-${your_k8s_cluster_id} という名前のプロジェクトと、プロジェクト内のリソースを自動的に生成します。Simple Log Service コンソールにログインして、リソースを表示できます。次の表にリソースを示します。
リソースタイプ | リソース名 | 説明 | 例 |
マシングループ | k8s-group- | ログ収集シナリオで使用される loongcollector-ds のマシングループ。 | k8s-group-my-cluster-123 |
k8s-group- | メトリック収集シナリオで使用される loongcollector-cluster のマシングループ。 | k8s-group-my-cluster-123-cluster | |
k8s-group- | 単一インスタンスのマシングループ。単一インスタンスの LoongCollector 構成を作成するために使用されます。 | k8s-group-my-cluster-123-singleton | |
ログストア | config-operation-log | ログストアは、loongcollector-operator ログを収集および保存するために使用されます。 重要
| config-operation-log |
Logtail をインストールする
Logtail ベースのデータ収集:Logtail は、Simple Log Service が提供するログ収集エージェントです。Logtail を使用すると、Alibaba Cloud Elastic Compute Service (ECS) インスタンス、データセンター内のサーバー、サードパーティ クラウド サービス プロバイダーのサーバーなど、複数のデータソースからログを収集できます。Logtail は、ログファイルに基づく非侵入型のログ収集をサポートしています。アプリケーションコードを変更する必要はなく、ログ収集はアプリケーションの動作に影響を与えません。
既存の ACK クラスタに Logtail [コンポーネント]をインストールする
ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスタ]をクリックします。
[クラスタ]ページで、管理するクラスタを見つけて、その名前をクリックします。左側のナビゲーションウィンドウで、[アドオン]をクリックします。
アドオンページの [ログとモニタリング] タブで、[logtail-ds] コンポーネントを見つけて、[インストール] をクリックします。
ACK クラスタを作成するときに Logtail [コンポーネント]をインストールする
ACK コンソールにログインします。左側のナビゲーションウィンドウで、[クラスタ]をクリックします。
クラスタ ページで、[Kubernetes クラスタの作成] をクリックします。ウィザードの [コンポーネント構成] ステップで、Log Service を有効にする を選択します。
このトピックでは、Simple Log Service に関連する設定のみについて説明します。その他の設定の詳細については、「ACK マネージドクラスターを作成する」をご参照ください。
[Log Service を有効にする] を選択すると、Simple Log Service プロジェクトを作成するように求められます。次のいずれかの方法でプロジェクトを作成できます。
[プロジェクトを選択]
収集されたコンテナーログを管理するために、既存のプロジェクトを選択できます。

[プロジェクトを作成]
Simple Log Service は、収集されたコンテナーログを管理するためのプロジェクトを自動的に作成します。
ClusterIDは、作成された Kubernetes クラスタの一意の識別子を示します。
ウィザードの [コンポーネント構成] ステップでは、有効にする注:従量課金制[コントロールプレーンコンポーネントログ] パラメーターの がデフォルトで選択されています。 が選択されている場合、システムは収集設定を自動的に構成し、クラスターのコントロールプレーンコンポーネントからログを収集します。収集されたログの料金は、 の課金方法に基づいて請求されます。ビジネス要件に基づいて を選択するかどうかを決定できます。詳細については、「ACK マネージドクラスターのコントロールプレーンコンポーネントのログを収集する」をご参照ください。
Logtail コンポーネントがインストールされると、Simple Log Service は k8s-log-<YOUR_CLUSTER_ID> という名前のプロジェクトと、プロジェクト内のリソースを自動的に生成します。Simple Log Service コンソールにログインして、リソースを表示できます。次の表にリソースを示します。
リソースタイプ | リソース名 | 説明 | 例 |
マシングループ | k8s-group- | ログ収集シナリオで使用される logtail-daemonset のマシングループ。 | k8s-group-my-cluster-123 |
k8s-group- | メトリック収集シナリオで使用される logtail-statefulset のマシングループ。 | k8s-group-my-cluster-123-statefulset | |
k8s-group- | 単一インスタンスのマシングループ。単一インスタンスの Logtail 構成を作成するために使用されます。 | k8s-group-my-cluster-123-singleton | |
ログストア | config-operation-log | ログストアは、alibaba-log-controller コンポーネントのログを保存するために使用されます。ログストアの Logtail 構成を作成しないことをお勧めします。ログストアを削除できます。ログストアが削除されると、システムは alibaba-log-controller コンポーネントの操作ログを収集しなくなります。ログストアの料金は、通常のログストアと同じ方法で請求されます。詳細については、「従量課金制の課金対象項目」をご参照ください。 | なし |
ステップ 2:収集構成を作成する
このセクションでは、収集構成を作成するために使用できる 4 つの方法について説明します。1 つの方法のみを使用して収集構成を管理することをお勧めします。
方法 | 構成の説明 | シナリオ |
CRD - AliyunPipelineConfig (推奨) | Kubernetes CRD である AliyunPipelineConfig Custom Resource Definition (CRD) を使用して、Logtail 構成を管理できます。 | この方法は、複雑な収集と処理、および ACK クラスタ内の Logtail 構成と Logtail コンテナー間のバージョンの整合性が必要なシナリオに適しています。 説明 ACK クラスタにインストールされている logtail-ds コンポーネントは、V1.8.10 以降である必要があります。Logtail を更新する方法の詳細については、「Logtail を最新バージョンに更新する」をご参照ください。 |
Simple Log Service コンソール | 迅速なデプロイと構成に基づいて、GUI で Logtail 構成を管理できます。 | この方法は、Logtail 構成を管理するために簡単な設定が必要なシナリオに適しています。この方法を使用して Logtail 構成を管理する場合、特定の高度な機能とカスタム設定は使用できません。 |
環境変数 | 環境変数を使用して、Logtail 構成の管理に使用されるパラメーターを効率的に構成できます。 | 環境変数を使用して、簡単な設定のみを構成できます。複雑な処理ロジックはサポートされていません。単一行のテキストログのみがサポートされています。環境変数を使用して、次の要件を満たす Logtail 構成を作成できます。
|
CRD - AliyunLogConfig | 古いバージョンの CRD である AliyunLogConfig CRD を使用して、Logtail 構成を管理できます。 | この方法は、古いバージョンの CRD を使用して Logtail 構成を管理できる既知のシナリオに適しています。 より優れた拡張性と安定性を得るために、AliyunLogConfig CRD を AliyunPipelineConfig CRD に徐々に置き換える必要があります。2 つの CRD の違いの詳細については、「CRD」をご参照ください。 |
(推奨) CRD - AliyunPipelineConfig
Logtail 構成を作成する
Logtail コンポーネント V0.5.1 以降のみが AliyunPipelineConfig をサポートしています。
Logtail 構成を作成するには、AliyunPipelineConfig CRD から CR を作成するだけです。Logtail 構成が作成されると、自動的に適用されます。CR に基づいて作成された Logtail 構成を変更する場合は、CR を変更する必要があります。
次のコマンドを実行して YAML ファイルを作成します。
次のコマンドでは、
cube.yamlはサンプルファイル名です。ビジネス要件に基づいて別のファイル名を指定できます。vim cube.yamlYAML ファイルに次のスクリプトを入力し、ビジネス要件に基づいてパラメーターを構成します。
重要configNameパラメーターの値は、Logtail コンポーネントのインストールに使用する Simple Log Service プロジェクト内で一意である必要があります。Logtail 構成ごとに CR を構成する必要があります。複数の CR が同じ Logtail 構成に関連付けられている場合、最初の CR 以外の CR は有効になりません。
AliyunPipelineConfigCRD に関連するパラメーターの詳細については、「(推奨) AliyunPipelineConfig を使用して Logtail 構成を管理する」をご参照ください。この例では、Logtail 構成にテキストログ収集の設定が含まれています。詳細については、「CreateLogtailPipelineConfig」をご参照ください。config.flushers.Logstore パラメーターで指定されたログストアが存在することを確認します。 spec.logstore パラメーターを設定して、ログストアを自動的に作成できます。
EndpointパラメーターとRegionパラメーターの値については、「エンドポイント」をご参照ください。Regionパラメーターは、cn-hangzhouなどのリージョン ID を示します。
特定のコンテナーから単一行テキストログを収集する
この例では、
example-k8s-fileという名前の Logtail 構成を作成して、名前がappを含むコンテナーから単一行テキストログを収集します。ファイルはtest.LOGで、パスは/data/logs/app_1です。収集されたログは、
k8s-log-testという名前のプロジェクトに属するk8s-fileという名前のログストアに格納されます。apiVersion: telemetry.alibabacloud.com/v1alpha1 # ClusterAliyunPipelineConfig CRD から CR を作成します。 kind: ClusterAliyunPipelineConfig metadata: # リソースの名前を指定します。名前は、現在の Kubernetes クラスタ内で一意である必要があります。名前は、作成される Logtail 構成の名前と同じです。 name: example-k8s-file spec: # ログが収集されるプロジェクトを指定します。 project: name: k8s-log-test # ログを格納するログストアを作成します。 logstores: - name: k8s-file # Logtail 構成のパラメーターを構成します。 config: # Logtail 入力プラグインを構成します。 inputs: # input_file プラグインを使用して、コンテナーからテキストログを収集します。 - Type: input_file # コンテナー内のファイルパスを指定します。 FilePaths: - /data/logs/app_1/**/test.LOG # コンテナー検出機能を有効にします。 EnableContainerDiscovery: true # 条件を追加してコンテナーをフィルタリングします。複数の条件は論理 AND を使用して評価されます。 ContainerFilters: # 必要なコンテナーが属するポッドの名前空間を指定します。正規表現マッチングがサポートされています。 K8sNamespaceRegex: default # 必要なコンテナーの名前を指定します。正規表現マッチングがサポートされています。 K8sContainerRegex: ^(.*app.*)$ # Logtail 出力プラグインを構成します。 flushers: # flusher_sls プラグインを使用して、ログを特定のログストアに送信します。 - Type: flusher_sls # ログストアが存在することを確認します。 Logstore: k8s-file # エンドポイントが有効であることを確認します。Region フィールドには、リージョン ID を入力します。 Endpoint: cn-hangzhou.log.aliyuncs.com Region: cn-hangzhou TelemetryType: logsすべてのコンテナーから複数行テキストログを収集し、正規表現を使用してログを解析する
この例では、
example-k8s-fileという名前の Logtail 構成を作成して、クラスタ内のすべてのコンテナーから複数行テキストログを収集します。ファイルはtest.LOGで、パスは/data/logs/app_1です。収集されたログは JSON モードで解析され、k8s-log-testという名前のプロジェクトに属するk8s-fileという名前のログストアに格納されます。次の例で提供されているサンプルログは、
{"content": "2024-06-19 16:35:00 INFO test log\nline-1\nline-2\nend"}形式で input_file プラグインによって読み取られます。次に、ログは正規表現に基づいて{"time": "2024-06-19 16:35:00", "level": "INFO", "msg": "test log\nline-1\nline-2\nend"}に解析されます。apiVersion: telemetry.alibabacloud.com/v1alpha1 # ClusterAliyunPipelineConfig CRD から CR を作成します。 kind: ClusterAliyunPipelineConfig metadata: # リソースの名前を指定します。名前は、現在の Kubernetes クラスタ内で一意である必要があります。名前は、作成される Logtail 構成の名前と同じです。 name: example-k8s-file spec: # ログが収集されるプロジェクトを指定します。 project: name: k8s-log-test # ログを格納するログストアを作成します。 logstores: - name: k8s-file # Logtail 構成のパラメーターを構成します。 config: # サンプルログを指定します。このパラメーターは空のままにすることができます。 sample: | 2024-06-19 16:35:00 INFO test log line-1 line-2 end # Logtail 入力プラグインを構成します。 inputs: # input_file プラグインを使用して、コンテナーから複数行テキストログを収集します。 - Type: input_file # コンテナー内のファイルパスを指定します。 FilePaths: - /data/logs/app_1/**/test.LOG # コンテナー検出機能を有効にします。 EnableContainerDiscovery: true # 複数行ログ収集を有効にします。 Multiline: # カスタムモードを指定して、正規表現に基づいてログの最初の行の先頭を照合します。 Mode: custom # ログの最初の行の先頭を照合するために使用される正規表現を指定します。 StartPattern: \d+-\d+-\d+.* # Logtail 処理プラグインを指定します。 processors: # processor_parse_regex_native プラグインを使用して、指定された正規表現に基づいてログを解析します。 - Type: processor_parse_regex_native # 入力フィールドの名前を指定します。 SourceKey: content # 解析に使用する正規表現を指定します。キャプチャグループを使用してフィールドを抽出します。 Regex: (\d+-\d+-\d+\s*\d+:\d+:\d+)\s*(\S+)\s*(.*) # 抽出するフィールドを指定します。 Keys: ["time", "level", "msg"] # Logtail 出力プラグインを構成します。 flushers: # flusher_sls プラグインを使用して、ログを特定のログストアに送信します。 - Type: flusher_sls # ログストアが存在することを確認します。 Logstore: k8s-file # エンドポイントが有効であることを確認します。 Endpoint: cn-hangzhou.log.aliyuncs.com Region: cn-hangzhou TelemetryType: logs次のコマンドを実行して、Logtail 構成を適用します。Logtail 構成が適用されると、Logtail は指定されたコンテナーからテキストログの収集を開始し、Simple Log Service にログを送信します。
次のコマンドでは、
cube.yamlはサンプルファイル名です。ビジネス要件に基づいて別のファイル名を指定できます。kubectl apply -f cube.yaml重要ログが収集された後、インデックスを作成する必要があります。その後、Logstore 内のログをクエリおよび分析できます。詳細については、「インデックスを作成する」をご参照ください。
CRD - AliyunLogConfig
Logtail 構成を作成するには、AliyunLogConfig CRD から CR を作成するだけで済みます。Logtail 構成が作成されると、自動的に適用されます。CR に基づいて作成された Logtail 構成を変更する場合は、CR を変更する必要があります。
次のコマンドを実行して YAML ファイルを作成します。
次のコマンドでは、
cube.yamlはサンプルのファイル名です。ビジネス要件に基づいて別のファイル名を指定できます。vim cube.yamlYAML ファイルに次のスクリプトを入力し、ビジネス要件に基づいてパラメーターを構成します。
重要configNameパラメーターの値は、Logtail コンポーネントのインストールに使用する Simple Log Service プロジェクト内で一意である必要があります。複数の CR が同じ Logtail 構成に関連付けられている場合、CR のいずれかを削除または変更すると、Logtail 構成が影響を受けます。CR が削除または変更されると、他の関連付けられた CR のステータスは、Simple Log Service の Logtail 構成のステータスと一致しなくなります。
CR パラメーターの詳細については、「AliyunLogConfig を使用して Logtail 構成を管理する」をご参照ください。この例では、Logtail 構成には、テキストログ収集の設定が含まれています。詳細については、「CreateConfig」をご参照ください。
特定のコンテナーから単一行テキストログを収集する
この例では、
example-k8s-fileという名前の Logtail 構成が作成され、クラスター内で名前がappで始まるすべてのポッドのコンテナーから単一行テキストログが収集されます。ファイルはtest.LOGで、パスは/data/logs/app_1です。収集されたログは、k8s-log-testという名前のプロジェクトに属するk8s-fileという名前のログストアに保存されます。apiVersion: log.alibabacloud.com/v1alpha1 kind: AliyunLogConfig metadata: # リソースの名前を指定します。名前は、現在の Kubernetes クラスター内で一意である必要があります。 name: example-k8s-file namespace: kube-system spec: # プロジェクトの名前を指定します。このパラメーターを空のままにすると、k8s-log-<your_cluster_id> という名前のプロジェクトが使用されます。 project: k8s-log-test # ログストアの名前を指定します。指定されたログストアが存在しない場合、Simple Log Service は自動的にログストアを作成します。 logstore: k8s-file # Logtail 構成のパラメーターを構成します。 logtailConfig: # データソースのタイプを指定します。テキストログを収集する場合は、値を file に設定します。 inputType: file # Logtail 構成の名前を指定します。 configName: example-k8s-file inputDetail: # テキストログを収集するためのシンプルモードを指定します。 logType: common_reg_log # ログファイルのパスを指定します。 logPath: /data/logs/app_1 # ログファイル名を指定します。ログファイル名を指定するときに、ワイルドカード文字 (* および ?) を使用できます。例: log_*.log。 filePattern: test.LOG # コンテナーからテキストログを収集する場合は、true に設定します。 dockerFile: true # コンテナーをフィルタリングするための条件を指定します。 advanced: k8s: K8sPodRegex: '^(app.*)$'次のコマンドを実行して、Logtail 構成を適用します。Logtail 構成が適用されると、Logtail は指定されたコンテナーからテキストログの収集を開始し、ログを Simple Log Service に送信します。
次のコマンドでは、
cube.yamlはサンプルのファイル名です。ビジネス要件に基づいて別のファイル名を指定できます。kubectl apply -f cube.yaml重要ログが収集されたら、インデックスを作成する必要があります。その後、ログストア内のログをクエリおよび分析できます。詳細については、「インデックスを作成する」をご参照ください。
コンソール
Simple Log Service コンソール にログオンします。
[クイックデータインポート] セクションで、[データのインポート] をクリックします。[データのインポート] ダイアログボックスで、[Kubernetes - ファイル] カードをクリックします。

必要なプロジェクトとログストアを選択します。次に、[次へ] をクリックします。この例では、Logtail コンポーネントのインストールに使用するプロジェクトと、作成したログストアを選択します。
[マシングループの構成] ステップで、次の操作を実行します。詳細については、「マシングループ」をご参照ください。
ビジネス要件に基づいて、次の設定のいずれかを使用します。
- 重要
後続の設定は、上記の設定によって異なります。
必要なマシングループが [適用済みサーバーグループ] セクションに追加されていることを確認します。次に、[次へ] をクリックします。Container Service for Kubernetes (ACK) クラスターに Logtail コンポーネントをインストールすると、Simple Log Service によって
k8s-group-${your_k8s_cluster_id}という名前のマシングループが自動的に作成されます。このマシングループを直接使用できます。重要マシングループを作成するには、[マシングループの作成] をクリックします。表示されるパネルで、パラメーターを構成してマシングループを作成します。詳細については、「ACK クラスターからコンテナーログを収集する」をご参照ください。
マシングループのハートビートステータスが [失敗] の場合は、[自動再試行] をクリックします。問題が解決しない場合は、「ホスト環境の Logtail マシングループに関連するエラーのトラブルシューティング方法」をご参照ください。
Logtail 構成を作成し、[次へ] をクリックします。Logtail 構成が作成されると、Simple Log Service はログの収集を開始します。
説明Logtail 構成が有効になるまで最大 3 分かかります。
[インデックスを作成] し、[データのプレビュー] を行います。次に、[次へ] をクリックします。デフォルトでは、Simple Log Service でフルテキストインデックスが有効になっています。手動モードまたは自動モードで、収集されたログに基づいてフィールドインデックスを設定することもできます。自動モードでフィールドインデックスを設定するには、[自動インデックス生成] をクリックします。このように、Simple Log Service は自動的にフィールドインデックスを作成します。詳細については、「インデックスを作成する」をご参照ください。
重要すべてのフィールドをログでクエリする場合は、フルテキストインデックスを使用することをお勧めします。特定のフィールドのみをクエリする場合は、フィールドインデックスを使用することをお勧めします。これにより、インデックストラフィックを削減できます。フィールドを分析する場合は、フィールドインデックスを作成する必要があります。分析のクエリ文には、SELECT 文を含める必要があります。
[クエリログ] をクリックします。次に、Logstore のクエリおよび分析ページにリダイレクトされます。
インデックスが有効になるまで約 1 分待つ必要があります。その後、[未加工ログ] タブで収集されたログを表示できます。詳細については、「ログクエリと分析のガイド」をご参照ください。
環境変数
1. Knative サービスの作成時に SLS を有効にする
Knative サービスを作成する際に、次の YAML テンプレートに基づいてログ収集を有効にできます。
ACK コンソール にログオンします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
[サービス] タブをクリックし、名前空間を選択して、[テンプレートから作成] をクリックします。表示されるページで、[サンプルテンプレート] セクションの [カスタム] を選択します。次の YAML ファイルを使用し、ページの指示に従ってサービスを作成します。
YAML テンプレートは Kubernetes 構文に準拠しています。
envを使用して、[ログ収集構成] と [カスタムタグ] を定義できます。volumeMountsパラメーターとvolumesパラメーターも設定する必要があります。次の例は、ポッドで Log Service を構成する方法を示しています。apiVersion: serving.knative.dev/v1 kind: Service metadata: name: helloworld-go-log spec: template: spec: containers: - name: my-demo-app image: 'registry.cn-hangzhou.aliyuncs.com/log-service/docker-log-test:latest' env: # 環境変数を指定します。 - name: aliyun_logs_log-stdout value: stdout - name: aliyun_logs_log-varlog value: /var/demo/*.log - name: aliyun_logs_mytag1_tags value: tag1=v1 # ボリュームマウントを構成します。 volumeMounts: - name: volumn-sls-mydemo mountPath: /var/demo # ポッドが繰り返し再起動される場合は、ポッドの起動パラメーターにスリープコマンドを追加できます。 command: ["sh", "-c"] # シェルでコマンドを実行します。 args: ["sleep 3600"] # スリープ時間を 1 時間 (3600 秒) に設定します。 volumes: - name: volumn-sls-mydemo emptyDir: {}ビジネス要件に基づいて、次の手順を順番に実行します。
説明他のログ収集要件がある場合は、(オプション) 2. 環境変数を使用して詳細設定を構成する を参照してください。
環境変数を使用して、[ログ収集構成] と [カスタムタグ] を追加します。ログ収集に関連するすべての環境変数は、プレフィックスとして
aliyun_logs_を使用する必要があります。次の形式で環境変数を追加します。
- name: aliyun_logs_log-stdout value: stdout - name: aliyun_logs_log-varlog value: /var/demo/*.log前の例では、
aliyun_logs_{key}という形式の 2 つの環境変数がログ収集構成に追加されています。環境変数の{keys}は、log-stdoutとlog-varlogです。aliyun_logs_log-stdout環境変数は、コンテナーから収集されたstdoutを格納するために、Logstoreという名前のlog-stdoutが作成されることを示します。収集構成の名前はlog-stdoutです。このようにして、コンテナーの stdout はLogstoreという名前のlog-stdoutに収集されます。aliyun_logs_log-varlog環境変数は、コンテナーから収集された /var/demo/*.log ファイルを格納するために、Logstoreという名前のlog-varlogが作成されることを示します。収集構成の名前はlog-varlogです。このようにして、/var/demo/*.log ファイルはLogstoreという名前のlog-varlogに収集されます。
次の形式で [カスタムタグ] を追加します。
- name: aliyun_logs_mytag1_tags value: tag1=v1タグが追加されると、コンテナーから収集されたログデータにタグが自動的に追加されます。
mytag1はアンダースコア (_) を含まないタグ名を指定します。
stdout 以外のログファイルを収集するためにログパスを指定する場合は、
volumeMountsパラメーターを設定する必要があります。前の YAML テンプレートでは、
volumeMountsの mountPath フィールドは /var/demo に設定されています。これにより、Logtail は /var/demo*.log ファイルからログデータを収集できます。
YAML テンプレートを変更した後、[作成] をクリックして構成を送信します。
(Optional) 2. 環境変数を使用して詳細設定を構成する
環境変数ベースの Logtail 構成は、さまざまなパラメーターをサポートしています。環境変数を使用して高度な設定を構成し、ログ収集要件を満たすことができます。
エッジコンピューティングシナリオでは、環境変数を使用してログ収集を構成することはできません。
変数 | 説明 | 例 | 使用上の注意 |
aliyun_logs_{key} |
|
|
|
aliyun_logs_{key}_tags | オプション。この変数は、ログにタグを追加するために使用されます。値は {tag-key}={tag-value} 形式である必要があります。 | | 該当なし。 |
aliyun_logs_{key}_project | オプション。この変数は、Simple Log Service プロジェクトを指定します。デフォルトのプロジェクトは、Logtail のインストール後に生成されるプロジェクトです。 | | プロジェクトは、Logtail と同じリージョンにデプロイする必要があります。 |
aliyun_logs_{key}_logstore | オプション。この変数は、Simple Log Service ログストアを指定します。デフォルト値: {key}。 | | 該当なし。 |
aliyun_logs_{key}_shard | オプション。この変数は、ログストアのシャード数を指定します。有効な値: 1 ~ 10。デフォルト値: 2。 説明 指定したログストアが既に存在する場合、この変数は有効になりません。 | | 該当なし。 |
aliyun_logs_{key}_ttl | オプション。この変数は、ログの保存期間を指定します。有効な値: 1 ~ 3650。
説明 指定したログストアが既に存在する場合、この変数は有効になりません。 | | 該当なし。 |
aliyun_logs_{key}_machinegroup | オプション。この変数は、アプリケーションがデプロイされているマシングループを指定します。デフォルトのマシングループは、Logtail がデプロイされているマシングループです。この変数の使用方法の詳細については、「ACK クラスタからコンテナーログを収集する」をご参照ください。 | | 該当なし。 |
aliyun_logs_{key}_logstoremode | オプション。この変数は、ログストアのタイプを指定します。デフォルト値: standard。有効な値: standard および query。 説明 指定したログストアが既に存在する場合、この変数は有効になりません。
|
| この変数を使用するには、 logtail-ds コンポーネントのイメージバージョンが 1.3.1 以降であることを確認してください。 |
ステップ 3:ログのクエリと分析
Simple Log Service コンソールにログオンします。
[プロジェクト] セクションで、管理するプロジェクトをクリックして、プロジェクトの詳細ページに移動します。

左側のナビゲーションウィンドウで、管理するログストアの
アイコンをクリックします。ドロップダウンリストで、[検索と分析] を選択して、Kubernetes クラスタから収集されたログを表示します。
コンテナテキストログのデフォルトフィールド
次の表は、各コンテナテキストログにデフォルトで含まれるフィールドについて説明しています。
フィールド名 | 説明 |
__tag__:__hostname__ | コンテナホストの名前。 |
__tag__:__path__ | コンテナ内のログファイルパス。 |
__tag__:_container_ip_ | コンテナの IP アドレス。 |
__tag__:_image_name_ | コンテナで使用されるイメージの名前。 |
__tag__:_pod_name_ | ポッドの名前。 |
__tag__:_namespace_ | ポッドが属する名前空間。 |
__tag__:_pod_uid_ | ポッドの一意の識別子( UID )。 |
参照資料
ログ収集エラーのトラブルシューティングについては、「Logtail 収集エラーを表示する方法」と「コンテナーからログを収集するときにエラーが発生した場合の対処方法」をご参照ください。
DaemonSet を介して Logtail をデプロイして ACK クラスタからテキストログを収集する方法については、「ACK クラスタからコンテナーログを収集する」をご参照ください。
Knative モニタリングダッシュボードを表示できます。 詳細については、「Knative モニタリングダッシュボードを表示する」をご参照ください。
Simple Log Service では、モニタリングアラートを設定できます。 詳細については、「Knative サービスのアラートを設定する」をご参照ください。


