サポート対象のモニタリング指標

このページでは、Memorystore for Valkey で使用可能な Cloud Monitoring 指標を一覧表示するとともに、各指標の測定値について説明します。

Cloud Monitoring の指標

インスタンス レベルの指標

これらの指標は、インスタンスの全体的な健全性とパフォーマンスの概要を示します。これらは、インスタンスの全体的な容量と使用率を把握し、潜在的なボトルネックや改善すべき領域を特定するのに役立ちます。

指標名 説明
memorystore.googleapis.com/instance/clients/average_connected_clients インスタンス内のすべてのノードの現在の平均クライアント接続数。
memorystore.googleapis.com/instance/clients/maximum_connected_clients インスタンス内の単一ノードの現在の最大クライアント接続数。
memorystore.googleapis.com/instance/clients/maximum_connection_duration インスタンス内の単一ノードのクライアント接続の最大期間。
memorystore.googleapis.com/instance/clients/total_connected_clients インスタンスへの現在のクライアント接続数。
memorystore.googleapis.com/instance/stats/total_connections_received_count 過去 1 分間に作成されたインスタンス レベルのクライアント接続の合計数。
memorystore.googleapis.com/instance/stats/total_rejected_connections_count 最大クライアント上限が原因で拒否された接続の数。
memorystore.googleapis.com/instance/commandstats/total_usec_count コマンドごとに消費された合計時間。
memorystore.googleapis.com/instance/commandstats/total_calls_count 1 分あたりのこのコマンドの呼び出しの合計数。
memorystore.googleapis.com/instance/cpu/average_utilization インスタンス内のすべてのノードの平均 CPU 使用率(0.0 ~ 1.0)。
memorystore.googleapis.com/instance/cpu/maximum_utilization インスタンス内の単一ノードの最大 CPU 使用率(0.0 ~ 1.0)。
memorystore.googleapis.com/instance/stats/average_expired_keys インスタンス内のすべてのノードのプライマリのキーの有効期限切れイベントの平均数。
memorystore.googleapis.com/instance/stats/maximum_expired_keys プライマリのインスタンス内の単一ノードのキーの有効期限切れイベントの最大数。
memorystore.googleapis.com/instance/stats/total_expired_keys_count インスタンス内のすべてのノードのプライマリでのキーの有効期限切れイベントの合計数。
memorystore.googleapis.com/instance/stats/average_evicted_keys インスタンス内のすべてのノードのプライマリで、メモリ容量が原因で強制排除されたキーの平均数。
memorystore.googleapis.com/instance/stats/maximum_evicted_keys プライマリのメモリ容量が原因で、インスタンス内の単一ノードで強制排除されたキーの最大数。
memorystore.googleapis.com/instance/stats/total_evicted_keys_count インスタンス内のすべてのノードのプライマリで、メモリ容量が原因で強制排除されたキーの数。
memorystore.googleapis.com/instance/keyspace/total_keys インスタンスに保存されているキーの数。
memorystore.googleapis.com/instance/stats/average_keyspace_hits インスタンス内のすべてのノードでのキーの正常な検索の平均数。
memorystore.googleapis.com/instance/stats/maximum_keyspace_hits インスタンス内の単一ノードでのキーの正常な検索の最大数。
memorystore.googleapis.com/instance/stats/total_keyspace_hits_count インスタンスのキーの正常な検索の数。
memorystore.googleapis.com/instance/stats/average_keyspace_misses インスタンス内のすべてのノードでのキーの検索に失敗した平均数。
memorystore.googleapis.com/instance/stats/maximum_keyspace_misses インスタンス内の単一ノードでのキーの検索に失敗した最大数。
memorystore.googleapis.com/instance/stats/total_keyspace_misses_count インスタンスのキーの検索に失敗した合計数。
memorystore.googleapis.com/instance/memory/average_utilization インスタンス内のすべてのノードでの平均メモリ使用率。値は 0.0 ~ 1.0 です。
memorystore.googleapis.com/instance/memory/maximum_utilization インスタンス内の単一ノードの最大メモリ使用率(0.0 ~ 1.0)。
memorystore.googleapis.com/instance/memory/total_used_memory インスタンスの合計メモリ使用量。
memorystore.googleapis.com/instance/memory/size インスタンスのメモリサイズ。
memorystore.googleapis.com/instance/replication/average_ack_lag インスタンス内のすべてのノードにおけるレプリカの平均確認応答ラグ(秒単位)。

