Redis のメトリクス - Redis 用 Amazon ElastiCache

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

Redis のメトリクス

AWS/ElastiCache 名前空間には、次の Redis メトリクスが含まれます。

ReplicationLag および EngineCPUUtilization を除き、これらのメトリクスは、Redis の info コマンドから算出されます。各メトリクスは、キャッシュノードレベルで算出されます。

Redis の info コマンドの詳細は、「http://redis.io/commands/info」を参照してください。

以下の資料も参照してください。

メトリクス 説明 Unit
ActiveDefragHits アクティブなデフラグメンテーションプロセスで実行された 1 分あたりの値の再割り当て数。Redis INFOactive_defrag_hits 統計から算出されます。 数値
BytesUsedForCache データセット、バッファなど、すべての目的で Redis によって割り当てられた合計バイト数。Redis INFOused_memory 統計から算出されます。 バイト
CacheHits メインディクショナリで読み取り専用のキー検索に成功した数。Redis INFOkeyspace_hits 統計から算出されます。 カウント
CacheMisses メインディクショナリで読み取り専用のキー検索に失敗した数。Redis INFOkeyspace_misses 統計から算出されます。 カウント
CacheHitRate Redis インスタンスの使用効率を示します。キャッシュ比率が 0.8 より小さい場合、かなりの量のキーが削除された、期限切れになった、または存在しないことを意味します。これは、 cache_hits および cache_misses 統計を次のように表示します。cache_hits /(cache_hits + cache_misses) . パーセント
CurrConnections クライアントの接続数 (リードレプリカからの接続を除く)。ElastiCache では、2~4 つの接続を使用して、各ケースでクラスターをモニタリングします。Redis INFOconnected_clients 統計から算出されます。 カウント
DatabaseMemoryUsagePercentage 使用中のクラスターで使用可能なメモリの割合。これは、Redis INFO から used_memory/maxmemory を使用して計算されます。 パーセント
DB0AverageTTL Redis INFO コマンドの keyspace 統計から DBO の avg_ttl を公開します。 Milliseconds
EngineCPUUtilization

Redis エンジンスレッドの CPU 使用率を提供します。Redis はシングルスレッドであるため、このメトリクスを使用して、Redis プロセス自体のロードを分析できます。EngineCPUUtilization メトリクスは Redis プロセスのより正確な可視性を提供し、他のオペレーティングシステムや管理プロセスを含むサーバーインスタンス全体の CPU 使用率を公開する CPUUtilization メトリクスとともに使用できます。4 個以上の vCPU を持つ大きなノードの場合は、EngineCPUUtilization メトリクスを使用して、スケーリングのしきい値をモニタリングおよび設定します。

注記

ElastiCache ホスト上には、マネージドデータベースのエクスペリエンスを提供するために、ホストをモニタリングするバックグラウンドプロセスがあります。これらのバックグラウンドプロセスは、CPU ワークロードのかなりの部分を占有する可能性があります。これは、2台以上の vCPUs. ただし、vCPU が 2 個以下の小規模なホストには影響を与える可能性があります。EngineCPUUtilization メトリクスのみをモニタリングする場合、Redis からの CPU 使用率と、バックグラウンドモニタリングプロセスからの CPU 使用率の両方が高く、ホストが過負荷になっている状況には気付くことができません。したがって、 CPUUtilization 2個のホストのメトリック vCPUs 以下。

