redis-rdb-toolsインストールの導入と使用

3072 ワード

redisメモリ分析ツールredis-rdb-toolsインストール配置プロジェクトアドレス:https://github.com/sripathikrishnan/redis-rdb-tools
導入のインストール
  Python2.7
  redis-rdb-tools
git clone https://github.com/sripathikrishnan/redis-rdb-tools.git
  redis-rdb-tools
pip2.7 install  python-lzf
cd redis-rdb-tools
python2.7 setup.py install

一般的な使い方:
#  json    
> rdb --command json /var/redis/6379/dump.rdb

#  json    ,    
> rdb --command justkeyvals --key "user.*" /var/redis/6379/dump.rdb

user003 fname Ron,sname Bumquist,
user001 fname Raoul,sname Duke,
user002 fname Gonzo,sname Dr,
user_list user003,user002,user001

#        
> redis-memory-for-key -s localhost -p 6379 -a mypassword person:1

Key             person:1
Bytes               111
Type                hash
Encoding            ziplist
Number of Elements      2
Length of Largest Element   8

# rdb        csv
> rdb -c memory /var/redis/6379/dump.rdb --bytes 128 -f memory.csv
> cat memory.csv

database,type,key,size_in_bytes,encoding,num_elements,len_largest_element
0,list,lizards,241,quicklist,5,19
0,list,user_list,190,quicklist,3,7
2,hash,baloon,138,ziplist,3,11
2,list,armadillo,231,quicklist,5,20
2,hash,aroma,129,ziplist,3,11

#    top10    
rdb -c memory  --largest=10  /app/redis/data/7000/dump.rdb

エラーの報告と解決方法:
redis-clusterモードでユーザに次のようなエラーを発生させ,アドレスをそのキーに対応するアドレスに変更すればよい.
[root@TEST python2.7]# redis-memory-for-key -s 172.16.2.53 -p 7000 KEYNAMETEST
Traceback (most recent call last):
  File "/usr/local/python2.7/bin/redis-memory-for-key", line 11, in 
    load_entry_point('rdbtools==0.1.12', 'console_scripts', 'redis-memory-for-key')()
  File "/usr/local/python2.7/lib/python2.7/site-packages/rdbtools-0.1.12-py2.7.egg/rdbtools/cli/redis_memory_for_key.py", line 43, in main
    db=options.db, password=options.password)
  File "/usr/local/python2.7/lib/python2.7/site-packages/rdbtools-0.1.12-py2.7.egg/rdbtools/cli/redis_memory_for_key.py", line 53, in print_memory_for_key
    raw_dump = redis.execute_command('dump', key)
  File "/usr/local/python2.7/lib/python2.7/site-packages/redis/client.py", line 668, in execute_command
    return self.parse_response(connection, command_name, **options)
  File "/usr/local/python2.7/lib/python2.7/site-packages/redis/client.py", line 680, in parse_response
    response = connection.read_response()
  File "/usr/local/python2.7/lib/python2.7/site-packages/redis/connection.py", line 629, in read_response
    raise response
redis.exceptions.ResponseError: MOVED 16278 172.16.0.99:7000
[root@TEST python2.7]# redis-memory-for-key -s 172.16.0.99 -p 7000 KEYNAMETEST
Key             KEYNAMETEST
Bytes               933972.0
Type                sortedset
Encoding            skiplist
Number of Elements      7658
Length of Largest Element   8

注意事項:
1、  rdb        CPU    ,    !!!
2、           ,      
3、        rdb  ,          ,