確認応答ラグは、インスタンス内のプライマリ ノードのボトルネックです。このボトルネックは、プライマリ ノードから送信される情報にレプリカが対応できないことが原因で発生します。この場合、プライマリ ノードはレプリカが情報を受信したことを確認するまで待機する必要があります。これにより、トランザクションの commit が遅くなり、プライマリ ノードのパフォーマンスが低下する可能性があります。
memorystore.googleapis.com/instance/replication/maximum_ack_lag インスタンス内の単一レプリカの最大確認応答ラグ(秒単位)。
memorystore.googleapis.com/instance/replication/average_offset_diff インスタンス内のすべてのノードにおけるレプリケーション確認応答オフセットの平均差分(バイト単位)。

レプリケーション確認応答オフセットの差分とは、レプリカとそのプライマリ間でレプリケートされていないバイト数を意味します。
memorystore.googleapis.com/instance/replication/maximum_offset_diff インスタンス内の単一ノードの最大レプリケーション オフセット差分(バイト単位)。

レプリケーション オフセットの差分とは、レプリカとそのプライマリ間でレプリケートされていないバイト数を意味します。
memorystore.googleapis.com/instance/stats/total_net_input_bytes_count インスタンス エンドポイントが受信した受信ネットワーク バイト数。
memorystore.googleapis.com/instance/stats/total_net_output_bytes_count インスタンス エンドポイントから送信された送信ネットワーク バイト数。

ノードレベルの指標

これらの指標は、インスタンス内の個々のノードの健全性とパフォーマンスに関する詳細な分析情報を提供します。これらは、ノードに関する問題のトラブルシューティングや、ノードのパフォーマンスの最適化に役立ちます。

指標名 説明
memorystore.googleapis.com/instance/node/clients/connected_clients インスタンス ノードに接続されているクライアントの数。
memorystore.googleapis.com/instance/node/clients/blocked_clients インスタンス ノードがブロックするクライアント接続の数。
memorystore.googleapis.com/instance/node/server/uptime インスタンス ノードの稼働時間。
memorystore.googleapis.com/instance/node/stats/connections_received_count Memorystore for Valkey がインスタンス ノードで過去 1 分間に作成したクライアント接続の数。
memorystore.googleapis.com/instance/node/stats/rejected_connections_count インスタンス ノードが `maxclients` 上限に達したため、Memorystore for Valkey が拒否した接続の数。
memorystore.googleapis.com/instance/node/commandstats/usec_count インスタンス ノード内のコマンドごとに消費された時間。
memorystore.googleapis.com/instance/node/commandstats/calls_count インスタンス ノードでこのコマンドが 1 分間に呼び出された回数。
memorystore.googleapis.com/instance/node/cpu/utilization インスタンス ノードの CPU 使用率(0.0 ~ 1.0)。
memorystore.googleapis.com/instance/node/stats/expired_keys_count インスタンス ノード内の有効期限切れイベントの数。
memorystore.googleapis.com/instance/node/stats/evicted_keys_count インスタンス ノードによって強制排除されたキーの数。
memorystore.googleapis.com/instance/node/keyspace/total_keys Memorystore for Valkey がインスタンス ノードに保存するキーの数。
memorystore.googleapis.com/instance/node/stats/keyspace_hits_count インスタンス ノードでのキーの検索成功数。
memorystore.googleapis.com/instance/node/stats/keyspace_misses_count インスタンス ノードでのキーの検索に失敗した数。
memorystore.googleapis.com/instance/node/memory/utilization インスタンス ノードのメモリ使用率(0.0 ~ 1.0)。
memorystore.googleapis.com/instance/node/memory/usage インスタンス ノードのメモリ使用量。
memorystore.googleapis.com/instance/node/stats/net_input_bytes_count インスタンス ノードが受信する受信ネットワーク バイト数。
memorystore.googleapis.com/instance/node/stats/net_output_bytes_count インスタンス ノードが送信する送信ネットワーク バイト数。
memorystore.googleapis.com/instance/node/replication/offset インスタンス ノードのレプリケーション オフセット バイト数。
memorystore.googleapis.com/instance/node/server/healthy インスタンス ノードが使用可能で、正しく機能しているかどうかを判断します。この指標はプレビュー版です。

クロスリージョン レプリケーションの指標

このセクションでは、クロスリージョン レプリケーションに使用される指標を一覧表示します。