パーセント
Evictions maxmemory の制限のため排除されたキーの数。Redis INFOevicted_keys 統計から算出されます。 カウント
MasterLinkHealthStatus このステータスの値は、0 または 1 のいずれかになります。値 0 は、ElastiCache プライマリノードのデータが、EC2 の Redis と同期されていないことを示します。値 1 は、データが同期されていることを示します。移行を完了するには、CompleteMigration API を使用します。 Boolean
MemoryFragmentationRatio Redis エンジンのメモリ割り当ての効率を示します。特定のしきい値は、異なる動作を意味します。推奨値は、1.0 を超える断片化です。これは、Redis INFOmemory_frag_ratio statistic から計算されます。 数値
NewConnections この期間内にサーバーによって受け入れられた接続の総数。Redis INFOtotal_connections_received 統計から算出されます。 カウント
Reclaimed キーの有効期限切れイベントの総数。Redis INFOexpired_keys 統計から算出されます。 カウント
ReplicationBytes レプリケートされた構成のノードでは、 ReplicationBytes は、プライマリがすべてのレプリカに送信しているバイト数をレポートします。このメトリクスは、レプリケーショングループに対する書き込み負荷を表します。Redis INFOmaster_repl_offset 統計から算出されます。 バイト
ReplicationLag このメトリクスは、リードレプリカとして実行中のノードにのみ適用できます。レプリカのプライマリノードからの変更適用の進行状況を秒で表します。 Redis エンジンバージョン 5.0.6 の場合は、ミリ秒単位です。その他すべてのサポートされているエンジンバージョンの場合は、秒単位です。
SaveInProgress このバイナリメトリクスは、バックグラウンド保存 (分岐または分岐なし) が進行中の場合は常に 1 を返し、それ以外の場合は 0 を返します。バックグラウンド保存プロセスは一般に、スナップショットおよび同期の際に使用されます。これらのオペレーションによりパフォーマンスが低下する可能性があります。 SaveInProgress メトリクスを使用して、パフォーマンスが低下した原因がバックグラウンド保存プロセスであるかどうかを診断できます。Redis INFOrdb_bgsave_in_progress 統計から算出されます。 カウント

EngineCPUUtilization の利用可能性

以下のリージョンは、サポートされているすべてのノードタイプで使用できます。

[リージョン] リージョン   名
us-east-2 米国東部 (オハイオ)
us-east-1 米国東部(バージニア北部)
us-west-1 米国西部 (北カリフォルニア)
us-west-2 米国西部 (オレゴン)
ap-northeast-1 アジアパシフィック (東京)
ap-northeast-2 アジアパシフィック (ソウル)
ap-northeast-3 アジアパシフィック (大阪: ローカル)
ap-east-1 アジアパシフィック (香港)
ap-south-1 アジアパシフィック (ムンバイ)
ap-southeast-1 アジアパシフィック (シンガポール)
ap-southeast-2 アジアパシフィック (シドニー)
ca-central-1 カナダ (中部)
cn-north-1 中国 (北京)
cn-northwest-2 中国 (寧夏)
me-south-1 中東 (バーレーン)
eu-central-1 欧州 (フランクフルト)
eu-west-1 欧州 (アイルランド)
eu-west-2 欧州 (ロンドン)
eu-west-3 EU (パリ)
eu-south-1 ヨーロッパ (ミラノ)
af-south-1 アフリカ (ケープタウン)
eu-north-1 欧州 (ストックホルム)
sa-east-1 南米 (サンパウロ)
us-gov-west-1 AWS GovCloud (US-West)
us-gov-east-1 AWS GovCloud (米国東部)

以下は、特定の種類のコマンドの集計です。 info commandstats. commandstatsセクションには、コマンド タイプに基づく統計が表示されます。これには、呼び出し数、これらのコマンドによって消費された合計CPU時間、コマンド実行あたりの平均CPU消費量が含まれます。各コマンド タイプに、次の行が追加されます。cmdstat_XXX: calls=XXX,usec=XXX,usec_per_call=XXX.

以下に示すレイテンシーメトリクスは、Redis INFO の commandstats 統計を使用して計算されます。これらは、次の方法で計算されます。delta(usec)/delta(calls). delta 1分以内にディフィシルとして計算されます。

利用可能なコマンドの完全な一覧については、「Redis コマンド」を参照してください。

