On 01.12.2010 21:55, Krzysztof Olędzki wrote:
On 2010-11-11 12:59, Gerd Müller wrote:
Hi Krzystof,

thank you for your the net-snmp plugin for haproxy. It's a great help.
Since I am using OpenNMS I had to make small patch. OIDs for frontends
and backends end with .0 wheres the actual instance is the last but one.
OpenNMS and other snmp tools expects the instance as last. So here is my
minimal patch. Would be cool if you could apply it to your code.

101a102
>
131a133
>                  $nextid =~ s/\.0$// if($type<2);

Hi Gerd,

Thank you for the patch and raising this issue. Please note however, that we are not able to alter the OIDs format without breaking current installations, so we should avoid such change. So, the only option is to build v2 OIDs and provide both versions.

Also, while the current mainline version always puts "0" here, I have a patch adding subinstances for backends providing separate stats for each call (use_backend, default_backend) from a different frontend/socket. In such case, the last fields is also significant. Currently, I have virtually no time for such activities, but I'm going to push this patch to Willy one day.

At the end, coud you explain why you need this? Why is it not possible to address backends and frontends using two fields, like it is required for servers? Yes, the last one will be "0" but it should not make a problem.

Best regards,

            Krzysztof Olędzki

Hi Krzysztof,

Underneath You will find my OpenNMS configuration for collecting and graphing haproxy stats with OpenNMS. With OpenNMS it's very easy to use your plugin. OpenNMS can "walk" the mibtree to fetch autmaticly *all* instances of frontends, backends and servers. As you can see the problem with the trailing 0 is, that OpenNMS expects the instance to be the very last byte for each oid. Maybe you but could add this mail or a comment about this as README.OpenNMS to your plugin and forward this to Willy. I will describe your plugin and the patch in the OpenNMS wiki, so everybody using haproxy, your plugin and OpenNMS should be able to monitor haproxy with opennms very easyily.

Of course I can live with the manual patching of your plugin but maybe for others it would be helpful if you could make this oid change depending on a script parameter like "haproxy.pl --opennms". :-)

Best regards,

Gerd



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>

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"




Reply via email to