SELECT info Redis


동영상 설명은 아래에 있습니다.

INFO 정보 조회

Info, cluster, client 정보를 select로 조회할 수 있습니다.
Enterprise version 7.2.5부터는 redis.conf에서 use-sql을 yes로 설정해야 사용할 수 있습니다.

INFO

LOG

CLUSTER


SERVER

Server 정보(버전, 포트, OS 등)를 조회합니다.
info server 명령과 거의 같은 정보를 조회합니다.
databases 항목이 추가되었습니다.

Example

명령>select * from info.server;
결과> 0) key|value
1) arch_bits|64
2) atomicvar_api|atomic-builtin
3) config_file|/home/charlie/ent711/9261/redis.conf
4) configured_hz|10
5) databases|16
6) enterprise_version|7.1.1
7) executable|/home/charlie/ent711/src/redis-eserver
8) gcc_version|4.8.5
9) hz|10
10) multiplexing_api|epoll
11) os|Linux 3.10.0-957.5.1.el7.x86_64 x86_64
12) process_id|15548
13) redis_mode|enterprise
14) run_id|25a68eaadfae2ef2679fe36dc1f2ab0d6e26f69a
15) tcp_port|6000

CLIENT

Client 정보(현재 접속하고 있는 클라이언트 수)를 조회합니다.
info client 명령과 같은 정보를 조회합니다.
접속 가능 클라이언트 수(maxclients) 항목이 추가되었습니다.

Example

명령>select * from info.client;
결과> 0) key|value
1) blocked_clients|0
2) client_recent_max_input_buffer|2
3) client_recent_max_output_buffer|0
4) connected_clients|1
5) maxclients|10000

CLIENTS

Client list 정보(클라이언트 ip:port, age, idle, last command 등)를 조회합니다.
Client list 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.clients;
결과> 0) key|address|fd|name|age|idle|flags|dbnum|pubsub_cha|pubsub_pat|multi|
    querybuf_used|querybuf_avail|bufpos|reply|output_mem|events|last_command
1) 4|127.0.0.1:48090|10||434|0|N|0|0|0|-1|50|32718|0|0|0|r|select

MEMORY

레디스 서버가 사용하고 있는 메모리 정보(used_memory, rss 등)를 조회합니다.
info memory 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.memory;
결과> 0) key|value
1) active_defrag_running|0
2) allocator_active|385724416
3) allocator_allocated|383973304
4) allocator_frag_bytes|1751112
5) allocator_frag_ratio|1.0
6) allocator_resident|399560704
7) allocator_rss_bytes|13836288
8) allocator_rss_ratio|1.04
9) lazyfree_pending_objects|0
  중간 생략 ...
40) used_memory_startup|1232592

PERSISTENCE

AOF(AOF 활성화 여부, 현재 AOF 파일 크기 등)와 RDB 정보를 조회합니다. 단축어: persist
info persistence 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.persistence;
결과> 0) key|value
1) aof_base_size|118845413
2) aof_buffer_length|0
3) aof_current_rewrite_time_sec|-1
4) aof_current_size|118845480
5) aof_delayed_fsync|0
6) aof_enabled|1
7) aof_last_bgrewrite_status|ok
8) aof_last_cow_size|0
9) aof_last_rewrite_time_sec|-1
10) aof_last_write_status|ok
11) aof_pending_bio_fsync|0
12) aof_pending_rewrite|0
13) aof_rewrite_buffer_length|0
14) aof_rewrite_in_progress|0
15) aof_rewrite_scheduled|0
16) loading|0
17) rdb_bgsave_in_progress|0
18) rdb_changes_since_last_save|177
19) rdb_current_bgsave_time_sec|-1
20) rdb_last_bgsave_status|ok
21) rdb_last_bgsave_time_sec|-1
22) rdb_last_cow_size|0
23) rdb_last_save_time|1609908461

AOF

AOF 정보만 조회합니다.
추가로 appendonly, appendfsync, appendfilename, aof_use_rdb_preamble 항목을 조회할 수 있습니다.

Example

명령>select * from info.aof;
결과> 0) key|value
1) aof_base_size|2304
2) aof_buffer_length|0
3) aof_current_rewrite_time_sec|-1
4) aof_current_size|2304
5) aof_delayed_fsync|0
6) aof_last_bgrewrite_status|ok
7) aof_last_cow_size|606208
8) aof_last_rewrite_time_sec|1
9) aof_last_write_status|ok
10) aof_pending_bio_fsync|0
11) aof_pending_rewrite|0
12) aof_rewrite_buffer_length|0
13) aof_rewrite_in_progress|0
14) aof_rewrite_scheduled|0
15) aof_use_rdb_preamble|yes
16) appendfilename|./data/appendonly.aof
17) appendfsync|everysec
18) appendonly|yes

RDB

