ã©ããã
åŸ æã®Zabbix 3.4ãªãªãŒã¹ãç»å Žããå€ãã®æçšãªæ¹åãããããããŸããããã®äžã«ã¯ãã«ã¹ã¿ã JMXãšã³ããã€ã³ããšMBeanã®æè»ãªæ€åºããããŸããã
ãã£ãããã§ãã
Zabbixã䜿çšããJavaã¢ããªã±ãŒã·ã§ã³ãç£èŠããå¿ èŠãããå Žåãããã§ã-ããŸããŸãªããªãã¯ã«é Œããªããã°ãªããªãåã«ããããããªãã®äººçãã¯ããã«ç°¡åã«ããããšãã§ããŸãã
ãããã®JMXãšã³ããã€ã³ãã®äœãåé¡ã«ãªã£ãŠããŸããïŒ
JMXãä»ããJavaã¢ããªã±ãŒã·ã§ã³ã®ãã€ãã£ãã¢ãã¿ãªã³ã°ã¯ãZabbixã§-ããŒãžã§ã³2.0ãã-ãã£ãšåã«ç»å Žãããã以æ¥ããã®æ©èœã¯ããŒãžã§ã³ããšã«æ¹åãããŠããŸããã ããããJMXãšã³ããã€ã³ãã®ä»¥åã®ãªãªãŒã¹ã§ã¯ãZabbix Java Gatewayã³ãŒãã«å®å
šã«åçŽãªæ¹æ³ã§çµã¿èŸŒãŸããŠããŸããã
å€æããããã«ãJavaã®äžçã§ã¯ä»ã®ãšã³ããã€ã³ãã䜿çšãããœãããŠã§ã¢ããããããããZabbixã®å€ãããŒãžã§ã³ã§ã¯ãã®ãã©ã¡ãŒã¿ãŒãå€æŽã§ããŸããã§ããã å€ãã®ãŠãŒã¶ãŒã«ãšã£ãŠãããã¯å€§ããªåé¡ã«ãªã£ãŠããŸãã ããšãã°ã人æ°ã®ããJBoss EAP 6ã¢ããªã±ãŒã·ã§ã³ãµãŒããŒã¯ã RMIãšJMXServiceURLã®ä»£ããã«ãJMXãžã®ãªã¢ãŒãã¢ã¯ã»ã¹ã«JBoss Remotingãããã³ã«ã䜿çšããŸã ã
service:jmx:remoting-jmx://{HOST.CONN}:{HOST.PORT}
ãŸããããšãã°ãWebSphere 8.5ã¯IIOP ïŒ JRMPã§ã¯ãªãïŒ ã§RMIã䜿çšããŸããJMXServiceURLã¯æ¬¡ã®ããã«ãªããŸãã
service:jmx:iiop://{HOST.CONN}:{HOST.PORT}/jndi/JMXConnector
Zabbix 3.4ã¯ãã®åé¡ã解決ããã ãã§ãã
äœãåãããŸããã§ãã JMXãRMIãJNDIïŒ WTFïŒ
ããŠããŠãããããã¹ãŠã©ã®ããã«æ©èœããããå°ãç解ããŸãããã
JMXïŒJava Management ExtensionsïŒ -ããŸããŸãªãªããžã§ã¯ãïŒãªãœãŒã¹ïŒãç£èŠããã³ç®¡çïŒãªã¢ãŒããå«ãïŒããããã«èšèšãããJavaãã¯ãããžãŒïŒã¢ããªã±ãŒã·ã§ã³ãããã€ã¹ããããã¯ãŒã¯-ãã®ãªããžã§ã¯ãã®ã¿ãJavaã§èšè¿°ãããŠããå Žåã
ãããã®ãªãœãŒã¹ã¯ã MBeanïŒManagedBeanïŒãšåŒã°ããŸã ã ãã®ãããªåãªããžã§ã¯ãã¯ããã®ãªããžã§ã¯ãã®å±æ§ã®å€ã«ã¢ã¯ã»ã¹ãããã®ã¡ãœãããåŒã³åºããŠéç¥ãåãåãããšãã§ããç¹å®ã®ã€ã³ã¿ãŒãã§ãŒã¹ãå®è£ ããŸãïŒã¢ããªã±ãŒã·ã§ã³ã察å¿ããããªã¹ãã³ã°ãMBeanãç»é²ããå ŽåïŒã
MBeanã¯ããªããžã§ã¯ãã¬ãžã¹ããªã§ããMBeanãµãŒããŒã«ç»é²ãããŸãã ç»é²ããããªããžã§ã¯ãã¯ãã¹ãŠã¢ããªã±ãŒã·ã§ã³ã§äœ¿çšå¯èœã«ãªããŸãïŒããæ£ç¢ºã«ã¯ããã®ã€ã³ã¿ãŒãã§ãŒã¹ã䜿çšå¯èœã«ãªããŸãïŒã
ãªãœãŒã¹ã«ã¯ã JMXã³ãã¯ã¿ã䜿çšããŠã¢ã¯ã»ã¹ããŸã ãããã«ãããJMXã¯ã©ã€ã¢ã³ããMBeanãµãŒããŒãå©çšã§ããããã«ãªããŸãã JMXã³ãã¯ã¿ã¯ãã¯ã©ã€ã¢ã³ããšãµãŒããŒã§æ§æãããŸãã ã³ãã¯ã¿ãµãŒããŒã¯MBeanãµãŒããŒã«æ¥ç¶ããã¯ã©ã€ã¢ã³ãããã®æ¥ç¶èŠæ±ããªãã¹ã³ããŸãã éåžžã ã¯ã©ã€ã¢ã³ãã³ãã¯ã¿ã¯å¥ã®JVMã«ãããã»ãšãã©ã®å Žåãã³ãã¯ã¿ãµãŒããŒã«é¢ããŠã¯å¥ã®ãã·ã³ã«ãããŸãã
JMX APIã«ã¯ã Remote Method InvocationïŒRMIïŒã«åºã¥ãæšæºæ¥ç¶ãããã³ã«ããããŸãã ãã®ãããã³ã«ã«ãããJMXã¯ã©ã€ã¢ã³ãã¯MBeanãµãŒããŒäžã®MBeanã«ãªã¢ãŒãã§ã¢ã¯ã»ã¹ã§ããŸãã æšæºã®RMIã«å ããŠãJMXMPãJBoss RemotingãHessianãBurlapãããã«ã¯HTTPããã³SNMPãªã©ã®ãããã³ã«ããããŸãã
MBeanã€ã³ã¿ãŒãã§ã€ã¹ã䜿çšãããšãã¯ã©ã€ã¢ã³ãã¯ãã®ãªããžã§ã¯ãã®ããŸããŸãªã¡ããªãã¯ãåä¿¡ãããããããªãã¯ã¡ãœãããåŒã³åºãããã§ããŸãã
æŠç¥çã«ãã³ã³ããŒãã³ãã®çžäºäœçšã¯æ¬¡ã®ããã«è¡šãããšãã§ããŸãã
Java SEãã©ãããã©ãŒã ã§ããã«äœ¿çšã§ããã¢ããªã±ãŒã·ã§ã³ã«ã¯ããããç£èŠããæ©èœããããŸããRMIã³ãã¯ã¿ã«ãããJavaã¢ããªã±ãŒã·ã§ã³ãèªåçã«ãªã¢ãŒã管çããã³ç£èŠå¯èœã«ãªããŸãã å¿ èŠãªãã©ã¡ãŒã¿ãŒã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ãèµ·åããã ãã§ãJMXã¯ã©ã€ã¢ã³ãïŒããã³Zabbix Javaã²ãŒããŠã§ã€ã¯JMXã¯ã©ã€ã¢ã³ãïŒã¯æ¢ã«ãªã¢ãŒãã§æ¥ç¶ããå¿ èŠãªã¡ããªãã¯ãåä¿¡ã§ããŸãã
æ¥ç¶ããç¹å®ã®ã¢ããªã±ãŒã·ã§ã³ãJMXã¯ã©ã€ã¢ã³ãã«ç€ºãããã«ãJMXãšã³ããã€ã³ãïŒå¥åJMXServiceURL ïŒãšåŒã°ããç¹å¥ãªã¢ãã¬ã¹ã䜿çšãããŸã ã å³å¯ã«èšãã°ãããã¯JMX APIã³ãã¯ã¿ãµãŒããŒã®ã¢ãã¬ã¹ã§ãã ãã®ã¢ãã¬ã¹ã®åœ¢åŒã¯ã RFC 2609ããã³RFC 3111ã§å®çŸ©ãããŠããŸã ã äžè¬çã«ã次ã®ããã«ãªããŸãã
service:jmx:protocol:sap
ããã§ã ãserviceïŒjmxïŒãã¯å®æ°ã§ãã
protocolã¯ãã³ãã¯ã¿ãµãŒããŒãžã®æ¥ç¶ã«äœ¿çšããããã©ã³ã¹ããŒããããã³ã«ïŒRMIãJMXMPãªã©ïŒã§ãã
sapã¯ãã³ãã¯ã¿ãµãŒããŒãèŠã€ããã¢ãã¬ã¹ã§ãã ãã®åœ¢åŒã§å®çŸ©ãããŠããŸãïŒããã¯RFC 2609ã§å®çŸ©ãããŠããæ§æã®ãµãã»ããã§ãïŒã
//[host[:port]][url-path]
host [ïŒport] -ipv4ãã¹ãã¢ãã¬ã¹ïŒãŸãã¯è§æ¬åŒ§ã§å²ãŸããipv6ïŒããã³ãªãã·ã§ã³ïŒãããã³ã«ã«å¿ããŠïŒã®ããŒãçªå·ã
url-path-ãªãã·ã§ã³ã®URLïŒãããã³ã«ã«å¿ããŠå¿
èŠïŒã
äŸã§ãããç解ããã®ãæåã§ãã å€ãã®å Žåããã®ãããªJMXãšã³ããã€ã³ããèŠã€ããããšãã§ããŸãã
service:jmx:rmi://host:port1/jndi/rmi://host:port2/jmxrmi
ããããå®éã«ã¯ããã¹ãŠãããã»ã©æãããã§ã¯ãããŸããã
hostã¯ãã¢ããªã±ãŒã·ã§ã³ãå®è¡ãããŠããã¿ãŒã²ãããã¹ãã§ãã
port1ã¯ãæ¥ç¶ããRMIãµãŒããŒã®ããŒãã§ãã
port2ã¯RMIã¬ãžã¹ããªããŒãïŒRMIãµãŒããŒãç»é²ãããŠãããã£ã¬ã¯ããªïŒã§ãã ããã©ã«ãïŒ1099ã
RMIã¬ãžã¹ããªãã¯ã©ã€ã¢ã³ãã®èŠæ±ã§RMIãµãŒããŒã®ã¢ãã¬ã¹ãšããŒããçºè¡ããããšãããã£ãŠããå Žåãæåã®éšåãåé·ã§ããããšãæããã«ãªããŸãã ãããã£ãŠãã¢ãã¬ã¹ã¯ãã®ã¿ã€ãã«çž®å°ã§ããŸãã
url-pathéšåã¯æåéã次ãæå³ããŸãïŒ/ jndi /ã®çŽåŸã®URLã®éšåãååŸãããã®ã¢ãã¬ã¹ã®RMIã¬ãžã¹ããªãžã®JNDIèŠæ±ãå®è¡ããŠãRMIãµãŒããŒã«é¢ããæ
å ±ãååŸããŸãã ã¬ãžã¹ããªã¯ãå¿çã§ãã¹ããšããŒããè¿ããŸãã
ãã®å Žåã®ããŒãã¯ã©ã³ãã ã«çæããããã¡ã€ã¢ãŠã©ãŒã«ã®èšå®ã«åé¡ãããå¯èœæ§ãããããšã«æ³šæããŠãã ããã ãã®ãããªå ŽåãããŒããæ瀺çã«æå®ã§ããããã以åã®ããŒãžã§ã³ã® JMXãšã³ããã€ã³ãã䜿çšããŸãã
JMXãããæ·±ãç解ãããå Žåã¯ã ãªã©ã¯ã«ã®å ¬åŒããã¥ã¡ã³ããåç §ããããšããå§ãããŸãã
å®éã«ã¯ãã£ãšè¯ãã®ã§ããããïŒ
ãã以äžç°¡åãªãã®ã¯ãããŸãã:)äŸãšããŠJBoss EAP 6.4ã¢ãã¿ãªã³ã°ãèšå®ããŠã¿ãŸãããã
æåã«ãããã€ãã®ä»®å®ãè¡ããŸãã
- Zabbix 3.4ãšZabbix Java Gatewayã¯ãã§ã«ã€ã³ã¹ããŒã«ãããŠããŸãã ãŸã ãªãå Žåã¯ã Zabbixã®ããã¥ã¡ã³ãã«åŸã£ãŠãããè¡ãããšãã§ããŸã ã
- / usr / local /ãã¬ãã£ãã¯ã¹ãä»ããZabbixãµãŒããŒãšJavaã²ãŒããŠã§ã€ã
- JBossã¯ãã§ã«/opt/jboss-eap-6.4/ã«ã€ã³ã¹ããŒã«ãããŠãããã¹ã¿ã³ãã¢ãã³ã¢ãŒãã§èµ·åããŸãã
- å®éšãç°¡åã«ããããã«ãããããã¹ãŠã®ã³ã³ããŒãã³ããåããã·ã³ã§åäœãããšä»®å®ããŸãã
- ãã¡ã€ã¢ãŠã©ãŒã«ãšSELinuxã¯ç¡å¹ã«ãªã£ãŠããŸãïŒãŸãã¯ããã«å¿ããŠæ§æãããŠããŸãããããã¯èšäºã®ç¯å²å€ã§ãïŒã
zabbix_server.confã§ç°¡åãªèšå®ãè¡ããŸãããïŒ
JavaGateway=127.0.0.1 StartJavaPollers=5
ãããŠãzabbix_java / settings.sh configïŒãŸãã¯zabbix_java_gateway.confïŒã§ïŒ
START_POLLERS=5
JBossãæšæºç®¡çããŒãã§ãªãã¹ã³ããŠããããšã確èªããŸãã
$ netstat -natp | grep 9999 tcp 0 0 127.0.0.1:9999 0.0.0.0:* LISTEN 10148/java
次ã«ãJMXã€ã³ã¿ãŒãã§ãŒã¹127.0.0.1:9999ã䜿çšããŠZabbixã§ãã¹ããäœæããŸãããã
æšæºãã³ãã¬ãŒãããã³ãã¬ãŒãã¢ããªãžã§ããªãã¯Java JMXãã䜿çšããŠãã¹ãã«ãªã³ã¯ãããšããšã©ãŒãçºçããŸãã
$ tail -f /tmp/zabbix_java.log
Java Gatewayã¯ãæå®ããããšã³ããã€ã³ããRMIã«ãŸã£ããå¿çããªãããšãéç¥ããŸãã ããŠããã®ããŒãžã§ã³ã®JBossã¯RMIã§ã¯ãªãJBoss Remotingãããã³ã«ã䜿çšããŠããããšããã§ã«ç¥ã£ãŠããã®ã§ãæ£ãããšã³ããã€ã³ããããã¯ããå¿
èŠããããŸãã
Template App Generic Java JMXãã³ãã¬ãŒãã®ãã«ã¯ããŒã³ãäœæããTemplate App Generic Java JMX-remotingãšããååãä»ããŸãããã ãã®ãã³ãã¬ãŒãå ã®ãã¹ãŠã®ããŒã¿èŠçŽ ãéžæããJMXãšã³ããã€ã³ããã©ã¡ãŒã¿ãŒã®äžæ¬æŽæ°æäœãå®è¡ããŸãã 次ã®URLãèšè¿°ããŸãããã
service:jmx:remoting-jmx://{HOST.CONN}:{HOST.PORT}
æ§æãã£ãã·ã¥ãæŽæ°ããŸãã
$ /usr/local/sbin/zabbix_server -R config_cache_reload
ãããŠãŸãééãã
ä»åã¯äœïŒ
ããµããŒããããŠããªããããã³ã«ïŒremoting-jmxãã¯ãJava Gatewayãæå®ããããããã³ã«ã§åäœã§ããªãããšãæå³ããŸãã ããŠã圌ã«æããŸãããã ãremoting-jmxãšZabbixã䜿çšããJBoss EAP 6ç£èŠãã®èšäºããã®ã¢ããã€ã¹ã¯ãããã«åœ¹ç«ã¡ãŸãã
次ã®å 容ã®ã/ needed_modules.txtãã¡ã€ã«ãäœæããŸãã
jboss-as-remoting jboss-logging jboss-logmanager jboss-marshalling jboss-remoting jboss-sasl jcl-over-slf4j jul-to-slf4j-stub log4j-jboss-logmanager remoting-jmx slf4j-api xnio-api xnio-nio
次ã®ã³ãã³ããå®è¡ããŸãã
$ for i in $(cat ~/needed_modules.txt); do find /opt/jboss-eap-6.4 -iname ${i}*.jar -exec cp {} /usr/local/sbin/zabbix_java/lib/ \; ; done
ãããã£ãŠãJava Gatewayã«ã¯jmx-remotingãæäœããããã«å¿
èŠãªãã¹ãŠã®ã¢ãžã¥ãŒã«ãå«ãŸããŸãã æ®ã£ãŠããã®ã¯ãJava Gatewayãåèµ·åããå°ãåŸ
ã£ãŠããã¹ãŠãæ£ããè¡ã£ãå Žåã倧åãªããŒã¿ãZabbixã«æµãå§ããããšã確èªããããšã§ãã
JMXãã£ã¹ã«ããªãŒã«ã€ããŠã¯ã©ãã§ããïŒ
JMXã«ããJavaã¢ããªã±ãŒã·ã§ã³ã®ç£èŠã®ãã€ãã£ããµããŒããç»å Žãããšåæã«ãJMXãã£ã¹ã«ããªãŒãZabbixã«ç»å ŽããŸããã jmx.discoveryããŒããã®æ©èœãæ
åœããŸãïŒãã®æç¹ã§ïŒã ãŸã éåžžã«ç²éãªæ©èœã§ãã£ããããããã«ã€ããŠã®ããã¥ã¡ã³ãã«ã¯èšèããããŸããã§ããïŒ
- ãã£ã«ã¿ãªã³ã°ã®å¯èœæ§ããªãããããã®ãããªæ€åºã«ã¯æå³ããããŸããã ãããŠãæ¢åã®JMXãªããžã§ã¯ãããã¹ãŠçºèŠããå¿ èŠã¯ã»ãšãã©ãããŸããã
- ããã¯éåžžã«é ããœãªã¥ãŒã·ã§ã³ã§ã ããã§ã¯ãMBeanããšã«1ã€ã®ã¯ãšãªãå®è¡ãããéåžžã«å€ãã®ã¯ãšãªãååšããå¯èœæ§ããããŸãã ãã®ãããªãã§ãã¯ã¯ãã¿ã€ã ã¢ãŠãã«ãã£ãŠåçŽã«èœã¡ãå¯èœæ§ãéåžžã«é«ãã§ãã
- ãã®ãã©ãŒã ã§ã¯ããã¹ãå ã«1ã€ã®æ€åºã«ãŒã«ã®ã¿ãäœæã§ããŸãããå®éã«ã¯å€ãã®ã«ãŒã«ãäœæãããã®ã§éåžžã«æ®å¿µã§ãïŒç°ãªãå±æ§ã®ããŒã¿åã¯æ§ãããããããŸããïŒã
Zabbix 3.4ã§ã¯ãã£ã«ã¿ãªã³ã°æ©èœãå°å
¥ãããå€ãã®åé¡ãå³åº§ã«è§£æ±ºãããŸãã
æ°ãããã§ãã¯ã¯æ¬¡ã®ããã«ãªããŸãjmx.discovery[< >,< >]
ãŸããMBeanãŸãã¯ãã®å±æ§ã®æ€åºãå¿
èŠãã©ãããããã³ããããæ€çŽ¢ãããã¿ãŒã³ã«ãã£ãŠæå®ã§ããŸãã
å®éã«è©ŠããŠã¿ãŸãããïŒ ããšãã°ãã¬ããŒãžã³ã¬ã¯ã¿ãŒãç£èŠããŸãã JVMãå®è¡ãããŠãããã©ã¡ãŒã¿ãŒã«ãã£ãŠååãç°ãªãå Žåãããããšãç¥ãããŠããŸãã ãã®ãããããŒã¿é
ç®ã«éçãªååãšããŒãèšå®ããããšã¯ã§ããŸãã-ããã¯jmx.discoveryã®ãžã§ãã§ãã
ãã®ããã¥ã¡ã³ãã§ã¯ã4ã€ã®ãŠãŒã¹ã±ãŒã¹ã«ã€ããŠèª¬æããŠããŸãã
ã㌠| 説æ |
---|---|
jmx.discovery
| ãã¹ãŠã®JMX MBeanå±æ§ã®ååŸ |
jmx.discovery[beans]
| ãã¹ãŠã®JMX MBeanã®ååŸ |
jmx.discovery[attributes,"*:type=GarbageCollector,name=*"]
| ãã¹ãŠã®ã¬ããŒãžã³ã¬ã¯ã¿ãŒå±æ§ã®ååŸ |
jmx.discovery[beans,"*:type=GarbageCollector,name=*"]
| ãã¹ãŠã®ã¬ããŒãžã³ã¬ã¯ã¿ãŒã®ååŸ |
æåã®2ã€ã®ãªãã·ã§ã³ã¯äœ¿çšããŸããã ããã¯ããã©ãŒãã³ã¹ã®ç¹ã§ã¯ããŸãè¯ããããŸããã æåŸã®2ã€ãäœãè¿ãã®ãèŠãŠã¿ãŸãããã
ãã®ç®çã®ããã«ãå¿
èŠãªããŒãšããã¹ãããŒã¿ã¿ã€ããæã€ã¢ã€ãã ãäœæããã ãã§ãã ããããããã¯ããŸã䟿å©ã§ã¯ãããŸããã ãŸããåºåã¯ãã©ãŒããããããŠããããæãããŸãã 第äºã«ããªã¯ãšã¹ããå€æŽããããã«ãã¢ã€ãã ããŒãå€æŽããããŒã¿ãæŽæ°ããããã«ãã°ããåŸ
ã€å¿
èŠããããŸãã
ããã¯ç§ãã¡ã®ããæ¹ã§ã¯ãããŸããã Javaã²ãŒããŠã§ã€ã«ã¢ã¯ã»ã¹ãããšãŒãžã§ã³ãã®ä»£ããã«ãzabbix_getã®ãããªãã®ãå®è¡ããŸãããã ãããè¡ãã«ã¯ã ãã®èšäºã§ææ¡ããæ°ããAPIã®ã¹ã¯ãªãããå°ãå€æŽããŸããjmx_endpointããªã¯ãšã¹ãã«è¿œå ããã¬ã¹ãã³ã¹ããããããŒãåé€ããããã«ä¿®æ£ããŸãã
#!/usr/bin/env bash if [ $# != 6 ] then echo "Usage: $0 <JAVA_GATEWAY_HOST> <JAVA_GATEWAY_PORT> <JMX_SERVER> <JMX_PORT> <JMX_ENDPOINT> <KEY>" exit; fi # create connection exec 3<>/dev/tcp/$1/$2 # compose message MSG="{\"request\": \"java gateway jmx\", \"conn\": \"$3\", \"port\": $4, \"jmx_endpoint\": \"$5\", \"keys\": [\"$6\"]}" # write message length as zero-padded 16-digit hexadecimal number printf -v LEN '%016x' "${#MSG}" # prepare message length in little endian representation BYTES="" for i in {0..14..2} do BYTES="\\x${LEN:$i:2}$BYTES" done # prepend protocol header and message length printf "ZBXD\\1$BYTES%s" "$MSG" >&3 # output the result skipping 6 bytes of "ZBXD\\1" header and 8 bytes of message length tail -c+14 <&3
ããã§ããªã¯ãšã¹ãã«å¿çããŠã²ãŒããŠã§ã€ãè¿ããã®ãç°¡åã«ç¢ºèªã§ããŸãã
$ ./zabbix_get_java.sh 127.0.0.1 10052 127.0.0.1 9999 'service:jmx:remoting-jmx://127.0.0.1:9999' 'jmx.discovery[beans,\"*:type=GarbageCollector,name=*\"]' | jq '.data[0].value | fromjson | .data'
å¿
èŠãªãã®ïŒ
ããšãã°ãæ°åã®ã¡ããªãã¯ã®ã¿ãå¿
èŠãªå Žåããã¹ãŠã®gcãèŠã€ããŠãåã¡ããªãã¯ã®ãããã¿ã€ããäœæã§ããŸãã
- æ€åºã«ãŒã«ãäœæããŸãã MBeanãæ¢ããŠããŸãïŒãšããã§ãã©ãã§ãã«ã¹ã¿ã JMXãšã³ããã€ã³ãã䜿çšãããŠããããšã«æ³šæããŠãã ããïŒã
- é¢å¿ã®ãããã¹ãŠã®ã¡ããªãã¯ã®ãããã¿ã€ããäœæããŸãã ããŒã¿èŠçŽ ãšãã®ããŒã®ååã«ã¯ãJSONã§èŠãä»»æã®ãã¯ãã䜿çšã§ããŸãã
ãã¯ããšããã°ã MBeanãæ€åºããããšãMBeanã®ããããã£ïŒã¿ã€ããååãªã©ïŒã«åºã¥ããŠãã¯ããåçã«çæãããŸãã
åçãã¯ãã䜿çšãããšãã¯ããã®åé¡ã«æ³šæããŠãã ãã ïŒ https : //support.zabbix.com/browse/ZBX-12705
ããããã¬ããŒãžã³ã¬ã¯ã¿ãŒã§å©çšå¯èœãªãã¹ãŠã®æ°å€ã¡ããªãã¯ãäœæãããšããŸãã
- 次ã«ãããŒã¿ã¿ã€ãã«ãããã£ã«ã¿ãŒã䜿çšããŠå±æ§æ€åºã«ãŒã«ãäœæããŸãã
- ãããã¿ã€ãã¯1ã€ã ãã§ãã
ãã®ãããªç°¡åãªæ¹æ³ã§ãä»»æã®Javaã¢ããªã±ãŒã·ã§ã³ãç£èŠã§ããŸãã ããã°ãïŒ :)
Zabbix 3.4ã«ã¢ããã°ã¬ãŒãããæ¹æ³ããããŸãããã©ãããã°ããã§ããïŒ
ã³ãã¥ããã£ã¯ããã®åé¡ãåé¿ããå€ãã®æ¹æ³ãèãåºããŠããŸãã ããã§ããã®ããŒãžã§ã³ã«ã¢ããã°ã¬ãŒãããæ©äŒããªãå Žåã¯ããªã³ã¯1ãš2ãã芧ãã ããã
ãŸãšã
æ°æ©èœã®ãããã§ãZabbixã§Javaã¢ããªã±ãŒã·ã§ã³ãç£èŠããã®ã¯ããèŠçã§ã¯ãããŸããã ããã©ããããæ°ããããŒãžã§ã³ãè¿œå ããããã³ã«ãããã·ã³ãã«ã§æ¥œãããã®ã«ãªããŸãã
ã楜ãã¿ã«ïŒ
PSãã®èšäºã¯ãããã°ã§ãè±èªã§å
¥æã§ããŸãã
Zabbix 3.4ã®ãã®ä»ã®ã€ãããŒã·ã§ã³ã«é¢ããPSSèšäºïŒ
åç §ãªã¹ã
- http://java-course.ru/articles/jmx/
- http://www.javaspecialist.ru/2011/04/jmx-firewall.html
- https://docs.oracle.com/javase/tutorial/jmx/remote/index.html
- https://dzone.com/articles/remote-jmx-access-wildfly-or
- https://habrahabr.ru/post/225527/
- https://jcp.org/en/jsr/detail?id=160
- https://www.denniskanbier.nl/blog/monitoring/jboss-eap-6-monitoring-using-remoting-jmx-and-zabbix/
- https://www.ibm.com/developerworks/ru/library/j-jtp09196/index.html
- https://www.ixxus.com/blog/blog201102monitor-and-manage-alfresco-jmx/