濮阳杆衣贸易有限公司

主頁 > 知識庫 > 利用ganglia監(jiān)控redis的最新解決方法

利用ganglia監(jiān)控redis的最新解決方法

熱門標(biāo)簽:百度商家地圖標(biāo)注怎么做 玄武湖地圖標(biāo)注 西藏教育智能外呼系統(tǒng)價格 太原營銷外呼系統(tǒng) 地圖標(biāo)注如何即時生效 地圖標(biāo)注費用 竹間科技AI電銷機器人 小紅書怎么地圖標(biāo)注店 最簡單的百度地圖標(biāo)注

前言

Ganglia主要用來監(jiān)控系統(tǒng)性能的軟件,通過曲線很容易見到每個節(jié)點的工作狀態(tài),對合理調(diào)整,分配系統(tǒng)資源,提高系統(tǒng)整體性能起到重要作用,支持瀏覽器方式訪問,但不能監(jiān)控節(jié)點硬件技術(shù)指標(biāo)。Ganglia是分布式的監(jiān)控系統(tǒng)。

Redis現(xiàn)在在業(yè)務(wù)中應(yīng)用已經(jīng)很廣泛了,但是如何監(jiān)控redis,實時的觀察redis的性能,在搜索引擎搜索“ganglia監(jiān)控redis”,發(fā)現(xiàn)都是13年的老文章,都是說要到https://github.com/ganglia/gmond_python_modules這個第三方插件庫下載redis監(jiān)控模塊

解決方法

但是我發(fā)現(xiàn)gmond_python_modules這個repo下面已經(jīng)沒有redis模塊了,于是查看git log,發(fā)現(xiàn)redis模塊已經(jīng)集成到ganglia源碼包里了

于是下載了源碼包,搜索之后發(fā)現(xiàn)redis模塊位于gmond/python_modules/db/redis.py,配置文件在gmond/python_modules/conf.d/redis.pyconf.disabled。

修改配置文件里的host和port兩個參數(shù)為要監(jiān)控redis的ip和端口,然后將兩個文件復(fù)制到對應(yīng)的目錄下。(通常redis.pyconf復(fù)制到ganglia安裝目錄/etc/conf.d/下,redis.py復(fù)制到ganglia安裝目錄/lib64/ganglia/python_modules

重啟gmond,可以看到有redis的圖出來了,但是數(shù)據(jù)卻都是空的。

于是停掉gmond,使用gmond -f -d 1啟用調(diào)試模式,發(fā)現(xiàn)redis.py報錯

[PYTHON] Can't call the metric handler function for [connected_clients] in the python module [redis].

Traceback (most recent call last):
File “/opt/gmond/lib64/ganglia/python_modules/redis.py”, line 21, in metric_handler
n, v = line.split(“:”)
ValueError: need more than 1 value to unpack

查看上下文代碼

for line in info.splitlines()[1:]:
 if "" == line:
  continue
 n, v = line.split(":")

大概意思是把redis info命令輸出的每一個非空行用:分割,但是我安裝的redis版本是2.8+,info命令會輸出類似#Server這樣的注釋,這樣就導(dǎo)致按:分割失敗,所以python報錯,gmond取不到值。

所以解決方案也很簡單,把上面那段代碼修改成如下即可,也就是跳過空行和以#開頭的行

for line in info.splitlines()[1:]:
 if "" == line or line[0] == '#':
  continue
 n, v = line.split(":")

再重啟gmond,過一會就可以在ganglia看到數(shù)據(jù)了

==========================================

看了下ganglia在github上的代碼,發(fā)現(xiàn)最新代碼已經(jīng)把這個bug修復(fù)了,只不過還沒有release

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

您可能感興趣的文章:
  • 超強、超詳細(xì)Redis數(shù)據(jù)庫入門教程
  • redis 隊列操作的例子(php)
  • redis常用命令、常見錯誤、配置技巧等分享
  • Redis操作命令總結(jié)
  • Redis中5種數(shù)據(jù)結(jié)構(gòu)的使用場景介紹
  • redis中使用redis-dump導(dǎo)出、導(dǎo)入、還原數(shù)據(jù)實例
  • Python讀寫Redis數(shù)據(jù)庫操作示例

標(biāo)簽:唐山 揚州 景德鎮(zhèn) 贛州 林芝 廣東 香港 澳門

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《利用ganglia監(jiān)控redis的最新解決方法》,本文關(guān)鍵詞  利用,ganglia,監(jiān)控,redis,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《利用ganglia監(jiān)控redis的最新解決方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于利用ganglia監(jiān)控redis的最新解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    阿克陶县| 古丈县| 斗六市| 吴江市| 喀喇沁旗| 剑川县| 崇阳县| 社旗县| 海城市| 页游| 遵义县| 同江市| 玉林市| 扎鲁特旗| 囊谦县| 山东省| 共和县| 司法| 通化县| 岳阳县| 大埔区| 永和县| 邢台县| 顺义区| 嘉峪关市| 民勤县| 开阳县| 山东省| 乌拉特前旗| 天长市| 沙雅县| 济源市| 昌黎县| 綦江县| 凤城市| 衡阳市| 丰顺县| 无为县| 肇庆市| 宜兰市| 磴口县|