Share via


メトリック グラフのトラブルシューティング

Azure メトリックス エクスプローラーでのグラフの作成、カスタマイズ、解釈で問題が発生する場合は、この記事を使用します。 メトリック初心者の場合は、メトリックス エクスプローラーの概要およびメトリックス エクスプローラーの高度な機能について学習してください。 構成されたメトリック グラフのを見ることもできます。

グラフにデータが表示されない

正しいリソースとメトリックを選択した後、グラフにデータが表示されない場合があります。 次の理由により、この動作が発生する可能性があります。

Microsoft.Insights リソース プロバイダーがサブスクリプションに登録されていない

メトリックを調べるには、Microsoft.Insights リソース プロバイダーがサブスクリプションに登録されている必要があります。 多くの場合は、自動的に登録されます (つまり、警告ルールの構成、リソースの診断設定のカスタマイズ、または自動スケーリング ルールの構成を行った後)。 Microsoft.Insights リソース プロバイダーが登録されていない場合は、「Azure リソース プロバイダーと種類」で説明されている手順に従って、手動で登録する必要があります。

解決方法:[サブスクリプション][リソース プロバイダー] タブの順に開き、サブスクリプションに Microsoft.Insights が登録されていることを確認します。

リソースに対する十分なアクセス権がない

Azure で、Azure ロールベースのアクセス制御 (Azure RBAC) を使用して、メトリックへのアクセスを管理します。 リソースのメトリックを調べるには、監視閲覧者監視共同作成者、または共同作成者のメンバーである必要があります。

解決方法: メトリックを調べるリソースに対して十分なアクセス許可があることを確認します。

"アクセス許可が拒否されました" というエラー メッセージが表示される

このメッセージは、Azure Kubernetes Service (AKS) または Azure Monitor ワークスペースからクエリを実行するときに発生することがあります。 AKS の Prometheus メトリックは Azure Monitor ワークスペースに格納されるため、このエラーはさまざまな理由で発生する可能性があります:

  • メトリックの出力に使用されている Azure Monitor ワークスペースからクエリを実行するアクセス許可がない可能性があります。
  • monitor.azure.com トラフィックをブロックする広告ブロック ソフトウェアが有効になっている場合があります。
  • Azure Monitor ワークスペースのネットワーク設定では、クエリ アクセスはサポートされていません。

解決策: エラーを修正するには、次の 1 つ以上の修正が必要になる場合があります。

  • Azure Monitor ワークスペースで、Access Control (IAM) を通じて microsoft.monitor/accounts/read を実行するのに十分なアクセス許可が割り当てられていることを確認してください。
  • データを表示するには、広告ブロックを一時停止または無効にする必要がある場合があります。 または、広告ブロックで monitor.azure.com トラフィックを許可するように設定することもできます。
  • プライベート エンドポイントを介してプライベート アクセスを有効にするか、パブリック アクセスを許可するように設定を変更することが必要な場合があります。

選択した時間範囲の間にリソースがメトリックを生成しなかった

リソースの中には、メトリックを常時生成していないものもあります。 たとえば、Azure では、停止されている仮想マシンのメトリックは収集されません。 他には、いくつかの条件が発生した場合にのみ、メトリックを生成するリソースもあります。 たとえば、トランザクションの処理時間を示すメトリックには、少なくとも 1 つのトランザクションが必要です。 選択した時間範囲内にトランザクションがなかった場合、グラフは当然空になります。 さらに、ほとんどの Azure メトリックは 1 分ごとに収集されますが、収集頻度がもっと低いメトリックもいくつかあります。 調べようとしているメトリックの詳細については、メトリックのドキュメントを参照してください。

解決方法: グラフの時間をより広い範囲に変更します。 "過去 30 日間" から始めて、時間の細分性を大きくします (または、"自動時間細分性" オプションに任せます)。

30 日より長い時間範囲を選択した

Azure のほとんどのメトリックは 93 日間保存されます。 ただし、1 つのグラフでクエリできるデータは 30 日までです。 この制限は、ログ ベースのメトリックには適用されません。

解決方法: 空のグラフが表示される場合、またはグラフにメトリック データの一部のみが表示される場合は、日時指定の開始日と終了日の間隔が、30 日を超えていないことを確認します。 30 日間の間隔を選択したら、グラフをパンして完全なリテンション期間を表示できます。

すべてのメトリック値がロックされた Y 軸の範囲外だった

グラフの Y 軸の境界をロックすることにより、意図せずグラフの表示領域にグラフの線が表示されなくなっている可能性があります。 たとえば、Y 軸を 0% から 50% の範囲にロックした場合、メトリックの値が一定して 100% であると、線は常に表示領域の外側にレンダリングされ、グラフは空白に見えるようになります。

