1. 程式人生 > >詳解Redis 可視化圖形監控界面 RedisLive

詳解Redis 可視化圖形監控界面 RedisLive

redis

作為一款開源的 Redis 圖形化監控工具,RedisLive 提供對 Redis 實例的內存使用情況,接收的客戶端命令,接收的請求數量以及鍵進行監控。RedisLive 的工作原理基於 Redis 的 INFO 和 MONITOR 命令,通過向 Redis 實例發送 INFO 和 MONITOR 命令來獲取 Redis 實例當前的運行數據。

RedisLive 提供的圖形化展示界面如下圖所示:

技術分享


安裝

RedisLive 使用 Python 實現,使用 Tornado 作為自己的 Web 服務器。運行 RedisLive 並不需要額外的編譯過程。下載 RedisLive 的代碼後,只須安裝好依賴的相關 Python 擴展包就可以直接運行。
可以通過 Git 下載最新的 RedisLive 源代碼:

git clone https//githup.com/kumarnitin/RedisLive.git

進下下載後的 RedisLive 目錄,可以看下 RedisLive 依賴的 Python 擴展包都已經寫在 requirements.txt 文件中了。requirements.txt 的內容如下:

argparse==1.2.1
python-dateutil==1.5
redis
tornado==2.1.1

熟悉 Python 的朋友對於 requirements.txt 文件也一定感覺很親切了,使用下面的命令可以安裝裏面的擴展包(指定豆瓣源來安裝速度更快):

pip install -r requirements.txt -i http://pypi.douban.com/simple/–trusted-host pypi.douban.com

運行

安裝好依賴後,接下來就可以運行 RedisLive 了。進入 RedisLive/src 目錄,可以看到redis-live.conf.example文件,這個文件是 RedisLive 的示例配置文件,內容如下:

技術分享

  • RedisServers:監控的 Redis 實例列表,RedisLive 支持同時監控多個 Redis 實例

  • RedisStatsServer:用來存儲監控數據的 Redis 實例,此配置不同於 RedisServers,RedisLive 並不監控 RedisStatsServer,RedisStatsServer 只是用作存儲監控數據使用

  • DataStoreType:監控數據的存儲方案,可以配置為redis或者sqlite

  • SqliteStatsStore:存儲監控數據的 sqlite 配置

我們實例使用的redis-live.conf(需要去除.example後綴)置如下所示:

技術分享

即監控的 Redis 實例為 127.0.0.1:6379 ,使用 sqlite 作用存儲監控數據方案,sqlite 數據庫路徑為
db/redislive.sqlite
配置完成後,便可以將 RedisLive 運行起來。RedisLive 的運行包括兩個部分(在 RedisLive/src 目錄),redis-monitor.py用於向 Redis 實例發送 INFO 和 MONITOR 命令並獲取其返回,redis-live.py用於運行 Web 服務器。

我們首先啟動redis-monitor.py腳本,並將duration參數設置為 120 秒。duration參數指定了監控腳本的運行持續時間,例如設置為 120 秒,即經過 120 秒後,監控腳本會自動退出,並在終端打印 shutting down… 的提示。

./redis-monitor.py --duration=120

接下來啟動 Web 服務器:

./redis-live.py

打開瀏覽器,在地址欄輸入 http://localhost:8888/index.html,按下回車後,便可以看到 Redis 實例的監控數據。

技術分享

需要指出的是,由於redis-monitor.py腳本采用向 Redis 實例發送 MONITOR 命令和 INFO 命令的方式來取得監控數據,而 MONITOR 命令對於 Redis 實例的性能有較大影響,因此,對於生產環境下的redis-monitor.py的部署,需要設置一個較適宜的duration參數,並使用 crontab 來定時執行該腳本。

參考資料

  1. https://github.com/nkrode/RedisLive

  2. http://www.nkrode.com/article/real-time-dashboard-for-redis

  3. http://wxmimperio.tk/2016/02/25/Redis-Monitor-Tools/

  4. 深入理解Redis,Jeremy Nelson 著,汪佳南譯,電子工業出版社,2017年4月

  5. http://redis.io/commands/monitor

原文地址:http://www.linuxprobe.com/redis-graphical-redislive.html

本文出自 “小華的博客” 博客,請務必保留此出處http://coderhsf.blog.51cto.com/12629645/1932129

詳解Redis 可視化圖形監控界面 RedisLive