memcached-toolを使ってみたときのメモ


memcachedの中身を確認するのにmemcached-toolが使える


memcached-toolはperlスクリプト
memcached/scripts/memcached-tool at master · memcached/memcached · GitHub



何もパラメータを指定せずに実行してみるとヘルプが表示される

$ ./memcached-tool 
Usage: memcached-tool <host[:port] | /path/to/socket> [mode]

       memcached-tool 10.0.0.5:11211 display    # shows slabs
       memcached-tool 10.0.0.5:11211            # same.  (default is display)
       memcached-tool 10.0.0.5:11211 stats      # shows general stats
       memcached-tool 10.0.0.5:11211 dump       # dumps keys and values

ホストとポート番号を指定するか、socketのパスを指定する。
modeはdisplayかstatsかdumpの三つだけ。


表示される内容

「display」はslabの内容が表示される

$ ./memcached-tool localhost:11211
  #  Item_Size  Max_age   Pages   Count   Full?  Evicted Evict_Time OOM
  1      80B    -31732s       1    1000      no        0        0    0
  5     224B    -31655s       1    1000      no        0        0    0


slabはmemcachedを起動するときに-vvをつけると確認できる

slab class   1: chunk size        80 perslab   13107
slab class   2: chunk size       104 perslab   10082
slab class   3: chunk size       136 perslab    7710
slab class   4: chunk size       176 perslab    5957
slab class   5: chunk size       224 perslab    4681
# 以下略

適当にデータ突っ込んだんだけど、slab classの1と5に1000ずつエントリがあるということがわかる。


「stats」は以下のような出力が得られる

$ ./memcached-tool localhost:11211 stats
#localhost:11211   Field       Value
         accepting_conns           1
                   bytes    18477140
              bytes_read    18552147
           bytes_written       63625
              cas_badval           0
                cas_hits           0
              cas_misses           0
               cmd_flush           1
                 cmd_get           0
                 cmd_set        4000
             conn_yields           0
   connection_structures           7
        curr_connections           6
              curr_items        3000
               decr_hits           0
             decr_misses           0
             delete_hits           0
           delete_misses           0
               evictions           0
                get_hits           0
              get_misses           0
               incr_hits           0
             incr_misses           0
          limit_maxbytes    67108864
     listen_disabled_num           0
                     pid         690
            pointer_size          32
           rusage_system    0.132008
             rusage_user    0.044002
                 threads           4
                    time  1360848054
       total_connections          17
             total_items        4000
                  uptime  4294936256
                 version       1.4.2


「dump」はこんな感じ。
全データをダンプするようで、いっぱい表示されてわけわからなかったので、全部消してエントリを少しだけにした実行結果

$ ./memcached-tool localhost:11211 dump
Dumping memcache contents
  Number of buckets: 1
  Number of items  : 2
Dumping bucket 1 - 2 total items
add foo 0 1360879094 3
bar
add hoge 0 1360879094 4
fuga

細かい表示項目の意味について調べようと思ったけど、以下のエントリに細かく書いてありました!

memcached-toolの使い方 - taka512's blog
memcacheのstatsコマンドメモ - taka512's blog