Redis Server監控

Redis Server 監控

  • redis存活監控:redis本地監控使用ping,若是指定時間內返回PONG表示存活,不然redis不能響應請求,可能阻塞或死亡。
[root@localhost redis]# redis-cli -p 7001 -a 123456 ping
PONG

 

  • 鏈接個數(connected_clients):客戶端鏈接個數,若是鏈接數太高,影響redis吞吐量。
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep connected_clients
connected_clients:3

 

  • 鏈接數使用率:鏈接數使用百分比,經過(connected_clients/maxclients)計算;若是達到1,redis開始拒絕新鏈接建立,告警

 

  • 拒絕的鏈接個數(rejected_connections):redis鏈接個數達到maxclients限制,拒絕新鏈接的個數。告警
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep rejected_connections
rejected_connections:0

 

  • redis分配的內存大小(used_memory):reids真實使用內存,不包含內存碎片   
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w used_memory
used_memory:2492368

 

  •  redis進程使用內存大小(used_memory_rss):進程實際使用的物理內存大小,包含內存碎片;若是rss過大致使內部碎片大,內存資源浪費,fork的耗時和cow內存都會增大。
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w used_memory_rss
used_memory_rss:9986048

 

  •  redis內存碎片率(mem_fragmentation_ratio):表示(used_memory_rss/used_memory),碎片率過大,致使內存資源浪費,不設置告警。小於1,表示redis已使用swap分區,則告警
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w mem_fragmentation_ratio
mem_fragmentation_ratio:4.01

 

  • 鍵個數(keys):redis實例包含的鍵個數。單實例鍵個數過大,可能致使過時鍵回收不及時。
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w keys
db0:keys=2,expires=0,avg_ttl=0

 

  •  redis處理的命令數(total_commands_processed):監控採集週期內平均qps
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w total_commands_processed
total_commands_processed:709602

 

  • redis當前的qps(instantaneous_ops_per_sec):redis內部較實時的每秒執行的命令數
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w instantaneous_ops_per_sec
instantaneous_ops_per_sec:1

 

  • 請求鍵被命中次數:keyspace_hits,請求鍵未被命中次數:keyspace_misses。請求鍵的命中率使用keyspace_hits/(keysapce_hits+keysapce_misses)計算所得,命中率低於50%告警
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w keyspace_hits;
keyspace_hits:3162
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w keyspace_misses;
keyspace_misses:1577

 

  •  最近一次fork阻塞的微妙數(latest_fork_usec):最近一次fork操做阻塞redis進程的耗時
[root@localhost redis]# redis-cli -p 7001 -a 123456 info |grep -w latest_fork_usec
latest_fork_usec:809

 

redis-cli info命令中各數值的含義

redis-cli  
Server  
redis_version:3.2.12              redis版本            
redis_git_sha1:00000000       
 redis_git_dirty:0  
