Zabbix監控多個JVM進程

来源:https://www.cnblogs.com/k-free-bolg/archive/2019/09/12/11511675.html
-Advertisement-
Play Games

一、場景說明: 我們這邊的環境用的是微服務,每個程式都是有單獨的進程及單獨的埠號,但用jps查詢出來的結果有些還會有重名的情況,所以某些腳本不太適用本場景; 二、需求說明: 需使用Zabbix-server監控每個Agent上的jvm進程(監控項具體在模板中展示) 三、準備環境: 1.jvm.py ...


一、場景說明:

    我們這邊的環境用的是微服務,每個程式都是有單獨的進程及單獨的埠號,但用jps查詢出來的結果有些還會有重名的情況,所以某些腳本不太適用本場景;

二、需求說明:

      需使用Zabbix-server監控每個Agent上的jvm進程(監控項具體在模板中展示)

三、準備環境:

      1.jvm.py腳本(非本人原創,從Github上直接copy的,此處附上Github地址,可直接去目標地址查看相關說明)

      2.https://github.com/qiueer/zabbix/blob/master/Tomcat/usage.txt(zabbix/Tomcat/{jvm.py|Qiueer-Template JMX Generic.xml}模板和腳本地址)

      3.jdk-8u201-linux-x64.tar.gz

      4.iptables配置或關閉

四、正式安裝

    1.在各個Agent安裝JDK,且配置環境變數(首先上傳至指定目錄下), 每個Agent都如下操作。

    ~]# tar zxvf jdk-8u201-linux-x64.tar.gz
    ~]# vim /etc/profile                                             // 增加以下內容
        #JAVA環境變數
        export JAVA_HOME=/usr/local/jdk1.8.0_201
        export JRE_HOME=${JAVA_HOME}/jre
        export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
        export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
        export PATH=$PATH:${JAVA_PATH}
    ~]# source /etc/profile
    ~]# ln -s /usr/local/jdk1.8.0_201/bin/java /bin/java              // 如果不做此鏈接,則無法獲取到jvm些許信息

            2.上傳cmdline與jvm.py到指定目錄下測試(每個Agent都需這麼操作)

    zabbix_agentd.d]# pwd
      /etc/zabbix/zabbix_agentd.d
    zabbix_agentd.d]# mkdir script
    script]# ll
        -rw-r--r-- 1 wenkai person 20124 Sep 10 18:55 cmdline-jmxclient-0.10.3.jar      // 上傳到/etc/zabbix/zabbix_agentd.d/script目錄
        -rw-r-xr-x 1 root   root   13941 Sep 10 18:57 jvm.py
    script]# python jvm.py --list                                                     // 如果可查到JSON格式的數據則說明腳本可用
    script]# python jvm.py -b 'java.lang:type=Memory' -k 'HeapMemoryUsage.committed' -p 30497
    1020067840

    3.配置web界面模板,將Qiueer-Template JMX Generic.xml模板下載到本地後導入到zabbix中形成新的模板,模板中配有自動發現規則及各個監控項以及觸發器;

    4.當配置完成後等一段時間即可發現被監控主機上的數據,如下....

註意:模板中有些監控項並不適用我們的服務,此處可以停用。

 
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 關於Oracle資料庫的連接失敗問題,有N種情況都會導致,這次遇到的是一般開發或者運維人員難以發現的 場景: 有一臺機A能夠正常連接資料庫並正常運行,機器B連接失敗 32位WebService程式基於.Net4.0開發,部署在IIS上,通過Oracle Client鏈接資料庫 問題排查: IIS啟用 ...
  • 序列化字元串後,值變成了"2018-02-05T00:00:00" 序列化時候 需要更改一下日期轉換方式: IsoDateTimeConverter timeConverter = new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH: ...
  • 前篇已經完成後端配置並獲取到api連接 https://www.cnblogs.com/ouyangkai/p/11504279.html 前端項目用的是VS code編譯器完成 vue 第一步 引入 編寫前端vue 註意以上是用 axios.get方式獲取後端api鏈接獲取數據,並利用vue渲染到 ...
  • 場景 在WInform中使用DevExpress時經常使用PanelControl控制項用來進行佈局設計,因此需要在代碼中生成控制項並添加子控制項。 實現 一種是設置要添加的自控制項的Parent屬性為容器控制項。 最常用的還是通過控制項的Controls屬性的Add方法將子控制項添加進來。 註: 博客首頁: h ...
  • 上一章講了系統如何將客戶端提交的請求數據格式化處理成我們想要的格式並綁定到對應的參數,本章講一下它的“逆過程”,如何將請求結果按照客戶端想要的格式返回去。(ASP.NET Core 系列目錄) 一、常見的返回類型 以系統模板預設生成的Home/Index這個Action來說,為什麼當請求它的時候回返 ...
  • 第一步創建api項目 創建完成啟動F5!! 如圖 資料庫我用的是mysql 用ef操作數據 開發環境:Win10 + VS2019Mysql伺服器版本:8.0.16 1.下載並安裝插件(必備) MySQL-Connector-net-6.9.12 MySQL for Visual Studio 2. ...
  • 很簡單:前一個目錄末尾是目錄的話,最後是否帶/是有區別的。 具體看測試: (shell是zsh。) ...
  • 搭建softether-vpnserver 一、VPN概述 1、VPN概述 : Virtual Private Network 虛擬專用網路。虛擬專用網路的功能是:在公用網路上建立專用網路,進行加密通信。虛擬專用網路可以實現不同網路的組件和資源之間的相互連接。虛擬專用網路能夠利用Internet或其 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...