RDB 정보만 조회합니다.
추가로 save, rdb_filename, rdbcompression 항목을 조회할 수 있습니다.

Example

명령>select * from info.rdb;
결과> 0) key|value
1) rdb_bgsave_in_progress|0
2) rdb_changes_since_last_save|0
3) rdb_current_bgsave_time_sec|-1
4) rdb_filename|./data/dump.rdb
5) rdb_last_bgsave_status|ok
6) rdb_last_bgsave_time_sec|-1
7) rdb_last_cow_size|0
8) rdb_last_save_time|1610092800
9) rdbcompression|yes
10) save|90 1,300 10,60 10000

STATS

서버 통계 정보(총 접속수, 총 명령 처리수 등)를 조회합니다.
info stats 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.stats;
결과> 0) key|value
1) active_defrag_hits|0
2) active_defrag_key_hits|0
3) active_defrag_key_misses|0
4) active_defrag_misses|0
5) evicted_keys|0
6) expired_keys|0
7) expired_stale_perc|0.0
8) expired_time_cap_reached_count|0
9) instantaneous_input_kbps|0.0
10) instantaneous_ops_per_sec|0
11) instantaneous_output_kbps|0.0
12) keyspace_hits|32
13) keyspace_misses|0
14) latest_fork_usec|0
15) migrate_cached_sockets|0
16) pubsub_channels|0
17) pubsub_patterns|0
18) rejected_connections|0
19) slave_expires_tracked_keys|0
20) sync_full|0
21) sync_partial_err|0
22) sync_partial_ok|0
23) total_commands_processed|176
24) total_connections_received|2
25) total_net_input_bytes|1156
26) total_net_output_bytes|31850

REPLICATION

마스터/복제 서버에 대한 정보(접속한 복제 서버 수, 백로그 크기 등)를 조회합니다. 단축어: repl
info replication 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.replication;
결과> 0) key|value
1) connected_slaves|0
2) master_link_down_since_seconds|1609915405
3) master_repl_offset|0
4) master_replid|ef3f6fe2f32826efcc92e0e6eccf6e706295f027
5) master_replid2|0
6) repl_backlog_active|0
7) repl_backlog_first_byte_offset|0
8) repl_backlog_histlen|0
9) repl_backlog_size|67108864
10) role|master
11) second_repl_offset|-1
12) slave_priority|100
13) slave_read_only|1

CPU

CPU 사용량 정보를 조회합니다.
info cpu 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.cpu;
결과> 0) key|value
1) used_cpu_sys|6.884693
2) used_cpu_sys_children|0.0
3) used_cpu_user|13.174814
4) used_cpu_user_children|0.0

COMMANDSTATS

레디스 명령 통계 정보(실행 횟수, 소요 시간)를 조회합니다. 단축어: cmds
info commandstats 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from info.commandstats;
결과> 0) key|calls|total|per
1) command|2|5185|2592.5
2) info|2|86|43.0
3) lpush|1|34|34.0
4) select|23|962985|41868.91

KEYSPACE

키 정보(총 키 개수, 데이터타입별 키 개수 등)를 조회합니다. 단축어: keys
info keyspace 명령과 비슷한 정보를 조회합니다.

Example

명령>select * from info.keyspace;
결과> 0) key|total_keys|string|list|set|zset|hash|stream|module|expire_keys|expire_members
1) db0|7500|194|3|6|7018|279|0|0|0|0
2) db1|4591|28|0|0|4507|56|0|0|0|0
3) db2|4530|2|0|0|4513|15|0|0|0|0

STATLOG

레디스 서버의 주요 상태 정보를 조회합니다. 10분 마다 기록됩니다.
메모리 사용량, 키 개수, 명령 실행 수, 클라이언트 수 증감량으로 서버의 상태를 파악할 수 있습니다.

항목 설명
  • key: 일시
  • memory_hmem: 메모리 사용량, M/G로 표시
  • memory: 메모리 사용량, 바이트로 표시
  • rss_hmem: Resident Set Size, OS 기준으로 할당한 메모리 사이즈, M/G로 표시
  • rss: Resident Set Size, OS 기준으로 할당한 메모리 사이즈, 바이트로 표시
  • keys: 총 키 개수
  • clients: 현재 접속한 클라이언트 수
  • commands: 10분 동안 명령 실행 수
  • cpu: 10분 동안 CPU 사용량

Example

명령>select * from info.statlog;
결과> 0) key|memory_hmem|memory|rss_hmem|rss|keys|clients|commands|cpu
1) 2021-01-17 21:20:00|369.50M|387446240|378.51M|396894208|16753|10|38384|14
2) 2021-01-17 21:30:00|369.50M|387446776|378.51M|396894208|16753|10|38595|14

기간을 조건으로 조회할 수 있습니다. 데이터는 3개월 간 보관됩니다.

Example

