• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

データが表示されない。AWS CloudWatchメトリックストリーム

問題

AWSアカウントをリンクする手順を踏んで、AWS CloudWatchメトリクスストリームとAWS Kinesis Data Firehoseを設定したのに、New Relicに期待通りのメトリクスが表示されない。

ソリューション

New Relicにメトリクスやエラーが表示されない

AWS CloudWatch Metric StreamがAWS Kinesis Data Firehoseに接続されてもNew Relicにデータが表示されない場合は、以下の手順で設定のトラブルシューティングを行ってください。

  1. AWSコンソールまたはAPIを介して、メトリックストリームがRunningの状態にあることを確認します。詳細については、 AWSトラブルシューティングのドキュメントを参照してください。
  2. AWS/CloudWatch/MetricStreams名前空間の下のメトリックストリームメトリックを確認します。メトリックストリームごとのメトリック更新とエラーの数が表示されます。これは、メトリックストリームが正常にデータを送信していることを示しています。
  3. エラーが表示された場合は、メトリクスストリーム設定で指定されたIAMロールが、CloudWatchサービスに書き込みのプリンシパルパーミッションを付与し、目的のFirehoseリソースをターゲットにしていることを確認します。
  4. KinesisコンソールのKinesis Data FirehoseのMonitoringタブで、Firehoseが正常にデータを受信しているかどうかを確認します。
  5. Kinesis Data FirehoseでCloudWatchのエラーログを有効にすることで、問題をデバッグするためのより詳細な情報を得ることができます。詳細は、Amazon Kinesis Data Firehoseの公式ドキュメントを参照してください。
  6. Kinesis Data Firehoseに正しい送信先情報が設定されていることを確認します。
  • New Relic API Key/License Key に、16進数40文字のライセンスキーが入っていることを確認します。
  • NewRelicアカウントに適切なデータセンターUSまたはEUが選択されていることを確認してください。ヒント: license_keyが「eu」で始まる場合は、EUデータセンターを選択する必要があります。
  1. Kinesis Data Firehoseに、設定された保存先への書き込み権限があるかどうかを確認します。例えば、S3バケットのポリシーでは、書き込みが許可されています。

特定のAWSネームスペースのメトリクスの欠落

New Relic は、AWS CloudWatch のメトリクスストリームから受け取ったメトリクスに対して、何のフィルターも適用しません。

特定のメトリクスが取り込まれることを期待しているのに取り込まれない場合は、以下を確認してください。

  • CloudWatchMetricStreamにInclusionまたはExclusionフィルターがないことを確認してください。
  • メトリクスがAWS CloudWatchで利用可能であり、AWS CloudWatchのインターフェースでクエリできることを確認します。 ECS/ EKS container insights のようないくつかの特定のAWSサービスについては、メトリクスにアクセスする前に、AWS-sdideで拡張モニタリングを明示的に有効にする必要があります。

重要

AWS CloudWatchでは、2時間以内に利用できないメトリクスは含まれません。例えば、 いくつかのS3メトリクス は日単位で集計されます。このような特殊なメトリクスの一部をNew Relicで利用できるようにする予定です。

AWS CloudWatchとNew Relicの間のメトリック値の不一致

メトリクスは、AWS CloudWatch メトリクスストリームから受信したとおりに処理、マッピング、保存されます。AWS CloudWatch と New Relic のダッシュボードを比較すると、いくつかの相違点が見られる場合があります。限られたシナリオでは、AWS CloudWatchはメトリクスをレンダリングする前に特定の機能やロジックを適用します。

これらのガイドラインは、不一致の根本原因を理解するのに役立つはずです。

  • メトリックで同じ関数が使用されていることを確認します(たとえば、 averageminmax )。
  • New Relic側では、AWS CloudWatchと全く同じ時間を表示するために、同じタイムスタンプまたはタイムフレーム(タイムゾーンを考慮)をフィルタリングすることを確認してください。
  • 時系列を使用している場合、New Relic のユーザーインターフェースでは、間隔に基づいて丸めが行われることがあります。

次のようなクエリを使って、時間ごとに受信した生のメトリックのリストを得ることができます(選択したメトリックには何の関数も適用されないことに注意してください)。

FROM Metric
SELECT aws.outposts.InstanceTypeCapacityUtilization
WHERE collector.name = 'cloudwatch-metric-streams'

AWSは、AWS CloudWatchで報告されるすべてのメトリックの最大解像度(1分、5分など)を固定していることを覚えておいてください。

AWS Metric Streamsの運用

メトリックスストリームの状態は、CloudWatchコンソールの[Streams]タブで確認できます。特に、メトリックストリームは、 runningまたはstoppedの2つの状態のいずれかになります。

  • 実行中です。ストリームは正しく実行されています。実行中であっても、設定されたフィルターのために、ストリーミングされるメトリックデータがない場合があります。
  • ストップしました。ストリームが明示的に停止状態になった(エラーではない)。この状態は、設定を削除することなく、データのストリーミングを一時的に停止するのに便利です。

ステータスダッシュボードのエラー

New Relicは、CloudWatch Metric Streamで受信したメトリクスを強化するために、リソースから追加のメタデータを収集するためにAWS Configサービスを利用しています。

AWS AccountでAWS Configが有効になっていることを確認し、リンク先のRoleに以下のパーミッションまたはインラインポリシーが作成されていることを確認してください。

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "config:BatchGetResourceConfig",
"Resource": "*"
}
]
}
Copyright © 2022 New Relic株式会社。