Monitorin Valkey database
Collect and monitor the general performance Metrics of Valkey database. Support Valkey 7.0+.
Configuration parameter
| Parameter name | Parameter help description |
|---|---|
| Target Host | The IP, IPV6, or domain name of the monitored endpoint. Note ⚠️: Do not include protocol headers (eg: https://, http://). |
| Port | The HTTP port provided by Valkey, default value is 6379, sentinel node`s default value is 26379 |
| Timeout | Set the timeout time when SQL query does not respond to data, unit: ms, default: 3000ms |
| Username | Database connection user name, optional |
| Password | Database connection password, optional |
Collection Metric
Metric set:server
| Metric name | Metric unit | Metric help description |
|---|---|---|
| valkey_version | none | Version of the Valkey server |
| valkey_git_sha1 | none | Git SHA1 |
| valkey_git_dirty | none | Git dirty flag |
| valkey_build_id | none | The build id |
| valkey_mode | none | The server's mode ("standalone", "sentinel" or "cluster") |
| os | none | Operating system hosting the Valkey server |
| arch_bits | none | Architecture (32 or 64 bits) |
| multiplexing_api | none | Event loop mechanism used by Valkey |
| atomicvar_api | none | Atomicvar API used by Valkey |
| gcc_version | none | Version of the GCC compiler used to compile the Valkey server |
| process_id | none | PID of the server process |
| process_supervised | none | Supervised system ("upstart", "systemd", "unknown" or "no") |
| run_id | none | Random value identifying the Valkey server (to be used by Sentinel and Cluster) |
| tcp_port | none | TCP/IP listen port |
| server_time_usec | none | Epoch-based system time with microsecond precision |
| uptime_in_seconds | none | Number of seconds since Valkey server start |
| uptime_in_days | none | Same value expressed in days |
| hz | none | The server's current frequency setting |
| configured_hz | none | The server's configured frequency setting |
| lru_clock | none | Clock incrementing every minute, for LRU management |
| executable | none | The path to the server's executable |
| config_file | none | The path to the config file |
| io_threads_active | none | Flag indicating if I/O threads are active |
| shutdown_in_milliseconds | none | The maximum time remaining for replicas to catch up the replication before completing the shutdown sequence. This field is only present during shutdown. |
Metric set:clients
| Metric name | Metric unit | Metric help description |
|---|---|---|
| connected_clients | none | Number of client connections (excluding connections from replicas) |
| cluster_connections | none | An approximation of the number of sockets used by the cluster's bus |
| maxclients | none | The value of the maxclients configuration directive. This is the upper limit for the sum of connected_clients, connected_slaves and cluster_connections. |
| client_recent_max_input_buffer | byte | Biggest input buffer among current client connections |
| client_recent_max_output_buffer | byte | Biggest output buffer among current client connections |
| blocked_clients | none | Number of clients pending on a blocking call (BLPOP, BRPOP, BRPOPLPUSH, BLMOVE, BZPOPMIN, BZPOPMAX) |
| tracking_clients | none | Number of clients being tracked (CLIENT TRACKING) |
| clients_in_timeout_table | none | Number of clients in the clients timeout table |
Metric set:memory
| Metric name | Metric unit | Metric help description |
|---|---|---|
| used_memory | byte | Total number of bytes allocated by Valkey using its allocator (either standard libc, jemalloc, or an alternative allocator such as tcmalloc) |
| used_memory_human | GB/MB/KB | Human readable representation of previous value |
| used_memory_rss | byte | Number of bytes that Valkey allocated as seen by the operating system (a.k.a resident set size). This is the number reported by tools such as top(1) and ps(1) |
| used_memory_rss_human | GB/MB/KB | Human readable representation of previous value值 |
| used_memory_peak | byte | Peak memory consumed by Valkey (in bytes) |
| used_memory_peak_human | GB/MB/KB | Human readable representation of previous value |
| used_memory_peak_perc | none | The percentage of used_memory_peak out of used_memory |
| used_memory_overhead | byte | The sum in bytes of all overheads that the server allocated for managing its internal data structures |
| used_memory_startup | byte | Initial amount of memory consumed by Valkey at startup in bytes |
| used_memory_dataset | byte | The size in bytes of the dataset (used_memory_overhead subtracted from used_memory) |
| used_memory_dataset_perc | none | The percentage of used_memory_dataset out of the net memory usage (used_memory minus used_memory_startup) |
| allocator_allocated | byte | Total bytes allocated form the allocator, including internal-fragmentation. Normally the same as used_memory. |
| allocator_active | byte | Total bytes in the allocator active pages, this includes external-fragmentation. |
| allocator_resident | byte | Total bytes resident (RSS) in the allocator, this includes pages that can be released to the OS (by MEMORY PURGE, or just waiting). |
| total_system_memory | byte | The total amount of memory that the Valkey host has |
| total_system_memory_human | GB/MB/KB | Human readable representation of previous value |
| used_memory_lua | byte | Number of bytes used by the Lua engine for EVAL scripts. Deprecated in Valkey 7.0, renamed to used_memory_vm_eval |
| used_memory_lua_human | KB | Human readable representation of previous value. Deprecated in Valkey 7.0 |
| used_memory_scripts | byte | used_memory_scripts_eval + used_memory_functions (part of used_memory). Added in Valkey 7.0 |
| used_memory_scripts_human | GB/MB/KB | Human readable representation of previous value |
| number_of_cached_scripts | none | The number of EVAL scripts cached by the server. Added in Valkey 7.0 |
| maxmemory | byte | The value of the maxmemory configuration directive |
| maxmemory_human | GB/MB/KB | Human readable representation of previous value |
| maxmemory_policy | none | The value of the maxmemory-policy configuration directive |
| allocator_frag_ratio | none | Ratio between allocator_active and allocator_allocated. This is the true (external) fragmentation metric (not mem_fragmentation_ratio). |
| allocator_frag_bytes | byte | Delta between allocator_active and allocator_allocated. See note about mem_fragmentation_bytes. |
| allocator_rss_ratio | Ratio between allocator_resident and allocator_active. | |
| allocator_rss_bytes | byte | Delta between allocator_resident and allocator_active |
| rss_overhead_ratio | none | Ratio between used_memory_rss (the process RSS) and allocator_resident. This includes RSS overheads that are not allocator or heap related. |
| rss_overhead_bytes | byte | Delta between used_memory_rss (the process RSS) and allocator_resident |
| mem_fragmentation_ratio | none | Ratio between used_memory_rss and used_memory. Note that this doesn't only includes fragmentation, but also other process overheads (see the allocator_* metrics), and also overheads like code, shared libraries, stack, etc. |
| mem_fragmentation_bytes | byte | Delta between used_memory_rss and used_memory. Note that when the total fragmentation bytes is low (few megabytes), a high ratio (e.g. 1.5 and above) is not an indication of an issue. |
| mem_not_counted_for_evict | byte | Used memory that's not counted for key eviction. This is basically transient replica and AOF buffers. |
| mem_replication_backlog | byte | Memory used by replication backlog |
| mem_clients_slaves | none | Memory used by replica clients - Starting Valkey 7.0, replica buffers share memory with the replication backlog, so this field can show 0 when replicas don't trigger an increase of memory usage. |
| mem_clients_normal | none | Memory used by normal clients |
| mem_aof_buffer | none | Transient memory used for AOF and AOF rewrite buffers |
| mem_allocator | none | Memory allocator, chosen at compile time. |
| active_defrag_running | none | When activedefrag is enabled, this indicates whether defragmentation is currently active, and the CPU percentage it intends to utilize. |
| lazyfree_pending_objects | none | The number of objects waiting to be freed (as a result of calling UNLINK, or FLUSHDB and FLUSHALL with the ASYNC option) |
| lazyfreed_objects | none | The number of objects that have been lazy freed. |
Metric set:persistence
| Metric name | Metric unit | Metric help description |
|---|---|---|
| loading | none | Flag indicating if the load of a dump file is on-going |
| current_cow_size | byte | The size in bytes of copy-on-write memory while a child fork is running |
| current_cow_size_age | second | The age, in seconds, of the current_cow_size value. |
| current_fork_perc | none | The percentage of progress of the current fork process. For AOF and RDB forks it is the percentage of current_save_keys_processed out of |
| current_save_keys_processed | none | Number of keys processed by the current save operation |
| current_save_keys_total | none | Number of keys at the beginning of the current save operation |
| rdb_changes_since_last_save | none | Number of changes since the last dump |
| rdb_bgsave_in_progress | none | Flag indicating a RDB save is on-going |
| rdb_last_save_time | second | Epoch-based timestamp of last successful RDB save |
| rdb_last_bgsave_status | none | Status of the last RDB save operation |
| rdb_last_bgsave_time_sec | second | Duration of the last RDB save operation in seconds |
| rdb_current_bgsave_time_sec | none | Duration of the on-going RDB save operation if any |
| rdb_last_cow_size | none | The size in bytes of copy-on-write memory during the last RDB save operation |
| aof_enabled | none | Flag indicating AOF logging is activated |
| aof_rewrite_in_progress | none | Flag indicating a AOF rewrite operation is on-going |
| aof_rewrite_scheduled | none | Flag indicating an AOF rewrite operation will be scheduled once the on-going RDB save is complete. |
| aof_last_rewrite_time_sec | none | Duration of the last AOF rewrite operation in seconds |
| aof_current_rewrite_time_sec | second | Duration of the on-going AOF rewrite operation if any |
| aof_last_bgrewrite_status | none | Status of the last AOF rewrite operation |
| aof_last_write_status | none | Status of the last write operation to the AOF |
| aof_last_cow_size | none | The size in bytes of copy-on-write memory during the last AOF rewrite operation |
| module_fork_in_progress | none | Flag indicating a module fork is on-going |
| module_fork_last_cow_size | none | The size in bytes of copy-on-write memory during the last module fork operation |