명령>select * from info.statlog where key like '2021-01-18%';
결과> 0) key|memory_hmem|memory|rss_hmem|rss|keys|clients|commands|cpu
1) 2021-01-18 00:00:00|369.54M|387492648|378.55M|396943360|16753|0|6978|22
2) 2021-01-18 00:10:00|369.54M|387493832|378.55M|396943360|16757|0|7001|22
    ... 중간 생략 ...
143) 2021-01-18 23:40:00|369.97M|387937160|379.06M|397475840|16765|0|32071|96
144) 2021-01-18 23:50:00|369.99M|387960056|379.07M|397488128|16765|0|32171|96

메모리 최저 사용량, 최고 사용량을 조회할 수 있습니다.

Example

명령>select min(memory_hmem),max(memory_hmem) from info.statlog;
결과> 0) min(memory_hmem)|max(memory_hmem)
1) 369.45M|372.24M
명령>select key,max(memory_hmem) from info.statlog;     최고 사용량과 일시를 같이 조회  
결과> 0) key|max(memory_hmem)
1) 2021-01-25 02:40:00|372.57M

Statlog 삭제

Statlog 데이터는 3개월간 보관됩니다.
삭제하려면 flushinfodb statlog [date [time]] 명령을 사용합니다.
Date를 사용하지 않으면 현재까지 statlog를 삭제됩니다.
Data time 형식은 YYYY-MM-DD HH:MM:SS 입니다.

Example

명령>flushinfodb statlog     statlog를 모두 삭제할 때  
결과> OK
명령>flushinfodb statlog 2021-02-01     2021년 2월 1일까지 statlog를 삭제할 때  
결과> OK
명령>flushinfodb statlog '2021-02-01 10:00:00'     2021년 2월 1일 10시까지 statlog를 삭제할 때  
결과> OK

SLOWLOG

느린 쿼리(명령)을 조회할 수 있습니다. 기준은 slowlog-log-slower-than(microseconds)로 설정합니다.

항목 설명
  • key: 일시, 마지막 숫자 3자리는 구분하기 위한 일련번호입니다.
  • duration_ms: 실행 시간(millisecond)
  • client_ip_port: 클라이언트 IP:Port
  • client_name: 클라이언트 이름, client setname으로 설정했을 경우 표시됩니다.
  • command: 실행한 명령, 30자까지 표시됩니다.

Example

명령>select * from info.slowlog;
결과> 0) key|duration_ms|client_ip_port|client_name|command
1) 2021-01-19 22:04:08 001|5|127.0.0.1:51140|client-1|select select key from zset.*
2) 2021-01-19 23:01:30 001|4|127.0.0.1:51140|client-2|select select left(key,5) from zset.*

느린 명령 순으로 조회할 수 있습니다.

Example

명령>select * from info.slowlog order by duration_ms desc limit 5;
결과> 0) key|duration_ms|client_ip_port|client_name|command
1) 2021-01-19 23:01:50 002|399|127.0.0.1:51140|client-1|select select left(key,7),count(*)
2) 2021-01-19 23:03:18 004|370|127.0.0.1:51140|client-2|select select left(key,7),count(*)
3) 2021-01-19 23:02:27 003|366|127.0.0.1:51140|client-1|select select left(key,7),count(*)
4) 2021-01-22 19:19:06 002|6|127.0.0.1:38232|client-2|select select * from info.statlog;
5) 2021-01-23 15:48:46 002|6|127.0.0.1:43172|client-1|select select * from info.statlog;

특정 클라이언트에서 실행된 명령만 조회할 수 있습니다.

Example

명령>select * from info.slowlog where client_naem = 'client-1';
결과> 0) key|duration_ms|client_ip_port|client_name|command
1) 2021-01-19 23:01:50 002|399|127.0.0.1:51140|client-1|select select left(key,7),count(*)
2) 2021-01-19 23:02:27 003|366|127.0.0.1:51140|client-1|select select left(key,7),count(*)
3) 2021-01-23 15:48:46 002|6|127.0.0.1:43172|client-1|select select * from info.statlog;

Slowlog 삭제

Slowlog 데이터는 3개월간 보관됩니다.
삭제하려면 flushinfodb slowlog [date [time]] 명령을 사용합니다.
Date를 사용하지 않으면 현재까지 slowlog를 삭제됩니다.
Data time 형식은 YYYY-MM-DD HH:MM:SS 입니다.

Example

명령>flushinfodb slowlog     slowlog를 모두 삭제할 때  
결과> OK
명령>flushinfodb slowlog 2021-02-01     2021년 2월 1일까지 slowlog를 삭제할 때  
결과> OK
명령>flushinfodb slowlog '2021-02-01 10:00:00'     2021년 2월 1일 10시까지 slowlog를 삭제할 때  
결과> OK

LATENCYLOG