解決方法: グラフの Y 軸の境界が、メトリックの値の範囲外でロックされていないことを確認します。 Y 軸の境界がロックされている場合、一時的にそれをリセットして、メトリック値がグラフの範囲外になっていないことを確認できます。 summinmax の集計のグラフの場合、自動細分性では Y 軸範囲をロックしないことをお勧めします。ブラウザー ウィンドウのサイズを変更したり、画面の解像度を切り替えたりすると、値の細分性が変化するためです。 細分性が切り替わると、グラフの表示領域が空のままになる可能性があります。

ゲスト (クラシック) のメトリックを見ているが、Azure Diagnostics 拡張機能が有効になっていなかった

ゲスト (クラシック) のメトリックを収集するには、Azure Diagnostics 拡張機能を構成するか、またはご自分のリソースの [診断設定] パネルを使って有効にする必要があります。

解決方法: Azure Diagnostics 拡張機能を有効にしてもメトリックが表示されない場合は、Azure Diagnostics 拡張機能のトラブルシューティング ガイドの手順をご覧ください。 ゲスト (クラシック) の名前空間とメトリックを選択できない場合のトラブルシューティング手順も参照してください

メトリックで定義されていないプロパティによってグラフがセグメント化されている

メトリックで定義されていないプロパティを使用してグラフをセグメント化すると、グラフに内容が表示されません。

解決策: セグメント化 (分割) をクリアするか、別のプロパティを選択してください。

別のグラフにフィルターを掛けると、すべてのデータが除外される

フィルターは、ペイン上のすべてのグラフに適用されます。 別のグラフにフィルターを設定すると、現在のグラフからすべてのデータが除外される可能性があります。

解決策: ペイン上のすべてのグラフのフィルターを確認します。 異なるグラフには異なるフィルターが必要な場合、異なるペインでグラフを作成します。 グラフを別個のお気に入りとして保存します。 必要に応じて、グラフを一緒に表示できるように、グラフをダッシュボードに固定できます。

ダッシュボードに "データの取得中にエラーが発生しました" というメッセージが表示される

この問題は、ダッシュボードを作成するときに使ったメトリックが後で非推奨になって Azure から削除された場合に、発生することがあります。 それに該当するかどうかを確認するには、リソースの [メトリック] タブを開き、メトリック ピッカーでメトリックを使用できるかどうかを調べます。 メトリックが表示されない場合、メトリックは Azure から削除されています。 通常、メトリックが非推奨になったときは、リソースの正常性について似た観点を提供する、さらに新しくて良いメトリックがあります。

解決方法: ダッシュボードでグラフに対して別のメトリックを選択し、障害が発生したタイルを更新します。 Azure サービスで使用可能なメトリックのリストを確認することができます。

グラフに破線が表示される

Azure のメトリック グラフでは、2 つの既知の時間グレイン データ ポイントの間に欠損値 ("null 値" とも呼ばれます) があることを示すために、破線スタイルが使われます。 たとえば、時間セレクターで "1 分" の時間細分性を選択したのに、メトリックが報告されたのが 07:26、07:27、07:29、07:30 (2 番目と 3 番目のデータ ポイントの間の分のギャップに注意してください) であった場合、07:27 と 07:29 の間は破線で接続され、他のすべてのデータ ポイントは実線で接続されます。 メトリックで countsum の集計が使われている場合、破線は 0 まで下がります。 avgmin、または max の集計の場合は、破線は最も近い 2 つの既知のデータ ポイントを接続します。 また、グラフの右端または左端のデータが不足している場合は、破線は不足しているデータ ポイントの方向に延長されます。 グラフの右端または左端のデータが不足している場合に、不足しているデータ ポイントの方向に破線が延長されるようすを示すスクリーンショット。

解決方法: この動作は仕様です。 欠落しているデータ ポイントを識別するのに便利です。 折れ線グラフは高密度のメトリックの傾向を視覚化するには優れた選択ですが、値がまばらなメトリックを解釈するのは困難な場合があります (特に、値と時間グレインの関連付けが重要な場合)。 破線によりこのようなグラフの読み取りは容易になりますが、グラフがまだ明確でない場合は、別のグラフの種類でメトリックを表示することを検討してください。 たとえば、同じメトリックに対する散布図グラフでは、値があるときにのみドットが表示され、値がないときはデータ ポイントがそっくりスキップされることにより、各時間グレインが明確に示されます。

[散布図] メニュー オプションが強調表示されているスクリーンショット。

Note

それでも、メトリックに折れ線グラフを使う方がよい場合は、グラフに沿ってマウスを移動すると、マウス ポインターの位置にあるデータ ポイントが強調表示されるので、時間の細分性を評価するのに役立つ場合があります。

メトリック グラフの測定単位

