Je vais faire un élément de surveillance pour le processus de démarrage de Tomcat.
Commencez par vérifier l'opération avec zabbix_get
.
$ zabbix_get -s 192.168.200.24 -k proc.num[httpd]
6
$ zabbix_get -s 192.168.200.24 -k proc.num[tomcat]
0
Comment obtenez-vous Tomcat ...?
La réponse est la suivante
$ zabbix_get -s 192.168.200.24 -k proc.num[java,,,"org.apache.catalina.startup.Bootstrap start"]
1
Il y avait une utilisation dans Documentation Zabbix 2.2, donc si vous le recherchez, vous devez connaître le nom du processus. Sache que.
proc.num[<name>,<user>,<state>,<cmdline>]
--name --Nom du processus (la valeur par défaut est "tous les processus") --user --Nom d'utilisateur (la valeur par défaut est "tous les utilisateurs") --state - valeurs possibles: all (par défaut), run, sleep, zomb --cmdline --Filtre de ligne de commande (expression régulière)
Vérifiez l'état du tomcat en cours d'exécution.
$ systemctl status tomcat
● tomcat.service - Apache Tomcat 8
Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled)
Active: active (exited)depuis l'arbre 2020-02-06 15:01:19 JST; 1h 29min ago
Process: 844 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 844 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/tomcat.service
└─875 /usr/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.prot...
06 février 15:01:19 192.168.200.24 systemd[1]: Starting Apache Tomcat 8...
06 février 15:01:19 192.168.200.24 systemd[1]: Started Apache Tomcat 8.
Examinez plus en détail le PID «875».
$ cat /proc/875/stat
875 (java) S 1 844 844 0 -1 1077944320 19379 0 124 0 937 64 0 0 20 0 41 0 752 2357014528 21813 18446744073709551615 4194304 4196524 140724105374304 140724105356960 140023800299543 0 0 2 16800973 18446744073709551615 0 0 17 0 0 0 5 0 0 6294912 6295604 12607488 140724105383058 140724105383592 140724105383592 140724105383914 0
La partie entre () est le nom du processus.
Le nom du processus exécutant tomcat semble être java
.
$ zabbix_get -s 192.168.200.24 -k proc.num[java]
1
J? ai compris!
... mais remarquez soudainement. Il ne s'agit que d'un processus Java et il ne peut pas être déterminé s'il s'agit d'un processus tomcat.
$ ps aux | grep java
tomcat 875 0.1 8.6 2301772 87452 ? Sl 15:01 0:10 /usr/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
Apparemment, ce processus est exécuté par tomcat.
$ zabbix_get -s 192.168.200.24 -k proc.num[java,tomcat]
1
J? ai compris.
Cependant, si vous y réfléchissez bien, l'utilisateur tomcat exécute simplement la commande java. J'ai remarqué que je ne surveille pas le ** processus de démarrage de Tomcat **.
J'ai vérifié le processus et remarqué. L'option était longue et difficile à comprendre, mais il existe une description du processus de démarrage (ʻorg.apache.catalina.startup.Bootstrap start`).
$ ps aux | grep java
tomcat 2023 83.6 7.3 2299724 74204 ? Sl 17:26 0:02
/usr/bin/java
-Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djdk.tls.ephemeralDHKeySize=2048
-Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Dorg.apache.catalina.security.SecurityListener.UMASK=0027
-Dignore.endorsed.dirs=
-classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
-Dcatalina.base=/opt/tomcat
-Dcatalina.home=/opt/tomcat
-Djava.io.tmpdir=/opt/tomcat/temp
org.apache.catalina.startup.Bootstrap start
proc.num[<name>,<user>,<state>,<cmdline>]
Il semble qu'il puisse être extrait en utilisant la ligne de commande du 4ème argument.
$ zabbix_get -s 192.168.200.24 -k proc.num[java,,,"org.apache.catalina.startup.Bootstrap start"]
1
J'ai pu obtenir le décompte du processus de démarrage en toute sécurité. Je ne l'ai pas écrit parce que je pensais que cela n'avait pas beaucoup de sens d'être un utilisateur de Tomcat.
Je l'ai écrit pendant longtemps.
J'ai aussi vu une description qui dit proc.num [java, tomcat]
, donc j'ai introduit ceci.
Selon la façon dont vous installez Tomcat, cela peut différer de la méthode ci-dessus, mais si vous savez comment le vérifier, l'application fonctionnera. Dans mon cas, j'ai téléchargé et développé la source et l'ai installée. Référence: J'ai essayé de lier Apache et Tomcat
Recommended Posts