メトリクス 説明 Unit
CurrItems キャッシュの項目数。これは、Redis keyspace 統計に基づき、キー空間全体のすべてのキーを合計することで算出されます。 カウント
EvalBasedCmds eval ベースのコマンドの合計数。これは Redis commandstats 統計から算出されます。これは、eval の合計 evalsha によって Redis commandstats 統計から算出されます。 カウント
EvalBasedCmdsLatency Eval ベースのコマンドのレイテンシー。 Microseconds
GeoSpatialBasedCmds のコマンドの合計数 GeoSpatialベースのコマンドです。これは Redis commandstats 統計から算出されます。これは、すべての geo の種類のコマンド (geoaddgeodistgeohashgeoposgeoradiusgeoradiusbymember など) を合計することで、Redis commandstats 統計から算出されます。 カウント
GeoSpatialBasedCmdsLatency のレイテンシー GeoSpatialベースのコマンドです。 Microseconds
GetTypeCmds read-only 型のコマンドの合計数。これは、Redis commandstats 統計に基づき、read-only 型のすべてのコマンド (gethgetscardlrange など) を合計することで算出されます。 カウント
GetTypeCmdsLatency 読み取りコマンドのレイテンシー。 Microseconds
HashBasedCmds ハッシュベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上のハッシュに対して実行されるすべてのコマンドを合計することで算出されます (hgethkeyshvalshdel など)。 カウント
HashBasedCmdsLatency ハッシュベースのコマンドのレイテンシー。 Microseconds
HyperLogLogBasedCmds HyperLogLog ベースのコマンドの合計数。これは、Redis commandstats 統計に基づき、pf 型のすべてのコマンド (pfaddpfcountpfmerge など) を合計することで算出されます。 カウント
HyperLogLogBasedCmdsLatency のレイテンシー HyperLogLogBased コマンド。 Microseconds
KeyBasedCmds キーベースのコマンドの総数。これは、Redis commandstats 統計に基づき、複数のデータ構造で 1 つ以上のキーに対して実行されるすべてのコマンド (delexpirerename など) を合計することで算出されます。 カウント
KeyBasedCmdsLatency キーベースのコマンドのレイテンシー。 Microseconds
ListBasedCmds リストベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上のリストに対して実行されるすべてのコマンドを合計することで算出されます (lindexlrangelpushltrim など)。 カウント
ListBasedCmdsLatency リストベースのコマンドのレイテンシー。 Microseconds
PubSubBasedCmds pub/sub 機能のコマンドの総数。これはRedisの commandstatspub/sub機能に使用されるすべてのコマンドを合計して統計を集計する: psubscribepublishpubsubpunsubscribesubscribeunsubscribe. カウント
PubSubBasedCmdsLatency のレイテンシー PubSubBased コマンド。 Microseconds
SetBasedCmds セットベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上のセットに対して実行されるすべてのコマンドを合計することで算出されます (scard sdiff saddsunion など)。 カウント
SetBasedCmdsLatency セットベースのコマンドのレイテンシー。 Microseconds
SetTypeCmds write 型のコマンドの合計数。これは、Redis commandstats 統計に基づき、データ上で動作する mutative 型のすべてのコマンド (sethsetsaddlpop など) を合計することで算出されます。 カウント
SetTypeCmdsLatency 書き込みコマンドのレイテンシー。 Microseconds
SortedSetBasedCmds ソートされたセットベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上のソートされたセットに対して実行されるすべてのコマンドを合計することで算出されます (zcountzrangezrankzadd など)。 カウント
SortedSetBasedCmdsLatency ソートベースのコマンドのレイテンシー。 Microseconds
StringBasedCmds 文字列ベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上の文字列に対して実行されるすべてのコマンドを合計することで算出されます (strlensetexsetrange など)。 カウント
StringBasedCmdsLatency 文字列ベースのコマンドのレイテンシー。 Microseconds
StreamBasedCmds ストリームベースのコマンドの総数。これは、Redis commandstats 統計に基づき、1 つ以上のストリームデータ型に対して実行されるすべてのコマンドを合計することで算出されます (xrangexlenxaddxdel など)。 カウント
StreamBasedCmdsLatency ストリームベースのコマンドのレイテンシー。 Microseconds