느린 연산(event)을 조회할 수 있습니다. 기준은 latency-monitor-threshold(milliseconds)로 설정합니다.
Latency event에 대한 자세한 설명은 여기를 보세요

항목 설명
  • key: 일시
  • event_name: 이벤트 이름
  • duration_ms: 실행 시간(millisecond)

Example

명령>select * from info.latencylog;
결과> 0) key|event_name|duration_ms
1) 2021-01-17 16:30:48 001|command|1
2) 2021-01-17 18:45:03 001|aof-write|1
3) 2021-01-17 18:45:03 003|aof-write-alone|1

특정 일시를 조회할 수 있습니다.

Example

명령>select * from info.latencylog where key like '2021-01-19 23%';
결과> 0) key|event_name|duration_ms
1) 2021-01-19 23:01:30 001|command|4
2) 2021-01-19 23:01:50 002|command|399
3) 2021-01-19 23:02:27 003|command|366

특정 이벤트를 조회할 수 있습니다.

Example

명령>select * from info.latencylog where event_name = 'aof-write';
결과> 0) key|event_name|duration_ms
1) 2021-01-17 18:45:03 001|aof-write|1
2) 2021-01-17 18:46:20 002|aof-write|1
3) 2021-01-17 21:56:47 001|aof-write|1

Latencylog 삭제

Latencylog 데이터는 3개월간 보관됩니다.
삭제하려면 flushinfodb latencylog [date [time]] 명령을 사용합니다.
Date를 사용하지 않으면 현재까지 latencylog를 삭제됩니다.
Data time 형식은 YYYY-MM-DD HH:MM:SS 입니다.

Example

명령>flushinfodb latencylog     latencylog를 모두 삭제할 때  
결과> OK
명령>flushinfodb latencylog 2021-02-01     2021년 2월 1일까지 latencylog를 삭제할 때  
결과> OK
명령>flushinfodb latencylog '2021-02-01 10:00:00'     2021년 2월 1일 10시까지 latencylog를 삭제할 때  
결과> OK

CLUSTER.INFO

클러스터 주요 상태 정보(노드 수, 슬롯 수 등)를 조회합니다.
cluster info 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from cluster.info;
결과> 0) key|value
1) cluster_current_epoch|5
2) cluster_known_nodes|6
3) cluster_size|3
4) cluster_slots_assigned|16384
5) cluster_slots_fail|0
6) cluster_slots_ok|16384
7) cluster_slots_pfail|0
8) cluster_state|ok
9) cluster_stats_messages_received|66
10) cluster_stats_messages_sent|4637

CLUSTER.NODES

클러스터 노드 정보(ip:port, 노드id, 역할, 할당된 슬롯 등)를 조회합니다.
cluster nodes 명령과 거의 같은 정보를 조회합니다.

Example

명령>select * from cluster.nodes;
결과> 0) key|node_id|cluster_bus_port|flags|master_node_id|ping_sent_time|pong_received_time|
    config_epoch|link_state|slots|migrating_or_importing_slots
1) 127.0.0.1:7000|a54a1fab4ce615215f247de22a67f1490aa1ba0b|17000|myself,master|
-|0|1609916838000|1|connected|1-4,6-5460|
2) 127.0.0.1:7001|e46f0afedffd4e9bf5f1acd9a40017ed82472916|17001|master|
-|0|1609916842708|4|connected|0,5,5461-10922|
3) 127.0.0.1:7002|857f3addef8c49040feb9cb0dd56e7b1fc887872|17002|master|
-|0|1609916843000|3|connected|10923-16383|
4) 127.0.0.1:7003|549b0a6bde8d34f6dbbf881d1728225382af40c0|17003|slave|
a54a1fab4ce615215f247de22a67f1490aa1ba0b|0|1609916841649|1|connected||
5) 127.0.0.1:7004|5320a335128235b049a5eb1695a8c80325f8151d|17004|slave|
e46f0afedffd4e9bf5f1acd9a40017ed82472916|0|1609916843764|4|connected||
6) 127.0.0.1:7005|2bdfeddf65efb29495b79e81bf90d81c17ad6af0|17005|slave|
857f3addef8c49040feb9cb0dd56e7b1fc887872|0|1609916840596|5|connected||

동영상 설명

Redis SQL Select Info


<< Select Expire Keys Info Query Insert Intro

Email 답글이 올라오면 이메일로 알려드리겠습니다.

혹시 처음이세요?
레디스게이트에는 레디스에 대한 많은 정보가 있습니다.
레디스 소개, 명령어, SQL, 클라이언트, 서버, 센티널, 클러스터 등이 있습니다.
혹시 필요한 정보를 찾기 어려우시면 redisgate@gmail.com로 메일 주세요.
제가 찾아서 알려드리겠습니다.
 
close
IP를 기반으로 보여집니다.