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"