- 重要な情報
- はじめに
- 用語集
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Datadog では、ログからすべての関連情報を抽出するためのパーサーを定義できます。パースの言語および機能の詳細については、こちらのドキュメントを参照してください。
この記事では、Datadog Agent のコレクターによるログをパースする方法について説明します。
2017-10-12 08:54:44 UTC | INFO | dd.collector | checks.collector(collector.py:530) | Finished run #1780. Collection time: 4.06s. Emit time: 0.01s
パースするログのサンプルをコメントとして必ず規則に追加する。
そうすれば、パース規則をサンプルログでテストすることができます。初めて規則を記述する際や、パーサーの問題を調査したり、新しいログ形式をサポートしたりする場合に、これが非常に役に立ちます。アスタリスクを利用して、属性を 1 つずつパースする。
最初からログ全体のパース規則を記述する必要はありません。1 つの属性ごとに規則をチェックしましょう。それには、規則の末尾に .*
を使用して、後続の規則を無視してマッチさせることができます。
たとえば、ここではまず、後続の属性を考慮せず、ログの日付をパースするとします。次の規則を作成します。
適切なマッチャーを使用する。
規則はできるだけシンプルに作成しましょう。たとえば、基本の notSpace
が機能するなら、多くの場合、特定のパターンに合わせて複雑な正規表現を定義する必要はありません。
パース規則を記述する際には、次のマッチャーがよく使用されます。
ほとんどの規則は、この 4 つのマッチャーを使用して記述できます。すべてのマッチャーのリストはパースのドキュメントで確認できます。
KeyValue。 keyvalue フィルターを使用すると、すべての属性を自動的に抽出できます。 詳細については、いくつかの例を参照してください。
ログメッセージの中で、属性として抽出しない部分をスキップする。 先の例に戻ります。
2017-10-12 08:54:44 UTC | INFO | dd.collector | checks.collector(collector.py:530) | Finished run #1780. Collection time: 4.06s. Emit time: 0.01s
たとえば、dd.collector の情報は利用価値がなく、属性として抽出する必要がないと判断したとします。 これをスキップするには、対応するセクションを規則から削除します。
お役に立つドキュメント、リンクや記事: