由于redis-stat使用ruby写的,编译的时候要先装ruby,要大于1.9.3版本的ruby。
这里我是从源码编译安装的ruby-2.1.10.tar.gz:
tar zxvf ruby-2.1.10.tar.gz
cd ruby-2.1.10
./configure –prefix=/usr/local/ruby
make && make install
cd /opt
gem install redis-stat
需要等待一段时间,安装好后,就可以启动redis-stat了。
官方教材:
Usage
usage: redis-stat [HOST[:PORT][/PASS] ...] [INTERVAL [COUNT]]
-a, --auth=PASSWORD Password
-v, --verbose Show more info
--style=STYLE Output style: unicode|ascii
--no-color Suppress ANSI color codes
--csv=OUTPUT_CSV_FILE_PATH Save the result in CSV format
--es=ELASTICSEARCH_URL Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
--server[=PORT] Launch redis-stat web server (default port: 63790)
--daemon Daemonize redis-stat. Must be used with --server option.
--version Show version
--help Show this message
Running redis-stat for command-line monitoring
redis-stat
redis-stat 1
redis-stat 1 10
redis-stat --verbose
redis-stat localhost:6380 1 10
redis-stat localhost localhost:6380 localhost:6381 5
redis-stat localhost localhost:6380 1 10 --csv=/tmp/output.csv --verbose
Screenshot
redis-stat in web browser
When --server
option is set, redis-stat will open up an embedded web server (default port: 63790) in the background so that you can monitor Redis in your browser.
Since redis-stat pushes updates every interval via Server-sent events, modern browsers are required to view the page.
redis-stat --server
redis-stat --verbose --server=8080 5
# redis-stat server can be daemonized
redis-stat --server --daemon
# Kill the daemon
killall -9 redis-stat-daemon
redis-stat可以监控多个实例,并且可以将信息发送到es存储,后续可以通过kibana来展示也行。这里启动命令我们以守护进程方式启动:
redis-stat --server --verbose --daemon --es=http://name84:9800/redis_metrics name87:6379 xydata2:6379 name84:6379 name84:6380 name84:6381 name84:6382 name84:6383 name84:6384 5
这里写入的ES索引为redis_metrics,默认的type为redis。
所以我们可以给type设置一个mapping,允许自动过期删除,假设我们保留一个月的日志信息,
{
"mappings": {
"redis": {
"_ttl": {
"default": 2592000000,
"enabled": true
},
"_timestamp": {
"enabled": true
}
}
}
}