Logtailを使用してログを収集する場合、processor_filter_regexまたはprocessor_filter_key_regexプラグインを使用してログをフィルタリングできます。 このトピックでは、processor_filter_regexおよびprocessor_filter_key_regexプラグインのパラメーターについて説明します。 このトピックでは、プラグインの設定方法の例も示します。
制限事項
テキストログとコンテナーstdoutおよびstderrの入力プラグインは、フォーム設定のみをサポートしています。 その他の入力プラグインは、JSONでのエディター設定のみをサポートします。
エントリーポイント
Logtailプラグインを使用してログを処理する場合は、Logtail設定を作成または変更するときにLogtailプラグイン設定を追加できます。 詳細については、「データ処理用Logtailプラグインの概要」をご参照ください。
processor_filter_regex
正規表現を使用して、ログフィールドの値を一致させ、ログをフィルタリングできます。
フォーム設定
パラメーター
プロセッサタイプを正規表現によるログのフィルタリング (ログフィールド値の一致) に設定します。 次に、次の表に基づいて他のパラメーターを設定します。
説明ログのフィールドの値が、[ログの収集] パラメーターで指定された正規表現と完全に一致し、[ログの削除] パラメーターで指定された正規表現と一致しない場合にのみ、ログが収集されます。 それ以外の場合、ログは削除されます。
パラメーター
説明
ログの収集
ログフィールドの名前と、フィールドの値の照合に基づく正規表現を指定します。 ログフィールドの値が指定された正規表現と一致する場合、ログが収集されます。
複数のキーと値のペアを追加できます。 キーと値のペアは、論理ANDを使用して評価されます。
ドロップログ
ログフィールドの名前と、フィールドの値の照合に基づく正規表現を指定します。 ログフィールドの値が指定された正規表現と一致する場合、ログは削除されます。
複数のキーと値のペアを追加できます。 キーと値のペアは、論理ORを使用して評価されます。
設定例
この例では、ipが10で始まり、methodがPOSTで、browserがaliyun.* でないログのみが収集されます。
生ログ
ログ1
"ip" : "10.**.**.**" "method" : "POST" "browser" : "aliyun-sdk-java"
ログ2
"ip" : "10.**.**.**" "method" : "POST" "browser" : "chrome"
ログ3
"ip" : "192.168.*.*" "method" : "POST" "browser" : "ali-sls-ilogtail"
データ処理用のLogtailプラグイン設定
結果
ログ
収集済み
理由
ログ1
選択可能
browserフィールドの値は、Drop Logパラメーターで指定された正規表現と一致します。
ログ2
必須
指定されたフィールドの値は、Collect Logsパラメーターで指定された正規表現と一致し、Drop Logパラメーターで指定された正規表現と一致しません。
ログ3
選択可能
ipフィールドの値が、[ログの収集] パラメーターで指定された正規表現と一致しません。
JSONでのエディター設定
パラメーター
typeをprocessor_filter_regexに設定します。 次に、次の表に基づいて他のパラメーターを詳細に設定します。
説明ログのフィールドの値が、Includeパラメーターで指定された正規表現と完全に一致し、Excludeパラメーターで指定された正規表現と一致しない場合にのみ、ログが収集されます。 それ以外の場合、ログは削除されます。
パラメーター
タイプ
必須
説明
含める
JSON Object
選択可能
一致条件として使用されるキーと値のペア。 キーと値のペアでは、キーはフィールドを指定し、値はフィールドの値が一致する正規表現を指定します。 キーと値のペアは、論理ANDを使用して評価されます。 ログフィールドの値がIncludeパラメーターで指定された正規表現と一致する場合、ログが収集されます。
除外
JSON Object
選択可能
一致条件として使用されるキーと値のペア。 キーと値のペアでは、キーはフィールドを指定し、値はフィールドの値が一致する正規表現を指定します。 キーと値のペアは、論理ORを使用して評価されます。 ログフィールドの値がExcludeパラメーターで指定された正規表現と一致する場合、ログは削除されます。
設定例
この例では、ipが10で始まり、methodがPOSTで、browserがaliyun.* でないログのみが収集されます。
生ログ
ログ1
"ip" : "10.**.**.**" "method" : "POST" "browser" : "aliyun-sdk-java"
ログ2
"ip" : "10.**.**.**" "method" : "POST" "browser" : "chrome"
ログ3
"ip" : "192.168.*.*" "method" : "POST" "browser" : "ali-sls-ilogtail"
データ処理用のLogtailプラグイン設定
{ "type" : "processor_filter_regex", "detail" : { "Include" : { "ip" : "10\..*", "method" : "POST" }, "Exclude" : { "browser" : "aliyun.*" } } }
結果
ログ
収集済み
理由
ログ1
選択可能
browserフィールドの値は、Excludeパラメーターで指定された正規表現と一致します。
ログ2
必須
指定されたフィールドの値は、Includeパラメーターで指定された正規表現と一致し、Excludeパラメーターで指定された正規表現と一致しません。
ログ3
選択可能
ipフィールドの値が、Includeパラメーターで指定された正規表現と一致しません。
processor_filter_key_regex
正規表現を使用して、ログフィールドの名前を一致させ、ログをフィルタリングできます。
フォーム設定
パラメーター
[プロセッサタイプ] を [正規表現によるログのフィルタリング (ログフィールド名の一致)] に設定します。 次に、次の表に基づいて他のパラメーターを設定します。
説明ログのフィールド名が、[ログの収集] パラメーターで指定された正規表現と完全に一致し、[ログの削除] パラメーターで指定された正規表現と一致しない場合にのみ、ログが収集されます。 それ以外の場合、ログは削除されます。
パラメーター
説明
ログの収集
ログフィールドの名前の照合に基づく正規表現を指定します。 複数の正規表現は、論理ANDを使用して評価されます。 ログフィールドの名前が指定された正規表現と一致する場合、ログが収集されます。
ドロップログ
ログフィールドの名前の照合に基づく正規表現を指定します。 複数の正規表現は、論理ORを使用して評価されます。 ログフィールドの名前が指定された正規表現と一致する場合、ログは削除されます。
設定例
この例では、フィールド名がrequestで始まるログを収集します。
生ログ
ログ1
"request_time" : 20 "request_length": 2314 "request_method" : "POST" "browser" : "aliyun-sdk-java"
ログ2
"request_time" : 70 "request_method" : "GET" "ip" : "192.168.**.**"
ログ3
"browser" : "ali-sls-ilogtail" "status" : 200
データ処理用のLogtailプラグイン設定
結果
ログ
収集済み
理由
ログ1
必須
request_time、request_length、およびrequest_methodフィールドの名前は、[ログの収集] パラメーターで指定された正規表現と一致します。
ログ2
必須
request_timeフィールドとrequest_lengthフィールドの名前は、[ログの収集] パラメーターで指定された正規表現と一致します。
ログ3
選択可能
ログ内のフィールド名は、[ログの収集] パラメーターで指定された正規表現と一致しません。
JSONでのエディター設定
パラメーター
typeをprocessor_filter_key_regexに設定します。 次に、次の表に基づいて他のパラメーターを詳細に設定します。
説明ログ内のフィールドの名前がIncludeパラメーターで指定された正規表現と完全に一致し、Excludeパラメーターで指定された正規表現と一致しない場合にのみ、ログが収集されます。 それ以外の場合、ログは削除されます。
パラメーター
タイプ
必須
説明
含める
string[]
選択可能
ログフィールドの名前の照合に基づく正規表現を指定します。 複数の正規表現は、論理ANDを使用して評価されます。 ログフィールドの名前が指定された正規表現と一致する場合、ログが収集されます。
除外
string[]
選択可能
ログフィールドの名前の照合に基づく正規表現を指定します。 複数の正規表現は、論理ORを使用して評価されます。 ログフィールドの名前が指定された正規表現と一致する場合、ログは削除されます。
設定例
この例では、フィールド名がrequestで始まるログを収集します。
生ログ
ログ1
"request_time" : 20 "request_length": 2314 "request_method" : "POST" "browser" : "aliyun-sdk-java"
ログ2
"request_time" : 70 "request_method" : "GET" "ip" : "192.168.**.**"
ログ3
"browser" : "ali-sls-ilogtail" "status" : 200
データ処理用のLogtailプラグイン設定
{ "type" : "processor_filter_key_regex", "detail" : { "Include" : [ "request.*" ] } }
結果
ログ
収集済み
理由
ログ1
必須
request_time、request_length、およびrequest_methodフィールドの名前は、Includeパラメーターで指定された正規表現と一致します。
ログ2
必須
request_timeフィールドとrequest_lengthフィールドの名前は、Includeパラメーターで指定された正規表現と一致します。
ログ3
選択可能
ログ内のフィールド名が、Includeパラメーターで指定された正規表現と一致しません。