IBM Cloud Logs ログ構文解析ルール
解析ルールを使用してログデータを処理、解析、再構築し、監視と分析の準備をすることができます。 例えば、選択した情報の抽出、構造化されていないログの構造化、ログの不要な部分の削除などを行うことができます。 コンプライアンス上の理由からフィールドをマスクし、誤ったフォーマットのログを修正することができます。 ログの内容に基づいてログデータの取り込みをブロックするなど、さまざまなことができます。
IBM® Cloud Logsでは、 OpenSearchでデータが索引付けされる前に、構文解析ルールを使用してデータの構造を制御できます。
ルール・グループ
語句解析ルールは、 *「ルール・グループ」*内に編成されています。 各グループには、名前とルールのセットがあり、それらの間に論理関係があります。 ログは、ルール・グループの順序 (最初から最後まで) に従って処理されます。 その後、ルール・グループ内のルールの順序、およびルール・グループ間の論理演算子 (AND/OR) に従って処理されます。 ルールは、ログ・データを処理、解析、および再構成して、モニターおよび分析の準備をするのに役立ちます。 詳しくは、
ルール・グループの操作 を参照してください。
ルールのタイプ
以下の構文解析ルールを構成できます。
-
構文解析
: 非構造化テキストを JSON 形式に変換します。
-
抽出
: ログ全体を解析せずに、JSON キーとして値を抽出します。
-
JSON の抽出
: JSON キーの値をメタデータ・フィールドに抽出します。
-
: フィールドの値を固定ストリング値に置き換えて、ログ構造を修正したり、ログの重大度を変更したり、情報を難読化したりします。
-
ブロック
: 正規表現式を使用して着信ログをドロップします。
-
「タイム・スタンプ抽出」
: ログ・タイム・スタンプを、ログに含まれているタイム・スタンプに置き換えます。
-
「フィールドの削除」
: 索引付きフィールドの数を減らすために、ログ内の JSON フィールドを削除します。
-
Stringify JSON フィールド
: JSON フィールドを stringify JSON フィールドに変換して、索引付きフィールドの数を削減します。
-
「JSON フィールドの解析」
: エスケープされたフィールドまたはストリング化されたフィールドを JSON 形式に変換します。
元のログを変更するルール
これらのルールは、元のログ行を変更します。
- 構文解析
- タイム・スタンプ抽出
- 置換
- JSON フィールドの解析
元のログにさらにフィールドを追加するルール
これらの規則は、元のログ・データが維持されている間に、ログ行にフィールドを追加します。
- JSON の抽出
- 抽出
データをドロップするルール
これらのルールは、ログ行からデータを削除します。
- ブロック
- 削除
- Stringify JSON フィールド (元のログを保持できるかどうか)
ルールの実行順序
ログが取り込まれると、最初に構成されたルールから順にルール・グループが適用されます。
最初にブロック・ルールを指定し、可能な場合はルール・マッチャーを使用して、ログの不要な処理を回避し、データ処理を高速化します。
ルール・グループ内:
-
ルール・グループ・マッチャー照会が最初に適用されます。
構成されているアプリケーション、サブシステム、および重大度に一致するログのみが、引き続き構文解析ルールを適用します。
-
ルールは、ルールの後に
OR論理演算子が続くまで、最初のルールから順番に適用されます。ルールは即時に適用されるため、1 つのルールの出力が次のルールの入力になります。
グループ内の
ORおよびAND演算子は、演算の数学的順序に従いません。
ルール・グループおよびルールの実行順序は重要であり、最終ログの構造を定義します。