摘要:通過這個案例給大家講講監控寶自定義監控,這是我們產品中藏著的一把瑞士軍刀,但由于這個功能是免費的,所以很多用戶反而不太了解。創建一個自定義監控。
IT系統千差萬別,即便是通用的Java、PHP也會由于版本的差異,配置和接口存在大同而小異,但往往就是這些小差別,會對系統的穩定性和性能產生大影響。市面上的IT監控產品都只能對標準應用的流行版本進行準確監控,對于分支版本或企業自己開發的應用系統則需要大量的定制開發才能實現監控,而云智慧監控寶提供一種簡單靈活的監控手段——自定義監控,讓你輕松搞定各種應用系統的性能監控。
下面就用監控寶一個客戶的案例讓大家認識一下自定義監控。
前一段時間,某著名商業企業上線了他們的Tmall系統,云智慧監控寶為其提供了從服務器、應用服務和API接口的監控服務,除此之外,該企業還期望通過交易日志分析了解訂單的狀態和性能統計,這部分功能并非監控寶產品自帶功能,為此云智慧基于監控寶自定義監控功能進行了定制開發,來實現Tmall系統日志分析和監控功能。
監控部署方面比較麻煩,因為Tmall系統是第三方的,非常不愿意我們去監控他們,有很多限制條件,比如不允許日志服務器向外網請求,我們的采集服務只能請求日志服務器,但最終都得到了圓滿的解決。
下面就看看我們怎么用自定義監控搞定Tmall日志監控的。
首先,用Python寫了一個增量日志分析程序,根據Tmall提供的規則把企業所需要的監控指標數據比如訂單總數、失敗訂單數、退款訂單數以及退款失敗訂單數從第三方的日志文件中讀取出來,并寫入我們自己的日志中。
然后,在內網采集器中增加了一個自定義監控的插件,來請求這個日志分析程序獲得監控指標數據。
最后,在監控寶自定義監控中增加了一個監控項目,選擇采集器Python本地獲取數據,實現了這個需求。在部署上,內網采集器獨立部署在一臺能夠訪問公網的服務器上,日志分析程序部署在第三方的日志集中存儲服務器上。
由于在項目開始的時候,沒有認真研究客戶日志樣例文件和規則說明,所以走了一些彎路,所幸很快校正過來,把所有規則三方確認后升級了一版并最終搞定。這里提醒各位做項目的,項目管理控制必要的步驟不能省,債早晚都是要還的。。。
這個項目是典型的先苦后甜,雖然前期掉了不少坑,但后來通過監控寶發現了不少Tmall系統的問題,在客戶面前證明了產品的價值,細節涉及隱私,略過不提。
通過這個案例給大家講講監控寶自定義監控,這是我們產品中藏著的一把瑞士軍刀,但由于這個功能是免費的,所以很多用戶反而不太了解。
為什么會提供這個功能呢?
監控寶靠網站監控打開了一片天地,后來增加了服務器和服務監控,并逐漸支持Apache、Nginx等典型Web應用,在這個過程中我們發現,即使提供再多的標準服務也無法覆蓋廣大用戶不同版本、不同類型的應用,還有不少中、高級用戶會根據需求自己開發的個性化應用。
對監控來說,簡單說就是采集數據、分析結果、給出告警這三個步驟,而客戶的各類個性化應用對我們來說最難的一點在于數據采集。監控寶自定義監控的工作原理非常簡單,就是將數據采集標準化,我們制定了一個標準格式的數據交換文件。
minEnqueueTime:0.0
expiredCount:0
storePercentUsage:0
dequeueCount:906
memoryUsage:96692
consumerCount:3
memoryPercentUsage:0
averageEnqueueTime:14668.775461866415
maxEnqueueTime:1205901.0
dispatchCount:2090
size:92
producerCount:1
enqueueCount:5567
tempPercentUsage:0
定義好這個規則之后,剩下的就簡單了,讓被監控的目標程序或是應用把指標寫成這種格式的文件,做成一個可以被http請求到的資源,不斷的把指標數據值寫進來。之后在自定義監控中創建監控項目,選擇這個規則,就可以了。
舉例說明:
ActiveMQ 是Apache的開源消息總線,如果用自定義監控如何實現ActiveMQ的監控需求呢?
第一步,整理出ActiveMQ監控的指標要求
第二步,寫個程序讀取ActiveMQ的指標數據,這里用到了statistics plugin ,在ActiveMQ中配置一下即可。
配置項灰常簡單,用java寫個進程隔幾秒鐘取一次指標,代碼比較挫,可以無視。
主要是看輸出文件位置:"/Users/jason/workspace/tomcat7065/webapps/root/mqkeyindex.html"
在本機裝個tomcat,這個位置就是默認的應用目錄,mqkeyindex.html就是我們定義的規則文件。
至此,監控指標讀取和輸出完畢,這部分工作一般是客戶自己完成,或是云智慧的工程師來幫客戶以項目方式完成,該企業的日志分析程序就是類似這樣的。
再后面就是監控寶自定義監控的工作了。
因為tomcat在本機,外網訪問不到,所以需要安裝一個采集器,選擇好自定義監控插件即可。操作過程略過。
非常新鮮,剛剛創建的。
創建一個自定義監控。
規則是提前建好的,指標多創建起來好麻煩的說。
這個是創建頁面,這里面的狀態頁其實就是我之前/Users/jason/workspace/tomcat7065/webapps/root/mqkeyindex.html輸出的格式。
這個規則是對照著輸出結果創建的,而用采集器解決了外網訪問不了的問題。
上面提到的那家咖啡企業是采用了“執行內部文件獲取數據”的方式,和這個方式不太一樣,不過這是最簡單和常用的方式。另外,在規則定義中可以定義圖和線的,
最后給大家看下效果吧
自定義監控功能非常強大的,如果數據采集輸出環節技術難度不大的話,可以非常快速的搞定一個客戶的特殊監控需求,所以很多人都最愛自定義監控功能。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/65551.html
摘要:是一個時序數據庫,專門用于存儲時序相關數據,很適合存儲的數據。容器監控數據存儲配置和運行是一個開源的分布式時序數據庫,使用語言開發。的特色功能作為時序數據庫,相比傳統數據庫它有很多特色功能,比如獨有的一些特色函數和連續查詢功能。 本文已獲得原作者__七把刀__授權。 隨著線上服務的全面 docker 化,對 docker 容器的監控就很重要了。SA 的監控系統是物理機的監控,在一個物理...
摘要:是一個時序數據庫,專門用于存儲時序相關數據,很適合存儲的數據。容器監控數據存儲配置和運行是一個開源的分布式時序數據庫,使用語言開發。的特色功能作為時序數據庫,相比傳統數據庫它有很多特色功能,比如獨有的一些特色函數和連續查詢功能。 本文已獲得原作者__七把刀__授權。 隨著線上服務的全面 docker 化,對 docker 容器的監控就很重要了。SA 的監控系統是物理機的監控,在一個物理...
摘要:在我的前文容器可視化監控中心搭建之中我們就實踐過容器的可視化監控,在那篇文章中我們是使用了技術棧來完成的。 showImg(https://segmentfault.com/img/remote/1460000015484084); 概述 性能監控是容器服務必不可少的基礎設施,容器化應用運行于宿主機上,我們需要知道該容器的運行情況,包括 CPU使用率、內存占用、網絡狀況以及磁盤空間等...
摘要:在文末,我會附上一個可加載的模型方便學習中文藝術字渲染用原生可以很容易地繪制文字,但是原生提供的文字效果美化功能十分有限。 showImg(https://segmentfault.com/img/bVWYnb?w=900&h=385); WebGL 可以說是 HTML5 技術生態鏈中最為令人振奮的標準之一,它把 Web 帶入了 3D 的時代。 初識 WebGL 先通過幾個使用 Web...
閱讀 2723·2023-04-25 22:15
閱讀 1804·2021-11-19 09:40
閱讀 2149·2021-09-30 09:48
閱讀 3213·2021-09-03 10:36
閱讀 2026·2021-08-30 09:48
閱讀 1854·2021-08-24 10:00
閱讀 2725·2019-08-30 15:54
閱讀 699·2019-08-30 15:54