Custom SNMP Cacti Data Source fails to update
- by Andrew Wilkinson
I'm trying to create a custom SNMP datasource for Cacti but despite everything I can check being correct, it is not creating the rrd file, or updating it even when I create it. Other, standard SNMP sources are working correctly so it's not SNMP or permissions that are the problem.
I've created a new Data Query, which when I click on "Verbose Query" on the device screen returns the following:
+ Running data query [10].
+ Found type = '3' [SNMP Query].
+ Found data query XML file at '/volume1/web/cacti/resource/snmp_queries/syno_volume_stats.xml'
+ XML file parsed ok.
+ missing in XML file, 'Index Count Changed' emulated by counting oid_index entries
+ Executing SNMP walk for list of indexes @ '.1.3.6.1.2.1.25.2.3.1.3' Index Count: 8
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.1' value: 'Physical memory'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.3' value: 'Virtual memory'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.6' value: 'Memory buffers'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.7' value: 'Cached memory'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.10' value: 'Swap space'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.31' value: '/'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.32' value: '/volume1'
+ Index found at OID: '.1.3.6.1.2.1.25.2.3.1.3.33' value: '/opt'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.1' results: '1'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.3' results: '3'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.6' results: '6'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.7' results: '7'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.10' results: '10'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.31' results: '31'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.32' results: '32'
+ index_parse at OID: '.1.3.6.1.2.1.25.2.3.1.3.33' results: '33'
+ Located input field 'index' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.25.2.3.1.3'
+ Found item [index='Physical memory'] index: 1 [from value]
+ Found item [index='Virtual memory'] index: 3 [from value]
+ Found item [index='Memory buffers'] index: 6 [from value]
+ Found item [index='Cached memory'] index: 7 [from value]
+ Found item [index='Swap space'] index: 10 [from value]
+ Found item [index='/'] index: 31 [from value]
+ Found item [index='/volume1'] index: 32 [from value]
+ Found item [index='/opt'] index: 33 [from value]
+ Located input field 'volsizeunit' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.25.2.3.1.4'
+ Found item [volsizeunit='1024 Bytes'] index: 1 [from value]
+ Found item [volsizeunit='1024 Bytes'] index: 3 [from value]
+ Found item [volsizeunit='1024 Bytes'] index: 6 [from value]
+ Found item [volsizeunit='1024 Bytes'] index: 7 [from value]
+ Found item [volsizeunit='1024 Bytes'] index: 10 [from value]
+ Found item [volsizeunit='4096 Bytes'] index: 31 [from value]
+ Found item [volsizeunit='4096 Bytes'] index: 32 [from value]
+ Found item [volsizeunit='4096 Bytes'] index: 33 [from value]
+ Located input field 'volsize' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.25.2.3.1.5'
+ Found item [volsize='1034712'] index: 1 [from value]
+ Found item [volsize='3131792'] index: 3 [from value]
+ Found item [volsize='1034712'] index: 6 [from value]
+ Found item [volsize='775904'] index: 7 [from value]
+ Found item [volsize='2097080'] index: 10 [from value]
+ Found item [volsize='612766'] index: 31 [from value]
+ Found item [volsize='1439812394'] index: 32 [from value]
+ Found item [volsize='1439812394'] index: 33 [from value]
+ Located input field 'volused' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.25.2.3.1.6'
+ Found item [volused='1022520'] index: 1 [from value]
+ Found item [volused='1024096'] index: 3 [from value]
+ Found item [volused='32408'] index: 6 [from value]
+ Found item [volused='775904'] index: 7 [from value]
+ Found item [volused='1576'] index: 10 [from value]
+ Found item [volused='148070'] index: 31 [from value]
+ Found item [volused='682377865'] index: 32 [from value]
+ Found item [volused='682377865'] index: 33 [from value]
AS you can see it appears to be returning the correct data. I've also set up data templates and graph templates to display the data. The create graphs for a device screen shows the correct data, and when selecting one row can clicking create a new data source and graph are created. Unfortunately the data source is never updated. Increasing the poller log level shows that it appears to not even be querying the data source, despite it being used?
What should my next steps to debug this issue be?