Azure Monitor メトリックでは、SI ベースのプレフィックスが使用されます。 メトリックは、リソース プロバイダーがメトリックに適切な単位を選択した場合にのみ、IEC プレフィックスを使用します。 例: リソース プロバイダーのネットワーク インターフェイス (リソース名: rarana-vm816) には、[送信パケット数] に対してメトリック単位が定義されていません。 ここでメトリック値に使用されるプレフィックスは、キロ (1000) を表す k であり、SI プレフィックスです。 キロのプレフィックスが付いたメトリック値を示すスクリーンショット。

リソース プロバイダーのストレージ アカウント (リソース名: ibabichvm) には、[BLOB の容量] に対するメトリック単位はバイトとして定義されています。 そのため、使用されるプレフィックスは、IEC プレフィックスである mebi (1024^2) です。 mebi のプレフィックスが付いたメトリック値を示すスクリーンショット。

SI は 10 進数を使用

省略形 SI
1000 k kilo
1000^2 M mega
1000^3 G giga
1000^4 T tera
1000^5 P peta
1000^6 E exa
1000^7 Z zetta
1000^8 Y yotta

IEC はバイナリを使用

省略形 IEC (IEC) 従来 SI
1024 Ki kibi K kilo
1024^2 Mi mebi M mega
1024^3 Gi gibi G giga
1024^4 Ti tebi T tera
1024^5 Pi pebi -
1024^6 Ei exbi -
1024^7 Zi zebi -
1024^8 イ語 yobi -

グラフの値に予期しない低下が示される

多くの場合、メトリックの値における認識される低下は、グラフに示されているデータの解釈の誤りです。 グラフに直近の分が表示されている場合、最後のメトリック データ ポイントが Azure によってまだ受信または処理されていないため、合計やカウントが低下して誤解を招く可能性があります。 サービスによっては、メトリックの処理の待ち時間が数分になる場合があります。 1 分または 5 分の粒度で最近の時間範囲を示すグラフの場合、過去数分間の値の低下がより顕著になります。Screenshot that shows a drop of the value over the last few minutes.

解決方法: この動作は仕様です。 データが "部分的" または "不完全" であっても、受け取ったデータをすぐに表示することにはメリットがあると思われます。 このようにすると、重要な結論を早急に下し、すぐに調査を開始できます。 たとえば、エラーの数を示すメトリックの場合、部分的な値 X を見ると、特定の 1 分間に少なくとも X 回のエラーが発生したことがわかります。 その 1 分間に発生したエラーの正確な数が表示されるまで待つことなく、すぐに問題の調査を開始できます。正確な数は重要ではないことがあります。 完全なデータ セットを受信するとグラフは更新されますが、その時点では、さらに近い分の新しい不完全なデータ ポイントも表示される可能性があります。

ゲストの名前空間とメトリックを選択できない

仮想マシンと仮想マシンのスケールセットには、Azure ホスティング環境によって収集される仮想マシンのホスト メトリックと、仮想マシンで実行されている監視エージェントによって収集されるゲスト (クラシック) メトリックの 2 つのカテゴリのメトリックがあります。 監視エージェントは、Azure Diagnostics 拡張機能を有効にすることでインストールします。

既定では、ゲスト (クラシック) メトリックは Azure Storage アカウントに格納され、リソースの [診断設定] タブから選択します。 ゲスト メトリックが収集されない場合、またはメトリックス エクスプローラーでアクセスできない場合は、仮想マシン ホスト メトリック名前空間のみが表示されます:

メトリックの画像

解決方法:ゲスト (クラシック) の名前空間とメトリックがメトリックス エクスプローラーに表示されない場合:

  1. Azure Diagnostics 拡張機能が有効になっており、メトリックを収集するように構成されていることを確認します。

    警告

    Log Analytics エージェント (Microsoft Monitoring Agent または "MMA" とも呼ばれます) を使ってゲスト (クラシック) をストレージ アカウントに送信することはできません。

  2. Microsoft.Insights リソース プロバイダーがご利用のサブスクリプションに登録されていることを確認します。

  3. ストレージ アカウントがファイアウォールによって保護されていないことを確認します。 Azure portal では、メトリック データを取得してグラフをプロットするために、ストレージ アカウントにアクセスする必要があります。

  4. Azure Storage Explorer を使って、メトリックがストレージ アカウントに送られていることを検証します。 メトリックが収集されていない場合は、Azure Diagnostics 拡張機能のトラブルシューティング ガイドに従ってください。

"ログの詳細を表示" に対してログとクエリが無効になっている

推奨されるログとクエリを表示するには、診断ログを Log Analytics にルーティングする必要があります。

解決策: 診断ログを Log Analytics にルーティングするには、「Azure Monitor の診断設定」を参照してください。

"ログの詳細を表示" にアクティビティ ログのみが表示される

"ログの詳細を表示" 機能は、選択されたリソース プロバイダーでのみ使用できます。 既定では、アクティビティ ログが提供されます。

解決策: この動作は、一部のリソース プロバイダーに対して想定されています。

次のステップ