一個命令讓redis服務端所有資訊無所遁形~(收藏吃灰系列)

隱風發表於2022-02-28

1、info命令作用

在redis客戶端執行INFO 命令以便於計算機解析和人工閱讀的簡單格式返回有關redis服務端的所有資訊和統計資料。

可選引數可用於選擇特定的資訊部分:

  1. Server 伺服器基本資訊
  2. Clients 客戶端連線資訊
  3. Memory記憶體資訊
  4. Persistence持久化相關
  5. Stats 試試監控資訊
  6. Replication主從複製相關資訊
  7. CPU資訊
  8. Cluster叢集資訊
  9. Keyspace鍵儲存空間資訊

請注意,根據 Redis 的版本,有些欄位已被新增或刪除。因此,強大的客戶端應該跳過未知屬性來解析此命令的結果,並優雅地處理缺少的欄位

#在客戶端輸入會返回以下資訊
info

image-20220228213923585

2、Server 伺服器基本資訊

# redis版本號
redis_version:5.0.3
# redis原始碼包git資訊
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:da69b07a37c06dc8
# 執行模式(“獨立”,“哨兵”或“叢集”)
redis_mode:standalone
# 作業系統資訊
os:Linux 3.10.0-514.el7.x86_64 x86_64
# 64位架構
arch_bits:64
# 編譯執行的底層依賴資訊
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:4.8.5
# 程式ID
process_id:10040
# 例項執行的隨機值識別符號(sentinel和叢集中有用)
run_id:df903681f11f712523e0615cd4c7e45afbf500b6
# 埠
tcp_port:6379
# 執行時長
uptime_in_seconds:42593
# 執行時長(天)
uptime_in_days:0
# 伺服器的頻率設定
hz:10
configured_hz:10
# LRU運作的時鐘(分鐘為單位)
lru_clock:7473903
# 可執行檔案
executable:/usr/local/redis/./bin/redis-server
# 當前讀取的配置
config_file:/usr/local/redis/conf/redis_6379.conf

3、Clients 客戶端連線資訊

# 連線數
connected_clients:1
# 客戶端輸入緩衝區
client_recent_max_input_buffer:2
# 客戶端輸出緩衝區
client_recent_max_output_buffer:0
# 阻塞的客戶端數量(卡住了就看看這個)
blocked_clients:0

4、Memory記憶體資訊

# 記憶體總量(位元組數)
used_memory:854280
# 記憶體總量(更方便檢視的格式)
used_memory_human:834.26K
# 已分配的記憶體總量
used_memory_rss:8388608
used_memory_rss_human:8.00M
# 記憶體消耗峰值
used_memory_peak:854280
used_memory_peak_human:834.26K
# 峰值記憶體佔用的記憶體百分比
used_memory_peak_perc:100.15%
# 內部機制所需的記憶體
used_memory_overhead:840838
# 啟動時消耗的記憶體
used_memory_startup:791032
# 資料佔用的記憶體大小
used_memory_dataset:13442
# 資料佔用的記憶體大小百分比
used_memory_dataset_perc:21.25%
# 未說明(從名字可以看出是記憶體申請的資訊)
allocator_allocated:844856
allocator_active:1011712
allocator_resident:3665920
# 整個系統記憶體
total_system_memory:1041199104
total_system_memory_human:992.96M
# Lua指令碼儲存佔用的記憶體
used_memory_lua:37888
used_memory_lua_human:37.00K
# 未說明
used_memory_scripts:0
used_memory_scripts_human:0B
number_of_cached_scripts:0
# 最大記憶體配置
maxmemory:0
maxmemory_human:0B
# 記憶體管理策略
maxmemory_policy:noeviction
# 官方未說明
allocator_frag_ratio:1.20
allocator_frag_bytes:166856
allocator_rss_ratio:3.62
allocator_rss_bytes:2654208
rss_overhead_ratio:2.29
rss_overhead_bytes:4722688
mem_fragmentation_ratio:10.33
mem_fragmentation_bytes:7576576
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:49694
mem_aof_buffer:0
# 記憶體分配器,在編譯時選擇
mem_allocator:jemalloc-5.1.0
# 碎片整理是否存於活動狀態
active_defrag_running:0
# 等待被釋放的物件數量
lazyfree_pending_objects:0

5、Persistence持久化相關

