HAProxy Monitoring How-To

From OpenNMS
Jump to navigation Jump to search

Monitoring HAProxy

  1. Install haproxy's netsnmp-perl script from the source package of haproxy as described in the readme file (contrib/netsnmp-perl/README).
  2. Patch haproxy.pl
     101a102
     >
     131a133
     >                  $nextid =~ s/\.0$// if($type<2);
    
  3. Configure OpenNMS
    1. datacollection-config.xml
         <resourceType name="haproxyFrontend" label="haproxy Frontend" resourceLabel="haproxy Frontend ${haproxyFEname}">
           <persistenceSelectorStrategy class="org.opennms.netmgt.collectd.PersistAllSelectorStrategy"/>
           <storageStrategy class="org.opennms.netmgt.dao.support.IndexStorageStrategy"/>
         </resourceType>
      
         <resourceType name="haproxyBackend" label="haproxy Backend" resourceLabel="haproxy Backend ${haproxyBEname}">
           <persistenceSelectorStrategy class="org.opennms.netmgt.collectd.PersistAllSelectorStrategy"/>
           <storageStrategy class="org.opennms.netmgt.dao.support.IndexStorageStrategy"/>
         </resourceType>
      
         <resourceType name="haproxyServer" label="haproxy Server" resourceLabel="haproxy Server ${haproxySRVpxname} ${haproxySRVsvname}">
           <persistenceSelectorStrategy class="org.opennms.netmgt.collectd.PersistAllSelectorStrategy"/>
           <storageStrategy class="org.opennms.netmgt.dao.support.IndexStorageStrategy"/>
         </resourceType>
      

      ...

            <group name="haproxy-frontend-stats" ifType="all">
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.0"  instance="haproxyFrontend" alias="haproxyFEname" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.2"  instance="haproxyFrontend" alias="haproxyFEqcur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.3"  instance="haproxyFrontend" alias="haproxyFEqmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.4"  instance="haproxyFrontend" alias="haproxyFEscur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.5"  instance="haproxyFrontend" alias="haproxyFEsmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.6"  instance="haproxyFrontend" alias="haproxyFEslim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.7"  instance="haproxyFrontend" alias="haproxyFEstot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.8"  instance="haproxyFrontend" alias="haproxyFEbin" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.9"  instance="haproxyFrontend" alias="haproxyFEbout" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.10" instance="haproxyFrontend" alias="haproxyFEdreq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.11" instance="haproxyFrontend" alias="haproxyFEdresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.12" instance="haproxyFrontend" alias="haproxyFEereq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.13" instance="haproxyFrontend" alias="haproxyFEecon" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.14" instance="haproxyFrontend" alias="haproxyFEeresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.15" instance="haproxyFrontend" alias="haproxyFEwretr" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.16" instance="haproxyFrontend" alias="haproxyFEwredis" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.17" instance="haproxyFrontend" alias="haproxyFEstatus" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.18" instance="haproxyFrontend" alias="haproxyFEweight" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.19" instance="haproxyFrontend" alias="haproxyFEact" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.20" instance="haproxyFrontend" alias="haproxyFEbck" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.21" instance="haproxyFrontend" alias="haproxyFEchkfail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.22" instance="haproxyFrontend" alias="haproxyFEchkdown" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.23" instance="haproxyFrontend" alias="haproxyFElastchg" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.24" instance="haproxyFrontend" alias="haproxyFEdowntime" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.25" instance="haproxyFrontend" alias="haproxyFEqlimit" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.30" instance="haproxyFrontend" alias="haproxyFElbtot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.33" instance="haproxyFrontend" alias="haproxyFErate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.34" instance="haproxyFrontend" alias="haproxyFErate_lim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.35" instance="haproxyFrontend" alias="haproxyFErate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.36" instance="haproxyFrontend" alias="haproxyFEcheck_status" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.37" instance="haproxyFrontend" alias="haproxyFEcheck_code" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.38" instance="haproxyFrontend" alias="haproxyFEcheck_duration" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.39" instance="haproxyFrontend" alias="haproxyFEhrsp_1xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.40" instance="haproxyFrontend" alias="haproxyFEhrsp_2xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.41" instance="haproxyFrontend" alias="haproxyFEhrsp_3xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.42" instance="haproxyFrontend" alias="haproxyFEhrsp_4xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.43" instance="haproxyFrontend" alias="haproxyFEhrsp_5xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.44" instance="haproxyFrontend" alias="haproxyFEhrsp_other" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.45" instance="haproxyFrontend" alias="haproxyFEhanafail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.46" instance="haproxyFrontend" alias="haproxyFEreq_rate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.47" instance="haproxyFrontend" alias="haproxyFEreq_rate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.48" instance="haproxyFrontend" alias="haproxyFEreq_tot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.49" instance="haproxyFrontend" alias="haproxyFEcli_abrt" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.0.50" instance="haproxyFrontend" alias="haproxyBEsrv_abrt" type="gauge" />
             </group>
      
            <group name="haproxy-backend-stats" ifType="all">
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.0"  instance="haproxyBackend" alias="haproxyBEname" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.2"  instance="haproxyBackend" alias="haproxyBEqcur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.3"  instance="haproxyBackend" alias="haproxyBEqmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.4"  instance="haproxyBackend" alias="haproxyBEscur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.5"  instance="haproxyBackend" alias="haproxyBEsmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.6"  instance="haproxyBackend" alias="haproxyBEslim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.7"  instance="haproxyBackend" alias="haproxyBEstot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.8"  instance="haproxyBackend" alias="haproxyBEbin" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.9"  instance="haproxyBackend" alias="haproxyBEbout" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.10" instance="haproxyBackend" alias="haproxyBEdreq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.11" instance="haproxyBackend" alias="haproxyBEdresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.12" instance="haproxyBackend" alias="haproxyBEereq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.13" instance="haproxyBackend" alias="haproxyBEecon" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.14" instance="haproxyBackend" alias="haproxyBEeresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.15" instance="haproxyBackend" alias="haproxyBEwretr" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.16" instance="haproxyBackend" alias="haproxyBEwredis" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.17" instance="haproxyBackend" alias="haproxyBEstatus" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.18" instance="haproxyBackend" alias="haproxyBEweight" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.19" instance="haproxyBackend" alias="haproxyBEact" type="gauge" /> 
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.20" instance="haproxyBackend" alias="haproxyBEbck" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.21" instance="haproxyBackend" alias="haproxyBEchkfail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.22" instance="haproxyBackend" alias="haproxyBEchkdown" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.23" instance="haproxyBackend" alias="haproxyBElastchg" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.24" instance="haproxyBackend" alias="haproxyBEdowntime" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.25" instance="haproxyBackend" alias="haproxyBEqlimit" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.30" instance="haproxyBackend" alias="haproxyBElbtot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.33" instance="haproxyBackend" alias="haproxyBErate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.34" instance="haproxyBackend" alias="haproxyBErate_lim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.35" instance="haproxyBackend" alias="haproxyBErate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.36" instance="haproxyBackend" alias="haproxyBEcheck_status" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.37" instance="haproxyBackend" alias="haproxyBEcheck_code" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.38" instance="haproxyBackend" alias="haproxyBEcheck_duration" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.39" instance="haproxyBackend" alias="haproxyBEhrsp_1xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.40" instance="haproxyBackend" alias="haproxyBEhrsp_2xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.41" instance="haproxyBackend" alias="haproxyBEhrsp_3xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.42" instance="haproxyBackend" alias="haproxyBEhrsp_4xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.43" instance="haproxyBackend" alias="haproxyBEhrsp_5xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.44" instance="haproxyBackend" alias="haproxyBEhrsp_other" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.45" instance="haproxyBackend" alias="haproxyBEhanafail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.46" instance="haproxyBackend" alias="haproxyBEreq_rate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.47" instance="haproxyBackend" alias="haproxyBEreq_rate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.48" instance="haproxyBackend" alias="haproxyBEreq_tot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.49" instance="haproxyBackend" alias="haproxyBEcli_abrt" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.1.50" instance="haproxyBackend" alias="haproxyBEsrv_abrt" type="gauge" />
             </group>
      
           <group name="haproxy-server-stats" ifType="all">
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.0"  instance="haproxyServer" alias="haproxySRVpxname" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.1"  instance="haproxyServer" alias="haproxySRVsvname" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.2"  instance="haproxyServer" alias="haproxySRVqcur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.3"  instance="haproxyServer" alias="haproxySRVqmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.4"  instance="haproxyServer" alias="haproxySRVscur" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.5"  instance="haproxyServer" alias="haproxySRVsmax" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.6"  instance="haproxyServer" alias="haproxySRVslim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.7"  instance="haproxyServer" alias="haproxySRVstot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.8"  instance="haproxyServer" alias="haproxySRVbin" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.9"  instance="haproxyServer" alias="haproxySRVbout" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.10" instance="haproxyServer" alias="haproxySRVdreq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.11" instance="haproxyServer" alias="haproxySRVdresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.12" instance="haproxyServer" alias="haproxySRVereq" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.13" instance="haproxyServer" alias="haproxySRVecon" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.14" instance="haproxyServer" alias="haproxySRVeresp" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.15" instance="haproxyServer" alias="haproxySRVwretr" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.16" instance="haproxyServer" alias="haproxySRVwredis" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.17" instance="haproxyServer" alias="haproxySRVstatus" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.18" instance="haproxyServer" alias="haproxySRVweight" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.19" instance="haproxyServer" alias="haproxySRVact" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.20" instance="haproxyServer" alias="haproxySRVbck" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.21" instance="haproxyServer" alias="haproxySRVchkfail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.22" instance="haproxyServer" alias="haproxySRVchkdown" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.23" instance="haproxyServer" alias="haproxySRVlastchg" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.24" instance="haproxyServer" alias="haproxySRVdowntime" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.25" instance="haproxyServer" alias="haproxySRVqlimit" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.30" instance="haproxyServer" alias="haproxySRVlbtot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.33" instance="haproxyServer" alias="haproxySRVrate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.34" instance="haproxyServer" alias="haproxySRVrate_lim" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.35" instance="haproxyServer" alias="haproxySRVrate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.36" instance="haproxyServer" alias="haproxySRVcheck_status" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.37" instance="haproxyServer" alias="haproxySRVcheck_code" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.38" instance="haproxyServer" alias="haproxySRVcheck_duration" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.39" instance="haproxyServer" alias="haproxySRVhrsp_1xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.40" instance="haproxyServer" alias="haproxySRVhrsp_2xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.41" instance="haproxyServer" alias="haproxySRVhrsp_3xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.42" instance="haproxyServer" alias="haproxySRVhrsp_4xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.43" instance="haproxyServer" alias="haproxySRVhrsp_5xx" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.44" instance="haproxyServer" alias="haproxySRVhrsp_other" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.45" instance="haproxyServer" alias="haproxySRVhanafail" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.46" instance="haproxyServer" alias="haproxySRVreq_rate" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.47" instance="haproxyServer" alias="haproxySRVreq_rate_max" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.48" instance="haproxyServer" alias="haproxySRVreq_tot" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.49" instance="haproxyServer" alias="haproxySRVcli_abrt" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.1.2.50" instance="haproxyServer" alias="haproxySRVsrv_abrt" type="gauge" />
            </group>
      
            <group name="haproxy-stats" ifType="ignore">
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="0" alias="haproxyname" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="1" alias="haproxyversion" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="2" alias="haproxyrelease_date" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="3" alias="haproxynbproc" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="4" alias="haproxyprocess_num" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="5" alias="haproxypid" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="6" alias="haproxyuptime" type="string" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="7" alias="haproxyuptime_sec" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="8" alias="haproxymemmax_mb" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="9" alias="haproxyulimit-n" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="10" alias="haproxymaxsock" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="11" alias="haproxymaxconn" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="12" alias="haproxymaxpipes" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="13" alias="haproxycurrconns" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="14" alias="haproxypipesused" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="15" alias="haproxypipesfree" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="16" alias="haproxytasks" type="gauge" /> 
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="17" alias="haproxyrun_queue" type="gauge" />
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="18" alias="haproxynode" type="string" /> 
              <mibObj oid=".1.3.6.1.4.1.29385.106.2.1" instance="19" alias="haproxyversion" type="string" />
            </group>
      

      ...

            <systemDef name="Net-SNMP">
              <sysoidMask>.1.3.6.1.4.1.8072.3.</sysoidMask>
              <collect>
                ...
                <includeGroup>haproxy-frontend-stats</includeGroup>
                <includeGroup>haproxy-backend-stats</includeGroup>
                <includeGroup>haproxy-server-stats</includeGroup>
                <includeGroup>haproxy-stats</includeGroup>
              </collect>
            </systemDef>
      
    2. snmp-graph.properties
      haproxy.currconns,haproxy.fescur, haproxy.fereq_rate, haproxy.bescur, haproxy.bereq_rate, haproxy.srvscur
      

      ...

      report.haproxy.currconns.name=HAProxy current connections
      report.haproxy.currconns.columns=haproxycurrconns
      report.haproxy.currconns.type=nodeSnmp
      report.haproxy.currconns.command=--title="HAProxy current connections" \
       --vertical-label Connections \
       DEF:hapoCuCo={rrd1}:haproxycurrconns:AVERAGE \
       LINE2:hapoCuCo#00FF00:"Current Connect." \
       GPRINT:hapoCuCo:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:hapoCuCo:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:hapoCuCo:MAX:"Max  \\: %8.2lf %s\\n"
      
      report.haproxy.fescur.name=HAProxy current sessions
      report.haproxy.fescur.columns=haproxyFEscur,haproxyFEsmax
      report.haproxy.fescur.type=haproxyFrontend
      report.haproxy.fescur.propertiesValues=haproxyFEname
      report.haproxy.fescur.command=--title="HAProxy current sessions" \
       --vertical-label sessions \
       DEF:scur={rrd1}:haproxyFEscur:AVERAGE \
       DEF:smax={rrd2}:haproxyFEsmax:AVERAGE \
       LINE2:scur#00FF00:"Current Sessions" \
       GPRINT:scur:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:scur:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:scur:MAX:"Max  \\: %8.2lf %s\\n" \
       LINE2:smax#0000FF:"Max Sessions    " \
       GPRINT:smax:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:smax:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:smax:MAX:"Max  \\: %8.2lf %s\\n" 
      
      report.haproxy.fereq_rate.name=HAProxy HTTP request rate
      report.haproxy.fereq_rate.columns=haproxyFEreq_rate
      report.haproxy.fereq_rate.type=haproxyFrontend
      report.haproxy.fereq_rate.propertiesValues=haproxyFEname
      report.haproxy.fereq_rate.command=--title="HAProxy HTTP request rage" \
       --vertical-label sessions \
       DEF:cur={rrd1}:haproxyFEreq_rate:AVERAGE \
       LINE2:cur#00FF00:"Req per Second " \
       GPRINT:cur:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:cur:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:cur:MAX:"Max  \\: %8.2lf %s\\n" 
      
      report.haproxy.bescur.name=HAProxy current sessions
      report.haproxy.bescur.columns=haproxyBEscur,haproxyBEsmax
      report.haproxy.bescur.type=haproxyBackend
      report.haproxy.bescur.propertiesValues=haproxyBEname
      report.haproxy.bescur.command=--title="HAProxy current sessions" \
       --vertical-label sessions \
       DEF:scur={rrd1}:haproxyBEscur:AVERAGE \
       DEF:smax={rrd2}:haproxyBEsmax:AVERAGE \
       LINE2:scur#00FF00:"Current Sessions" \
       GPRINT:scur:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:scur:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:scur:MAX:"Max  \\: %8.2lf %s\\n" \
       LINE2:smax#0000FF:"Max Sessions    " \
       GPRINT:smax:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:smax:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:smax:MAX:"Max  \\: %8.2lf %s\\n" 
      
      
      report.haproxy.bereq_rate.name=HAProxy HTTP request rate
      report.haproxy.bereq_rate.columns=haproxyBEreq_rate
      report.haproxy.bereq_rate.type=haproxyBackend
      report.haproxy.bereq_rate.propertiesValues=haproxyBEname
      report.haproxy.bereq_rate.command=--title="HAProxy HTTP request rage" \
       --vertical-label sessions \
       DEF:cur={rrd1}:haproxyBEreq_rate:AVERAGE \
       LINE2:cur#00FF00:"Req per Second " \
       GPRINT:cur:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:cur:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:cur:MAX:"Max  \\: %8.2lf %s\\n" 
      
      report.haproxy.srvscur.name=HAProxy current sessions
      report.haproxy.srvscur.columns=haproxySRVscur,haproxySRVsmax
      report.haproxy.srvscur.type=haproxyServer
      report.haproxy.srvscur.propertiesValues=haproxySRVsvname
      report.haproxy.srvscur.command=--title="HAProxy current sessions" \
       --vertical-label sessions \
       DEF:scur={rrd1}:haproxySRVscur:AVERAGE \
       DEF:smax={rrd2}:haproxySRVsmax:AVERAGE \
       LINE2:scur#00FF00:"Current Sessions" \
       GPRINT:scur:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:scur:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:scur:MAX:"Max  \\: %8.2lf %s\\n" \
       LINE2:smax#0000FF:"Max Sessions    " \
       GPRINT:smax:AVERAGE:"Avg  \\: %8.2lf %s" \
       GPRINT:smax:MIN:"Min  \\: %8.2lf %s" \
       GPRINT:smax:MAX:"Max  \\: %8.2lf %s\\n" 
      
      
    3. Define Thresholds