パブリックホストゾーンの DNS クエリメトリクスの表示 - Amazon Route 53

パブリックホストゾーンの DNS クエリメトリクスの表示

指定したパブリックホストゾーン、またはパブリックホストゾーンの組み合わせについて、Route 53 が応答する DNS クエリの総数を表示できます。メトリクスは CloudWatch に表示され、グラフの表示、表示する期間の選択、その他のさまざまな方法でメトリクスのカスタマイズを行うことができます。アラームを作成して通知を設定することもできます。これにより、指定した期間内の DNS クエリの数が指定したレベルを超える、または下回ったときに通知を受け取ることができます。

注記

Route 53 はすべてのパブリックホストゾーンの DNS クエリの数を CloudWatch に自動的に送信するため、何も設定しなくてもクエリメトリクスを表示できます。DNS クエリメトリクスには料金はかかりません。

どの DNS クエリがカウントされますか?

メトリクスには、DNS リゾルバーが Route 53 に転送するクエリのみが含まれます。DNS リゾルバーが既にクエリへの応答 (example.com のロードバランサーの IP アドレスなど) をキャッシュしている場合は、リゾルバーは対応するレコードの TTL の有効期限が切れるまで、クエリを Route 53 に転送しないでキャッシュされたレスポンスを返し続けます。

ドメイン名 (example.com) またはサブドメイン名 (www.example.com) に送信された DNS クエリ数、ユーザーが使用しているリゾルバー、およびレコードの TTL によって、DNS クエリメトリクスに含まれる情報は DNS リゾルバーに送信された数千件の各クエリのうち 1 つのクエリのみに関するものである場合があります。DNS の仕組みについては、「Amazon Route 53 によりドメインのトラフィックをルーティングする方法」を参照してください。

ホストゾーンのクエリメトリクスは、いつ CloudWatch に表示され始めますか?

ホストゾーンを作成した後、ホストゾーンが CloudWatch に表示されるまでに最大数時間の遅延が発生します。また、表示するデータが存在するように、ホストゾーンのレコードの DNS クエリを送信する必要があります。

メトリクスは 米国東部(バージニア北部) でのみ使用できます。

コンソールでメトリクスを取得するには、リージョンに 米国東部(バージニア北部) を選択する必要があります。AWS CLI を使用してメトリクスを取得するには、AWS リージョンを指定しないままにするか、リージョンとして us-east-1 を指定する必要があります。他のリージョンを選択した場合、Route 53 メトリクスは使用できません。

DNS クエリのCloudWatch メトリクスとディメンション

DNS クエリの CloudWatch メトリクスとディメンションの詳細については、「Amazon CloudWatch を使用したホストゾーンのモニタリング」を参照してください。CloudWatch メトリクスの詳細については、『Amazon CloudWatch ユーザーガイド』の「Amazon CloudWatch メトリクスの使用」を参照してください。

DNS クエリに関する詳細データの取得

Route 53 が応答する各 DNS クエリの詳細情報 (以下の値を含む) を取得するには、クエリログ記録を設定できます。

  • リクエストされたドメインまたはサブドメイン

  • リクエストの日付と時刻

  • DNS レコードタイプ (A や AAAA など)

  • DNS クエリに応答した Route 53 エッジロケーション

  • DNS レスポンスコード (NoErrorServFail など)

詳細については、「DNS クエリのログ記録」を参照してください。

DNS クエリメトリクスの取得方法

ホストゾーンを作成するとすぐに、Amazon Route 53 は 1 分に 1 回、メトリクスとディメンションを CloudWatch に送信し始めます。以下の手順に従って、CloudWatch コンソールまたは AWS Command Line Interface (AWS CLI) でメトリクスを表示できます。

CloudWatch コンソールでのパブリックホストゾーンの DNS クエリメトリクスの表示

CloudWatch コンソールでパブリックホストゾーンの DNS クエリメトリクスを表示するには、以下の手順を実行します。

CloudWatch コンソールでパブリックホストゾーンの DNS クエリメトリクスを表示するには

  1. AWS マネジメントコンソール にサインインした後、https://console.aws.amazon.com/cloudwatch/ にある CloudWatch コンソールを開きます。

  2. ナビゲーションペインで メトリクスを選択します。

  3. コンソールの右上にある AWS リージョンのリストで、[US East (N. Virginia)] を選択します。他の AWS リージョンを選択した場合、Route 53 メトリクスは使用できません。

  4. [すべてのメトリクス] タブで、[Route 53] を選択します。

  5. [Hosted Zone Metrics (ホストゾーンのメトリクス)] を選択します。

  6. メトリクス名 DNSQueries を持つ 1 つ以上のホストゾーンのチェックボックスをオンにします。

  7. [グラフ化したメトリクス] タブで、該当する値を変更して、目的の形式でメトリクスを表示します。

    [統計] で、[Sum] または [SampleCount] を選択します。これらの統計はどちらも同じ値を表示します。

AWS CLI を使用した DNS クエリメトリクスの取得

AWS CLI を使用して DNS クエリメトリクスを取得するには、get-metric-data コマンドを使用します。次の点に注意してください。

  • コマンドのほとんどの値は、別の JSON ファイルで指定します。詳細については、「get-metric-data」を参照してください。

  • コマンドは、JSON ファイル Period で指定した間隔ごとに 1 つの値を返します。Period は秒単位であるため、5 分の期間を指定し Period60 を指定すると、5 つの値が取得されます。5 分の期間を指定し、Period300 を指定した場合、1 つの値が取得されます。

  • JSON ファイルでは、Id に任意の値を指定できます。

  • AWS リージョンを指定しないままにするか、リージョンとして us-east-1 を指定します。他のリージョンを選択した場合、Route 53 メトリクスは使用できません。詳細については、AWS Command Line Interface ユーザーガイドの「AWS CLI の設定」を参照してください。

2019 年 5 月 1 日の 4:01 から 4:07 の 5 分間の DNS クエリメトリクスを取得するために使用する AWS CLI コマンドを次に示します。metric-data-queries パラメータは、コマンドに続くサンプル JSON ファイルを参照します。

aws cloudwatch get-metric-data --metric-data-queries file://./metric.json --start-time 2019-05-01T04:01:00Z --end-time 2019-05-01T04:07:00Z

サンプル JSON ファイルを次に示します。

[ { "Id": "my_dns_queries_id", "MetricStat": { "Metric": { "Namespace": "AWS/Route53", "MetricName": "DNSQueries", "Dimensions": [ { "Name": "HostedZoneId", "Value": "Z1D633PJN98FT9" } ] }, "Period": 60, "Stat": "Sum" }, "ReturnData": true } ]

このコマンドの出力は次のとおりです。次の点に注意してください。

  • コマンドの開始時刻と終了時刻は、7 分間の期間 (2019-05-01T04:01:00Z から 2019-05-01T04:07:00Z) を対象としています。

  • 戻り値は 6 つだけです。2019-05-01T04:05:00Z に値がないのは、その 1 分間に DNS クエリがなかったためです。

  • JSON ファイルで指定された Period の値は 60 (秒) であるため、値は 1 分間隔で報告されます。

{ "MetricDataResults": [ { "Id": "my_dns_queries_id", "StatusCode": "Complete", "Label": "DNSQueries", "Values": [ 101.0, 115.0, 103.0, 127.0, 111.0, 120.0 ], "Timestamps": [ "2019-05-01T04:07:00Z", "2019-05-01T04:06:00Z", "2019-05-01T04:04:00Z", "2019-05-01T04:03:00Z", "2019-05-01T04:02:00Z", "2019-05-01T04:01:00Z" ] } ] }