指標名 説明
memorystore.googleapis.com/instance/cross_instance_replication/secondary_replication_links この指標は、プライマリ インスタンスとセカンダリ インスタンス間のシャードリンクの数を示します。クロスリージョン レプリケーション グループ内で、プライマリ インスタンスは、グループ内のセカンダリ インスタンスとのクロスリージョン レプリケーション リンクの数を報告します。各セカンダリ インスタンスでは、この数値はシャード数と同じになることが想定されています。シャード数よりも少ない場合は、レプリケータとフォロワー間のレプリケーションが停止したときのシャード数を示します。理想的な状態では、この指標の値はプライマリ インスタンスのシャード数と同じになります。
memorystore.googleapis.com/instance/cross_instance_replication/secondary_maximum_replication_offset_diff この指標は、プライマリ シャードとセカンダリ シャード間のレプリケーション オフセットの最大差を示します。
memorystore.googleapis.com/instance/cross_instance_replication/secondary_average_replication_offset_diff この指標は、プライマリ シャードとセカンダリ シャード間のレプリケーション オフセットの平均差を示します。

バックアップ指標

このセクションでは、バックアップインポートの指標について説明します。

インスタンス レベルの指標

指標名 説明
memorystore.googleapis.com/instance/backup/last_backup_start_time 前回のバックアップ オペレーションの開始時間。
memorystore.googleapis.com/instance/backup/last_backup_status 前回のバックアップ オペレーションのステータス。ステータスは 1(成功)と 0(失敗)です。
memorystore.googleapis.com/instance/backup/last_backup_duration 前回のバックアップ オペレーションの期間(ミリ秒単位)。
memorystore.googleapis.com/instance/backup/last_backup_size 前回のバックアップのサイズ(バイト単位)。
memorystore.googleapis.com/instance/import/last_import_start_time 前回のインポート オペレーションの開始時間。
memorystore.googleapis.com/instance/import/last_import_duration 前回のインポート オペレーションの期間(ミリ秒単位)。

永続性指標

このセクションでは、永続性指標のリストと、永続性指標のユースケースの例を示します。

RDB 永続性指標

インスタンス レベルの指標

指標名 説明
memorystore.googleapis.com/instance/persistence/rdb_saves_count インスタンスが RDB スナップショットを取得した累積回数(保存とも呼ばれます)。この指標には status_code フィールドがあります。スナップショットが失敗したかどうかを確認するには、status_code フィールドを 3 - INTERNAL ERROR エラーでフィルタします。
memorystore.googleapis.com/instance/persistence/rdb_last_success_ages インスタンス内のすべてのノードの分布スナップショットの経過時間。分布に、スナップショットの頻度よりも遅延時間が短い(または同じ)値が含まれていることを確認します。

ノードレベルの指標

指標名 説明
memorystore.googleapis.com/instance/node/persistence/rdb_bgsave_in_progress インスタンス ノードで RDB BGSAVE が進行中です。TRUE は、保存が進行中であることを意味します。
memorystore.googleapis.com/instance/node/persistence/rdb_last_bgsave_status インスタンス ノードでの前回の BGSAVE の成功。TRUE は、BGSAVE が成功したことを意味します。bgrewrite が発生しない場合、値はデフォルトで TRUE になることがあります。
memorystore.googleapis.com/instance/node/persistence/rdb_saves_count この指標は、インスタンス ノードで実行された RDB 保存の累積数を示します。
memorystore.googleapis.com/instance/node/persistence/rdb_last_save_age 前回成功したスナップショットからの経過時間(秒単位)。
memorystore.googleapis.com/instance/node/persistence/rdb_next_save_time_until 次のスナップショットまでの残り時間(秒単位)。
memorystore.googleapis.com/instance/node/persistence/current_save_keys_total インスタンス ノードで実行される RDB 保存のキーの数。

AOF 永続性指標

インスタンス レベルの指標

指標名 説明
memorystore.googleapis.com/instance/persistence/aof_fsync_lags この指標は、インスタンス内のすべてのノードの遅延(データの書き込みから永続ストレージの同期まで)の分布を示します。appendfsync=everysec のインスタンスでのみ出力されます。理想的には、AOF 同期頻度よりも遅延時間が短い(または同じ)値が分布に含まれていることが望ましいです。
memorystore.googleapis.com/instance/persistence/aof_rewrite_count この指標は、インスタンスでノードが AOF 書き換えをトリガーした累積回数を示します。この指標には status_code フィールドがあります。AOF 書き換えが失敗しているかどうかを確認するには、status_code フィールドをフィルタして、次のエラー(3 - INTERNAL_ERROR)を探します。

ノードレベルの指標

