使用Zabbix/Nagios在Tomcat中进行应用程序级监控

使用Zabbix/Nagios在Tomcat中进行应用程序级监控,tomcat,nagios,zabbix,Tomcat,Nagios,Zabbix,我对Nagios和Zabbix的一个新手很满意。我有一个tomcat,其中部署了3个war文件。我可以使用Nagios监控Tomcat,但我无法监控3个应用程序的单独状态。是否可以使用Nagios/Zabbix单独监控这些应用程序 关于其中任何一个的信息都是令人惊讶的,但我个人喜欢用Nagios,因为我已经习惯了。非常感谢。由于您使用JMX连接到Tomcat(或任何应用程序服务器),我建议您也使用JMX监控应用程序的状态 在zabbix中,您必须为要监视的每个度量创建一个项 在应用程序中,必须注

我对Nagios和Zabbix的一个新手很满意。我有一个tomcat,其中部署了3个war文件。我可以使用Nagios监控Tomcat,但我无法监控3个应用程序的单独状态。是否可以使用Nagios/Zabbix单独监控这些应用程序


关于其中任何一个的信息都是令人惊讶的,但我个人喜欢用Nagios,因为我已经习惯了。非常感谢。

由于您使用JMX连接到Tomcat(或任何应用程序服务器),我建议您也使用JMX监控应用程序的状态

在zabbix中,您必须为要监视的每个度量创建一个项

在应用程序中,必须注册MBean

public void registerNotikumiMBean(String app){
    MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
    Hashtable<String, String> tb = new Hashtable<String, String>();

    tb.put("type", "yourcustomtype");
    tb.put("subtype", "yourcustomid");
    ObjectName on = null;
    try {
        on = new ObjectName("your.pa.cka.ge", tb);
        YourCustomBean mbean = new YourCustom();
        mBeanServer.registerMBean(mbean, on);

    } catch (MalformedObjectNameException e) {
    } catch (InstanceAlreadyExistsException e) {
    } catch (MBeanRegistrationException e) {
    } catch (NotCompliantMBeanException e) {
    }
}
公共无效注册表notikumbiean(字符串应用程序){
MBeanServer MBeanServer=ManagementFactory.getPlatformMBeanServer();
Hashtable tb=新的Hashtable();
tb.put(“type”、“yourcustomtype”);
tb.put(“subtype”、“yourcustomid”);
ObjectName on=null;
试一试{
on=新对象名(“your.pa.cka.ge”,tb);
YourCustomBean mbean=newyourcustom();
registerMBean(mbean,on);
}捕获(格式错误的对象名异常e){
}捕获(InstanceAlreadyExistsException e){
}捕获(MBeanRegistrationException e){
}捕获(不符合BeanException e){
}
}
您可以在下面的链接中找到有关MBean的所有信息

嗨。。谢谢你的解释。但是,我想了解更多关于如何使用Zabbix的信息。对此我有些困惑。Nagios有配置文件。但是,我在扎比克斯找不到任何类似的东西。任何有关这方面的帮助都将不胜感激。谢谢…您通常可以在/etc/init.d/zabbix_agentd.conf/etc/init.d/zabbix_server.conf/etc/init.d/zabbix_java_gateway.conf中找到zabbix配置文件。无论如何,您需要了解zabbix如何连接到tomcat