天天看點

使用zabbix模闆監控tomcat-解決模闆部分監控項不生效問題

在之前的文章中介紹了zabbix使用java-gateway對tomcat進行監控。但是zabbix預設的模闆有一些參數并沒有生效,這就需要我們手動去測試配置。

要對JMX參數進行擷取測試,我們需要用到cmdline-jmxclient.jar。使用這個工具可以友善的捕獲我們需要的JMX參數。

測試準備

測試文法:

1

<code>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.12:12345 java.lang:name=</code><code>"Code Cache"</code><code>,</code><code>type</code><code>=MemoryPool Usage</code>

指令在java-gateway所在的主機上執行,IP所在的主機是需要監控的tomcat伺服器。

對于一些特殊的字元需要轉義:

<code>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.13:12345 Catalina:name=\"http-bio-8080\",</code><code>type</code><code>=GlobalRequestProcessor</code>

檢視Jmx有哪些參數:

<code>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.12:12345</code>

檢視JMX不同類别的參數:

2

<code>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.12:12345|</code><code>grep</code> <code>"java.lang"</code>

<code>java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.12:12345|</code><code>grep</code> <code>"Catalina"</code>

參數調整

目前Zabbix3.2和之前的版本所帶的JVM模闆在key 格式的設定上有一些問題,不能自動的監控,經過測試,下面幾種格式可以監控我們的JVM:

3

4

<code>jmx[java.lang:</code><code>type</code><code>=MemoryPool,name=PS Old Gen][Usage.used]</code>

<code>jmx[java.lang:</code><code>type</code><code>=MemoryPool,name=PS Old Gen][Usage.max]</code>

<code>jmx[</code><code>"Catalina:type=ThreadPool,name=\"http-bio-8080\""</code><code>,currentThreadsBusy]</code>

<code>jmx[</code><code>"Catalina:type=ThreadPool,name=\"http-bio-8080\""</code><code>,maxThreads]</code>

可以使用cmdline-jmxclient.jar工具對模闆中的參數進行修改調試,确認能擷取資料之後再以相同的格式對模闆進行修改。

附件是修改後的模闆,可以添加進行使用,需要注意的是,在導入模闆前,先對原始模闆進行備份重命名。

<a href="http://down.51cto.com/data/2366644" target="_blank">附件:http://down.51cto.com/data/2366644</a>

 本文轉自 酥心糖 51CTO部落格,原文連結:http://blog.51cto.com/tryingstuff/1923577