redis_build_id: ee1865197f3392ce  
 redis_module:cluster  運行模式(standalone,cluster)    
 os:Linux 3.10.0-514.el7.x86_64 x86_64  運行系統內核版本
 arch_bits:64  字長 
 multiplexing_api:epoll  redis使用的事件處理機制
 gcc_version:4.8.5  編譯redis時所使用的GCC版本
 process_id:4589  redis進程PID
 run_id:8800328e4eb3cbbc0ea316e6a68c4f7fd2142b9f  redis服務器的編號(用於集羣)
 tcp_port:7001  監聽的端口
 uptime_in_seconds:690926  已運行秒數
 uptime_in_days:6  已運行天數
 hz:10  用於執行後臺任務的函數被調用的頻率
 lru_clock:9876371  用於LRU管理的計時器,單位爲分鐘
 executable:/home/redis/redis7001/./redis-server  bin文件的位置
 config_file:/home/redis/redis7001/redis.conf  配置文件位置
 Clients  
 connected_clients:3  鏈接的客戶端個數
 client_longest_output_list:0  當前客戶端鏈接中最長的輸出列表
 client_biggest_input_buf:0  當前客戶端鏈接中最大的輸入緩存
 blocked_clients:0  阻塞的客戶端數
 Memory  
 used_memory:2492368  消耗的內存
 used_memory_human:2.38M  
 used_memory_rss:9986048  操做系統分配給redis的內存
 used_memory_rss_human:9.52M  
 used_memory_peak:2754864  內存消耗的峯值
 used_memory_peak_human:2.63M  
 total_system_memory:6088867840  系統總內存
 total_system_memory_human:5.67G  
 used_memory_lua:41984  Lua腳本消耗的內存
 used_memory_lua_human:41.00K  
 maxmemory:0  內存使用限制
 maxmemory_human:0B  
 maxmemory_policy:noeviction  超出內存限制時的行爲 
 mem_fragmentation_ratio:4.01  內存碎片率(=used_memory_rss/used_memory)
 mem_allocator:jemalloc-4.0.3  內存分配器
 Persistence  
 loading:0  是否正在載入持久化文件
 rdb_changes_since_last_save:0  上次持久化以來修改的健值數
 rdb_bgsave_in_progress:0  是否正在後臺保存rdb文件
 rdb_last_save_time:1569466564  上次RDB持久化的時間戳
 rdb_last_bgsave_status:ok  上次RDB持久化的結果
 rdb_last_bgsave_time_sec:0  上次建立rdb文件消耗的秒數
 rdb_current_bgsave_time_sec:-1  若是正在建立rdb文件,記錄已經消耗了多少時間
 aof_enabled:1  是否啓用AOF持久化
 aof_rewrite_in_progress:0  是否正在重寫AOF文件
 aof_rewrite_scheduled:0  是否將要重寫AOF文件
 aof_last_rewrite_time_sec:-1  上次AOF重寫消耗的時間
 aof_current_rewrite_time_sec:-1  當前AOF重寫消耗的時間
 aof_last_bgrewrite_status:ok  上次重寫AOF文件的結果
 aof_last_write_status:ok  上次寫入AOF文件的結果
 aof_current_size:23922  當前AOF文件的大小
 aof_base_size:0  上一個AOF文件的大小
 aof_pending_rewrite:0  是否有AOF重寫操做在等待RDB文件的建立
 aof_buffer_length:0  AOF寫入緩衝區大小
 aof_rewrite_buffer_length:0  AOF重寫緩衝區大小
 aof_pending_bio_fsync:0  正則I/O隊列中等待的fsync()的數量
 aof_delayed_fsync:0  被延遲執行的fsync()的數量
Stats  
 total_connections_received:165 服務器已接收的鏈接請求數
 total_commands_processed:698103 服務器已經執行的命令數量
 instantaneous_ops_per_sec:1 當前每秒執行的命令數量
 total_net_input_bytes:30648062 接收的數據包總大小
 total_net_output_bytes:4836353 發送的數據包總大小
instantaneous_input_kbps:0.05 當前下行速率
instantaneous_output_kbps:0.00 當前上行速率
rejected_connections:0 被拒絕的鏈接請求數
sync_full:1 主從同步狀態
sync_partial_ok:0  
sync_partial_err:0  
expired_keys:0 過時的鍵數
evicted_keys:0 因內存達到上限被踢出的鍵的個數
keyspace_hits:3162 命中key的次數
keyspace_misses:1577 未命中的次數
pubsub_channels:0 當前被訂閱的頻道和模式數
pubsub_patterns:0  
latest_fork_usec:809 最後一次fork()消耗的毫秒數
migrate_cached_sockets:0 爲節點遷移緩存的tcp鏈接數
 Replication  
role:master 主節點仍是從節點
connected_slaves:1 已鏈接的從節點數
slave0:ip=192.169.1.71,port=7004,state=online,offset=989069,lag=1 從節點的信息,ip,端口,數據新度等
master_repl_offset:989069 主節點數據新度
repl_backlog_active:1 是否爲主從同步啓用積壓空間
repl_backlog_size:1048576 積壓空間的大小
repl_backlog_first_byte_offset:2 積壓空間開頭的數據新度
repl_backlog_histlen:989068 積壓空間當前數據量
CPU  
 used_cpu_sys:513.30  核心態CPU時間
 used_cpu_user:257.42  用戶態CPU時間
used_cpu_sys_children:0.00 子進程用戶態CPU時間
used_cpu_user_children:0.00 子進程核心態CPU時間
 Cluster  
cluster_enabled:1 是否啓用集羣
 Keyspace  
db0:keys=2,expires=0,avg_ttl=0 各數據庫的鍵數,過時鍵數,數據庫中鍵的平均過時時間戳估測值

 

 

 

參考地址html

redis監控指標 https://www.jianshu.com/p/68485d5c7fb9git

redis info命令中各數值的含義 http://www.javashuo.com/article/p-berjpxzs-z.htmlredis

相關文章
相關標籤/搜索