## Database metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | bdb_avg_latency | `(sum by (db)(irate(endpoint_read_requests_latency_histogram_sum{db=""$db""}[$__rate_interval]) + irate(endpoint_write_requests_latency_histogram_sum{db=""$db""}[$__rate_interval]) + irate(endpoint_other_requests_latency_histogram_sum{db=""$db""}[$__rate_interval])))/(sum by (db)(irate(endpoint_read_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_write_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_other_requests{db=""$db""}[$__rate_interval])))/1000000` | Average latency of operations on the database (seconds); returned only when there is traffic | | bdb_avg_latency_max | `avg(histogram_quantile(1, sum by (le, db) (irate(endpoint_read_requests_latency_histogram_bucket{db=""$db""}[$__rate_interval]) + irate(endpoint_write_requests_latency_histogram_bucket{db=""$db""}[$__rate_interval]) + irate(endpoint_other_requests_latency_histogram_bucket{db=""$db""}[$__rate_interval])))) / 1000000` | Highest value of average latency of operations on the database (seconds); returned only when there is traffic | | bdb_avg_read_latency | `(sum(irate(endpoint_read_requests_latency_histogram_sum{db=""$db""}[$__rate_interval]))/sum(irate(endpoint_read_requests{db=""$db""}[$__rate_interval])))/1000000` | Average latency of read operations (seconds); returned only when there is traffic | | bdb_avg_read_latency_max | `histogram_quantile(1, sum by (le) (irate(endpoint_read_requests_latency_histogram_bucket{db=""$db""}[$__rate_interval]))) / 1000000` | Highest value of average latency of read operations (seconds); returned only when there is traffic | | bdb_avg_write_latency | `(sum(irate(endpoint_write_requests_latency_histogram_sum{db=""$db""}[$__rate_interval]))/sum(irate(endpoint_write_requests{db=""$db""}[$__rate_interval])))/1000000` | Average latency of write operations (seconds); returned only when there is traffic | | bdb_avg_write_latency_max | `histogram_quantile(1, sum by (le) (irate(endpoint_write_requests_latency_histogram_bucket{db=""$db""}[$__rate_interval]))) / 1000000` | Highest value of average latency of write operations (seconds); returned only when there is traffic | | bdb_bigstore_shard_count | `sum((sum(label_replace(label_replace(namedprocess_namegroup_thread_count{groupname=~"redis-\d+", threadname=~"(speedb\|rocksdb).*"}, "redis", "$1", "groupname", "redis-(\d+)"), "driver", "$1", "threadname", "(speedb\|rocksdb).*")) by (redis, driver) > bool 0) * on (redis) group_left(db) redis_server_up) by (db, driver)` | Shard count by database and by storage engine (driver - rocksdb / speedb); Only for databases with Auto Tiering enabled | | bdb_conns | `sum(endpoint_client_connections{cluster="$cluster", db="$db"} - endpoint_client_disconnections{cluster="$cluster", db="$db"} - endpoint_proxy_disconnections{cluster="$cluster", db="$db"})` | Number of client connections to database | | bdb_egress_bytes | `sum by(db) (irate(endpoint_egress{db="$db"}[$__rate_interval]))` | Rate of outgoing network traffic from the database (bytes/sec) | | bdb_egress_bytes_max | `max_over_time (sum by(db) (irate(endpoint_egress{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of outgoing network traffic from the database (bytes/sec) | | bdb_evicted_objects | `sum by (db) (irate(redis_server_evicted_keys{role="master"}[$__rate_interval]))` | Rate of key evictions from database (evictions/sec) | | bdb_evicted_objects_max | `sum by (db) (irate(redis_server_evicted_keys{role="master"}[$__rate_interval]))` | Highest value of the rate of key evictions from database (evictions/sec) | | bdb_expired_objects | `sum by (db) (irate(redis_server_expired_keys{role="master"}[$__rate_interval]))` | Rate keys expired in database (expirations/sec) | | bdb_expired_objects_max | `sum by (db) (irate(redis_server_expired_keys{role="master"}[$__rate_interval]))` | Highest value of the rate keys expired in database (expirations/sec) | | bdb_fork_cpu_system | `sum by (db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system"}[$__rate_interval]))` | % cores utilization in system mode for all Redis shard fork child processes of this database | | bdb_fork_cpu_system_max | `sum by (db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system"}[$__rate_interval]))` | Highest value of % cores utilization in system mode for all Redis shard fork child processes of this database | | bdb_fork_cpu_user | `sum by (db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user"}[$__rate_interval]))` | % cores utilization in user mode for all Redis shard fork child processes of this database | | bdb_fork_cpu_user_max | `sum by (db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user"}[$__rate_interval]))` | Highest value of % cores utilization in user mode for all Redis shard fork child processes of this database | | bdb_ingress_bytes | `sum by(db) (irate(endpoint_ingress{db="$db"}[$__rate_interval]))` | Rate of incoming network traffic to database (bytes/sec) | | bdb_ingress_bytes_max | `max_over_time (sum by(db) (irate(endpoint_ingress{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of incoming network traffic to database (bytes/sec) | | bdb_instantaneous_ops_per_sec | `sum by(db) (redis_server_instantaneous_ops_per_sec)` | Request rate handled by all shards of database (ops/sec) | | bdb_main_thread_cpu_system | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system", threadname=~"redis-server.*"}[$__rate_interval]))` | % cores utilization in system mode for all Redis shard main threads of this database | | bdb_main_thread_cpu_system_max | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system", threadname=~"redis-server.*"}[$__rate_interval]))` | Highest value of % cores utilization in system mode for all Redis shard main threads of this database | | bdb_main_thread_cpu_user | `sum by(irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user", threadname=~"redis-server.*"}[$__rate_interval]))` | % cores utilization in user mode for all Redis shard main threads of this database | | bdb_main_thread_cpu_user_max | `sum by(irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user", threadname=~"redis-server.*"}[$__rate_interval]))` | Highest value of % cores utilization in user mode for all Redis shard main threads of this database | | bdb_mem_frag_ratio | `avg(redis_server_mem_fragmentation_ratio)` | RAM fragmentation ratio (RSS / allocated RAM) | | bdb_mem_size_lua | `sum by(db) (redis_server_used_memory_lua)` | Redis lua scripting heap size (bytes) | | bdb_memory_limit | `db_memory_limit_bytes` | Configured RAM limit for the database | | bdb_monitor_sessions_count | `sum by(db) (endpoint_monitor_sessions_count)` | Number of clients connected in monitor mode to the database | | bdb_no_of_keys | `sum by (db) (redis_server_db_keys{role="master"})` | Number of keys in database | | bdb_other_req | `sum by(db) (irate(endpoint_other_requests{db="$db"}[$__rate_interval]))` | Rate of other (non read/write) requests on the database (ops/sec) | | bdb_other_req_max | `max_over_time (sum by(db) (irate(endpoint_other_requests{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of other (non read/write) requests on the database (ops/sec) | | bdb_other_res | `sum by(db) (irate(endpoint_other_responses{db="$db"}[$__rate_interval]))` | Rate of other (non read/write) responses on the database (ops/sec) | | bdb_other_res_max | `max_over_time (sum by(db) (irate(endpoint_other_responses{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of other (non read/write) responses on the database (ops/sec) | | bdb_pubsub_channels | `sum by(db) (redis_server_pubsub_channels)` | Count the pub/sub channels with subscribed clients | | bdb_pubsub_channels_max | `sum by(db) (redis_server_pubsub_channels)` | Highest value of count the pub/sub channels with subscribed clients | | bdb_pubsub_patterns | `sum by(db) (redis_server_pubsub_patterns)` | Count the pub/sub patterns with subscribed clients | | bdb_pubsub_patterns_max | `sum by(db) (redis_server_pubsub_patterns)` | Highest value of count the pub/sub patterns with subscribed clients | | bdb_read_hits | `sum by (db) (irate(redis_server_keyspace_read_hits{role="master"}[$__rate_interval]))` | Rate of read operations accessing an existing key (ops/sec) | | bdb_read_hits_max | `sum by (db) (irate(redis_server_keyspace_read_hits{role="master"}[$__rate_interval]))` | Highest value of the rate of read operations accessing an existing key (ops/sec) | | bdb_read_misses | `sum by (db) (irate(redis_server_keyspace_read_misses{role="master"}[$__rate_interval]))` | Rate of read operations accessing a non-existing key (ops/sec) | | bdb_read_misses_max | `sum by (db) (irate(redis_server_keyspace_read_misses{role="master"}[$__rate_interval]))` | Highest value of the rate of read operations accessing a non-existing key (ops/sec) | | bdb_read_req | `sum by (db) (irate(endpoint_read_requests{db="$db"}[$__rate_interval]))` | Rate of read requests on the database (ops/sec) | | bdb_read_req_max | `max_over_time (sum by(db) (irate(endpoint_read_requests{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of read requests on the database (ops/sec) | | bdb_read_res | `sum by (db) (irate(endpoint_read_responses{"$db"}[$__rate_interval]))` | Rate of read responses on the database (ops/sec) | | bdb_read_res_max | `max_over_time (sum by(db) (irate(endpoint_read_responses{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of read responses on the database (ops/sec) | | bdb_shard_cpu_system | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system", role="master"}[$__rate_interval]))` | % cores utilization in system mode for all Redis shard processes of this database | | bdb_shard_cpu_system_max | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="system", role="master"}[$__rate_interval]))` | Highest value of % cores utilization in system mode for all Redis shard processes of this database | | bdb_shard_cpu_user | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user", role="master"}[$__rate_interval]))` | % cores utilization in user mode for the Redis shard process | | bdb_shard_cpu_user_max | `sum by(db) (irate(namedprocess_namegroup_thread_cpu_seconds_total{mode="user", role="master"}[$__rate_interval]))` | Highest value of % cores utilization in user mode for the Redis shard process | | bdb_shards_used | `sum((sum(label_replace(label_replace(label_replace(namedprocess_namegroup_thread_count{groupname=~"redis-\d+"}, "redis", "$1", "groupname", "redis-(\d+)"), "shard_type", "flash", "threadname", "(bigstore).*"), "shard_type", "ram", "shard_type", "")) by (redis, shard_type) > bool 0) * on (redis) group_left(db) redis_server_up) by (db, shard_type)` | Used shard count by database and by shard type (ram / flash) | | bdb_total_connections_received | `sum by(db) (irate(endpoint_client_connections{db="$db"}[$__rate_interval]))` | Rate of new client connections to database (connections/sec) | | bdb_total_connections_received_max | `max_over_time (sum by(db) (irate(endpoint_client_connections{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of new client connections to database (connections/sec) | | bdb_total_req | `sum by (db) (irate(endpoint_read_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_write_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_other_requests{db=""$db""}[$__rate_interval]))` | Rate of all requests on the database (ops/sec) | | bdb_total_req_max | `max_over_time(sum by (db) (irate(endpoint_read_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_write_requests{db=""$db""}[$__rate_interval]) + irate(endpoint_other_requests{db=""$db""}[$__rate_interval])) [$__range:])` | Highest value of the rate of all requests on the database (ops/sec) | | bdb_total_res | `sum by (db) (irate(endpoint_read_responses{db=""$db""}[$__rate_interval]) + irate(endpoint_write_responses{db=""$db""}[$__rate_interval]) + irate(endpoint_other_responses{db=""$db""}[$__rate_interval]))` | Rate of all responses on the database (ops/sec) | | bdb_total_res_max | `max_over_time(sum by (db) (irate(endpoint_read_responses{db=""$db""}[$__rate_interval]) + irate(endpoint_write_responses{db=""$db""}[$__rate_interval]) + irate(endpoint_other_responses{db=""$db""}[$__rate_interval])) [$__range:])` | Highest value of the rate of all responses on the database (ops/sec) | | bdb_up | `min by(db) (redis_server_up)` | Database is up and running | | bdb_used_memory | `sum by (db) (redis_server_used_memory)` | Memory used by database (in BigRedis this includes flash) (bytes) | | bdb_write_hits | `sum by (db) (irate(redis_server_keyspace_write_hits{role="master"}[$__rate_interval]))` | Rate of write operations accessing an existing key (ops/sec) | | bdb_write_hits_max | `sum by (db) (irate(redis_server_keyspace_write_hits{role="master"}[$__rate_interval]))` | Highest value of the rate of write operations accessing an existing key (ops/sec) | | bdb_write_misses | `sum by (db) (irate(redis_server_keyspace_write_misses{role="master"}[$__rate_interval]))` | Rate of write operations accessing a non-existing key (ops/sec) | | bdb_write_misses_max | `sum by (db) (irate(redis_server_keyspace_write_misses{role="master"}[$__rate_interval]))` | Highest value of the rate of write operations accessing a non-existing key (ops/sec) | | bdb_write_req | `sum by (db) (irate(endpoint_write_requests{db="$db"}[$__rate_interval]))` | Rate of write requests on the database (ops/sec) | | bdb_write_req_max | `max_over_time(sum by (db) (irate(endpoint_write_requests{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of write requests on the database (ops/sec) | | bdb_write_res | `sum by(db) (irate(endpoint_write_responses{db="$db"}[$__rate_interval]))` | Rate of write responses on the database (ops/sec) | | bdb_write_res_max | `max_over_time(sum by (db) (irate(endpoint_write_responses{db="$db"}[$__rate_interval]))[$__range:])` | Highest value of the rate of write responses on the database (ops/sec) | | no_of_expires | `sum by(db) (redis_server_db_expires{role="master"})` | Current number of volatile keys in the database | ## Node metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | node_available_flash | `node_available_flash_bytes` | Available flash in the node (bytes) | | node_available_flash_no_overbooking | `node_available_flash_no_overbooking_bytes` | Available flash in the node (bytes), without taking into account overbooking | | node_available_memory | `node_available_memory_bytes` | Amount of free memory in the node (bytes) that is available for database provisioning | | node_available_memory_no_overbooking | `node_available_memory_no_overbooking_bytes` | Available RAM in the node (bytes) without taking into account overbooking | | node_avg_latency | `sum by (proxy) (irate(endpoint_acc_latency[$__rate_interval])) / sum by (proxy) (irate(endpoint_total_started_res[$__rate_interval]))` | Average latency of requests handled by endpoints on the node in milliseconds; returned only when there is traffic | | node_bigstore_free | `node_bigstore_free_bytes` | Sum of free space of back-end flash (used by flash database's [BigRedis]) on all cluster nodes (bytes); returned only when BigRedis is enabled | | node_bigstore_iops | `node_flash_reads_total + node_flash_writes_total` | Rate of I/O operations against back-end flash for all shards which are part of a flash-based database (BigRedis) in the cluster (ops/sec); returned only when BigRedis is enabled | | node_bigstore_kv_ops | `sum by (node) (irate(redis_server_big_io_dels[$__rate_interval]) + irate(redis_server_big_io_reads[$__rate_interval]) + irate(redis_server_big_io_writes[$__rate_interval]))` | Rate of value read/write operations against back-end flash for all shards which are part of a flash-based database (BigRedis) in the cluster (ops/sec); returned only when BigRedis is enabled | | node_bigstore_throughput | `sum by (node) (irate(redis_server_big_io_read_bytes[$__rate_interval]) + irate(redis_server_big_io_write_bytes[$__rate_interval]))` | Throughput I/O operations against back-end flash for all shards which are part of a flash-based database (BigRedis) in the cluster (bytes/sec); returned only when BigRedis is enabled | | node_cert_expiration_seconds | `node_cert_expires_in_seconds` | Certificate expiration (in seconds) per given node; read more about [certificates in Redis Software]({{< relref "/operate/rs/security/certificates" >}}) and [monitoring certificates]({{< relref "/operate/rs/security/certificates/monitor-certificates" >}}) | | node_conns | `sum by (node) (endpoint_client_connections)` | Number of clients connected to endpoints on node | | node_cpu_idle | `avg by (node) (irate(node_cpu_seconds_total{mode="idle"}[$__rate_interval]))` | CPU idle time portion (0-1, multiply by 100 to get percent) | | node_cpu_idle_max | N/A | Highest value of CPU idle time portion (0-1, multiply by 100 to get percent) | | node_cpu_idle_median | N/A | Average value of CPU idle time portion (0-1, multiply by 100 to get percent) | | node_cpu_idle_min | N/A | Lowest value of CPU idle time portion (0-1, multiply by 100 to get percent) | | node_cpu_system | `avg by (node) (irate(node_cpu_seconds_total{mode="system"}[$__rate_interval]))` | CPU time portion spent in the kernel (0-1, multiply by 100 to get percent) | | node_cpu_system_max | N/A | Highest value of CPU time portion spent in the kernel (0-1, multiply by 100 to get percent) | | node_cpu_system_median | N/A | Average value of CPU time portion spent in the kernel (0-1, multiply by 100 to get percent) | | node_cpu_system_min | N/A | Lowest value of CPU time portion spent in the kernel (0-1, multiply by 100 to get percent) | | node_cpu_user | `avg by (node) (irate(node_cpu_seconds_total{mode="user"}[$__rate_interval]))` | CPU time portion spent by user-space processes (0-1, multiply by 100 to get percent) | | node_cpu_user_max | N/A | Highest value of CPU time portion spent by user-space processes (0-1, multiply by 100 to get percent) | | node_cpu_user_median | N/A | Average value of CPU time portion spent by user-space processes (0-1, multiply by 100 to get percent) | | node_cpu_user_min | N/A | Lowest value of CPU time portion spent by user-space processes (0-1, multiply by 100 to get percent) | | node_cur_aof_rewrites | `sum by (cluster, node) (redis_server_aof_rewrite_in_progress)` | Number of AOF rewrites that are currently performed by shards on this node | | node_egress_bytes | `irate(node_network_transmit_bytes_total{device=""}[$__rate_interval])` | Rate of outgoing network traffic to node (bytes/sec) | | node_egress_bytes_max | N/A | Highest value of the rate of outgoing network traffic to node (bytes/sec) | | node_egress_bytes_median | N/A | Average value of the rate of outgoing network traffic to node (bytes/sec) | | node_egress_bytes_min | N/A | Lowest value of the rate of outgoing network traffic to node (bytes/sec) | | node_ephemeral_storage_avail | `node_ephemeral_storage_avail_bytes` | Disk space available to RLEC processes on configured ephemeral disk (bytes) | | node_ephemeral_storage_free | `node_ephemeral_storage_free_bytes` | Free disk space on configured ephemeral disk (bytes) | | node_free_memory | `node_memory_MemFree_bytes` | Free memory in the node (bytes) | | node_ingress_bytes | `irate(node_network_receive_bytes_total{device=""}[$__rate_interval])` | Rate of incoming network traffic to node (bytes/sec) | | node_ingress_bytes_max | N/A | Highest value of the rate of incoming network traffic to node (bytes/sec) | | node_ingress_bytes_median | N/A | Average value of the rate of incoming network traffic to node (bytes/sec) | | node_ingress_bytes_min | N/A | Lowest value of the rate of incoming network traffic to node (bytes/sec) | | node_persistent_storage_avail | `node_persistent_storage_avail_bytes` | Disk space available to RLEC processes on configured persistent disk (bytes) | | node_persistent_storage_free | `node_persistent_storage_free_bytes` | Free disk space on configured persistent disk (bytes) | | node_provisional_flash | `node_provisional_flash_bytes` | Amount of flash available for new shards on this node, taking into account overbooking, max Redis servers, reserved flash, and provision and migration thresholds (bytes) | | node_provisional_flash_no_overbooking | `node_provisional_flash_no_overbooking_bytes` | Amount of flash available for new shards on this node, without taking into account overbooking, max Redis servers, reserved flash, and provision and migration thresholds (bytes) | | node_provisional_memory | `node_provisional_memory_bytes` | Amount of RAM that is available for provisioning to databases out of the total RAM allocated for databases | | node_provisional_memory_no_overbooking | `node_provisional_memory_no_overbooking_bytes` | Amount of RAM that is available for provisioning to databases out of the total RAM allocated for databases, without taking into account overbooking | | node_total_req | `sum by (cluster, node) (irate(endpoint_read_requests[$__rate_interval]) + irate(endpoint_write_requests[$__rate_interval]) + irate(endpoint_other_requests[$__rate_interval]) )` | Request rate handled by endpoints on node (ops/sec) | | node_up | `node_metrics_up` | Node is part of the cluster and is connected | ## Cluster metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | cluster_shards_limit | `license_shards_limit` | Total shard limit by the license by shard type (ram / flash) | ## Proxy metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | listener_acc_latency | N/A | Accumulative latency (sum of the latencies) of all types of commands on the database. For the average latency, divide this value by listener_total_res | | listener_acc_latency_max | N/A | Highest value of accumulative latency of all types of commands on the database | | listener_acc_other_latency | N/A | Accumulative latency (sum of the latencies) of commands that are a type "other" on the database. For the average latency, divide this value by listener_other_res | | listener_acc_other_latency_max | N/A | Highest value of accumulative latency of commands that are a type "other" on the database | | listener_acc_read_latency | N/A | Accumulative latency (sum of the latencies) of commands that are a type "read" on the database. For the average latency, divide this value by listener_read_res | | listener_acc_read_latency_max | N/A | Highest value of accumulative latency of commands that are a type "read" on the database | | listener_acc_write_latency | N/A | Accumulative latency (sum of the latencies) of commands that are a type "write" on the database. For the average latency, divide this value by listener_write_res | | listener_acc_write_latency_max | N/A | Highest value of accumulative latency of commands that are a type "write" on the database | | listener_auth_cmds | N/A | Number of memcached AUTH commands sent to the database | | listener_auth_cmds_max | N/A | Highest value of the number of memcached AUTH commands sent to the database | | listener_auth_errors | N/A | Number of error responses to memcached AUTH commands | | listener_auth_errors_max | N/A | Highest value of the number of error responses to memcached AUTH commands | | listener_cmd_flush | N/A | Number of memcached FLUSH_ALL commands sent to the database | | listener_cmd_flush_max | N/A | Highest value of the number of memcached FLUSH_ALL commands sent to the database | | listener_cmd_get | N/A | Number of memcached GET commands sent to the database | | listener_cmd_get_max | N/A | Highest value of the number of memcached GET commands sent to the database | | listener_cmd_set | N/A | Number of memcached SET commands sent to the database | | listener_cmd_set_max | N/A | Highest value of the number of memcached SET commands sent to the database | | listener_cmd_touch | N/A | Number of memcached TOUCH commands sent to the database | | listener_cmd_touch_max | N/A | Highest value of the number of memcached TOUCH commands sent to the database | | listener_conns | N/A | Number of clients connected to the endpoint | | listener_egress_bytes | N/A | Rate of outgoing network traffic to the endpoint (bytes/sec) | | listener_egress_bytes_max | N/A | Highest value of the rate of outgoing network traffic to the endpoint (bytes/sec) | | listener_ingress_bytes | N/A | Rate of incoming network traffic to the endpoint (bytes/sec) | | listener_ingress_bytes_max | N/A | Highest value of the rate of incoming network traffic to the endpoint (bytes/sec) | | listener_last_req_time | N/A | Time of last command sent to the database | | listener_last_res_time | N/A | Time of last response sent from the database | | listener_max_connections_exceeded | `irate(endpoint_maximal_connections_exceeded[$__rate_interval])` | Number of times the number of clients connected to the database at the same time has exceeded the max limit | | listener_max_connections_exceeded_max | N/A | Highest value of the number of times the number of clients connected to the database at the same time has exceeded the max limit | | listener_monitor_sessions_count | N/A | Number of clients connected in monitor mode to the endpoint | | listener_other_req | N/A | Rate of other (non-read/write) requests on the endpoint (ops/sec) | | listener_other_req_max | N/A | Highest value of the rate of other (non-read/write) requests on the endpoint (ops/sec) | | listener_other_res | N/A | Rate of other (non-read/write) responses on the endpoint (ops/sec) | | listener_other_res_max | N/A | Highest value of the rate of other (non-read/write) responses on the endpoint (ops/sec) | | listener_other_started_res | N/A | Number of responses sent from the database of type "other" | | listener_other_started_res_max | N/A | Highest value of the number of responses sent from the database of type "other" | | listener_read_req | `irate(endpoint_read_requests[$__rate_interval])` | Rate of read requests on the endpoint (ops/sec) | | listener_read_req_max | N/A | Highest value of the rate of read requests on the endpoint (ops/sec) | | listener_read_res | `irate(endpoint_read_responses[$__rate_interval])` | Rate of read responses on the endpoint (ops/sec) | | listener_read_res_max | N/A | Highest value of the rate of read responses on the endpoint (ops/sec) | | listener_read_started_res | N/A | Number of responses sent from the database of type "read" | | listener_read_started_res_max | N/A | Highest value of the number of responses sent from the database of type "read" | | listener_total_connections_received | `irate(endpoint_total_connections_received[$__rate_interval])` | Rate of new client connections to the endpoint (connections/sec) | | listener_total_connections_received_max | N/A | Highest value of the rate of new client connections to the endpoint (connections/sec) | | listener_total_req | N/A | Request rate handled by the endpoint (ops/sec) | | listener_total_req_max | N/A | Highest value of the rate of all requests on the endpoint (ops/sec) | | listener_total_res | N/A | Rate of all responses on the endpoint (ops/sec) | | listener_total_res_max | N/A | Highest value of the rate of all responses on the endpoint (ops/sec) | | listener_total_started_res | N/A | Number of responses sent from the database of all types | | listener_total_started_res_max | N/A | Highest value of the number of responses sent from the database of all types | | listener_write_req | `irate(endpoint_write_requests[$__rate_interval])` | Rate of write requests on the endpoint (ops/sec) | | listener_write_req_max | N/A | Highest value of the rate of write requests on the endpoint (ops/sec) | | listener_write_res | `irate(endpoint_write_responses[$__rate_interval])` | Rate of write responses on the endpoint (ops/sec) | | listener_write_res_max | N/A | Highest value of the rate of write responses on the endpoint (ops/sec) | | listener_write_started_res | N/A | Number of responses sent from the database of type "write" | | listener_write_started_res_max | N/A | Highest value of the number of responses sent from the database of type "write" | ## Replication metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | bdb_replicaof_syncer_ingress_bytes | `rate(replica_src_ingress_bytes[$__rate_interval])` | Rate of compressed incoming network traffic to a Replica Of database (bytes/sec) | | bdb_replicaof_syncer_ingress_bytes_decompressed | `rate(replica_src_ingress_bytes_decompressed[$__rate_interval])` | Rate of decompressed incoming network traffic to a Replica Of database (bytes/sec) | | bdb_replicaof_syncer_local_ingress_lag_time | `database_syncer_lag_ms{syncer_type="replicaof"}` | Lag time between the source and the destination for Replica Of traffic (ms) | | bdb_replicaof_syncer_status | `database_syncer_current_status{syncer_type="replicaof"}` | Syncer status for Replica Of traffic; 0 = in-sync, 1 = syncing, 2 = out of sync | | bdb_crdt_syncer_ingress_bytes | `rate(crdt_src_ingress_bytes[$__rate_interval])` | Rate of compressed incoming network traffic to CRDB (bytes/sec) | | bdb_crdt_syncer_ingress_bytes_decompressed | `rate(crdt_src_ingress_bytes_decompressed[$__rate_interval])` | Rate of decompressed incoming network traffic to CRDB (bytes/sec) | | bdb_crdt_syncer_local_ingress_lag_time | `database_syncer_lag_ms{syncer_type="crdt"}` | Lag time between the source and the destination (ms) for CRDB traffic | | bdb_crdt_syncer_status | `database_syncer_current_status{syncer_type="crdt"}` | Syncer status for CRDB traffic; 0 = in-sync, 1 = syncing, 2 = out of sync | ## Shard metrics | V1 metric | Equivalent V2 PromQL | Description | | --------- | :------------------- | :---------- | | redis_active_defrag_running | `redis_server_active_defrag_running` | Automatic memory defragmentation current aggressiveness (% cpu) | | redis_allocator_active | `redis_server_allocator_active` | Total used memory, including external fragmentation | | redis_allocator_allocated | `redis_server_allocator_allocated` | Total allocated memory | | redis_allocator_resident | `redis_server_allocator_resident` | Total resident memory (RSS) | | redis_aof_last_cow_size | `redis_server_aof_last_cow_size` | Last AOFR, CopyOnWrite memory | | redis_aof_rewrite_in_progress | `redis_server_aof_rewrite_in_progress` | The number of simultaneous AOF rewrites that are in progress | | redis_aof_rewrites | `redis_server_aof_rewrites` | Number of AOF rewrites this process executed | | redis_aof_delayed_fsync | `redis_server_aof_delayed_fsync` | Number of times an AOF fsync caused delays in the main Redis thread (inducing latency); this can indicate that the disk is slow or overloaded | | redis_blocked_clients | `redis_server_blocked_clients` | Count the clients waiting on a blocking call | | redis_connected_clients | `redis_server_connected_clients` | Number of client connections to the specific shard | | redis_connected_slaves | `redis_server_connected_slaves` | Number of connected replicas | | redis_db0_avg_ttl | `redis_server_db0_avg_ttl` | Average TTL of all volatile keys | | redis_db0_expires | `redis_server_expired_keys` | Total count of volatile keys | | redis_db0_keys | `redis_server_db0_keys` | Total key count | | redis_evicted_keys | `redis_server_evicted_keys` | Keys evicted so far (since restart) | | redis_expire_cycle_cpu_milliseconds | `redis_server_expire_cycle_cpu_milliseconds` | The cumulative amount of time spent on active expiry cycles | | redis_expired_keys | `redis_server_expired_keys` | Keys expired so far (since restart) | | redis_forwarding_state | `redis_server_forwarding_state` | Shard forwarding state (on or off) | | redis_keys_trimmed | `redis_server_keys_trimmed` | The number of keys that were trimmed in the current or last resharding process | | redis_keyspace_read_hits | `redis_server_keyspace_read_hits` | Number of read operations accessing an existing keyspace | | redis_keyspace_read_misses | `redis_server_keyspace_read_misses` | Number of read operations accessing a non-existing keyspace | | redis_keyspace_write_hits | `redis_server_keyspace_write_hits` | Number of write operations accessing an existing keyspace | | redis_keyspace_write_misses | `redis_server_keyspace_write_misses` | Number of write operations accessing a non-existing keyspace | | redis_master_link_status | `redis_server_master_link_status` | Indicates if the replica is connected to its master | | redis_master_repl_offset | `redis_server_master_repl_offset` | Number of bytes sent to replicas by the shard; calculate the throughput for a time period by comparing the value at different times | | redis_master_sync_in_progress | `redis_server_master_sync_in_progress` | The master shard is synchronizing (1 true; 0 false) | | redis_max_process_mem | `redis_server_max_process_mem` | Current memory limit configured by redis_mgr according to node free memory | | redis_maxmemory | `redis_server_maxmemory` | Current memory limit configured by redis_mgr according to database memory limits.

To calculate the percent memory usage:
`sum by (cluster,db)(redis_server_used_memory{role="master"}) / (avg by(cluster,db)(db_memory_limit_bytes) / max by(cluster,db)(db_replication_factor))` | | redis_mem_aof_buffer | `redis_server_mem_aof_buffer` | Current size of AOF buffer | | redis_mem_clients_normal | `redis_server_mem_clients_normal` | Current memory used for input and output buffers of non-replica clients | | redis_mem_clients_slaves | `redis_server_mem_clients_slaves` | Current memory used for input and output buffers of replica clients | | redis_mem_fragmentation_ratio | `redis_server_mem_fragmentation_ratio` | Memory fragmentation ratio (1.3 means 30% overhead) | | redis_mem_not_counted_for_evict | `redis_server_mem_not_counted_for_evict` | Portion of used_memory (in bytes) that's not counted for eviction and OOM error | | redis_mem_replication_backlog | `redis_server_mem_replication_backlog` | Size of replication backlog | | redis_module_fork_in_progress | `redis_server_module_fork_in_progress` | A binary value that indicates if there is an active fork spawned by a module (1) or not (0) | | redis_process_cpu_system_seconds_total | `namedprocess_namegroup_cpu_seconds_total{mode="system"}` | Shard process system CPU time spent in seconds | | redis_process_cpu_usage_percent | `namedprocess_namegroup_cpu_seconds_total{mode=~"system\|user"}` | Shard process CPU usage percentage | | redis_process_cpu_user_seconds_total | `namedprocess_namegroup_cpu_seconds_total{mode="user"}` | Shard user CPU time spent in seconds | | redis_process_main_thread_cpu_system_seconds_total | `namedprocess_namegroup_thread_cpu_seconds_total{mode="system",threadname="redis-server"}` | Shard main thread system CPU time spent in seconds | | redis_process_main_thread_cpu_user_seconds_total | `namedprocess_namegroup_thread_cpu_seconds_total{mode="user",threadname="redis-server"}` | Shard main thread user CPU time spent in seconds | | redis_process_max_fds | `max(namedprocess_namegroup_open_filedesc)` | Shard maximum number of open file descriptors | | redis_process_open_fds | `namedprocess_namegroup_open_filedesc` | Shard number of open file descriptors | | redis_process_resident_memory_bytes | `namedprocess_namegroup_memory_bytes{memtype="resident"}` | Shard resident memory size in bytes | | redis_process_start_time_seconds | `namedprocess_namegroup_oldest_start_time_seconds` | Shard start time of the process since unix epoch in seconds | | redis_process_virtual_memory_bytes | `namedprocess_namegroup_memory_bytes{memtype="virtual"}` | Shard virtual memory in bytes | | redis_rdb_bgsave_in_progress | `redis_server_rdb_bgsave_in_progress` | Indication if bgsave is currently in progress | | redis_rdb_last_cow_size | `redis_server_rdb_last_cow_size` | Last bgsave (or SYNC fork) used CopyOnWrite memory | | redis_rdb_saves | `redis_server_rdb_saves` | Total count of bgsaves since the process was restarted (including replica fullsync and persistence) | | redis_repl_touch_bytes | `redis_server_repl_touch_bytes` | Number of bytes sent to replicas as TOUCH commands by the shard as a result of a READ command that was processed; calculate the throughput for a time period by comparing the value at different times | | redis_total_commands_processed | `redis_server_total_commands_processed` | Number of commands processed by the shard; calculate the number of commands for a time period by comparing the value at different times | | redis_total_connections_received | `redis_server_total_connections_received` | Number of connections received by the shard; calculate the number of connections for a time period by comparing the value at different times | | redis_total_net_input_bytes | `redis_server_total_net_input_bytes` | Number of bytes received by the shard; calculate the throughput for a time period by comparing the value at different times | | redis_total_net_output_bytes | `redis_server_total_net_output_bytes` | Number of bytes sent by the shard; calculate the throughput for a time period by comparing the value at different times | | redis_up | `redis_server_up` | Shard is up and running | | redis_used_memory | `redis_server_used_memory` | Memory used by shard (in BigRedis this includes flash) (bytes) |