{
  "id": "prometheus-metrics-v2",
  "title": "Prometheus metrics v2 preview",
  "url": "https://redis.io/docs/latest/operate/rs/7.8/references/metrics/prometheus-metrics-v2/",
  "summary": "V2 metrics available to Prometheus as of Redis Enterprise Software version 7.8.2.",
  "content": "\n\nWhile the metrics stream engine is in preview, this document provides only a partial list of v2 metrics. More metrics will be added.\n\n\nYou can [integrate Redis Enterprise Software with Prometheus and Grafana]() to create dashboards for important metrics.\n\nThe v2 metrics in the following tables are available as of Redis Enterprise Software version 7.8.0. For help transitioning from v1 metrics to v2 PromQL, see [Prometheus v1 metrics and equivalent v2 PromQL]().\n\nThe v2 scraping endpoint also exposes metrics for `node_exporter` version 1.8.1. For more information, see the [Prometheus node_exporter GitHub repository](https://github.com/prometheus/node_exporter).\n\n## Database metrics\n\n| Metric | Type | Description |\n| :-------- | :--- | :---------- |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_connections\u003c/span\u003e | counter | Number of client connection establishment events |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_disconnections\u003c/span\u003e | counter | Number of client disconnections initiated by the client |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_connection_expired\u003c/span\u003e | counter | Total number of client connections with expired TTL (Time To Live) |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_establishment_failures\u003c/span\u003e | counter | Number of client connections that failed to establish properly |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_expiration_refresh\u003c/span\u003e | counter | Number of expiration time changes of clients |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_tracking_off_requests\u003c/span\u003e | counter | Total number of `CLIENT TRACKING OFF` requests |\n| \u003cspan class=\"break-all\"\u003eendpoint_client_tracking_on_requests\u003c/span\u003e | counter | Total number of `CLIENT TRACKING ON` requests |\n| \u003cspan class=\"break-all\"\u003eendpoint_disconnected_cba_client\u003c/span\u003e | counter | Number of certificate-based clients disconnected |\n| \u003cspan class=\"break-all\"\u003eendpoint_disconnected_ldap_client\u003c/span\u003e | counter | Number of LDAP clients disconnected |\n| \u003cspan class=\"break-all\"\u003eendpoint_disconnected_user_password_client\u003c/span\u003e | counter | Number of user\u0026password clients disconnected |\n| \u003cspan class=\"break-all\"\u003eendpoint_disposed_commands_after_client_caching\u003c/span\u003e | counter | Total number of client caching commands that were disposed due to misuse |\n| \u003cspan class=\"break-all\"\u003eendpoint_egress\u003c/span\u003e | counter | Number of egress bytes |\n| \u003cspan class=\"break-all\"\u003eendpoint_egress_pending\u003c/span\u003e | counter | Number of send-pending bytes |\n| \u003cspan class=\"break-all\"\u003eendpoint_egress_pending_discarded\u003c/span\u003e | counter | Number of send-pending bytes that were discarded due to disconnection |\n| \u003cspan class=\"break-all\"\u003eendpoint_failed_cba_authentication\u003c/span\u003e | counter | Number of clients that failed certificate-based authentication |\n| \u003cspan class=\"break-all\"\u003eendpoint_failed_ldap_authentication\u003c/span\u003e | counter | Number of clients that failed LDAP authentication |\n| \u003cspan class=\"break-all\"\u003eendpoint_failed_user_password_authentication\u003c/span\u003e | counter | Number of clients that failed user password authentication |\n| \u003cspan class=\"break-all\"\u003eendpoint_ingress\u003c/span\u003e | counter | Number of ingress bytes |\n| \u003cspan class=\"break-all\"\u003eendpoint_longest_pipeline_histogram\u003c/span\u003e | counter | Tracks the distribution of longest observed pipeline lengths, where a pipeline is a sequence of client commands sent without waiting for responses. |\n| \u003cspan class=\"break-all\"\u003eendpoint_other_requests\u003c/span\u003e | counter | Number of other requests |\n| \u003cspan class=\"break-all\"\u003eendpoint_other_requests_latency_histogram\u003c/span\u003e | histogram | Latency (in µs) histogram of other commands |\n| \u003cspan class=\"break-all\"\u003eendpoint_other_requests_latency_histogram_bucket\u003c/span\u003e | histogram | Latency histograms for commands other than read or write commands. Can be used to represent different latency percentiles.\u003cbr /\u003ep99.9 example:\u003cbr /\u003e\u003cspan class=\"break-all\"\u003e`histogram_quantile(0.999, sum(rate(endpoint_other_requests_latency_histogram_bucket{cluster=\"$cluster\", db=\"$db\"}[$__rate_interval]) ) by (le, db))`\u003c/span\u003e |\n| \u003cspan class=\"break-all\"\u003eendpoint_other_responses\u003c/span\u003e | counter | Number of other responses |\n| \u003cspan class=\"break-all\"\u003eendpoint_proxy_disconnections\u003c/span\u003e | counter | Number of client disconnections initiated by the proxy |\n| \u003cspan class=\"break-all\"\u003eendpoint_read_requests\u003c/span\u003e | counter | Number of read requests |\n| \u003cspan class=\"break-all\"\u003eendpoint_read_requests_latency_histogram\u003c/span\u003e | histogram | Latency (in µs) histogram of read commands |\n| \u003cspan class=\"break-all\"\u003eendpoint_read_requests_latency_histogram_bucket\u003c/span\u003e | histogram | Latency histograms for read commands. Can be used to represent different latency percentiles.\u003cbr /\u003ep99.9 example:\u003cbr /\u003e\u003cspan class=\"break-all\"\u003e`histogram_quantile(0.999, sum(rate(endpoint_read_requests_latency_histogram_bucket{cluster=\"$cluster\", db=\"$db\"}[$__rate_interval]) ) by (le, db))`\u003c/span\u003e |\n| \u003cspan class=\"break-all\"\u003eendpoint_read_responses\u003c/span\u003e | counter | Number of read responses |\n| \u003cspan class=\"break-all\"\u003eendpoint_successful_cba_authentication\u003c/span\u003e | counter | Number of clients that successfully authenticated with certificate-based authentication |\n| \u003cspan class=\"break-all\"\u003eendpoint_successful_ldap_authentication\u003c/span\u003e | counter | Number of clients that successfully authenticated with LDAP |\n| \u003cspan class=\"break-all\"\u003eendpoint_successful_user_password_authentication\u003c/span\u003e | counter | Number of clients that successfully authenticated with user\u0026password |\n| \u003cspan class=\"break-all\"\u003eendpoint_write_requests\u003c/span\u003e | counter | Number of write requests |\n| \u003cspan class=\"break-all\"\u003eendpoint_write_requests_latency_histogram\u003c/span\u003e | histogram | Latency (in µs) histogram of write commands |\n| \u003cspan class=\"break-all\"\u003eendpoint_write_requests_latency_histogram_bucket\u003c/span\u003e | histogram | Latency histograms for write commands. Can be used to represent different latency percentiles.\u003cbr /\u003ep99.9 example:\u003cbr /\u003e\u003cspan class=\"break-all\"\u003e`histogram_quantile(0.999, sum(rate(endpoint_write_requests_latency_histogram_bucket{cluster=\"$cluster\", db=\"$db\"}[$__rate_interval]) ) by (le, db))`\u003c/span\u003e |\n| \u003cspan class=\"break-all\"\u003eendpoint_write_responses\u003c/span\u003e | counter | Number of write responses |\n\n## Node metrics\n\n| Metric | Type |Description |\n| :-------- | :--- | :---------- |\n| \u003cspan class=\"break-all\"\u003enode_available_flash_bytes\u003c/span\u003e | gauge | Available flash in the node (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_available_flash_no_overbooking_bytes\u003c/span\u003e | gauge | Available flash in the node (bytes), without taking into account overbooking |\n| \u003cspan class=\"break-all\"\u003enode_available_memory_bytes\u003c/span\u003e | gauge | Amount of free memory in the node (bytes) that is available for database provisioning |\n| \u003cspan class=\"break-all\"\u003enode_available_memory_no_overbooking_bytes\u003c/span\u003e | gauge | Available RAM in the node (bytes) without taking into account overbooking |\n| \u003cspan class=\"break-all\"\u003enode_bigstore_free_bytes\u003c/span\u003e | gauge | 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 |\n| \u003cspan class=\"break-all\"\u003enode_cert_expires_in_seconds\u003c/span\u003e | gauge | Certificate expiration (in seconds) per given node; read more about [certificates in Redis Enterprise]() and [monitoring certificates]() |\n| \u003cspan class=\"break-all\"\u003enode_ephemeral_storage_avail_bytes\u003c/span\u003e | gauge | Disk space available to RLEC processes on configured ephemeral disk (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_ephemeral_storage_free_bytes\u003c/span\u003e | gauge | Free disk space on configured ephemeral disk (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_memory_MemFree_bytes\u003c/span\u003e | gauge | Free memory in the node (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_persistent_storage_avail_bytes\u003c/span\u003e | gauge | Disk space available to RLEC processes on configured persistent disk (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_persistent_storage_free_bytes\u003c/span\u003e | gauge | Free disk space on configured persistent disk (bytes) |\n| \u003cspan class=\"break-all\"\u003enode_provisional_flash_bytes\u003c/span\u003e | gauge | 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) |\n| \u003cspan class=\"break-all\"\u003enode_provisional_flash_no_overbooking_bytes\u003c/span\u003e | gauge | 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) |\n| \u003cspan class=\"break-all\"\u003enode_provisional_memory_bytes\u003c/span\u003e | gauge | Amount of RAM that is available for provisioning to databases out of the total RAM allocated for databases |\n| \u003cspan class=\"break-all\"\u003enode_provisional_memory_no_overbooking_bytes\u003c/span\u003e | gauge | Amount of RAM that is available for provisioning to databases out of the total RAM allocated for databases, without taking into account overbooking |\n| \u003cspan class=\"break-all\"\u003enode_metrics_up\u003c/span\u003e | gauge | Node is part of the cluster and is connected |\n\n## Cluster metrics\n\n| Metric | Type | Description |\n| :-------- | :--- | :---------- |\n| \u003cspan class=\"break-all\"\u003egeneration{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | gauge| Generation number of the specific cluster_wd|\n| \u003cspan class=\"break-all\"\u003ehas_quorum{cluster_wd=\u003cnode_uid\u003e, has_witness_disk=BOOL}\u003c/span\u003e | gauge| Has_quorum = 1\u003cbr /\u003eNo quorum = 0 |\n| \u003cspan class=\"break-all\"\u003eis_primary{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | gauge| primary = 1\u003cbr /\u003esecondary = 0 |\n| \u003cspan class=\"break-all\"\u003elicense_shards_limit\u003c/span\u003e | gauge | Total shard limit by the license by shard type (ram / flash) |\n| \u003cspan class=\"break-all\"\u003etotal_live_nodes_count{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | gauge| Number of live nodes|\n| \u003cspan class=\"break-all\"\u003etotal_node_count{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | gauge| Number of nodes |\n| \u003cspan class=\"break-all\"\u003etotal_primary_selection_ended{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | counter | Monotonic counter for each selection process that ended |\n| \u003cspan class=\"break-all\"\u003etotal_primary_selections{cluster_wd=\u003cnode_uid\u003e}\u003c/span\u003e | counter | Monotonic counter for each selection process that started|\n\n## Replication metrics\n\n| Metric | Type | Description |\n| :-------- | :--- | :---------- |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_config\u003c/span\u003e | gauge | Used as a placeholder for configuration labels |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_current_status\u003c/span\u003e | gauge | Syncer status for traffic; 0 = in-sync, 2 = out of sync |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_dst_connectivity_state\u003c/span\u003e | gauge | Destination connectivity state |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_dst_connectivity_state_ms\u003c/span\u003e | gauge | Destination connectivity state duration |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_dst_lag\u003c/span\u003e | gauge | Lag in milliseconds between the syncer and the destination |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_dst_repl_offset\u003c/span\u003e | gauge | Offset of the last command acknowledged |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_flush_counter\u003c/span\u003e | gauge | Number of destination flushes |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_ingress_bytes\u003c/span\u003e | gauge | Number of bytes read from source shard |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_ingress_bytes_decompressed\u003c/span\u003e | gauge | Number of bytes read from source shard |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_internal_state\u003c/span\u003e | gauge | Internal state of the syncer |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_lag_ms\u003c/span\u003e | gauge | Lag time between the source and the destination for traffic in milliseconds |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_rdb_size\u003c/span\u003e | gauge | The source's RDB size in bytes to be transferred during the syncing phase |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_rdb_transferred\u003c/span\u003e | gauge | Number of bytes transferred from the source's RDB during the syncing phase |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_src_connectivity_state\u003c/span\u003e | gauge | Source connectivity state |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_src_connectivity_state_ms\u003c/span\u003e | gauge | Source connectivity state duration |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_src_repl_offset\u003c/span\u003e | gauge | Last known source offset |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_state\u003c/span\u003e | gauge | Internal state of the shard syncer |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_syncer_repl_offset\u003c/span\u003e | gauge | Offset of the last command handled by the syncer |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_total_requests\u003c/span\u003e | gauge | Number of destination writes |\n| \u003cspan class=\"break-all\"\u003edatabase_syncer_total_responses\u003c/span\u003e | gauge | Number of destination writes acknowledged |\n\n## Shard metrics\n\n| Metric | Description |\n| :-------- | :---------- |\n| \u003cspan class=\"break-all\"\u003eredis_server_active_defrag_running\u003c/span\u003e | Automatic memory defragmentation current aggressiveness (% cpu) |\n| \u003cspan class=\"break-all\"\u003eredis_server_allocator_active\u003c/span\u003e | Total used memory, including external fragmentation |\n| \u003cspan class=\"break-all\"\u003eredis_server_allocator_allocated\u003c/span\u003e | Total allocated memory |\n| \u003cspan class=\"break-all\"\u003eredis_server_allocator_resident\u003c/span\u003e | Total resident memory (RSS) |\n| \u003cspan class=\"break-all\"\u003eredis_server_aof_last_cow_size\u003c/span\u003e | Last AOFR, CopyOnWrite memory |\n| \u003cspan class=\"break-all\"\u003eredis_server_aof_rewrite_in_progress\u003c/span\u003e | The number of simultaneous AOF rewrites that are in progress |\n| \u003cspan class=\"break-all\"\u003eredis_server_aof_rewrites\u003c/span\u003e | Number of AOF rewrites this process executed |\n| \u003cspan class=\"break-all\"\u003eredis_server_aof_delayed_fsync\u003c/span\u003e | 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 |\n| \u003cspan class=\"break-all\"\u003eredis_server_blocked_clients\u003c/span\u003e | Count the clients waiting on a blocking call |\n| \u003cspan class=\"break-all\"\u003eredis_server_connected_clients\u003c/span\u003e | Number of client connections to the specific shard |\n| \u003cspan class=\"break-all\"\u003eredis_server_connected_slaves\u003c/span\u003e | Number of connected replicas |\n| \u003cspan class=\"break-all\"\u003eredis_server_db0_avg_ttl\u003c/span\u003e | Average TTL of all volatile keys |\n| \u003cspan class=\"break-all\"\u003eredis_server_db0_keys\u003c/span\u003e | Total key count |\n| \u003cspan class=\"break-all\"\u003eredis_server_evicted_keys\u003c/span\u003e | Keys evicted so far (since restart) |\n| \u003cspan class=\"break-all\"\u003eredis_server_expire_cycle_cpu_milliseconds\u003c/span\u003e | The cumulative amount of time spent on active expiry cycles |\n| \u003cspan class=\"break-all\"\u003eredis_server_expired_keys\u003c/span\u003e | Keys expired so far since restart |\n| \u003cspan class=\"break-all\"\u003eredis_server_forwarding_state\u003c/span\u003e | Shard forwarding state (on or off) |\n| \u003cspan class=\"break-all\"\u003eredis_server_keys_trimmed\u003c/span\u003e | The number of keys that were trimmed in the current or last resharding process |\n| \u003cspan class=\"break-all\"\u003eredis_server_keyspace_read_hits\u003c/span\u003e | Number of read operations accessing an existing keyspace |\n| \u003cspan class=\"break-all\"\u003eredis_server_keyspace_read_misses\u003c/span\u003e | Number of read operations accessing a non-existing keyspace |\n| \u003cspan class=\"break-all\"\u003eredis_server_keyspace_write_hits\u003c/span\u003e | Number of write operations accessing an existing keyspace |\n| \u003cspan class=\"break-all\"\u003eredis_server_keyspace_write_misses\u003c/span\u003e | Number of write operations accessing a non-existing keyspace |\n| \u003cspan class=\"break-all\"\u003eredis_server_master_link_status\u003c/span\u003e | Indicates if the replica is connected to its master |\n| \u003cspan class=\"break-all\"\u003eredis_server_master_repl_offset\u003c/span\u003e | Number of bytes sent to replicas by the shard; calculate the throughput for a time period by comparing the value at different times |\n| \u003cspan class=\"break-all\"\u003eredis_server_master_sync_in_progress\u003c/span\u003e | The primary shard is synchronizing (1 true; 0 false) |\n| \u003cspan class=\"break-all\"\u003eredis_server_max_process_mem\u003c/span\u003e | Current memory limit configured by redis_mgr according to node free memory |\n| \u003cspan class=\"break-all\"\u003eredis_server_maxmemory\u003c/span\u003e | Current memory limit configured by redis_mgr according to database memory limits |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_aof_buffer\u003c/span\u003e | Current size of AOF buffer |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_clients_normal\u003c/span\u003e | Current memory used for input and output buffers of non-replica clients |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_clients_slaves\u003c/span\u003e | Current memory used for input and output buffers of replica clients |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_fragmentation_ratio\u003c/span\u003e | Memory fragmentation ratio (1.3 means 30% overhead) |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_not_counted_for_evict\u003c/span\u003e | Portion of used_memory (in bytes) that's not counted for eviction and OOM error |\n| \u003cspan class=\"break-all\"\u003eredis_server_mem_replication_backlog\u003c/span\u003e | Size of replication backlog |\n| \u003cspan class=\"break-all\"\u003eredis_server_module_fork_in_progress\u003c/span\u003e | A binary value that indicates if there is an active fork spawned by a module (1) or not (0) |\n| \u003cspan class=\"break-all\"\u003enamedprocess_namegroup_cpu_seconds_total\u003c/span\u003e | Shard process CPU usage in seconds |\n| \u003cspan class=\"break-all\"\u003enamedprocess_namegroup_thread_cpu_seconds_total\u003c/span\u003e | Shard main thread CPU time spent in seconds |\n| \u003cspan class=\"break-all\"\u003enamedprocess_namegroup_open_filedesc\u003c/span\u003e | Shard number of open file descriptors |\n| \u003cspan class=\"break-all\"\u003enamedprocess_namegroup_memory_bytes\u003c/span\u003e | Shard memory size in bytes |\n| \u003cspan class=\"break-all\"\u003enamedprocess_namegroup_oldest_start_time_seconds\u003c/span\u003e | Shard start time of the process since unix epoch in seconds |\n| \u003cspan class=\"break-all\"\u003eredis_server_rdb_bgsave_in_progress\u003c/span\u003e | Indication if bgsave is currently in progress |\n| \u003cspan class=\"break-all\"\u003eredis_server_rdb_last_cow_size\u003c/span\u003e | Last bgsave (or SYNC fork) used CopyOnWrite memory |\n| \u003cspan class=\"break-all\"\u003eredis_server_rdb_saves\u003c/span\u003e | Total count of bgsaves since the process was restarted (including replica fullsync and persistence) |\n| \u003cspan class=\"break-all\"\u003eredis_server_repl_touch_bytes\u003c/span\u003e | 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 |\n| \u003cspan class=\"break-all\"\u003eredis_server_total_commands_processed\u003c/span\u003e | Number of commands processed by the shard; calculate the number of commands for a time period by comparing the value at different times |\n| \u003cspan class=\"break-all\"\u003eredis_server_total_connections_received\u003c/span\u003e | Number of connections received by the shard; calculate the number of connections for a time period by comparing the value at different times |\n| \u003cspan class=\"break-all\"\u003eredis_server_total_net_input_bytes\u003c/span\u003e | Number of bytes received by the shard; calculate the throughput for a time period by comparing the value at different times |\n| \u003cspan class=\"break-all\"\u003eredis_server_total_net_output_bytes\u003c/span\u003e | Number of bytes sent by the shard; calculate the throughput for a time period by comparing the value at different times |\n| \u003cspan class=\"break-all\"\u003eredis_server_up\u003c/span\u003e | Shard is up and running |\n| \u003cspan class=\"break-all\"\u003eredis_server_used_memory\u003c/span\u003e | Memory used by shard (in BigRedis this includes flash) (bytes) |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_number_of_indexes\u003c/span\u003e | Total number of indexes in the shard \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_number_of_active_indexes\u003c/span\u003e | The total number of indexes running a background indexing and/or background query processing operation. Background indexing refers to vector ingestion process, or in-progress background indexer. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_number_of_active_indexes_running_queries\u003c/span\u003e | Total count of indexes currently running a background query process. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_number_of_active_indexes_indexing\u003c/span\u003e | Total count of indexes currently undergoing a background indexing process. Background indexing refers to vector ingestion process, or in-progress background indexer. This metric is limited by the number of WORKER threads allocated for writing operations + the number of indexes. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_active_write_threads\u003c/span\u003e | Total count of background write (indexing) processes currently running in the shard. Background indexing refers to vector ingestion process, or in-progress background indexer. This metric is limited by the number of threads allocated for writing operations. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_text_Text\u003c/span\u003e | The total number of `TEXT` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_text_Sortable\u003c/span\u003e | The total number of `SORTABLE TEXT` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_text_NoIndex\u003c/span\u003e | The total number of `NOINDEX TEXT` fields across all indexes in the shard; i.e., used for sorting only but not indexed. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_numeric_Numeric\u003c/span\u003e | The total number of `NUMERIC` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_numeric_Sortable\u003c/span\u003e | The total number of `SORTABLE NUMERIC` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_numeric_NoIndex\u003c/span\u003e | The total number of `NOINDEX NUMERIC` fields across all indexes in the shard, which are used for sorting only but not indexed. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_tag_Tag\u003c/span\u003e | The total number of `TAG` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_tag_Sortable\u003c/span\u003e | The total number of `SORTABLE TAG` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_tag_NoIndex\u003c/span\u003e | The total number of `NOINDEX TAG` fields across all indexes in the shard; i.e., used for sorting only but not indexed. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_tag_CaseSensitive\u003c/span\u003e | The total number of `CASESENSITIVE TAG` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geo_Geo\u003c/span\u003e | The total number of `GEO` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geo_Sortable\u003c/span\u003e | The total number of `SORTABLE GEO` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geo_NoIndex\u003c/span\u003e | The total number of `NOINDEX GEO` fields across all indexes in the shard; i.e., used for sorting only but not indexed. This field appears only if its value is larger than 0. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_vector_Vector\u003c/span\u003e | The total number of `VECTOR` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_vector_Flat\u003c/span\u003e | The total number of `FLAT VECTOR` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_vector_HNSW\u003c/span\u003e | The total number of `HNSW VECTOR` fields across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geoshape_Geoshape\u003c/span\u003e | The total number of `GEOSHAPE` fields across all indexes in the shard. \u003csup\u003e[2](#tnote-2)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geoshape_Sortable\u003c/span\u003e | The total number of `SORTABLE GEOSHAPE` fields across all indexes in the shard. This field appears only if its value is larger than 0. \u003csup\u003e[2](#tnote-2)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_geoshape_NoIndex\u003c/span\u003e | The total number of `NOINDEX GEOSHAPE` fields across all indexes in the shard; i.e., used for sorting only but not indexed. This field appears only if its value is larger than 0. \u003csup\u003e[2](#tnote-2)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_fields_\u003cfield\u003e_IndexErrors\u003c/span\u003e | The total number of indexing failures caused by attempts to index a document containing `\u003cfield\u003e` field. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_used_memory_indexes\u003c/span\u003e | The total memory allocated by all indexes in the shard in bytes. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_smallest_memory_index\u003c/span\u003e | The memory usage of the index with the smallest memory usage in the shard in bytes. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_largest_memory_index\u003c/span\u003e | The memory usage of the index with the largest memory usage in the shard in bytes. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_indexing_time\u003c/span\u003e | The total time spent on indexing operations, excluding the background indexing of vectors in the `HNSW` graph. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_used_memory_vector_index\u003c/span\u003e | The total memory usage of all vector indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_global_idle\u003c/span\u003e | The total number of user and internal cursors currently holding pending results in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_global_total\u003c/span\u003e | The total number of user and internal cursors in the shard, either holding pending results or actively executing `FT.CURSOR READ`. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_bytes_collected\u003c/span\u003e | The total amount of memory freed by the garbage collectors from indexes in the shard memory in bytes. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_cycles\u003c/span\u003e | The total number of garbage collection cycles executed \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_ms_run\u003c/span\u003e | The total duration of all garbage collection cycles in the shard, measured in milliseconds. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_docs_not_collected_by_gc\u003c/span\u003e | The number of documents marked as deleted whose memory has not yet been freed by the garbage collector. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_marked_deleted_vectors\u003c/span\u003e | The number of vectors marked as deleted in the vector indexes that have not yet been cleaned. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_queries_processed\u003c/span\u003e | The total number of successful query executions (When using cursors, not counting reading from existing cursors) in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_query_commands\u003c/span\u003e | The total number of successful query command executions (including `FT.SEARCH`, `FT.AGGREGATE`, and `FT.CURSOR READ`). \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_query_execution_time_ms\u003c/span\u003e | The cumulative execution time of all query commands, including `FT.SEARCH`, `FT.AGGREGATE`, and `FT.CURSOR READ`, measured in ms. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_total_active_queries\u003c/span\u003e | The total number of background queries currently being executed in the shard, excluding `FT.CURSOR READ`. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_errors_indexing_failures\u003c/span\u003e | The total number of indexing failures recorded across all indexes in the shard. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n| \u003cspan class=\"break-all\"\u003eredis_server_search_errors_for_index_with_max_failures\u003c/span\u003e | The number of indexing failures in the index with the highest count of failures. \u003csup\u003e[1](#tnote-1)\u003c/sup\u003e |\n\n1. \u003ca name=\"tnote-1\"\u003e\u003c/a\u003e Available since RediSearch 2.6.\n2. \u003ca name=\"tnote-2\"\u003e\u003c/a\u003e Available since RediSearch 2.8.\n",
  "tags": ["docs","integrate","rs"],
  "last_updated": "2026-04-01T08:10:08-05:00"
}

