Monitoring Microsoft Exchange
Subscribe

From OpenNMS

Jump to: navigation, search

Detecting with Capsd

This howto describe to configure OpenNMS to monitor Microsoft Exchange services. The servicenames come from a german Exchange 2003 Standard. First configure $OPENNMS_HOME/etc/capsd-configuration.xml to detect the services on your Exchange machines. The setup use the integrated Win32ServicePlugin:

 
  <!-- Microsoft Exchange Services -->
  <protocol-plugin protocol="MSEXCH-MTA-Stacks" 
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange MTA-Stacks" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-Informationsspeicher" 
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange-Informationsspeicher" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-Routingmodul" 
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange-Routingmodul" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-Systemaufsicht" 
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin" 
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange-Systemaufsicht" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-Verwaltung" 
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange-Verwaltung" />
  </protocol-plugin>
  <protocol-plugin protocol="Simple-Mail-Transfer-Protocol"
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Simple Mail Transfer Protocol" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-POP3"
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange POP3" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-IMAP4"
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange IMAP4" />
  </protocol-plugin>
  <protocol-plugin protocol="MSEXCH-Replikationsdienst"
    class-name="org.opennms.netmgt.capsd.plugins.Win32ServicePlugin"
    scan="on" user-defined="false">
      <property key="timeout" value="2000" />
      <property key="retry" value="1" />
      <property key="service-name" value="Microsoft Exchange-Standortreplikationsdienst" />
  </protocol-plugin>
  

Monitoring the services

To monitor the service state add the following lines to your $OPENNMS_HOME/etc/poller-configuration.xml:

 
  <!-- Microsoft Exchange -->
  <service name="MSEXCH-MTA-Stacks" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange MTA-Stacks"/>
  </service>
  <service name="MSEXCH-Informationsspeicher" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange-Informationsspeicher"/>
  </service>
  <service name="MSEXCH-Routingmodul" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange-Routingmodul"/>
  </service>
  <service name="MSEXCH-Systemaufsicht" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange-Systemaufsicht"/>
  </service>
  <service name="MSEXCH-Verwaltung" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange-Verwaltung"/>
  </service>
  <service name="Simple-Mail-Transfer-Protocol" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Simple Mail Transfer Protocol"/>
  </service>
  <service name="MSEXCH-POP3" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange POP3"/>
  </service>
  <service name="MSEXCH-IMAP4" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange IMAP4"/>
  </service>
  <service name="MSEXCH-Replikationsdienst" interval="300000"
      user-defined="false" status="on">
      <parameter key="retry" value="6"/>
      <parameter key="timeout" value="4950"/>
      <parameter key="port" value="161"/>
      <parameter key="service-name" value="Microsoft Exchange-Standortreplikationsdienst"/>
  </service>

  <monitor service="MSEXCH-MTA-Stacks" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-Informationsspeicher" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-Routingmodul" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-Systemaufsicht" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-Verwaltung" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="Simple-Mail-Transfer-Protocol" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-POP3" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-IMAP4" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  <monitor service="MSEXCH-Replikationsdienst" class-name="org.opennms.netmgt.poller.monitors.Win32ServiceMonitor"/>
  

Change your timeouts and retry settings to your needs, I have some heavy load machines and on with higher timeouts and more retries I have a lot less 30 second outages.