- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
クラウドベースのアプリケーションは、毎分数百万というペースでログを生成できますが。すべてのログに価値があるわけではなく、またその重要度もマチマチです。そこで、Datadog の Logging without Limits™ は、ログの取り込みとインデックス化を切り離すことで柔軟に対応します。
このガイドでは、ログエクスポローラーを構造化し KPI をモニターするのに役立つ、Logging Without Limits™ の主要な機能、 パターン、除外フィルター、ログベースのカスタムメトリクス、 モニターを紹介します。
最多ログサービスの中にはさまざまなログがあり、トラブルシューティングに関係のないものもあります。たとえば、大規模な障害時やイベントの際に、400 番台や 500 番台の応答コードログのみを調べる場合、ログエクスポローラーから 200 番台のものを除外することでトラブルシューティングを円滑に進めることができます。最初に対応するサービスを特定することで、最も多くのログを生み出すサービスステータスを特定し、ログエクスポローラービューから除外すべきものを判断することができます。
最多ログのサービスステータスを特定するには:
*
、service
ごとにグループ化、top 10
に制限と設定。service
ごとにグループ化を status
ごとにグループ化に切り替え。これにより、サービスに関するトップステータスリストが作成されます。注: この手順は、大量のログクエリに適用しトップリストを生成する際に利用できます。グループ化に使えるファセットの一例として、host
、network.client.ip
対 service
、status
などがあります。
最多ログのサービステータスを特定したら、ログエクスポローラーの左上にあるグラフビューの隣から、パターンビューに切り替え、選択したコンテキストの Log Patterns を自動的に表示します。
コンテキストはタイムレンジと検索クエリで構成されます。それぞれのパターンは強調表示されるので、その特徴的な機能を簡単に確認できます。ミニグラフにはログ量の大まかなタイムラインが表示されるため、あるパターンと別のパターンの違いを見ることができます。パターン内で変化するログのセクションは強調表示されるため、ログライン全体での違いを一目で確認できます。
除外するログパターンをクリックし、そこに含まれるログのサンプルを表示。
パターンビューは、ノイズの多いパターンを特定しフィルタリングする際に役立ちます。パターンに一致するログ数を、サービスとステータスに分けて表示します。一番上のパターンをクリックすると、ステータスに関連するイベントの詳細なログが表示されます。コンテキストパネルには、最もノイズの多いステータスパターンに関する情報が表示されます。
パターンのコンテキストパネルには、ログパターンのすべてのインスタンス(イベント)が一覧表示され、選択したパターンに基づいたカスタム検索クエリが作成されます。除外フィルターでこのクエリを使用して、インデックスからこれらのログを削除します。
除外フィルターを作成するには:
注: ログが複数の除外フィルターに一致した場合は、最初の除外フィルター規則だけが適用されます。複数の除外フィルターによってログが何度もサンプリングされたり除外されることはありません。
この例では、サービス email-api-py
、ステータス INFO
パターン response code from ses 200
が除外フィルターでフィルタリングされています。このような大量のログパターンをログエクスプローラーから削除することで、ノイズを減らし、問題をより早く特定することができます。しかし、これらのログは、インデックス作成から除外されるだけです。これらはまだ取り込まれ、Live Tail で見ることができ、ログアーカイブに送ることができ、またはメトリクスの生成に使用することができます。
除外フィルターは、フィルターの右にある [無効] オプションを切り替えることで無効にできます。修正または削除するには、フィルターの上にカーソルを合わせ、[編集] または [削除] オプションを選択します。
ログエクスポローラーからログパターンを除外しても、新しいログベースのカスタムメトリクスを作成することで収集レベルで KPI を長期にわたり追跡できます。
ログパターンに基づき新しいログベースのメトリクスを生成するには:
service:web-store status:info "updating recommendations with customer_id" "url shops"
)。*
を選択し、クエリに一致するすべてのログのカウントを生成するか、メジャー (例、@duration
) を入力して数値を集計し、集計メトリクスの対応するカウント、最小、最大、合計、平均を作成します。<KEY>:<VALUE>
形式に従いタグに変換します。ログベースのメトリクスは、カスタムメトリクスと見なされます。タイムスタンプ、ユーザー ID、リクエスト ID、セッション IDなど、無制限または極めてカーディナリティの高い属性を使うグループ化は避け、請求に影響を与えないようにします。異常検知は、メトリクスが過去とは異なる挙動をしている時を特定するためのアルゴリズム機能です。除外されたログの異常検知モニターを作成すると、設定したアラート条件に基づき必要な際に警告が発せられます。
異常検知モニターを設定するには:
異常が検出されると、タグ付けされている全員にアラートが送信されます。このアラートは、Monitors -> Triggered Monitors でも確認できます。
ここでは、Logging without Limits™ を以下に適用する方法について説明しました。
Logging Without Limits™ の詳細やログエクスポローラー、Live Tail、ログパターンの活用方法については、以下のリンクをご覧ください。
お役に立つドキュメント、リンクや記事: