プラグインは、生ログを解析して構造化データに変換します。
背景情報
プラグインは、ネイティブプラグインと拡張プラグインに分類されます。
ネイティブプラグイン:優れたパフォーマンスを提供し、ほとんどのユースケースで推奨されます。
拡張プラグイン:より広範な機能を提供します。 ログが複雑すぎてネイティブプラグインでは対応できない場合は、拡張プラグインの使用をご検討ください。 ただし、パフォーマンスが低下する可能性があります。
制限事項
パフォーマンスに関する制限事項
拡張プラグインを使用してログを処理する場合、Logtail はより多くのリソース (主に CPU) を消費します。 実際のニーズに基づいて Logtail パラメーターを調整してください。 詳細については、「Logtail の起動パラメーターの設定」をご参照ください。
生データレートが 5 MB/s を超える場合は、複雑なプラグインの組み合わせを避けてください。 拡張プラグインで簡単な処理を実行し、より高度なタスクにはデータ変換を使用します。
ログ収集に関する制限事項
拡張プラグインは、テキストログを 1 行ずつ処理します。 つまり、
__tag__:__path__や__topic__などのファイルレベルのメタデータが各ログに追加されます。拡張プラグインを追加すると、タグ関連の機能に影響します:
コンテキスト検索機能と LiveTail 機能は無効になります。 これらの機能を使用するには、`aggregators` 構成を追加する必要があります。
__topic__フィールドは__log_topic__に名前が変更されます。 `aggregators` 構成を追加すると、ログには__topic__フィールドと__log_topic__フィールドの両方が含まれます。__log_topic__フィールドが不要な場合は、processor_drop プラグインを使用して削除できます。__tag__:__path__などのフィールドには、ネイティブフィールドインデックスがなくなります。 フィールドインデックスを作成する必要があります。
プラグインの組み合わせに関する制限事項
2.0 より前の Logtail バージョンの場合:
ネイティブプラグインと拡張プラグインを同時に追加することはできません。
ネイティブプラグインは、テキストログの収集にのみ使用できます。 ネイティブプラグインを使用する場合、次の要件が適用されます:
最初のプラグインは、正規表現解析、デリミタモード解析、JSON 解析、Nginx モード解析、Apache モード解析、または IIS モード解析プラグインである必要があります。
最初の処理プラグインの後に追加できるのは、時間解析プラグイン 1 つ、データフィルタリングプラグイン 1 つ、および複数のデータマスキングプラグインのみです。
Logtail 2.0 の場合:拡張プラグインは、すべてのネイティブプラグインの後でのみ追加できます。
ネイティブ解析プラグインのパラメーターの組み合わせに関する制限事項
2.0 より前の Logtail バージョンのネイティブ解析プラグイン (正規表現解析、JSON 解析、デリミタモード解析、Nginx モード解析、Apache モード解析、IIS モード解析プラグインなど) では、さまざまなシナリオに応じて特定のパラメーターの組み合わせを使用する必要があります。 その他の組み合わせは無効であり、Simple Log Service は結果を保証できません。
正常に解析されたログのみをアップロード:

成功した場合は解析済みログをアップロードし、失敗した場合は生ログをアップロード:

解析が成功した場合、解析されたログは生ログフィールドが追加されてアップロードされます。 失敗した場合は、生ログがアップロードされます。
たとえば、生ログ
"content": "{"request_method":"GET", "request_time":"200"}"が正常に解析された場合、生ログフィールドを追加すると、解析されたログに新しいフィールドが追加されます。 新しいフィールドの名前はカスタマイズできます。 指定しない場合、デフォルトで元のフィールド名になります。 フィールド値は生ログです:{"request_method":"GET", "request_time":"200"}。
プラグイン一覧
ネイティブプラグイン
プラグイン | 説明 |
正規表現解析 | |
JSON 解析 | |
デリミタモード解析 | |
Nginx モード解析 | |
Apache モード解析 | |
IIS モード解析 | |
時間解析 | |
データフィルタリング | |
データマスキング |
拡張プラグイン
機能 | 説明 |
フィールドの抽出 | |
フィールドの追加 | |
フィールドの削除 | |
フィールド名の変更 | |
フィールドのパック | 1 つ以上のフィールドを JSON オブジェクト形式の単一フィールドにパックします。 詳細については、「拡張プラグイン:フィールドのパック」をご参照ください。 |
JSON フィールドのアンパック | |
ログのフィルタリング | 正規表現に対してフィールド値を照合することでログをフィルタリングします。 詳細については、「processor_filter_regex」をご参照ください。 |
正規表現に対してフィールド名を照合することでログをフィルタリングします。 詳細については、「processor_filter_key_regex」をご参照ください。 | |
ログ時間の抽出 | 生ログから時間フィールドを解析し、その結果をログ時間として設定します。 詳細については、「Go 言語の時間形式」をご参照ください。 |
IP アドレスの変換 | ログ内の IP アドレスを、国、省、市、緯度/経度などの地理的な場所に変換します。 詳細については、「拡張プラグイン:IP アドレスの変換」をご参照ください。 |
データマスキング | ログ内の機密データを、指定された文字列または MD5 ハッシュに置き換えます。 詳細については、「拡張プラグイン:データマスキング」をご参照ください。 |
フィールド値のマッピング | |
フィールドの暗号化 | |
データのエンコードとデコード | |
ログからメトリックへの変換 | 収集されたログを Simple Log Service (SLS) メトリックに変換します。 詳細については、「拡張プラグイン:ログからメトリックへの変換」をご参照ください。 |
ログからトレースへの変換 | 収集されたログを SLS トレースに変換します。 詳細については、「拡張プラグイン:ログからトレースへの変換」をご参照ください。 |
プラグインの追加
既存の構成の変更
Simple Log Service コンソールにログインします。
プロジェクトリストで、対象のプロジェクトをクリックします。

ログ管理 > Logstore タブで、目的の Logstore の横にある [>] アイコンをクリックし、データのインポート > Logtail 設定 を選択します。

Logtail の設定 リストで、目的の Logtail 構成を見つけ、アクション 列の Logtail 設定の管理 をクリックします。
ページの上部にある編集をクリックし、設定の処理セクションでプラグインを追加してから保存をクリックします。
新しい構成の作成
Simple Log Service コンソールにログインします。
コンソールの右側で、データのインポート カードをクリックします。

データのインポート ダイアログボックスで、いずれかのカードをクリックし、ウィザードに従います。Logtail構成 ステップで、プラグインを追加します。詳細については、「ホストからテキストログを収集する」をご参照ください。
説明プラグインの設定は、Logtail 構成の変更と同じプロセスに従います。