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

Simple Log Service:正規表現をデバッグするにはどうすればよいですか?

最終更新日:Aug 23, 2024

Logtailを設定してテキストログを収集する場合、ログの解析と収集に完全正規表現モードを選択した場合、ログサンプルに基づいて正規表現を設定する必要があります。 このトピックでは、構成時に正規表現をデバッグする方法について説明します。

重要

このドキュメントには、参照専用のサードパーティ製品に関する情報が含まれている場合があります。 Alibaba Cloudは、明示または黙示を問わず、サードパーティ製品のパフォーマンスと信頼性、および製品に対する操作の潜在的な影響に関して、いかなる保証も行いません。

説明

正規表現を構成するときは、デバッグに検証関数を使用できます。

  • 最初の行に一致する正規表現: 現在の設定が予想されるログ数と一致するかどうかを確認します。

  • フィールドの抽出: 各フィールドの値が期待した値であるかどうかを確認します。

さらに正規表現のデバッグを行う場合は、Regex101などの関数を使用して、コンソールで自動的に生成された正規表現をこれらのツールに貼り付けることができます。 次に、チェックとデバッグのために実際のログサンプルを入力します。

説明

完全正規表現モードでは、正規表現を自動的に生成できます。 ただし、複数行ログの正規表現を生成するときに問題があります。 このトピックでは、正規表現を検証および変更する例としてRegex101を取り上げます。

操作

  1. Regex101にアクセスし、ログサンプルregular expressionに基づいてログサービスによって自動的に生成された完全な正規表現をコピーします。正規表現を生成する方法については、「完全正規表現モード」をご参照ください。

    \[([^]]+)]\s\[(\w+)]\s([^:]+:\s\w+\s\w+\s[^:]+:\S+\s[^:]+:\S+\s\S+). *

    正規表現は、ページの右ペインにも表示されます。

  2. TEST STRINGでは、at以降のログはメッセージフィールド (青) に含まれません。 したがって、この式はサンプルログと完全に一致することはできません。この正規表現を使用してすべてのログデータを取得することはできません。

  3. ログに2つのコロンしか見つからない場合、完全一致が見つかります。

  4. この場合、最後の正規表現 [\S\s]+ を置き換えて、一致度を再確認して、完全な一致が実現できるようにします。 コロンが2つしかないログを照合できます。