Logtail パイプライン構成を更新します。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
log:UpdateLogtailPipelineConfig |
update |
*すべてのリソース。
|
|
なし |
リクエスト構文
PUT /pipelineconfigs/{configName} HTTP/1.1
パスパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| configName |
string |
必須 |
Logtail パイプライン構成名。 |
test-config |
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| project |
string |
必須 |
プロジェクト名。 |
test-project |
| body |
object |
任意 |
Logtail パイプライン構成内容。 |
|
| aggregators |
array<object> |
任意 |
集約プラグインのリスト。 重要 このパラメーターは、拡張処理プラグインが使用されている場合にのみ効果があります。集約プラグインの最大値は 1 です。 |
|
|
object |
任意 |
集約プラグイン。 |
||
| configName |
string |
必須 |
構成名。 重要 値は、外側の configName パラメーターと同じである必要があります。 |
test-config |
| flushers |
array<object> |
必須 |
出力プラグインのリスト。 重要 Simple Log Service 出力プラグインは 1 つのみ許可されます。 |
|
|
object |
任意 |
出力プラグイン。 |
{ "Type": "flusher_sls", "Logstore": "test" } |
|
| global |
object |
任意 |
一般設定。 |
|
| inputs |
array<object> |
必須 |
入力プラグインのリスト。 重要 入力プラグインは 1 つのみ構成できます。 |
|
|
object |
任意 |
入力プラグイン。 |
{ "Type": "input_file", "FilePaths": ["/var/log/*.log"] } |
|
| logSample |
string |
任意 |
ログサンプル。複数のログエントリがサポートされています。 |
2022-06-14 11:13:29.796 | DEBUG | __main__: |
| processors |
array<object> |
任意 |
処理プラグインのリスト。 説明
処理プラグインは、ネイティブ処理プラグインと拡張処理プラグインに分類されます。詳細については、「処理プラグイン」を参照してください。 重要
説明
|
|
|
object |
任意 |
処理プラグイン。 説明
詳細については、「処理プラグイン」を参照してください。 |
{ "Type": "processor_parse_json_native", "SourceKey": "content" } |
|
| task |
object |
任意 |
一般設定
| パラメーター | タイプ | 必須 | デフォルト値 | 例 | 説明 |
| TopicType | string | No | Empty | filepath | トピックタイプ。有効な値:
|
| TopicFormat | string | いいえ。TopicType が filepath または custom に設定されている場合に必須。 | / | /var/log/(.*).log | トピックフォーマット。 |
| EnableTimestampNanosecond | bool | No | false | false | 時間スタンプのナノ秒精度を有効にするかどうかを指定します。 |
| PipelineMetaTagKey | object | No | Empty | {"HOST_NAME":"__hostname__"} | 重要 LoongCollector 3.0.10 以降でのみサポートされます。
|
入力プラグイン。
ファイル入力プラグイン
| パラメーター | タイプ | 必須 | デフォルト値 | 例 | 説明 |
| Type | string | Yes | / | input_file | プラグインタイプ。値を input_file に設定します。 |
| FilePaths | [string] | Yes | / | ["/var/log/*.log"] | 収集するログファイルパスのリスト (1 つのパスのみサポート)。パスでは * および ** ワイルドカードがサポートされています。** ワイルドカードは 1 回のみ使用でき、ファイル名の前にのみ使用できます。 |
| MaxDirSearchDepth | uint | No | 0 | 0 | ファイルパス内の ** ワイルドカードに一致するディレクトリ深度の最大値。このパラメーターは、ログパスに ** ワイルドカードが含まれている場合にのみ効果があります。有効な値: 0 ~ 1000。 |
| ExcludeFilePaths | [string] | No | Empty | ["/home/admin/*.log"] | ファイルパスのブロックリスト。パスは絶対パスである必要があります。* ワイルドカードがサポートされています。 |
| ExcludeFiles | [string] | No | Empty | ["app*.log", "password"] | ファイル名のブロックリスト。* ワイルドカードがサポートされています。 |
| ExcludeDirs | [string] | No | Empty | ["/home/admin/dir1", "/home/admin/dir2*"] | ディレクトリのブロックリスト。パスは絶対パスである必要があります。* ワイルドカードがサポートされています。 |
| FileEncoding | string | No | utf8 | utf8 | ファイルエンコーディングフォーマット。有効な値: utf8、gbk。 |
| TailSizeKB | uint | No | 1024 | 1024 | 構成が初めて効果を発揮する時間に収集が開始されるファイルの末尾からのサイズ。ファイルサイズがこの値より小さい場合、収集は先頭から開始されます。有効な値: 0 ~ 10485760 KB。 |
| Multiline | object | No | Empty | / | 複数行集約オプション。 |
| Multiline.Mode | string | No | custom | custom | 複数行集約モード。有効な値: custom、JSON。 |
| Multiline.StartPattern | string | Multiline.Mode が custom に設定されている場合に必須 | Empty | \d+-\d+-\d+.* | 行頭の正規表現。 |
| EnableContainerDiscovery | bool | No | false | true | コンテナー検出を有効にするかどうかを指定します。このパラメーターは、Logtail が DaemonSet モードで実行されており、収集するファイルパスがコンテナー内のパスである場合にのみ効果があります。 |
| ContainerFilters | object | No | Empty | / | コンテナーフィルターオプション。複数のオプションは AND 関係にあります。このパラメーターは、EnableContainerDiscovery が true に設定されている場合にのみ効果があります。 |
| ContainerFilters.K8sNamespaceRegex | string | No | Empty | default | Kubernetes 環境にデプロイされたコンテナーの場合、対象コンテナーが属するポッドの名前空間条件を指定します。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。 |
| ContainerFilters.K8sPodRegex | string | No | Empty | test-pod | Kubernetes 環境にデプロイされたコンテナーの場合、対象コンテナーのポッド名条件を指定します。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。 |
| ContainerFilters.IncludeK8sLabel | map | No | Empty | / | Kubernetes 環境にデプロイされたコンテナーの場合、対象コンテナーのポッドラベル条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。マップのキーはポッドラベル名で、値はポッドラベル値です。
|
| ContainerFilters.ExcludeK8sLabel | map | No | Empty | / | Kubernetes 環境にデプロイされたコンテナーの場合、収集から除外するコンテナーのポッドラベル条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。マップのキーはポッドラベル名で、値はポッドラベル値です。
|
| ContainerFilters.K8sContainerRegex | string | No | Empty | test-container | Kubernetes 環境にデプロイされたコンテナーの場合、コンテナー名条件を指定します。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。 |
| ContainerFilters.IncludeEnv | map | No | Empty | / | 対象コンテナーの環境変数条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。マップのキーは環境変数名で、値は環境変数値です。
|
| ContainerFilters.ExcludeEnv | map | No | Empty | / | 収集から除外するコンテナーの環境変数条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、すべてのコンテナーが収集されます。正規表現マッチングがサポートされています。マップのキーは環境変数名で、値は環境変数値です。
|
| ContainerFilters.IncludeContainerLabel | map | No | Empty | / | 対象コンテナーのコンテナーラベル条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、デフォルト値は空で、すべてのコンテナーが収集されることを示します。正規表現マッチングがサポートされています。マップのキーはコンテナーラベル名で、値はコンテナーラベル値です。
|
| ContainerFilters.ExcludeContainerLabel | map | No | Empty | / | 収集から除外するコンテナーのコンテナーラベル条件を指定します。複数の条件は OR 関係にあります。このパラメーターが指定されていない場合、デフォルト値は空で、すべてのコンテナーが収集されることを示します。正規表現マッチングがサポートされています。マップのキーはコンテナーラベル名で、値はコンテナーラベル値です。
|
| ExternalK8sLabelTag | map | No | Empty | / | Kubernetes 環境にデプロイされたコンテナーの場合、ログに追加するポッドラベルに関連する追加のタグを指定します。マップのキーはポッドラベル名で、値は対応するタグ名です。たとえば、マップに app: k8s\_label\_app を追加し、ポッドに app=serviceA というラベルが含まれている場合、この情報はタグとしてログに追加されます。つまり、__tag__:k8s_label_app: serviceA というフィールドが追加されます。ポッドに app ラベルが含まれていない場合、空のフィールド __tag__:k8s_label_app: が追加されます。 |
| ExternalEnvTag | map | No | Empty | / | Kubernetes 環境にデプロイされたコンテナーの場合、ログに追加するコンテナー環境変数に関連する追加のタグを指定します。マップのキーは環境変数名で、値は対応するタグ名です。たとえば、マップに VERSION: env\_version を追加し、コンテナーに VERSION=v1.0.0 という環境変数が含まれている場合、この情報はタグとしてログに追加されます。つまり、__tag__:env_version: v1.0.0 というフィールドが追加されます。コンテナーに VERSION 環境変数が含まれていない場合、空のフィールド __tag__:env_version: が追加されます。 |
| CollectingContainersMeta | bool | No | false | true | コンテナーメタデータのプレビューを有効にするかどうかを指定します。 |
| AppendingLogPositionMeta | bool | No | false | false | ログエントリが属するファイルに関するメタデータ (__tag__:__inode__ フィールドおよび __file_offset__ フィールドを含む) を追加するかどうかを指定します。 |
| AllowingIncludedByMultiConfigs | bool | No | false | false | 現在の構成で、すでに他の構成にマッチしているファイルを収集することを許可するかどうかを指定します。 |
| Tags | object | No | Empty | {"FileInodeTagKey":"__inode__"} | 重要 LoongCollector 3.0.10 以降でのみサポートされます。
|
| FileOffsetKey | string | No | Empty | __file_offset__ | 重要 LoongCollector 3.0.10 以降でのみサポートされます。 |
コンテナー標準出力 (レガシー)
| パラメーター | タイプ | 必須 | デフォルト値 | 例 | 説明 |
| Type | string | Yes | / | service_docker_stdout | プラグインタイプ。値を service_docker_stdout に設定します。 |
| Stdout | Boolean | No | true | true | 標準出力 (stdout) を収集するかどうかを指定します。 |
| Stderr | Boolean | No | true | true | 標準エラー出力 (stderr) を収集するかどうかを指定します。 |
| StartLogMaxOffset | Integer | No | 128×1024 | 131072 | 最初の収集時に遡る履歴データの長さ (バイト単位)。[131072, 1048576] の範囲の値を推奨します。 |
| IncludeLabel | Map, where LabelKey and LabelValue are of the String type | No | Empty | 収集するコンテナーを指定するコンテナーラベルの許可リスト。デフォルト値は空で、すべてのコンテナーの stdout が収集されることを示します。コンテナーラベル許可リストを構成するには、LabelKey が必須で、LabelValue は任意です。
複数の許可リストエントリは OR 関係にあります。コンテナーのラベルがいずれかの許可リストエントリを満たす場合、そのコンテナーはマッチします。 | |
| ExcludeLabel | Map, where LabelKey and LabelValue are of the String type | No | Empty | 収集から除外するコンテナーを指定するコンテナーラベルのブロックリスト。デフォルト値は空で、コンテナーが除外されないことを示します。コンテナーラベルブロックリストを構成するには、LabelKey が必須で、LabelValue は任意です。
複数のブロックリストエントリは OR 関係にあります。コンテナーのラベルがいずれかのブロックリストエントリを満たす場合、そのコンテナーは除外されます。 | |
| IncludeEnv | Map, where EnvKey and EnvValue are of the String type | No | Empty | 収集するコンテナーを指定する環境変数の許可リスト。デフォルト値は空で、すべてのコンテナーの stdout が収集されることを示します。環境変数許可リストを構成するには、EnvKey が必須で、EnvValue は任意です。
| |
| ExcludeEnv | Map, where EnvKey and EnvValue are of the String type | No | Empty | 収集から除外するコンテナーを指定する環境変数のブロックリスト。デフォルト値は空で、コンテナーが除外されないことを示します。環境変数ブロックリストを構成するには、EnvKey が必須で、EnvValue は任意です。
複数のブロックリストエントリは OR 関係にあります。コンテナーの環境変数がいずれかのキーと値のペアを満たす場合、そのコンテナーは除外されます。 | |
| IncludeK8sLabel | Map, where LabelKey and LabelValue are of the String type | No | Empty | Kubernetes Label (template.metadata で定義) の許可リストを使用して収集するコンテナーを指定します。Kubernetes Label 許可リストを構成するには、LabelKey が必須で、LabelValue は任意です。
複数の許可リストエントリは OR 関係にあります。コンテナーの Kubernetes Label いずれかの許可リストエントリを満たす場合、そのコンテナーはマッチします。 | |
| ExcludeK8sLabel | Map, where LabelKey and LabelValue are of the String type | No | Empty | Kubernetes Label (template.metadata で定義) のブロックリストを使用して収集から除外するコンテナーを指定します。Kubernetes Label ブロックリストを構成するには、LabelKey が必須で、LabelValue は任意です。
複数のブロックリストエントリは OR 関係にあります。コンテナーの Kubernetes Label いずれかのブロックリストエントリを満たす場合、そのコンテナーは除外されます。 | |
| K8sNamespaceRegex | String | No | Empty | ^(default|nginx)$ | 名前空間名で収集するコンテナーを指定します。正規表現マッチングがサポートされています。たとえば、このパラメーターを ^(default|nginx)$ に設定すると、nginx および default 名前空間内のすべてのコンテナーがマッチします。 |
| K8sPodRegex | String | No | Empty | ^(nginx-log-demo.*)$ | ポッド名で収集するコンテナーを指定します。正規表現マッチングがサポートされています。たとえば、このパラメーターを ^(nginx-log-demo.*)$ に設定すると、名前が nginx-log-demo で始まるポッド内のすべてのコンテナーがマッチします。 |
| K8sContainerRegex | String | No | Empty | ^(container-test)$ | コンテナー名 (Kubernetes コンテナー名は spec.containers で定義) で収集するコンテナーを指定します。正規表現マッチングがサポートされています。たとえば、このパラメーターを ^(container-test)$ に設定すると、container-test という名前のすべてのコンテナーがマッチします。 |
データ処理パラメーター
| パラメーター | タイプ | 必須 | デフォルト値 | 例 | 説明 |
| BeginLineRegex | String | No | Empty | 行頭のマッチに使用される正規表現フォーマット。 このパラメーターが空の場合、単一行モードが使用されます。 式が行頭にマッチする場合、その行は新しいログエントリとして扱われます。それ以外の場合、その行は前のログエントリに追加されます。 | |
| BeginLineCheckLength | Integer | No | Empty | 行頭のマッチングの長さ。単位: バイト。 デフォルト値: 10 × 1024 バイト。 行頭のマッチングの正規表現が最初の N バイト以内で確定できる場合、マッチング効率を向上させるためにこのパラメーターを設定します。 | |
| BeginLineTimeoutMs | Integer | No | Empty | 行頭のマッチングのタイムアウト時間。単位: ミリ秒。 デフォルト値: 3000 ミリ秒。 3000 ミリ秒以内に新しいログエントリが表示されない場合、マッチングは終了し、最後のログエントリが Simple Log Service にアップロードされます。 | |
| MaxLogSize | Integer | No | Empty | ログエントリの長さの最大値。デフォルト値: 0。単位: バイト。 デフォルト値: 512 × 1024 バイト。 ログエントリの長さがこの値を超えると、システムは次の行頭の検索を停止し、ログエントリを直接アップロードします。 | |
| ExternalK8sLabelTag | Map (LabelKey および LabelValue は String 型) | No | Empty | Kubernetes Label タグ (template.metadata で定義) を構成した後、iLogtail は Kubernetes Label 関連のフィールドをログに追加します。 たとえば、LabelKey を app に、LabelValue を | |
| ExternalEnvTag | Map (EnvKey および EnvValue は String 型) | No | Empty | コンテナー環境変数タグを構成した後、iLogtail はコンテナー環境変数関連のフィールドをログに追加します。 たとえば、EnvKey を |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
レスポンスフィールドがありません。
例
成功レスポンス
JSONJSON
{}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。