- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Datadog ログ管理は、ログの収集、処理、アーカイブ、探索、監視を行うため、システムの問題を可視化することができます。しかし、ログから適切なレベルの可視性を得ることは難しく、また、ログのスループットが大きく変動し、予期せぬリソースの使用を引き起こす可能性があります。
したがって、このガイドでは、ガバナンス、使用量属性、および予算管理の柔軟性を提供する、さまざまなログ管理のベストプラクティスおよびアカウント構成を説明します。具体的には、以下の方法を説明します。
また、このガイドでは、ログの使用量を監視する方法について、以下のように説明します。
異なる保持期間や 1 日の割り当て、使用量の監視、請求のためにログをセグメント化したい場合は、複数のインデックスを設定します。
例えば、7 日間だけ保持する必要があるログと、30 日間保持する必要があるログがある場合、複数のインデックスを使用して、2 つの保持期間ごとにログを分離することができます。
複数のインデックスを設定するには
インデックスに 1 日の割り当てを設定すると、新しいログソースが追加されたとき、または開発者が意図せずにログレベルをデバッグモードに変更したときに、請求の超過を防止するのに役立ちます。過去 24 時間以内に 1 日の割り当てのパーセンテージに達したときにアラートを発するようにモニターを設定する方法については、[インデックスが 1 日の割り当てに達した場合のアラート(#alert-on-indexes-reaching-their-daily-quota)を参照してください。
ログを長期間保存したい場合は、ログアーカイブを設定して、AWS S3、Azure Storage、Google Cloud Storage などのストレージに最適化されたシステムにログを送信してください。Datadog を使用してこれらのログを分析する場合は、Log Rehydration™ を使用して Datadog にこれらのログをキャプチャして戻します。複数のアーカイブを使用することで、コンプライアンス上の理由からログをセグメント化し、リハイドレートのコストを抑制することができます。
一度にリハイドレートできるログの容量の上限を設定します。アーカイブの設定時に、リハイドレートのためにスキャンできるログデータの最大容量を定義することができます。詳しくは、最大スキャンサイズを定義するを参照してください。
Datadog のデフォルトロールは 3 つあります。Admin、Standard、および Read-only です。また、独自の権限セットを持つカスタムロールを作成することも可能です。例えば、意図しないコスト上昇を避けるために、インデックス保持ポリシーの変更をユーザーに制限するロールを作成することができます。同様に、ログのパース構成を変更できるユーザーを制限して、明確に定義されたログの構造や形式が不要に変更されるのを避けることができます。
権限を持つカスタムロールを設定するには
ユースケースの例として、特定の権限を持つロールを設定し、割り当てる方法については、ログの RBAC の設定方法を参照してください。
以下を設定することで、ログの使用量を監視することができます。
デフォルトで、ログ使用量メトリクスは取り込まれたログ、取り込まれたバイト数、インデックス化されたログの追跡に利用できます。このメトリクスは無料で利用でき、15 か月間保存できます。
datadog.estimated_usage.logs.ingested_bytes
datadog.estimated_usage.logs.ingested_events
使用量メトリクスを使った異常検出モニターの作成手順については、異常検出モニターを参照してください。
注: Datadog では、メトリクスサマリーページの datadog.estimated_usage.logs.ingested_bytes
の単位を byte
とすることを推奨しています。
異常検出モニターを作成し、予期せぬログのインデックス化の急増にアラートを出します。
datadog.estimated_usage.logs.ingested_events
メトリクスを選択します。datadog_is_excluded:false
タグを追加します。service
と datadog_index
タグを追加し、特定のサービスが急増したり、いずれかのインデックスでログの送信を停止した場合に通知されるようにします。An unexpected amount of logs has been indexed in the index: {{datadog_index.name}}
1. [Check Log patterns for this service](https://app.datadoghq.com/logs/patterns?from_ts=1582549794112&live=true&to_ts=1582550694112&query=service%3A{{service.name}})
2. [Add an exclusion filter on the noisy pattern](https://app.datadoghq.com/logs/pipelines/indexes)
インフラストラクチャー (例えば、service
、availability-zone
など) の任意のスコープでインデックス化されたログボリュームが予期せず増加した場合にアラートを出すようにモニターをセットアップします。
index:main
) を含む検索クエリを入力します。host
、services
など) を追加します。Unexpected spike on indexed logs for service {{service.name}}
The volume on this service exceeded the threshold. Define an additional exclusion filter or increase the sampling rate to reduce the volume.
インデックスに 1 日の割り当てを設定することで、1 日に与えられたログ数以上のインデックスを作成しないようにすることができます。インデックスに 1 日の割り当てがある場合、Datadog は過去 24 時間以内にこの割り当ての 80% に達したときにアラートを出すように[そのインデックスのボリュームについて通知するモニター](#alert-when-an-indexed-log-volume-passes a-specified-threshold)を設定することをお勧めします。
1 日の割り当てに達すると、イベントが生成されます。デフォルトでは、これらのイベントはインデックス名を持つ datadog_index
タグを持っています。したがって、このイベントが生成されたら、datadog_index
タグに ファセットを作成して、datadog_index
を group by
ステップで使用して、複数アラートモニターをセットアップできるようにします。
インデックスの 1 日の割り当てに達したときにアラートを出すようにモニターを設定するには
source:datadog "daily quota reached"
と入力します。datadog_index(datadog_index)
を追加します。datadog_index(datadog_index)
タグは、すでにイベントが生成されている場合のみ利用可能です。above or equal to
を選択し、Alert threshold に 1
を入力します。datadog_index(datadog_index)
によってグループ化されているため、Multi Alert ボタンが自動的に選択されます。これは、Slack での通知の例です。
ログの取り込みを開始すると、ログ使用量メトリクスをまとめたすぐに使えるダッシュボードが自動的にアカウントにインストールされます。
注: このダッシュボードで使用されるメトリクスは推定であるため、正式な請求対象の数値とは異なる場合があります。
このダッシュボードを見つけるには、Dashboards > Dashboards List に移動し、Log Management - Estimated Usage を検索します。
使用量モニターがアラートを出す場合、除外フィルターを設定したり、サンプリングレートを上げてボリュームを減らしたりすることができます。設定方法については、除外フィルターを参照してください。また、ログパターンを使用して、大量のログをグループ化して識別することができます。次に、ログパターンのサイドパネルで、Add Exclusion Filter をクリックして、これらのログのインデックス化を停止するフィルターを追加します。
除外フィルターを使用している場合でも、ログベースのメトリクスを使用して、すべてのログデータの傾向や異常を視覚化することができます。詳しくは、取り込んだログからメトリクスを生成するを参照してください。
データ漏洩を防ぎ、コンプライアンス違反のリスクを抑えるには、機密データスキャナーを使用して、機密データを特定し、タグ付けし、オプションで冗長化またはハッシュ化することができます。例えば、ログ、APM スパン、RUM イベントに含まれるクレジットカード番号、銀行支店番号、API キーをスキャンできます。スキャンするデータを決定するスキャンルールを設定する方法については、機密データスキャナーを参照してください。
注: 機密データスキャナーは、別途課金対象製品です。
インデックスの保持を変更したのは誰か、除外フィルターを修正したのは誰かなど、ユーザーのアクティビティを確認したい場合は、監査証跡を有効にしてこれらのイベントを確認します。利用可能なプラットフォームおよび製品固有のイベントのリストについては、監査証跡のイベントを参照してください。監査証跡を有効にして構成するには、監査証跡のドキュメントの手順に従います。
注: 監査証跡は、別途課金対象製品です。
お役に立つドキュメント、リンクや記事: