操作シナリオ
区切り文字抽出モードは、ログテキスト内の各行が1件の元のログであり、かつ各ログを指定された区切り文字に基づいて複数のkey-valueキー値として抽出できるログ解析モードに適用されます。key-valueを抽出する必要がない場合は、単一行全文形式を参照して設定してください。本記事では、区切り文字抽出モードを使用してログを収集する方法について説明します。 前提条件
対象ファイルが存在するサーバーにはLogListenerがインストールされています。詳細については以下をご参照ください:
LogListener Linuxバージョンが2.4.5以上、またはLogListener Windowsバージョンが2.9.7以上であること。
効果プレビュー
あるログの元のデータが以下の通りであると仮定します:
10.20.20.10 - ::: [Tue Jan 22 14:49:45 CST 2019 +0800] ::: GET /online/sample HTTP/1.1 ::: 127.0.0.1 ::: 200 ::: 647 ::: 35 ::: http://127.0.0.1/
ログ解析の区切り文字を:::に指定すると、このログは8つのフィールドに分割され、これら8つのフィールドに一意のkeyが定義されます。以下に示します:
IP: 10.20.20.10 -
bytes: 35
host: 127.0.0.1
length: 647
referer: http://127.0.0.1/
request: GET /online/sample HTTP/1.1
status: 200
time: [Tue Jan 22 14:49:45 CST 2019 +0800]
操作手順
ステップ1:ログトピックの作成/選択
新しいログトピックを作成する場合は、以下の操作を実行できます:
2. 左側のナビゲーションバーで概要を選択し、概要ページに移動します。
3. クイックアクセスでサーバーとアプリケーションを選択し、区切り文字-ファイルログを見つけてクリックし、収集設定フローに進みます。
4. 収集設定フローのログトピックの作成ページで、実際のニーズに応じて、ログトピック名を入力し、ログ保存期間などの情報を設定し、次へをクリックします。
既存のログトピックを選択する場合は、以下の操作を実行できます:
2. 左側のナビゲーションバーでログトピックを選択し、配信対象のログトピックを選択して、指定したログトピック名をクリックし、ログトピック管理ページに移動します。
3. 収集設定タブを選択し、LogListener収集設定欄で新規作成をクリックして、ログデータソースの選択に進みます。
4. ログデータソース選択ページでサーバーとアプリケーションを選択し、区切り文字-ファイルログを見つけてクリックし、収集設定フローに進みます。
ステップ2:マシングループ管理
収集対象サーバーにLogListenerがインストールされていない場合は、以下をご参照ください:
新しいマシングループを作成する場合は、以下の操作を実行できます:
1. 新規マシングループをクリックします。
2. マシングループ名を入力し、マシン識別の方法でLogListenerがインストール済みのターゲットサーバーを関連付けます。詳細はマシングループをご参照の上、確定をクリックしてください。 3. 作成が完了したら、Tabオプションで作成したマシングループのシステム環境を選択し、リストでターゲットマシングループにチェックを入れ、次へをクリックします。
既存のマシングループを選択する場合は、Tabオプションで作成したマシングループのシステム環境を選択し、リストでターゲットマシングループにチェックを入れ、次へをクリックします。
ステップ3:収集設定
ログファイル収集パスの設定
「収集設定」ページで、収集ルール名を入力し、ログ収集パス形式に従って「収集パス」を入力します。ログ収集パス形式の参考は以下の通りです:
注意:
Linuxログパスは/で始まる必要があります。Windowsファイルパスはドライブ文字で始まる必要があります。例えばC:\\です。
Linuxシステムにおけるログパス:/[ディレクトリプレフィックス式]/**/[ファイル名式]、例えば:/data/log/**/*.log。
Windowsシステムにおけるログパス:[ドライブ文字]:\\[ディレクトリプレフィックス式]\\**\\[ファイル名式]、例えばC:\\Program Files\\Tencent\\...\\*.logです。
ログ収集パスを入力すると、LogListenerは[ディレクトリプレフィックス式]に従って、ルールに一致するすべての共通プレフィックスパスをマッチングし、これらのディレクトリ(サブディレクトリを含む)にある[ファイル名式]ルールに一致するすべてのログファイルを監視します。そのパラメータの詳細説明は以下の通りです:
|
1 | /var/log/nginx | access.log | この例では、ログパスの設定は/var/log/nginx/**/access.logです。LogListenerは/var/log/nginxプレフィックスパス配下のすべてのサブディレクトリにあるaccess.logという名前のログファイルを監視します。 |
2 | /var/log/nginx | *.log | この例では、ログパスの設定は/var/log/nginx/**/*.logです。LogListenerは/var/log/nginxプレフィックスパス配下のすべてのサブディレクトリにある.logで終わるログファイルを監視します。 |
3 | /var/log/nginx | error* | この例では、ログパスの設定は/var/log/nginx/**/error*です。LogListenerは/var/log/nginxプレフィックスパス配下のすべてのサブディレクトリにあるerrorで始まる名前のログファイルを監視します。 |
注意:
Windowsシステム環境では現在、シンボリックリンクの収集をサポートしていません。
LogListener 2.3.9以降のバージョンでのみ、複数の収集パスを追加できます。
収集パスをlog/*.logに設定し、ログローテーション後の古いファイルをlog/*.log.xxxxにリネームすることをお勧めします。
デフォルトでは、1つのログファイルは1つのログトピックにのみ収集されます。1つのファイルを複数の収集設定に対応させる必要があり、かつファイルが存在するシステム環境がLinuxである場合は、ソースファイルにシンボリックリンクを追加し、それを別の収集設定グループに追加してください。
収集パス拒否リストの設定
収集パス拒否リストを有効にすると、収集時に指定したディレクトリプレフィックスまたは完全なファイルパスを無視できます。ディレクトリパスとファイルパスは完全一致も、ワイルドカードパターンマッチングもサポートします。
収集拒否リストは2種類のフィルタリングタイプに分かれており、同時に使用できます:
ファイルパス:収集パス配下で、収集を無視する必要がある完全なファイルパスです。ワイルドカード*または?をサポートし、**パスのあいまい一致をサポートします。
ディレクトリパス:収集パス配下で、収集を無視する必要があるディレクトリプレフィックスです。ワイルドカード*または?をサポートし、**パスのあいまい一致をサポートします。
注意:
LogListener-2.3.9以降のバージョンが必要です。
収集拒否リストは収集パス配下で除外を行うため、ファイルパスパターンであれ、ディレクトリパスパターンであれ、指定するパスは収集パスのサブセットである必要があります。
収集ポリシーの設定
全量収集:LogListenerがファイルを収集する際、ファイルの先頭から読み取りを開始します。
増分収集:LogListenerがファイルを収集する際、ファイル内で新しく追加されたコンテンツのみを収集します。
遡及収集の設定
収集戦略として増分収集を選択した場合、ここでさらに遡及収集の開始位置を設定し、LogListener起動時に最新位置から指定バイト数だけ前方にオフセットして収集を開始するかどうかを指定できます。
注意:
Windowsシステム環境は現在サポートされていません。
エンコードモード
UTF-8:お客様のログファイルのエンコードモードがUTF-8の場合、このオプションを選択してください。
GBK:お客様のログファイルのエンコードモードがGBKの場合、このオプションを選択してください。
区切り文字モードの設定
1. 「抽出モード」を区切り文字に設定します。
2. 区切り文字を選択し、「ログサンプル」テキストボックスにログサンプルを入力して、抽出をクリックします。
システムは確定した区切り文字に基づいてログサンプルを分割し、抽出結果欄に表示します。各フィールドに一意のkeyを定義する必要があります。現在、ログ収集では複数の区切り文字をサポートしており、一般的な区切り文字には、スペース、タブ、カンマ、セミコロン、縦線があります。お客様のログデータで使用されている区切り文字がその他の記号(例::::)である場合も、カスタム区切り文字で解析できます。
カスタムメタデータの設定
注意:
LogListener 2.8.7以降のバージョンでのみカスタムメタデータを設定できます。
カスタムメタデータを設定して、ログを区別できます。現在、以下のメタデータ設定がサポートされています。詳細はカスタムメタデータをご参照ください。 マシングループメタデータ:マシングループメタデータを使用します。
収集パス:正規表現を使用して収集パス内の値を抽出し、メタデータとして使用します。
カスタム:カスタムキー値をメタデータとして使用します。
ログタイムスタンプソースの設定
ログ内の指定フィールドの値をログの時間として使用します。
1. 日志时间字段で、抽出済みのValue値をログ時間として選択します。
2. 時間形式解析で、この値に対応する解析式を手動で入力または選択します。例:ログ内で時間を表す値が07/Jul/2025:19:19:30 +0800の場合、解析形式は%d/%b/%Y :%H:%M:%S %zです。詳細については時間形式の設定をご参照ください。 3. 验证。をクリックします。
注意:
時間形式の入力が誤っている場合、ログ時間は収集時間を基準とします。
フィルター条件の設定
フィルターの目的は、ビジネスニーズに応じてログ収集フィルタールールを追加し、価値のあるログデータを選別できるようにすることです。
区切り文字形式のログでは、カスタムのキー値ペアに基づいてフィルター条件を設定する必要があります。次のフィルタールールをサポートします:
等しい:指定フィールド値が指定文字に一致するログのみを収集します。完全一致、または正規表現一致をサポートします。
等しくない:指定フィールド値が指定文字に一致しないログのみを収集します。完全一致、または正規表現一致をサポートします。
フィールドが存在する:指定フィールドが存在するログのみを収集します。
フィールドが存在しない:指定フィールドが存在しないログのみを収集します。
例えば、サンプルログを区切り文字モードで解析した後、statusフィールドが400または500のすべてのログデータを収集したい場合、keyにstatusを設定し、フィルタールールで等しいを選択し、valueに400|500を設定します。
注意:
Windowsシステム環境は現在サポートされていません。
フィルタールール「等しくない」、「フィールドが存在する」、および「フィールドが存在しない」は、LogListener 2.9.3以降のバージョンでのみサポートされます。
複数のフィルタ条件間の関係は「AND」論理です。同じkey名に複数のフィルタ条件を設定した場合、ルールは上書きされます。
アップロード解析失敗ログの設定
アップロード解析失敗ログを有効にすることをお勧めします。有効にすると、LogListenerはさまざまな解析失敗ログをアップロードします。アップロード解析失敗ログを無効にすると、失敗したログは破棄されます。
有効にした後、解析失敗のKey値(デフォルトはLogParseFailure)を設定する必要があります。すべての解析失敗ログは、入力内容をキー名(Key)、元のログ内容を値(Value)としてアップロードされます。 高度な設定
注意:
Windowsシステム環境は現在サポートされていません。
チェックを入れることで、定義する詳細設定を選択します。
区切り文字抽出モードでは、以下の詳細設定を使用できます:
|
タイムアウト属性 | この設定はログファイルのタイムアウト時間を制御します。ログファイルが指定時間内に更新されない場合、タイムアウトとみなされます。タイムアウトしたログファイルは、LogListenerによって収集されなくなります。ログファイルの数が多い場合は、タイムアウト時間を短くして、LogListenerのパフォーマンスの無駄を避けることをお勧めします。 | タイムアウトなし:ログファイルがタイムアウトすることはありません。 カスタム:ログファイルのタイムアウト時間をカスタマイズします。 |
最大ディレクトリ深度 | この設定はログ収集の最大ディレクトリ深度を制御します。LogListenerは、所在ディレクトリ階層が指定された最大ディレクトリ深度を超えるログファイルを収集しません。対象収集パスにワイルドカードが含まれる場合は、適切な最大ディレクトリ深度を設定し、LogListenerのパフォーマンス浪費を回避することをお勧めします。 | 0より大きい整数です。0はサブディレクトリの下位走査を行わないことを表します。 |
ステップ4:インデックス設定
1. 次へをクリックし、インデックス設定ページに進みます。
2. 「インデックス設定」ページで、以下の情報を設定します。設定の詳細については、インデックス設定を参照してください。 注意:
検索にはインデックス設定を有効にする必要があります。有効にしない場合、検索できません。
3. 送信をクリックし、編集インデックス設定確認ページに進みます。
設定したインデックス設定を新規に書き込まれるログにのみ適用する場合は、確定をクリックします。この設定を履歴データにも適用する場合は、確定をクリックした後、詳細についてはインデックスの再構築を参照して、さらに設定を行ってください。 4. 操作に成功し、収集設定が完了しました。
関連操作
ログを検索するには、検索分析ドキュメントを参照してください。