1、slowlog get N
用于监控超过一定时间的慢查询。
127.0.0.1:6379>slowlog get 128 // 只存储128条满日志,多了会顶掉
1) (integer) 77 // 编号 2) (integer) 1509876448 // 时间戳 3) (integer) 28599 // 耗时,微妙 4) 1) "info" // 命令 2) "loglevel" // 操作key
2、redis-cli -h <ip> -p <port> monitor
控host为ip,端口为port,redis的连接及读写操作
redis-cli -h localhost -p 6379 monitor OK 1516537056.596104 [0 10.159.37.151:47869] "PING" 1516537056.596442 [0 10.159.37.151:47869] "LLEN" "00000:RedisListQueue:XT-IMAGE-CACHE-UPDATER" 1516537057.660408 [0 10.159.37.151:63487] "PING" 1516537057.660464 [0 10.159.37.151:56679] "PING" 1516537057.660714 [0 10.159.37.151:56679] "LLEN" "00000:RedisListQueue:XT-PUBACCT-ASYNC-CALLER" 1516537057.660749 [0 10.159.37.151:63487] "LLEN" "00000:RedisListQueue:XT-USER-GROUP-HEADER-UPDATER"
3、ping
判断客户端和服务器连接是否正常
4、redis-cli -h <ip> -p <port> info
# Server redis_version:2.8.8 # Redis 的版本 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:bf5d1747be5380f redis_mode:standalone os:Linux 2.6.32-220.7.1.el6.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll gcc_version:4.4.7 #gcc版本 process_id:49324 # 当前 Redis 服务器进程id run_id:bbd7b17efcf108fdde285d8987e50392f6a38f48 tcp_port:6379 uptime_in_seconds:1739082 # 运行时间(秒) uptime_in_days:20 # 运行时间(天) hz:10 lru_clock:1734729 config_file:/home/s/apps/RedisMulti_video_so/conf/zzz.conf # Clients connected_clients:1 #连接的客户端数量 client_longest_output_list:0 client_biggest_input_buf:0 blocked_clients:0 # Memory used_memory:821848 #Redis分配的内存总量 used_memory_human:802.59K used_memory_rss:85532672 #Redis分配的内存总量(包括内存碎片) used_memory_peak:178987632 used_memory_peak_human:170.70M #Redis所用内存的高峰值 used_memory_lua:33792 mem_fragmentation_ratio:104.07 #内存碎片比率 mem_allocator:tcmalloc-2.0 # Persistence loading:0 rdb_changes_since_last_save:0 #上次保存数据库之后,执行命令的次数 rdb_bgsave_in_progress:0 #后台进行中的 save 操作的数量 rdb_last_save_time:1410848505 #最后一次成功保存的时间点,以 UNIX 时间戳格式显示 rdb_last_bgsave_status:ok rdb_last_bgsave_time_sec:0 rdb_current_bgsave_time_sec:-1 aof_enabled:0 #redis是否开启了aof aof_rewrite_in_progress:0 aof_rewrite_scheduled:0 aof_last_rewrite_time_sec:-1 aof_current_rewrite_time_sec:-1 aof_last_bgrewrite_status:ok aof_last_write_status:ok # Stats total_connections_received:5705 #运行以来连接过的客户端的总数量 total_commands_processed:204013 # 运行以来执行过的命令的总数量 instantaneous_ops_per_sec:0 rejected_connections:0 sync_full:0 sync_partial_ok:0 sync_partial_err:0 expired_keys:34401 #运行以来过期的 key 的数量 evicted_keys:0 #运行以来删除过的key的数量 keyspace_hits:2129 #命中key 的次数 keyspace_misses:3148 #没命中key 的次数 pubsub_channels:0 #当前使用中的频道数量 pubsub_patterns:0 #当前使用中的模式数量 latest_fork_usec:4391 # Replication role:master #当前实例的角色master还是slave connected_slaves:0 master_repl_offset:0 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0 # CPU used_cpu_sys:1551.61 used_cpu_user:1083.37 used_cpu_sys_children:2.52 used_cpu_user_children:16.79 # Keyspace db0:keys=3,expires=0,avg_ttl=0 #各个数据库的 key 的数量,以及带有生存期的 key 的数量
5、redis-cli -p <port> --stat
实时打印出host为localhost,端口为port,redis实例的总体信息
[root@acttest03 ~]# redis-cli -p 6379 --stat ------- data ------ --------------------- load -------------------- - child - keys mem clients blocked requests connections 7772 50.19M 596 0 4543677 (+0) 15867 7772 50.19M 596 0 4543678 (+1) 15867 7772 50.19M 596 0 4543679 (+1) 15867 7772 50.19M 596 0 4543680 (+1) 15867 7772 50.19M 596 0 4543681 (+1) 15867 7772 50.19M 596 0 4543682 (+1) 15867 7772 50.19M 596 0 4543683 (+1) 15867 7772 50.19M 596 0 4543684 (+1) 15867
6、CONFIG SET watchdog-period 500
通过CONFIG SET命令设置watchdog-period参数,其值单位为毫秒,在上例中,运行时间超过500毫秒的操作将会被记录下来保存到日志文件。
注意:这个参数只能通过CONFIG SET来设置,在配置文件里是无法设置的,因为在默认情况下,是绝不推荐开启它的。对性能和稳定性都有影响。当你诊断完成后,可以再通过上面的命令,将延迟时间设置为0来关闭watchdog的功能。