Azure Cache for Redis を監視する方法

Azure Cache for Redis は、Azure Monitor を使用して、キャッシュのインスタンスを監視するための複数のオプションを提供します。 これらのツールを使用すると、Azure Cache for Redis インスタンスの正常性を監視でき、キャッシュ アプリケーションの管理が容易になります。

Azure Monitor は次の目的で使用します。

  • メトリックを表示する
  • メトリック グラフをダッシュボードにピン留めする
  • 監視グラフの日付と時間の範囲をカスタマイズする
  • グラフのメトリックを追加または削除する
  • 特定の条件が満たされたときにアラートを設定する

Azure Cache for Redis インスタンスのメトリックは、Redis INFO コマンドを使用して収集されます。 メトリックは 1 分あたり約 2 回収集され、自動的に 30 日間格納されるため、メトリック グラフに表示してアラート ルールによって評価できます。

別のアイテム保持ポリシーを構成するには、「データ ストレージ」を参照してください。 各キャッシュ メトリックで使用されるさまざまな INFO の値の詳細については、「独自のメトリックを作成する」を参照してください。

Azure Cache for Redis で使用できるすべての監視オプションの詳細については、「Azure Cache for Redis を監視する」を参照してください。

キャッシュ メトリックを表示する

Azure Cache for Redis の Azure Monitor メトリックは、Azure portal の Azure Cache for Redis リソースから直接表示できます。

ポータルで Azure Cache for Redis インスタンスを選びます[概要] ページには、事前定義された [メモリ使用量][Redis サーバーの負荷] の監視グラフが表示されます。 これらはキャッシュの状態を簡単に確認できる便利な概要のグラフです。

[メモリ使用量] と [Redis サーバーの負荷] の 2 つのグラフの画面。

さらに詳細な情報については、[リソース] メニューの [監視] セクションから以下の便利な Azure Cache for Redis メトリックを監視できます。

Azure Cache for Redis のメトリック 詳細情報
ネットワーク帯域幅の使用量 キャッシュ パフォーマンス - 使用できる帯域幅
接続されているクライアント数 既定の Redis サーバー構成 - maxclients
サーバーの負荷 Redis サーバーの負荷
メモリ使用量 キャッシュのパフォーマンス - サイズ

[リソース] メニューの監視メトリックのスクリーンショット。

監視できるメトリックの完全な一覧と説明については、「Azure Cache for Redis のメトリック」を参照してください。

[監視] の他のオプションでは、キャッシュを監視する他の方法が用意されています。 詳細については、「Azure Cache for Redis の監視」を参照してください。

独自のメトリックを作成する

確認するメトリックを追跡するための独自のカスタム グラフを作成できます。 キャッシュ メトリックは、 [過去 1 時間][今日][過去 1 週間][カスタム] などの期間でレポートが作成されます。 左側の [監視] セクションの [メトリック] を選択します。 各メトリック グラフには、グラフ内の各メトリックの平均値、最小値、および最大値が表示され、一部のメトリックでは指定のレポート期間における合計が表示されます。

各メトリックには 2 つのバージョンが含まれています。1 つのメトリックでは、キャッシュ全体と、クラスタリングを使用するキャッシュのパフォーマンスを測定します。 メトリックの 2 番目のバージョン (名前に (Shard 0-9) が含まれているもの) では、キャッシュ内の 1 つのシャードのパフォーマンスが測定されます。 たとえば、キャッシュに 4 つのシャードがある場合、Cache Hits はキャッシュ全体の総ヒット数で、Cache Hits (Shard 3) はキャッシュの当該シャードのヒット数のみ測定します。

左側の [リソース] メニューの [監視][メトリック] を選択します。 ここでは、メトリックの種類と集計の種類を定義して、キャッシュのための独自のグラフを設計します。

リソース マネージャー内で示すメトリックのスクリーンショット

集計タイプ

通常の条件下では、AverageMax は似ています。これは、1 つのノード (プライマリ ノード) だけがこれらのメトリックを出力するためです。 接続されたクライアントの数が急激に変化するシナリオでは、MaxAverage、および Min の値は異なりますが、これも想定される動作です。

一般に、Average を使用すると、目的のメトリックのスムーズなグラフが表示され、時間粒度の変化にもよく反応します。 MaxMin は、時間粒度が大きい場合はメトリックの大きな変化が隠れてしまうことがありますが、小さい時間粒度で使用すれば、メトリックの大きな変化が発生した正確な時刻を特定するのに役立ちます。

Count および Sum 型は、(接続されたクライアントなどの) 特定のメトリックでは誤解を招くおそれがあります。 代わりに、Average メトリックを参照するようにし、Sum メトリックを参照しないことをお勧めします。

注意

キャッシュがアイドル状態で、アクティブなクライアント アプリケーションに接続されていない場合でも、接続されているクライアント、メモリの使用状況、実行中の操作などのキャッシュ アクティビティが表示されることがあります。 キャッシュの操作では正常のアクティビティです。

クラスター化されていないキャッシュの場合は、サフィックス Instance Based を付けずにメトリックを使用することをお勧めします。 たとえば、キャッシュ インスタンスのサーバー負荷を調べるには、メトリック "サーバー負荷" を使用します。

一方、クラスター化されたキャッシュの場合は、サフィックス Instance Based を付けてメトリックを使用することをお勧めします。 その後、ShardId に分割またはフィルターを追加します。 たとえば、シャード 1 のサーバー負荷を調べるには、メトリック "サーバー負荷 (インスタンス ベース)" を使用してから、フィルター ShardId = 1 を適用します。

アラートを作成する

メトリックとアクティビティ ログに基づいてアラートを受け取るように設定できます。 Azure Monitor では、アラートがトリガーされたときに次の処理を実行するように構成することができます。

  • 電子メール通知を送信する
  • Webhook を呼び出す
  • Azure Logic App を呼び出す

キャッシュのアラートを構成するには、[リソース] メニューの [監視][アラート] を選択します。

アラートの作成方法を示すスクリーンショット。

アラートの構成と使用の詳細については、アラートの概要Azure Cache for Redis アラートに関するページを参照してください。

ブックで整理する

メトリックを定義したら、それをブックに送信できます。 ブックによって、一貫性のある方法で情報を提供するグループにメトリックを整理するための方法が提供されます。 Azure Cache for Redis では、[Azure Cache for Redis の分析情報] セクションに既定で 2 つのブックが提供されます。

[リソース] メニューで選択されているブックを示すスクリーンショット。

メトリックの作成の詳細については、「独自のメトリックを作成する」を参照してください。

提供される 2 つのブックは次のとおりです。

  • [Azure Cache For Redis リソースの概要] では、最もよく使用されるメトリックの多くを組み合わせて、キャッシュ インスタンスの正常性とパフォーマンスをひとめで確認できるようにします。 キャッシュのリソースの概要を示すグラフのスクリーンショット。

  • [geo レプリケーション ダッシュボード] では、geo プライマリと geo セカンダリ キャッシュ インスタンスの両方から geo レプリケーションの正常性と状態のメトリックがプルされ、geo レプリケーションの正常性の全体像が得られます。 一部の geo レプリケーション メトリックは geo プライマリまたは geo セカンダリからのみ生成されるため、このダッシュボードを使用することをお勧めします。 geo プライマリと geo セカンダリ キャッシュ セットを含む geo レプリケーション ダッシュボードを示すスクリーンショット。