Redis图形监控工具--RedisLive

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 一、简介         RedisLive是一款用Python编写的Redis图形监控工具,其源码在这里,英文文档在这里。RedisLive的原理很简单,就是通过监控脚本来利用Redis提供的MONITOR命令从被监控Redis实例中获取数据并存储到Redis的监控实例中来做数据分析。
一、简介
        RedisLive是一款用Python编写的Redis图形监控工具,其源码在 这里,英文文档在 这里。RedisLive的原理很简单,就是通过监控脚本来利用Redis提供的MONITOR命令从被监控Redis实例中获取数据并存储到Redis的监控实例中来做数据分析。RedisLive以可视化的方式展示了Redis实例中的数据,分析查询模式和峰值,下图是官方提供的效果图:

图1 RedisLive监控界面
        有如此好枪,还等什么,赶紧行动吧 ,喂,哥们儿,不是抢银行 ,别误会了。

二、安装
        下面以CentOS Linux release 6.0 (Final)为例,介绍如何安装RedisLive:
        (1)Python
        既然RedisLive由Python编写,那么Python环境是必不可少的,一般Linux默认都安装了Python,比如: CentOS Linux release 6.0 (Final)默认安装的就是Python 2.6.5。在终端敲如下命令,可以验证是否已经安装了Python:
        #python
        Python 2.6.5 (r265:79063, Nov 12 2010, 00:52:45) 
        [GCC 4.4.4 20100525 (Red Hat 4.4.4-5)] on linux2
        Type "help", "copyright", "credits" or "license" for more information.
        >>> 
        出现如上信息说明已经安装了Python,否则如下安装Python:
        #yum install python
        (2)python-setuptools
        执行如下指令安装 python-setuptools
        #yum install python-setuptools
        (3)pip-python
        按照如下步骤下载并安装pip-python:
        #wget http://dl.fedoraproject.org/pub/epel/6/x86_64/python-pip-0.8-1.el6.noarch.rpm
        #rpm -ivh python-pip-0.8-1.el6.noarch.rpm
        #pip-python install tornado
        #wget https://github.com/andymccurdy/redis-py.git
        #wget https://github.com/andymccurdy/redis-py/archive/master.zip
        #unzip master
        #cd redis-py-master/
        #python setup.py install
        #cd ..
        #pip-python install python-dateutil
        #pip-python install argparse
        (4)RedisLive
        前面的那些前戏只不过是环境部署,男一号终于要上正席了:
        #git clone https://github.com/kumarnitin/RedisLive.git
        #cd RedisLive/src
        #vi redis-live.conf
        {
                "RedisServers":
                [
                        {
                              "server": "127.0.0.1",
                              "port" : 6379
                        }
                ],

                "DataStoreType" : "redis",

                "RedisStatsServer":
                {
                        "server" : "127.0.0.1",
                        "port" : 6381
                }
        }
         修改监控和被监控Redis实例的配置信息并分别启动这两个Redis实例。
        RedisServer是被监控Redis实例的配置,RedisStatsServer是监控Redis实例的配置,如果不希望将监控信息存储在Redis中,则需要将DataStoreType由redis改为sqlite类型即可,这样RedisStatsServer也就不用配置了。
        如果被监控Redis需要密码才能访问,则需要在RedisServers部分如下来配置:
                 "RedisServers":
                   [
                           {
                                  "server": "127.0.0.1",
                                  "port" : 6379
                              “password”: "xxxxxx"

                           }
                   ],
        配置好之后就可以如下来启动服务了:
        (A)开启监控脚本
         #./redis-monitor.py --duration 120 &
        (B)开启webserver
        #./redis-live.py &
        (C)在浏览器中输入如下地址来查看RedisLive
        http://localhost:8888/index.html
        销魂的图1出现了
       
        需要注意的是:
        (1)如果在浏览器调入地址后出现无法访问的现象请关闭防火墙或者开端口8888。
        (2)如果在执行./redis-live.py &后出现如下错误:
        ImportError: No module named dateutil.parser
        则需要如此这般:
                (A)下载新版python-dateutil并安装
                #wget http://labix.org/download/python-dateutil/python-dateutil-2.0.tar.gz
                #tar -zxvf  python-dateutil-2.0.tar.gz
                #cd python-dateutil-2.0
                #python setup.py install
                #cd ..
                (B)重新开启监控脚本和webserver即可:
                #./redis-monitor.py --duration 120 &
                #./redis-live.py &
        (3)启动服务之后,如果访问web页面,则会在当前终端输出日志,如果不想在终端输出,可以查看redis-live.py的参数
        #./redis-live.py --help
        Usage: ./redis-live.py [OPTIONS]

        Options:

          --debug                                debug mode (default 0)
          --help                                   show this help information
          --port                                   run on the given port (default 8888)

        /usr/lib/python2.6/site-packages/tornado/log.py options:

          --log_file_max_size                 max size of log files before rollover
                                                    (default 100000000)
          --log_file_num_backups          number of log files to keep (default 10)
          --log_file_prefix=PATH           Path prefix for log files. Note that if you
                                                    are running multiple tornado processes,
                                                    log_file_prefix must be different for each
                                                    of them (e.g. include the port number)
          --log_to_stderr                     Send log output to stderr (colorized if
                                                   possible). By default use stderr if
                                                   --log_file_prefix is not set and no other
                                                   logging is configured.
          --logging=debug|info|warning|error|none 
                                                   Set the Python log level. If 'none', tornado
                                                   won't touch the logging configuration.
                                                   (default info)
        可以到有日志文件大小、备份日志文件数、日志文件路径、错误日志输出、日志等级等信息。
        (4)监控开启后会影响到Redis的性能,所以建议定时监控而不是实时监控。