# 表示Redis是否正在載入備份檔案的標誌
loading:0
# 從最近一次轉儲至今,RDB的修改次數
rdb_changes_since_last_save:2
# 表示Redis正在儲存RDB的標誌
rdb_bgsave_in_progress:0
# 上次RDB成功儲存的時間戳
rdb_last_save_time:1550935182
# 最後一次RDB儲存操作的狀態
rdb_last_bgsave_status:ok
# 最後一次RDB儲存操作的持續時間(以秒為單位)
rdb_last_bgsave_time_sec:-1
# 正在進行的RDB儲存操作的持續時間(如果有)
rdb_current_bgsave_time_sec:-1
# 上次RBD儲存操作期間寫時複製分配的位元組大小
rdb_last_cow_size:0
# 表示AOF記錄的標誌已啟用
aof_enabled:1
# 表示AOF重寫操作的標誌正在進行中
aof_rewrite_in_progress:0
# 一旦正在進行的RDB儲存完成,將指定表示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_last_cow_size:0
# AOF當前檔案大小
aof_current_size:77
# 最新啟動或重寫時的AOF檔案大小
aof_base_size:77
# 一旦正在進行的RDB儲存完成,將指定表示AOF重寫操作的標誌。
aof_pending_rewrite:0
# AOF緩衝區的大小
aof_buffer_length:0
# AOF重寫緩衝區的大小
aof_rewrite_buffer_length:0
# fsync掛起作業數
aof_pending_bio_fsync:0
# 延遲fsync計數器
aof_delayed_fsync:0
# 如果資料恢復中可能會有這些值
# loading_start_time:載入操作開始的時間戳
# loading_total_bytes:檔案總大小
# loading_loaded_bytes:已載入的位元組數
# loading_loaded_perc:相同的值表示為百分比
# loading_eta_seconds:ETA在幾秒鐘內完成負載

6、Stats 試試監控資訊

# Redis伺服器接受的連線總數
total_connections_received:1
# Redis伺服器處理的命令總數
total_commands_processed:1
# 每秒鐘處理的命令數量
instantaneous_ops_per_sec:0
# 通過網路接收的資料總量,以位元組為單位
total_net_input_bytes:34
# 通過網路傳送的資料總量,以位元組為單位
total_net_output_bytes:7
# 每秒鐘接收資料的速率,以kbps為單位
instantaneous_input_kbps:0.00
# 每秒鐘傳送資料的速率,以kbps為單位
instantaneous_output_kbps:0.00
# Redis伺服器由於maxclients限制而拒絕的連線數量
rejected_connections:0
# Redis主機和從機進行完全同步的次數
sync_full:0
# Redis伺服器接受PSYNC請求的次數
sync_partial_ok:0
# Redis伺服器拒絕PSYNC請求的次數
sync_partial_err:0
# 鍵過期事件的總數
expired_keys:0
expired_stale_perc:0.00
expired_time_cap_reached_count:0
# 由於maxmemory限制,而被回收記憶體的鍵的總數
evicted_keys:0
# 在主字典中成功查詢到鍵的次數
keyspace_hits:1
# 在主字典中未能成功查詢到鍵的次數
keyspace_misses:0
# 釋出/訂閱頻道的總數量
pubsub_channels:0
# 客戶端訂閱的釋出/訂閱模式的總數量
pubsub_patterns:0
# 最近一次fork操作消耗的時間,以微秒為單位
latest_fork_usec:0
# 遷移已快取的套接字的數量
migrate_cached_sockets:0
# 為實現key過期而跟蹤的key數數量(僅適用於可寫副本)
slave_expires_tracked_keys:0
# 碎片整理過程執行的值重新分配的數量
active_defrag_hits:0
# 碎片整理過程啟動的中止值重新分配數
active_defrag_misses:0
# 碎片整理的key數量
active_defrag_key_hits:0
# 碎片整理過程跳過的key數量
active_defrag_key_misses:0

7、Replication主從複製相關資訊

# 角色 master或者 slave
role:master
# 已連線的Redis從機的數量
connected_slaves:0
# 主從複製過程中master的標識id
master_replid:6ea01bd968c7f14cb6de138462ddaf11930a4269
master_replid2:0000000000000000000000000000000000000000
# 全域性的複製偏移量
master_repl_offset:0
second_repl_offset:-1
# 表示Redis伺服器是否為部分同步開啟複製備份日誌
repl_backlog_active:0
# 備份日誌的迴圈緩衝區的大小
repl_backlog_size:1048576
# 備份日誌緩衝區中的首個位元組的複製偏移量
repl_backlog_first_byte_offset:0
# 備份日誌的實際資料長度
repl_backlog_histlen:0
# 主從複製情況下可能會有的一些額外資訊
# master_host:Redis主機的主機名或IP地址
# master_port:Redis主機監聽的TCP埠
# master_link_status:鏈路狀態(連線/斷開
# master_last_io_seconds_ago:最近一次和Redis主機互動至今的消耗時間,以秒為單位
# master_sync_in_progress:表示Redis主機正在將資料同步至從機
# master_sync_left_bytes:在同步完成之前,還剩餘的資料總量,以位元組為單位
# master_sync_last_io_seconds_ago:在一次SYNC操作期間,最近一次傳輸資料的I/O操作至今的消耗時間,以秒為單位
# master_link_down_since_seconds:從鏈路斷開至今的時間,以秒為單位

8、CPU資訊

# 伺服器耗費的系統 CPU
used_cpu_sys:26.932586
# 伺服器耗費的使用者 CPU
used_cpu_user:36.964424
# 後臺程式耗費的系統 CPU
used_cpu_sys_children:0.000000
# 後臺程式耗費的使用者 CPU
used_cpu_user_children:0.000000

9、Cluster叢集資訊

# 一個標誌值,記錄叢集功能是否已經開啟
cluster_enabled:0

10、Keyspace鍵儲存空間資訊

# 資料庫的key數量、處於有效時間內的key數量,過期key數量
db0:keys=2,expires=0,avg_ttl=0

相關文章