指標名 説明
memorystore.googleapis.com/instance/node/persistence/aof_last_write_status この指標は、インスタンス ノードで実行された最新の AOF 書き込みの成功を示します。TRUE は成功を意味します。書き込みが行われていない場合、値はデフォルトで TRUE になることがあります。
memorystore.googleapis.com/instance/node/persistence/aof_last_bgrewrite_status この指標は、インスタンス ノードで前回実行された AOF bgrewrite オペレーションの成功を示します。TRUE は成功を意味します。bgrewrite が発生していない場合、値はデフォルトで TRUE になることがあります。
memorystore.googleapis.com/instance/node/persistence/aof_fsync_lag この指標は、インスタンス ノードのメモリと永続ストア間の AOF ラグを示します。appendfsync=EVERYSEC の AOF が有効になっているインスタンスにのみ適用されます。
memorystore.googleapis.com/instance/node/persistence/aof_rewrites_count この指標は、インスタンス ノードの AOF 書き換え数を示します。AOF 書き換えが失敗しているかどうかを確認するには、status_code フィールドをフィルタして、次のエラー(3 - INTERNAL_ERROR)を探します。
memorystore.googleapis.com/instance/node/persistence/aof_fsync_errors_count この指標は、AOF fsync() 呼び出しエラーの数を示します。これは、appendfsync=EVERYSEC|ALWAYS の AOF が有効になっているインスタンスにのみ適用されます。

一般的な永続性指標

AOF と RDB の両方の永続メカニズムに適用される指標。

ノードレベルの指標

指標名 説明
memorystore.googleapis.com/instance/node/persistence/auto_restore_count この指標は、ダンプファイル(AOF または RDB)からの復元数を示します。復元が失敗しているかどうかを確認するには、status_code フィールドをフィルタして、次のエラー(2 - INTERNAL_ERROR)を探します。

永続性指標のユースケースの例

AOF 書き込みオペレーションがレイテンシとメモリの負荷を引き起こしているかどうかを確認する

インスタンスまたはインスタンス内のノードでレイテンシやメモリ使用量の増加が検出されたとします。この場合、追加の使用量が AOF 永続性に関連しているかどうかを確認することをおすすめします。

AOF 書き換えオペレーションによって一時的な負荷の急増が引き起こされる可能性があることがわかっているため、aof_rewrites_count 指標を調べて、インスタンスまたはインスタンス内のノードの存続期間にわたる AOF 書き換えの累積数を取得できます。この指標で、書き換え数の増加がレイテンシの増加に対応していることがわかったとします。このような状況では、書き込みレートを下げるか、シャード数を増やして書き換えの頻度を下げることで、問題を解決できます。

RDB 保存オペレーションがレイテンシとメモリ負荷の原因になっているかどうかを確認する

インスタンスまたはインスタンス内のノードでレイテンシやメモリ使用量の増加が検出されたとします。この場合は、追加の使用量が RDB 永続性に関連しているかどうかを確認することをおすすめします。

RDB 保存オペレーションによって一時的な負荷の急増が引き起こされる可能性があることがわかっているため、rdb_saves_count 指標を調べて、インスタンスまたはインスタンス内のノードのライフサイクル全体にわたる RDB 保存の累積数を取得できます。この指標で、RDB 保存数の増加がレイテンシの増加に対応していることがわかったとします。このような状況では、RDB スナップショットの間隔を短くして、書き換えの頻度を減らすことができます。インスタンスをスケールアウトして、ベースラインの負荷レベルを下げることもできます。

Memorystore for Valkey の指標の解釈

上記のリストに示されているように、指標の多くは、平均、最大、合計の 3 つのカテゴリに分かれます。

Memorystore for Redis Cluster の場合、同じ指標の平均最大のバリエーションが提供されるため、両方を使用してその指標ファミリーのホットスポットを特定できます。

指標の合計値は独立しており、平均最大でホットスポットを特定する目的とは関係なく、個別の分析情報を提供します。

平均値と最大値の指標について

インスタンスの average_keyspace_hitsmaximum_keyspace_hits の値を比較するとします。2 つの指標の差が大きくなるほど、インスタンスで発生するホットスポットが増加します。理想は、average_keyspace_hitsmaximum_keyspace_hits の値が近いことです。これは、ホットスポットの発生がインスタンス間で均等に分散されていることを意味するためです。

この原則は、同じ指標の平均および最大の変動を持つすべての指標に適用されます。

ホットスポットの例

インスタンス内のすべてのシャードの average_keyspace_hitsmaximum_keyspace_hits を比較すると、これらの値を比較することで、ホットスポットが発生している場所を特定できます。たとえば、6 シャード インスタンスのシャードのヒット数が次のようになっているとします。

  • シャード 1 ~ 2 ヒット
  • シャード 2 ~ 2 ヒット
  • シャード 3 - 2 ヒット
  • シャード 4 - 2 ヒット
  • シャード 5 - 2 ヒット
  • シャード 6 ~ 8 ヒット

この例では、average_keyspace_hits は値 3 を返し、maximum_keyspace_hits は 8 を返します。これは、シャード 6 がホットであることを示しています。

インスタンス内のホットスポットの特定に役立つノードレベルの指標が提供されます。