Redis®*: Prometheus

Prometheus 指标

👋 欢迎来到 Stackhero 文档!

Stackhero 提供现成的 Redis 云 解决方案,具有众多优势,包括:

  • 包含 Redis Commander 网页界面
  • 无限消息大小和传输。
  • 只需点击即可轻松更新
  • 专用私有 VM提供的最佳性能和强大安全性

节省时间简化生活:只需 5 分钟即可试用 Stackhero 的 Redis 云托管 解决方案!

使用 Stackhero,您可以轻松检索每个服务的 Prometheus 格式指标。本指南详细描述了每个可用的 Stackhero for Redis 指标。请注意,返回给 Prometheus 的所有指标名称都以 redis_ 为前缀。

  • shutdown_in_milliseconds: 剩余的最大时间,用于副本赶上复制以完成关闭序列。此字段仅在关闭期间存在。

  • connected_clients: 客户端连接数(不包括来自副本的连接)。

  • cluster_connections: 集群总线使用的套接字数量的近似值。

  • maxclients: maxclients 配置指令的值。这是 connected_clients、connected_slaves 和 cluster_connections 的总和的上限。

  • client_recent_max_input_buffer: 当前客户端连接中最大的输入缓冲区。

  • client_recent_max_output_buffer: 当前客户端连接中最大的输出缓冲区。

  • blocked_clients: 等待阻塞调用的客户端数量(如 BLPOP、BRPOP、BRPOPLPUSH、BLMOVE、BZPOPMIN、BZPOPMAX)。

  • tracking_clients: 被跟踪的客户端数量(CLIENT TRACKING)。

  • clients_in_timeout_table: 客户端超时表中的客户端数量。

  • used_memory: Redis 使用其分配器(标准 libc、jemalloc 或其他分配器如 tcmalloc)分配的总字节数。

  • used_memory_rss: 操作系统看到的 Redis 分配的字节数(即常驻集大小)。

  • used_memory_peak: Redis 消耗的峰值内存。

  • used_memory_peak_perc: used_memory_peak 占 used_memory 的百分比。

  • used_memory_overhead: 服务器为管理其内部数据结构分配的所有开销的字节总和。

  • used_memory_startup: Redis 启动时消耗的初始内存量(以字节为单位)。

  • used_memory_dataset: 数据集的大小(以字节为单位)(used_memory_overhead 从 used_memory 中减去)。

  • used_memory_dataset_perc: used_memory_dataset 占净内存使用量的百分比(used_memory 减去 used_memory_startup)。

  • total_system_memory: Redis 主机拥有的总内存量。

  • used_memory_lua: Lua 引擎使用的字节数。

  • used_memory_scripts: 缓存的 Lua 脚本使用的字节数。

  • maxmemory: maxmemory 配置指令的值。

  • maxmemory_policy: maxmemory-policy 配置指令的值。

  • mem_fragmentation_ratio: used_memory_rss 与 used_memory 之间的比率。请注意,这不仅包括碎片,还包括其他进程开销(参见 allocator_* 指标),以及代码、共享库、堆栈等开销。

  • mem_fragmentation_bytes: used_memory_rss 与 used_memory 之间的差值。请注意,当总碎片字节数较低(几兆字节)时,高比率(例如 1.5 及以上)并不表示问题。

  • allocator_frag_ratio: allocator_active 与 allocator_allocated 之间的比率。这是真正的(外部)碎片指标(不是 mem_fragmentation_ratio)。

  • allocator_frag_bytes: allocator_active 与 allocator_allocated 之间的差值。请参阅关于 mem_fragmentation_bytes 的说明。

  • allocator_rss_ratio: allocator_resident 与 allocator_active 之间的比率。这通常表示分配器可以并可能很快释放回操作系统的页面。

  • allocator_rss_bytes: allocator_resident 与 allocator_active 之间的差值。

  • rss_overhead_ratio: used_memory_rss(进程 RSS)与 allocator_resident 之间的比率。这包括与分配器或堆无关的 RSS 开销。

  • rss_overhead_bytes: used_memory_rss(进程 RSS)与 allocator_resident 之间的差值。

  • allocator_allocated: 从分配器分配的总字节数,包括内部碎片。通常与 used_memory 相同。

  • allocator_active: 分配器活动页面中的总字节数,包括外部碎片。

  • allocator_resident: 分配器中常驻的总字节数(RSS),包括可以释放给操作系统的页面(通过 MEMORY PURGE,或仅等待)。

  • mem_not_counted_for_evict: 未计入键逐出的使用内存。这基本上是临时副本和 AOF 缓冲区。

  • mem_clients_slaves: 副本客户端使用的内存。副本缓冲区与复制积压共享内存,因此当副本不触发内存使用增加时,此字段可以显示为 0。

  • mem_clients_normal: 普通客户端使用的内存。

  • mem_cluster_links: 在启用集群模式时,集群总线上的对等链接使用的内存。

  • mem_aof_buffer: 用于 AOF 和 AOF 重写缓冲区的临时内存。

  • mem_replication_backlog: 复制积压使用的内存。

  • mem_total_replication_buffers: 复制缓冲区消耗的总内存。

  • mem_allocator: 编译时选择的内存分配器。

  • active_defrag_running: 当启用 activedefrag 时,这表示碎片整理当前是否处于活动状态,以及它打算使用的 CPU 百分比。

  • lazyfree_pending_objects: 等待释放的对象数量(由于调用 UNLINK,或使用 ASYNC 选项的 FLUSHDB 和 FLUSHALL)。

  • lazyfreed_objects: 已被延迟释放的对象数量。

  • loading: 指示是否正在加载转储文件的标志。

  • async_loading: 当前异步加载复制数据集,同时提供旧数据。这意味着启用了 repl-diskless-load 并设置为 swapdb。

  • current_cow_peak: 子进程运行时写时复制内存的峰值大小(以字节为单位)。

  • current_cow_size: 子进程运行时写时复制内存的大小(以字节为单位)。

  • current_cow_size_age: current_cow_size 值的年龄(以秒为单位)。

  • current_fork_perc: 当前 fork 进程的进度百分比。对于 AOF 和 RDB fork,它是 current_save_keys_processed 占 current_save_keys_total 的百分比。

  • current_save_keys_processed: 当前保存操作处理的键数。

  • current_save_keys_total: 当前保存操作开始时的键数。

  • rdb_bgsave_in_progress: 指示 RDB 保存正在进行的标志。

  • rdb_last_save_time: 上次成功 RDB 保存的基于纪元的时间戳。

  • rdb_last_bgsave_status: 上次 RDB 保存操作的状态。

  • rdb_last_bgsave_time_sec: 上次 RDB 保存操作的持续时间(以秒为单位)。

  • rdb_current_bgsave_time_sec: 当前 RDB 保存操作的持续时间(如果有)。

  • rdb_last_cow_size: 上次 RDB 保存操作期间写时复制内存的大小(以字节为单位)。

  • rdb_last_load_keys_expired: 上次 RDB 加载期间删除的易失性键数。

  • rdb_last_load_keys_loaded: 上次 RDB 加载期间加载的键数。

  • aof_enabled: 指示 AOF 日志记录已激活的标志。

  • aof_rewrite_in_progress: 指示 AOF 重写操作正在进行的标志。

  • aof_rewrite_scheduled: 指示一旦正在进行的 RDB 保存完成,将安排 AOF 重写操作的标志。

  • aof_last_rewrite_time_sec: 上次 AOF 重写操作的持续时间(以秒为单位)。

  • aof_current_rewrite_time_sec: 当前 AOF 重写操作的持续时间(如果有)。

  • aof_last_bgrewrite_status: 上次 AOF 重写操作的状态。

  • aof_last_write_status: 上次写入 AOF 操作的状态。

  • aof_last_cow_size: 上次 AOF 重写操作期间写时复制内存的大小(以字节为单位)。

  • module_fork_in_progress: 指示模块 fork 正在进行的标志。

  • module_fork_last_cow_size: 上次模块 fork 操作期间写时复制内存的大小(以字节为单位)。

  • aof_current_size: AOF 当前文件大小。

  • aof_base_size: 最新启动或重写时的 AOF 文件大小。

  • aof_pending_rewrite: 指示一旦正在进行的 RDB 保存完成,将安排 AOF 重写操作的标志。

  • aof_buffer_length: AOF 缓冲区的大小。

  • aof_pending_bio_fsync: 后台 I/O 队列中待处理的 fsync 作业数。

  • aof_delayed_fsync: 延迟 fsync 计数器。

  • loading_start_time: 加载操作开始的基于纪元的时间戳。

  • loading_total_bytes: 文件总大小。

  • loading_rdb_used_mem: 生成 RDB 文件时服务器的内存使用情况。

  • loading_loaded_bytes: 已加载的字节数。

  • loading_loaded_perc: 相同值的百分比表示。

  • loading_eta_seconds: 加载完成的预计时间(以秒为单位)。

  • instantaneous_ops_per_sec: 每秒处理的命令数。

  • instantaneous_input_kbps: 网络每秒读取速率(以 KB/秒为单位)。

  • instantaneous_output_kbps: 网络每秒写入速率(以 KB/秒为单位)。

  • instantaneous_input_repl_kbps: 用于复制的网络每秒读取速率(以 KB/秒为单位)。

  • instantaneous_output_repl_kbps: 用于复制的网络每秒写入速率(以 KB/秒为单位)。

  • sync_full: 与副本的完全重新同步次数。

  • sync_partial_ok: 接受的部分重新同步请求数。

  • sync_partial_err: 拒绝的部分重新同步请求数。

  • expired_stale_perc: 可能过期的键的百分比。

  • expired_time_cap_reached_count: 活动过期周期过早停止的次数。

  • expire_cycle_cpu_milliseconds: 活动过期周期花费的累计时间。

  • evicted_clients: 由于 maxmemory-clients 限制而被驱逐的客户端数量。

  • pubsub_channels: 具有客户端订阅的全局 pub/sub 通道数。

  • pubsub_patterns: 具有客户端订阅的全局 pub/sub 模式数。

  • pubsubshard_channels: 具有客户端订阅的全局 pub/sub 分片通道数。

  • latest_fork_usec: 最新 fork 操作的持续时间(以微秒为单位)。

  • migrate_cached_sockets: 为 MIGRATE 目的打开的套接字数量。

  • slave_expires_tracked_keys: 跟踪过期目的的键数(仅适用于可写副本)。

  • active_defrag_hits: 活动碎片整理过程执行的值重新分配次数。

  • active_defrag_misses: 活动碎片整理过程开始的已中止值重新分配次数。

  • active_defrag_key_hits: 被积极碎片整理的键数。

  • active_defrag_key_misses: 被活动碎片整理过程跳过的键数。

  • tracking_total_keys: 服务器跟踪的键数。

  • tracking_total_items: 被跟踪的项目数,即每个键的客户端数量之和。

  • tracking_total_prefixes: 服务器前缀表中跟踪的前缀数(仅适用于广播模式)。

  • role: 如果实例不是任何人的副本,则值为 "master",如果实例是某个主实例的副本,则值为 "slave"。请注意,副本可以是另一个副本的主(链式复制)。

  • master_failover_state: 正在进行的故障转移的状态(如果有)。

  • master_replid: Redis 服务器的复制 ID。

  • master_replid2: 次要复制 ID,用于故障转移后的 PSYNC。

  • master_repl_offset: 服务器的当前复制偏移量。

  • second_repl_offset: 接受复制 ID 的偏移量。

  • repl_backlog_active: 指示复制积压活动的标志。

  • repl_backlog_size: 复制积压缓冲区的总大小(以字节为单位)。

  • repl_backlog_first_byte_offset: 复制积压缓冲区的主偏移量。

  • repl_backlog_histlen: 复制积压缓冲区中数据的大小(以字节为单位)。

  • master_host: 主机或主机的 IP 地址。

  • master_port: 主机监听的 TCP 端口。

  • master_link_status: 链接状态(上/下)。

  • master_sync_in_progress: 指示主机正在与副本同步。

  • slave_read_repl_offset: 副本实例的读取复制偏移量。

  • slave_repl_offset: 副本实例的复制偏移量。

  • slave_priority: 实例作为故障转移候选者的优先级。

  • slave_read_only: 指示副本是否为只读的标志。

  • replica_announced: 指示副本是否由 Sentinel 宣布的标志。

  • master_sync_total_bytes: 需要传输的总字节数。当大小未知时(例如,使用 repl-diskless-sync 配置指令时),可能为 0。

  • master_sync_read_bytes: 已传输的字节数。

  • master_sync_left_bytes: 同步完成前剩余的字节数(当 master_sync_total_bytes 为 0 时可能为负数)。

  • master_sync_perc: master_sync_read_bytes 占 master_sync_total_bytes 的百分比,或在 master_sync_total_bytes 为 0 时使用 loading_rdb_used_mem 的近似值。

  • connected_slaves: 已连接的副本数量。

  • min_slaves_good_slaves: 当前被认为良好的副本数量。

  • current_eviction_exceeded_time: 自 used_memory 上次超过 maxmemory 以来经过的时间(以毫秒为单位)。

  • current_active_defrag_time: 自内存碎片上次超过限制以来经过的时间(以毫秒为单位)。

  • master_last_io_seconds_ago: 自上次与主机交互以来的秒数。

  • master_sync_last_io_seconds_ago: SYNC 操作期间上次传输 I/O 以来的秒数。

  • master_link_down_since_seconds: 链接断开以来的秒数。

  • total_eviction_exceeded_time: 自服务器启动以来 used_memory 大于 maxmemory 的总时间(以毫秒为单位)。

  • rdb_changes_since_last_save: 自上次转储以来的更改次数。

  • total_connections_received: 服务器接受的总连接数。

  • total_commands_processed: 服务器处理的总命令数。

  • total_net_input_bytes: 从网络读取的总字节数。

  • total_net_output_bytes: 写入网络的总字节数。

  • total_net_repl_input_bytes: 为复制目的从网络读取的总字节数。

  • total_net_repl_output_bytes: 为复制目的写入网络的总字节数。

  • rejected_connections: 因 maxclients 限制而被拒绝的连接数。

  • expired_keys: 键过期事件的总数。

  • evicted_keys: 由于 maxmemory 限制而被驱逐的键数。

  • keyspace_hits: 主字典中键查找成功的次数。

  • keyspace_misses: 主字典中键查找失败的次数。

  • used_cpu_sys: Redis 服务器消耗的系统 CPU,这是服务器进程所有线程(主线程和后台线程)消耗的系统 CPU 的总和。

  • used_cpu_user: Redis 服务器消耗的用户 CPU,这是服务器进程所有线程(主线程和后台线程)消耗的用户 CPU 的总和。

  • used_cpu_sys_children: 后台进程消耗的系统 CPU。

  • used_cpu_user_children: 后台进程消耗的用户 CPU。

  • used_cpu_sys_main_thread: Redis 服务器主线程消耗的系统 CPU。

  • used_cpu_user_main_thread: Redis 服务器主线程消耗的用户 CPU。

  • unexpected_error_replies: 意外错误回复的数量,这些是来自 AOF 加载或复制的错误类型。

  • total_error_replies: 发出的错误回复总数,即被拒绝的命令(命令执行前的错误)和失败的命令(命令执行中的错误)的总和。

  • total_reads_processed: 处理的读取事件总数。

  • total_writes_processed: 处理的写入事件总数。

  • io_threaded_reads_processed: 主线程和 I/O 线程处理的读取事件数。

  • io_threaded_writes_processed: 主线程和 I/O 线程处理的写入事件数。

  • dump_payload_sanitizations: 转储有效负载深度完整性验证的总数(参见 sanitize-dump-payload 配置)。

  • total_forks: 自服务器启动以来的 fork 操作总数。

  • total_active_defrag_time: 内存碎片超过限制的总时间(以毫秒为单位)。

  • aof_rewrites: 自启动以来执行的 AOF 重写次数。

  • rdb_saves: 自启动以来执行的 RDB 快照次数。