三、附注
        更多监控解决方案原文见 这里,译文见 这里



相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
18天前
|
NoSQL 数据可视化 关系型数据库
推荐几个好用的redis可视化工具
推荐几个好用的redis可视化工具
102 1
|
NoSQL Linux Redis
Redis内存分析工具RDR
感觉开发越是做到后面,除了对程序本身的理解;更多的是对工具的了解和运用,了解不同的工具的作用,对开发效率以及问题的快速定位,都有一个质的飞越。 背景是这样子的,我们有个业务需要对大量数据进行实时分析,底层服务一直不太稳定,内存以及cpu占用都非高,大量占用系统资源;由于数据量大,之前负责的同事也一直没有找到好的方法,单纯的依靠人力去分析代码,搞了挺长时间也没有根本性的解决问题,总是治标不治本。
Redis内存分析工具RDR
|
NoSQL 数据可视化 JavaScript
漂亮又好用的Redis可视化客户端汇总
漂亮又好用的Redis可视化客户端汇总
7404 0
漂亮又好用的Redis可视化客户端汇总
|
5月前
|
监控 NoSQL Redis
Redis监控数据分布工具Redis-audit 使用总结
Redis监控数据分布工具Redis-audit 使用总结
51 0
|
监控 NoSQL 网络安全
RedisInsight 安装与使用(Redis 监控工具)
RedisInsight 是一个直观高效的 Redis GUI 管理工具,它可以对 Redis 的内存、连接数、命中率以及正常运行时间进行监控,并且可以在界面上使用 CLI 和连接的 Redis 进行交互(RedisInsight 内置对 Redis 模块支持):官方传送门
4229 0
RedisInsight 安装与使用(Redis 监控工具)
|
NoSQL 数据可视化 Redis
redis6 安装和可视化工具
下载 wget http://download.redis.io/releases/redis-6.0.12.tar.gz 复制代码 解压 tar -zxvf redis-6.0.12.tar.gz 复制代码 编译 make 复制代码 若执行make 命令报错 make: command not found,可执行以下命令: yum -y install gcc automake autoconf libtool make yum install gcc gcc-c++ 复制代码 安装 权限不够的话用 sudo make instal 复制代码 更改配置文件 可以拷贝一份默认文件 redis
140 0
|
JSON 监控 NoSQL
你现在在用什么样的Redis可视化工具?
你现在在用什么样的Redis可视化工具?
211 0
你现在在用什么样的Redis可视化工具?
|
监控 NoSQL Redis
zabbix监控redis服务(二十八)
zabbix监控redis Redis使用自带的INFO命令,进行状态监控。以一种易于解释且易于阅读的格式,返回关于 Redis 服务器的各种信息和统计数值。
289 0
zabbix监控redis服务(二十八)
|
存储 运维 监控
Redis Lens 隆重推出:轻松直观的洞察Redis状态
Redis Lens提供集中式Redis实例资产视图,可方便快捷获取数据库的运行日志、慢日志以及审计日志的监控与分析
214 0
Redis Lens 隆重推出:轻松直观的洞察Redis状态
|
XML JSON 监控
RedisAssistant:一款Redis可视化管理工具
用过不少Redis可视化管理工具,有的虽然跨平台但是安装包较大,有的虽然速度不错,但是收费挺高。今天为大家介绍一款安装包很小(仅有6M),颜值高的Redis可视化管理工具,[Redis Assistant - Redis可视化管理与监控工具](http://www.redisant.cn)。
1073 1
RedisAssistant:一款Redis可视化管理工具