I have a working librenms server that has been operating for the last year. I followed the documentation to add Graphite as a database backend so that we can use Grafana dashboards. All seems to be working except only some data is being sent to Graphite.
For example, many routers/switches only show <10 interfaces and only have 1 item on them. Most seem to have ifOutOctets and nothing else. I have left the integration going for a few days and still no changes.
On librenms I ran poller.php -h {device} -m ports -d
This showed the graphite command being sent.
On the graphite server I ran tcpdump port 2003 -vvv -w graphite.pcap
This gave me the packets that were arriving to the server destined for graphite process
In the packets, I searched for the plain text command that libre sent and found it. This meant the issue had to be with graphite.
Found /etc/carbon/carbon.conf and a log section. Turn it on and found errors like ‘Error tagging carbon.agents.ts’ and ‘Error requesting "http://{server ip}/’
I had to update ‘GRAPHITE_URL’ in carbon.conf and all the missing data started coming in
Prehaps. It is important that the Graphite_URL be defined in order for things to work correctly. They will only half work otherwise. For those of use only running Graphite because Libre isn’t using timeseries, we don’t have a working instance of Graphite. The setup guide I used didn’t mention this. Not sure if this is within scope of libre, but might be nice to point out in a note.