INFO [section]

INFO コマンドは、サーバに関する情報と統計を、コンピュータによる解析が簡単で人が読みやすい形式で返します。

情報の特定のセクションを選択するためにオプションのパラメータを使うことができます:

  • server: Redisサーバについての一般情報
  • clients: クライアント接続セクション
  • memory: メモリ消費に関する情報
  • persistence: RDB と AOF に関する情報
  • stats: 一般的な統計
  • replication: マスタ/レプリカ リプリケーション情報
  • cpu: CPU 消費統計
  • commandstats: Redis コマンド統計
  • cluster: Redis クラスタ セクション
  • modules: モジュール セクション
  • keyspace: データベースに関する統計
  • modules: セクションに関連するモジュール

以下の値を取ることもできます:

  • all: 全てのセクション(生成されたモジュールを除く)を返します
  • default: セクションのデフォルトのセットのみを返します
  • everything: allmodules を含みます

パラメータが指定されない場合は、default オプションが使用されます。

*返り値

Bulk string reply: テキスト行の集まりとして。

行にはセクション名(# 文字で始まる)あるいはプロパティを含めることができます。全てのプロパティは\r\nで終わるfield:valueの形式です。

redis>  INFO
# Server
redis_version:6.0.8
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:10442eda66c31c63
redis_mode:standalone
os:Linux 5.4.0-1017-aws x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:9.3.0
process_id:304029
run_id:d9a2dd77321a631b894c2360512731471e56297f
tcp_port:6379
uptime_in_seconds:1041093
uptime_in_days:12
hz:10
configured_hz:10
lru_clock:6945205
executable:/usr/local/bin/redis-server
config_file:/etc/redis/redis.conf
io_threads_active:0

# Clients
connected_clients:2
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:0
tracking_clients:0
clients_in_timeout_table:0

# Memory
used_memory:121502344
used_memory_human:115.87M
used_memory_rss:128983040
used_memory_rss_human:123.01M
used_memory_peak:121502344
used_memory_peak_human:115.87M
used_memory_peak_perc:100.00%
used_memory_overhead:35689660
used_memory_startup:803016
used_memory_dataset:85812684
used_memory_dataset_perc:71.10%
allocator_allocated:121501792
allocator_active:121880576
allocator_resident:128131072
total_system_memory:16596942848
total_system_memory_human:15.46G
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:200000000
maxmemory_human:190.73M
maxmemory_policy:allkeys-lru
allocator_frag_ratio:1.00
allocator_frag_bytes:378784
allocator_rss_ratio:1.05
allocator_rss_bytes:6250496
rss_overhead_ratio:1.01
rss_overhead_bytes:851968
mem_fragmentation_ratio:1.06
mem_fragmentation_bytes:7564232
mem_not_counted_for_evict:0
mem_replication_backlog:0
mem_clients_slaves:0
mem_clients_normal:33972
mem_aof_buffer:0
mem_allocator:jemalloc-5.1.0
active_defrag_running:0
lazyfree_pending_objects:0

# Persistence
loading:0
rdb_changes_since_last_save:3217434
rdb_bgsave_in_progress:0
rdb_last_save_time:1599739632
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:-1
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:0
aof_enabled:0
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
aof_last_cow_size:0
module_fork_in_progress:0
module_fork_last_cow_size:0

# Stats
total_connections_received:83268
total_commands_processed:7902687
instantaneous_ops_per_sec:72
total_net_input_bytes:655142757
total_net_output_bytes:120245977
instantaneous_input_kbps:5.64
instantaneous_output_kbps:0.65
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:21967
expired_stale_perc:0.00
expired_time_cap_reached_count:0
expire_cycle_cpu_milliseconds:25981
evicted_keys:0
keyspace_hits:1828483
keyspace_misses:835261
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0
tracking_total_keys:0
tracking_total_items:0
tracking_total_prefixes:0
unexpected_error_replies:0
total_reads_processed:7982061
total_writes_processed:7970498
io_threaded_reads_processed:0
io_threaded_writes_processed:0

# Replication
role:master
connected_slaves:0
master_replid:91703201ead682565210bb53edb8dbbf7cd86e62
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

# CPU
used_cpu_sys:749.046004
used_cpu_user:2786.501545
used_cpu_sys_children:0.000000
used_cpu_user_children:0.000000

# Modules

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=661596,expires=4,avg_ttl=6808157181
redis> 

*注意

Redisのバージョンによっては幾つかのフィールドが追加あるいは削除されていることに注意してください。従って堅牢なクライアントアプリケーションは未知のプロパティをスキップしてこのコマンドの結果を解析し、不足しているフィールドを適切に処理する必要があります。

以下は Redis >= 2.4 のフィールドの説明です。

server セクションの全てのフィールドの意味は次の通りです:

  • redis_version: Redisサーバのバージョン
  • redis_git_sha1: Git SHA1
  • redis_git_dirty: Git dirty フラグ
  • redis_build_id: ビルド id
  • redis_mode: サーバのモード ("standalone", "sentinel" あるいは "cluster")
  • os: Redisサーバをホストしているオペレーティングシステム
  • arch_bits: アーキテクチャ (32 あるいは 64ビット)
  • multiplexing_api: Redisによって使われるイベント ループ機構
  • atomicvar_api: Redisによって使われるAtomicvar API
  • gcc_version: Redisサーバをコンパイルするために使われたGCCコンパイラのバージョン
  • process_id: サーバプロセスのPID
  • run_id: Redisサーバを識別するランダムな値 (Sentinel と Cluster で使われます)
  • tcp_port: TCP/IP listen ポート
  • uptime_in_seconds: Redisサーバが起動してからの秒数
  • uptime_in_days: 日数で表される同じ値
  • hz: サーバの現在の頻度設定
  • configured_hz: サーバの設定済みの頻度設定
  • lru_clock: LRU管理用に毎分インクリメントするクロック
  • executable: サーバの実行可能ファイルへのパス
  • config_file: 設定ファイルへのパス

clients セクションの全てのフィールドの意味は次の通りです:

  • connected_clients: クライアント接続の数 (レプリカからの接続を除く)
  • client_longest_output_list: 現在のクライアント接続の中で最も長い出力リスト
  • client_biggest_input_buf: 現在のクライアント接続の中で最も大きい入力バッファ
  • blocked_clients: ブロッキングコール (BLPOP, BRPOP, BRPOPLPUSH, BZPOPMIN, BZPOPMAX) で保留中のクライアント数
  • tracking_clients: 追跡されている(CLIENT TRACKING) クライアント数
  • clients_in_timeout_table: クライアントのタイムアウトテーブル内のクライアント数
  • io_threads_active: I/Oスレッドがアクティブかどうかを示すフラグ

memory セクションの全てのフィールドの意味は次の通りです:

  • used_memory: Redisがアロケータ (標準libc, jemalloc あるいは tcmallocなどの代替のアロケータ)を使用して割り当てた総バイト数
  • used_memory_human: 前の値の人が読める形式の表現
  • used_memory_rss: オペレーティングシステムから見たRedisが割り当てたバイト数 (別名 常駐セットサイズ)。これは top(1)ps(1)のようなツールによって報告された数です
  • used_memory_rss_human: 前の値の人が読める形式の表現
  • used_memory_peak: Redisによって消費されたピークメモリ (バイト単位)
  • used_memory_peak_human: 前の値の人の読める形式の表現
  • used_memory_peak_perc: used_memoryのうちの used_memory_peakのパーセンテージ
  • used_memory_overhead: サーバが内部データ構造を管理するために割り当てた全てのオーバーヘッドの合計バイト数
  • used_memory_startup: 起動時にRedisが消費するメモリの初期バイト量
  • used_memory_dataset: データセットのバイトサイズ (used_memory から used_memory_overheadを引いたもの)
  • used_memory_dataset_perc: 正味のメモリ使用量(used_memory - used_memory_startup)のうちのused_memory_datasetのパーセンテージ
  • total_system_memory: Redisホストが持つメモリの総量
  • total_system_memory_human: 前の値の人の読める形式の表現
  • used_memory_lua: Luaエンジンによって使われるバイト数
  • used_memory_lua_human: 前の値の人の読める形式の表現
  • used_memory_scripts: キャッシュされたLuaスクリプトで使われるバイト数
  • used_memory_scripts_human: 以前の値の人が読める形式の表現
  • maxmemory: maxmemory設定ディレクティブの値
  • maxmemory_human: 前の値の人の読める形式の表現
  • maxmemory_policy: maxmemory-policy設定ディレクティブの値
  • mem_fragmentation_ratio: used_memory_rssused_memoryの比率
  • mem_allocator: コンパイル時に選択されたメモリ アロケータ
  • active_defrag_running: アクティブ デフラグメントがアクティブかどうかを示すフラグ
  • lazyfree_pending_objects: 解放されるのを待っているオブジェクトの数 (UNLINK、またはASYNCオプションを指定した FLUSHDBFLUSHALLの呼び出しの結果)

理想的には、used_memory_rssの値はused_memoryより少し高くなければなりません。rss >> used の場合、大きな違いはメモリのフラグメンテーション(内部的あるいは外部的)を意味します。これは mem_fragmentation_ratioを調べることで評価することができます。used >> rss の場合、Redisのメモリがオペレーティングシステムによってスワップ オフされたことを意味します: かなりのレイテンシが予想されます。

Redisは割り当てがメモリページにどのようにマップされるかを制御できないため、高い used_memory_rss がメモリ使用量の急上昇の結果であることがよくあります。

Redisがメモリを解放する時、メモリはアロケータに返され、アロケータはそのメモリをシステムに返すかもしれません。オペレーティングシステムによって報告されるように、used_memory 値とメモリの消費の間に食い違いがあるかもしれません。これはRedisによってメモリが使用および解放されたが、システムに戻されなかったことが原因である可能性があります。used_memory_peak 値は一般的にこの点を調べるために役立ちます。

MEMORY STATS コマンドとMEMORY DOCTORを参照することでサーバのメモリについての追加の内部的な情報を取得することができます。

persistence セクションの全てのフィールドの意味は次の通りです:

  • loading: ダンプファイルのロードが進行中かどうかを示すフラグ
  • rdb_changes_since_last_save: 最後のダンプからの変更数
  • 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保存操作中の copy-on-write 割り当てのバイト単位のサイズ
  • aof_enabled: AOF ログが有効かどうかを示すフラグ
  • aof_rewrite_in_progress: AOF rewrite 操作が進行中であることを示すフラグ
  • aof_rewrite_scheduled: 進行中のRDB保存が完了すると AOF rewrite 操作がスケジュールされていることを示すフラグ。
  • aof_last_rewrite_time_sec: 最後のAOF rewrite 操作の秒単位の所要時間
  • aof_current_rewrite_time_sec: 進行中のAOF rewrite 操作がある場合はその所要時間
  • aof_last_bgrewrite_status: 最後の AOF rewrite 操作の状態
  • aof_last_write_status: AOFへの最後の書き込み操作の状態
  • aof_last_cow_size: 最後のAOF rewrite 操作中の copy-on-write 割り当てのバイト単位のサイズ
  • module_fork_in_progress: モジュールのフォークが進行中であることを示すフラグ
  • module_fork_last_cow_size: 最後のモジュールフォーク操作中の copy-on-write 割り当てのバイト単位のサイズ

rdb_changes_since_last_save は最後に SAVE あるいは BGSAVE が呼び出されてからデータセットに何らかの種類の変更を加えた操作の数を表します。

AOF が有効な場合は、以下の追加のフィールドが追加されます:

  • aof_current_size: AOFの現在のファイルサイズ
  • aof_base_size: 最新の起動あるいは書き換え時のAOFファイルサイズ
  • aof_pending_rewrite: 進行中のRDB保存が完了すると AOF rewrite 操作がスケジュールされていることを示すフラグ。
  • aof_buffer_length: AOF バッファのサイズ
  • aof_rewrite_buffer_length: AOF rewrite バッファのサイズ
  • aof_pending_bio_fsync: バックグランド I/O キュー内のfsync保留中のジョブの数
  • aof_delayed_fsync: 遅延 fsync カウンタ

ロード操作が進行中の場合はこれらの追加のフィールドが追加されます:

  • loading_start_time: ロード操作開始のエポック ベースのタイムスタンプ
  • loading_total_bytes: 総ファイルサイズ
  • loading_loaded_bytes: 既にロードされたバイト数
  • loading_loaded_perc: 同じ値をパーセンテージで表したもの
  • loading_eta_seconds: ロードが完了するまでのETA秒数

stats セクションの全てのフィールドの意味は次の通りです:

  • total_connections_received: サーバによって受け入れられた接続の総数
  • total_commands_processed: サーバによって処理されたコマンドの総数
  • instantaneous_ops_per_sec: 秒間あたりのコマンド処理数
  • total_net_input_bytes: ネットワークから読み取られた総バイト数
  • total_net_output_bytes: ネットワークに書き込まれた総バイト数
  • instantaneous_input_kbps: 秒間あたりのネットワークの読み取り速度 KB/sec
  • instantaneous_output_kbps: 秒間あたりのネットワークの書き込み速度 KB/sec
  • rejected_connections: maxclients 制限のために拒否された接続の数
  • sync_full: レプリカとの完全再同期の数
  • sync_partial_ok: 受け入れられた部分再同期リクエストの数
  • sync_partial_err: 拒否された部分再同期リクエストの数
  • expired_keys: キーの期限切れイベントの総数
  • expired_stale_perc: おそらく有効期限切れになったキーの割合
  • expired_time_cap_reached_count: アクティブな有効期限サイクルが早期に停止した回数
  • expire_cycle_cpu_milliseconds: アクティブな有効期限サイクルに費やされた累積時間
  • evicted_keys: maxmemory 制限のために退去させられたキーの数
  • keyspace_hits: メイン辞書内のキーの検索に成功した数
  • keyspace_misses: メイン辞書内のキーの検索に失敗した数
  • pubsub_channels: クライアント購読を持つ pub/sub チャンネルのグローバル数
  • pubsub_patterns: クライアント購読を持つ 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: サーバのプレフィックステーブル内の追跡されたプレフィックスの数 (ブロードキャストモードにのみ適用可能)
  • unexpected_error_replies: AOFロードまたはレプリケーションからのエラーの型である予期しないエラー応答の数
  • total_reads_processed: 処理された読み取りイベントの総数
  • total_writes_processed: 処理された書き込みイベントの総数
  • io_threaded_reads_processed: メインスレッドとI/Oスレッドによって処理された読み取りイベントの数
  • io_threaded_writes_processed: メインスレッドとI/Oスレッドによって処理された書き込みイベントの数

replication セクションの全てのフィールドの意味は次の通りです:

  • role: インスタンスが誰のレプリカでもない場合の値は "master"。あるいはインスタンスがマスタ インスタンスのレプリカである場合は "slave"。レプリカは他のレプリカのマスタになることができることに注意してください (連鎖レプリケーション)。
  • master_replid: RedisサーバのレプリケーションID。
  • master_replid2: フィエルオーバーの後に PSYNC によって使われる2次レプリケーションID。
  • 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: マスタの listening TCP ポート
  • master_link_status: リンクの状態 (up/down)
  • master_last_io_seconds_ago: マスタとの最後のやり取りからの秒数
  • master_sync_in_progress: マスタがレプリカに同期していることを示す
  • slave_repl_offset: レプリカ インスタンスのレプリケーション オフセット
  • slave_priority: フェイルオーバーの候補としてのインスタンスの優先度
  • slave_read_only: レプリカが読み取り専用かどうかを示すフラグ

もし SYNC 操作が進行中の場合は、以下の追加フィールドが追加されます:

  • master_sync_left_bytes: 同期が完了するまでに残っているバイト数
  • master_sync_last_io_seconds_ago: SYNC操作中の最後の入出力以降の秒数

もしマスタとレプリカの間のリンクがダウンしている場合は、以下のフィールドが提供されます:

  • master_link_down_since_seconds: リンクがダウンしてからの秒数

以下のフィールドは常に提供されます:

  • connected_slaves: 接続レプリカ数

もしサーバがmin-slaves-to-write (または Redis 5 で min-replicas-to-write) ディレクティブを使って設定されている場合は、以下の追加のフィールドが提供されます:

  • min_slaves_good_slaves: 現在良好とみなされているレプリカの数

各レプリカについて、以下の行が追加されます:

  • slaveXXX: id, IPアドレス, ポート, 状態, オフセット, 遅延

cpu セクションの全てのフィールドの意味は次の通りです:

  • used_cpu_sys: Redisサーバによって消費されるシステムCPU
  • used_cpu_user:Redisサーバによって消費されるUser CPU
  • used_cpu_sys_children: バックグラウンド プロセスによって消費されるシステムCPU
  • used_cpu_user_children: バックグラウンド プロセスによって消費される User CPU

commandstats セクションは、呼び出しの数、これらのコマンドによって消費される総CPU時間、およびコマンドの実行ごとに消費される平均CPUを含む、コマンド型に基づいた統計を提供します。

各コマンド型について、以下の行が追加されます:

  • cmdstat_XXX: calls=XXX,usec=XXX,usec_per_call=XXX

cluster セクションは現在のところ1つのユニークなフィールドのみを含みます:

  • cluster_enabled: Redisクラスタが有効かどうかを示す

modulesセクションには、モジュールが提供する場合、ロードされたモジュールについての追加情報が含まれます。このセクションのプロパティ行のフィールド部分には、常にモジュール名のプリフィックスが付いています。

keyspace セクションは各データベースのメイン辞書の統計を提供します。統計情報は、キーの数、および有効期限の切れたキーの数です。

各データベースについて、以下の行が追加されます:

  • dbXXX: keys=XXX,expires=XXX

このマニュアルのページで使われているスレーブという語についての注意: Redis 5 から下位互換性のためではない場合に、Redisプロジェクトはスレーブという語をもう使わなくなりました。残念ながらこのコマンドではスレーブという単語はプロトコルの一部です。ですので、このAPIが自然に廃止される時に限り、そのような出現を削除することができます。

モジュールで生成されたセクション: Redis 6以降、モジュールは情報をINFOコマンドに挿入できます。これらはall引数の場合でもデフォルトで除外されます (ロードされたモジュールのリストは含まれますが、生成された情報フィールドは含まれません)。これらを取得するには、modules引数またはeverythingのいずれかを使う必要があります。

TOP
inserted by FC2 system