Hello,
I have spent 10 or so hours trying to figure out how to get Cacti to graph SNR and ATN from my dslam here at work.
I cant seem to get it to work.
I have followed http://docs.cacti.net/manual:087:3a_adv ... ta_queries
The ATN/SNR values i get easy with a snmpwalk below.
The problem is that i get 16 values when i only have 8 ports and cant figure out how i can get just one of them. Do i need to go through a script? Right now i have done a copy of the interfaces.xml and added the ifSNR / ifATN below. Pointers and help with this should be greatly appreciated.
<ifSNR>
<name>SNR</name>
<method>walk</method>
<source>index</source>
<direction>output</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.2</oid>
</ifSNR>
<ifATN>
<name>SNR</name>
<method>walk</method>
<source>index</source>
<direction>output</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.1</oid>
</ifATN>
ATN
snmpwalk -c public -v 2c x.x.x.x 1.3.6.1.2.1.10.48.1.5.1.1
SNMPv2-SMI::transmission.48.1.5.1.1.1.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.1.2.1.1 = INTEGER: 14
SNMPv2-SMI::transmission.48.1.5.1.1.2.1.2.1 = INTEGER: 16
SNMPv2-SMI::transmission.48.1.5.1.1.2.2.1.1 = INTEGER: 14
SNMPv2-SMI::transmission.48.1.5.1.1.3.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.3.2.1.1 = INTEGER: 9
SNMPv2-SMI::transmission.48.1.5.1.1.4.1.2.1 = INTEGER: 13
SNMPv2-SMI::transmission.48.1.5.1.1.4.2.1.1 = INTEGER: 9
SNMPv2-SMI::transmission.48.1.5.1.1.5.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.5.2.1.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.6.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.6.2.1.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.7.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.1.7.2.1.1 = INTEGER: 9
SNMPv2-SMI::transmission.48.1.5.1.1.8.1.2.1 = INTEGER: 10
SNMPv2-SMI::transmission.48.1.5.1.1.8.2.1.1 = INTEGER: 9
SNR
snmpwalk -c public -v 2c x.x.x.x 1.3.6.1.2.1.10.48.1.5.1.2
SNMPv2-SMI::transmission.48.1.5.1.2.1.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.1.2.1.1 = INTEGER: 12
SNMPv2-SMI::transmission.48.1.5.1.2.2.1.2.1 = INTEGER: 3
SNMPv2-SMI::transmission.48.1.5.1.2.2.2.1.1 = INTEGER: 12
SNMPv2-SMI::transmission.48.1.5.1.2.3.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.3.2.1.1 = INTEGER: 14
SNMPv2-SMI::transmission.48.1.5.1.2.4.1.2.1 = INTEGER: 12
SNMPv2-SMI::transmission.48.1.5.1.2.4.2.1.1 = INTEGER: 14
SNMPv2-SMI::transmission.48.1.5.1.2.5.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.5.2.1.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.6.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.6.2.1.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.7.1.2.1 = INTEGER: 0
SNMPv2-SMI::transmission.48.1.5.1.2.7.2.1.1 = INTEGER: 13
SNMPv2-SMI::transmission.48.1.5.1.2.8.1.2.1 = INTEGER: 11
SNMPv2-SMI::transmission.48.1.5.1.2.8.2.1.1 = INTEGER: 13
Zyxel SHDSL DSLAM SNR/ATN
Moderators: Developers, Moderators
This is where the ZyXEL MIB file is handy to find out what those OIDs numbers mean. Then you can go from there on using/discarding the needed data. Maybe the values are the low/high for each port?
| Scripts: Monitor processes | RFC1213 MIB | DOCSIS Stats | Dell PowerEdge | Speedfan | APC UPS | DOCSIS CMTS | 3ware | Motorola Canopy |
| Guides: Windows Install | [HOWTO] Debug Windows NTFS permission problems |
| Tools: Windows All-in-one Installer |
http://docs.cacti.net/manual:087:3a_adv ... alkthroughtripxie wrote:Can you point me to where i can learn / find a similar solution?
| Scripts: Monitor processes | RFC1213 MIB | DOCSIS Stats | Dell PowerEdge | Speedfan | APC UPS | DOCSIS CMTS | 3ware | Motorola Canopy |
| Guides: Windows Install | [HOWTO] Debug Windows NTFS permission problems |
| Tools: Windows All-in-one Installer |
I checked that guide also, it is quite similar to the one i followed.
http://docs.cacti.net/manual:087:3a_adv ... ta_queries
I cant seem to get it to work,If i understand the output (i changed it from output to input) So i can see what data i get from the snmp/xml in cacti
The index for the snr/atn is wrong?
I have 16 values and 8 shdsl interfaces and as far i have seen i cant filter witch of the 2 values i want to use?
Im starting to consider using 8 static OIDS for the shdsl lines and including them into one graph and skipping the dynamic way.
+ Located input field 'ifSNR' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.10.48.1.5.1.2'
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='3'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='14'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='14'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='13'] index: 1 [from value]
+ Found item [ifSNR='11'] index: 1 [from value]
+ Found item [ifSNR='13'] index: 1 [from value]
+ Located input field 'ifATN' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.10.48.1.5.1.1'
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='14'] index: 1 [from value]
+ Found item [ifATN='16'] index: 1 [from value]
+ Found item [ifATN='14'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='13'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='10'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
XML file.
<interface>
<name>Get SNMP SNR/ATN from Zyxel SHDSL</name>
<description>Queries a host for a list of monitorable SNR/ATN interfaces</description>
<oid_index>.1.3.6.1.2.1.2.2.1.1</oid_index>
<fields>
<ifIndex>
<name>Index</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.2.2.1.1</oid>
</ifIndex>
<ifDescr>
<name>Description</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.2.2.1.2</oid>
</ifDescr>
<ifSNR>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.2</oid>
</ifSNR>
<ifATN>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.1</oid>
</ifATN>
</fields>
</interface>
http://docs.cacti.net/manual:087:3a_adv ... ta_queries
I cant seem to get it to work,If i understand the output (i changed it from output to input) So i can see what data i get from the snmp/xml in cacti
The index for the snr/atn is wrong?
I have 16 values and 8 shdsl interfaces and as far i have seen i cant filter witch of the 2 values i want to use?
Im starting to consider using 8 static OIDS for the shdsl lines and including them into one graph and skipping the dynamic way.
+ Located input field 'ifSNR' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.10.48.1.5.1.2'
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='3'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='14'] index: 1 [from value]
+ Found item [ifSNR='12'] index: 1 [from value]
+ Found item [ifSNR='14'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='0'] index: 1 [from value]
+ Found item [ifSNR='13'] index: 1 [from value]
+ Found item [ifSNR='11'] index: 1 [from value]
+ Found item [ifSNR='13'] index: 1 [from value]
+ Located input field 'ifATN' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.10.48.1.5.1.1'
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='14'] index: 1 [from value]
+ Found item [ifATN='16'] index: 1 [from value]
+ Found item [ifATN='14'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='13'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='0'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
+ Found item [ifATN='10'] index: 1 [from value]
+ Found item [ifATN='9'] index: 1 [from value]
XML file.
<interface>
<name>Get SNMP SNR/ATN from Zyxel SHDSL</name>
<description>Queries a host for a list of monitorable SNR/ATN interfaces</description>
<oid_index>.1.3.6.1.2.1.2.2.1.1</oid_index>
<fields>
<ifIndex>
<name>Index</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.2.2.1.1</oid>
</ifIndex>
<ifDescr>
<name>Description</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.2.2.1.2</oid>
</ifDescr>
<ifSNR>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.2</oid>
</ifSNR>
<ifATN>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.1</oid>
</ifATN>
</fields>
</interface>
You're going to have to create a REGEX to spit out an index number, since it's not 'simple'. We're trying to split off the last part of the OID "1.1.2.1", "2.1.2.1", etc and make that the indexes.
Try something like this:
Try something like this:
Code: Select all
<interface>
<name>Get SNMP SNR/ATN from Zyxel SHDSL</name>
<description>Queries a host for a list of monitorable SNR/ATN interfaces</description>
<oid_index>.1.3.6.1.2.1.10.48.1.5.1.1</oid_index>
<oid_index_parse>OID/REGEXP:^.{26}(.*)</oid_index_parse>
<fields>
<Index>
<name>Index</name>
<source>index</source>
<direction>input</direction>
</Index>
<ifDescr>
<name>Description</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.2.2.1.2</oid>
</ifDescr>
<ifSNR>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.2</oid>
</ifSNR>
<ifATN>
<name>SNR</name>
<method>walk</method>
<source>value</source>
<direction>input</direction>
<oid>.1.3.6.1.2.1.10.48.1.5.1.1</oid>
</ifATN>
</fields>
</interface>
| Scripts: Monitor processes | RFC1213 MIB | DOCSIS Stats | Dell PowerEdge | Speedfan | APC UPS | DOCSIS CMTS | 3ware | Motorola Canopy |
| Guides: Windows Install | [HOWTO] Debug Windows NTFS permission problems |
| Tools: Windows All-in-one Installer |
Who is online
Users browsing this forum: No registered users and 1 guest