Weathermap links report "no valid data" with distributed poller (rrdcached)

====================================
Component | Version
--------- | -------
LibreNMS  | 1.53.1
DB Schema | 2019_05_30_225937_device_groups_rewrite (135)
PHP       | 7.2.19
MySQL     | 5.5.60-MariaDB
RRDTool   | 1.7.1
SNMP      | NET-SNMP 5.7.2
====================================

[OK]    Composer Version: 1.8.6
[OK]    Dependencies up-to-date.
[OK]    Database connection successful
[OK]    Database schema correct

Hi,

I’m having some troubles with Weathermap. I first noticed the issue after correcting the problem described here: Weathermap editor not working this morning. I cloned the Weathermap repo again and copied in my config files as well as fixing permissions.

After doing this, I can access Weathermap again, but many of the links are grey (not showing the data. Mouse-over or click on links work, and there is data there.

When running /opt/librenms/html/plugins/Weathermap/map-poller.php from the command line, I get the following errors for each link that has an issue:

WARNING: configs//Kalbakken.conf: ReadData: LINK kalbak-sm521009-003-kalbak-sv1-4500-nyb, target: ./kalbak-sm521009-003.tine.no/port-id29212.rrd:INOCTETS:OUTOCTETS on config line 1827 of configs//Kalbakken.conf had no valid data, according to WeatherMapDataSource_rrd

There are hundreds of links with this error, and around 10 - 15 links that show data correctly. The strange thing is that the links that show data are not consistently the same, meaning that links that show data after running map-poller.php might not show data on the next run, and others might start showing data again.

I realize Weathermap is a separate project, but I hope someone here can point me in the right direction for troubleshooting this issue.

2 Likes

I now think the issue is unrelated the error I fixed by cloning the repo again. Before I noticed this problem, I had prepared the librenms installation to be part of a distributed setup (with rrdcached and memcached).

I’m not thinking the issue has something to do with rrdcached, someone else has described the issue here: Remote RRDCached support in clustered environment? · Issue #48 · librenms-plugins/Weathermap · GitHub

And someone else is describing the issue here, trying to get it fixed in rrdtool: Flush command not being sent to rrdcached when rrdtool connects to daemon on network socket · Issue #884 · oetiker/rrdtool-1.x · GitHub

The workaround I’m using for now is to send “FLUSHALL” to rrdcached using cron, and run map-poller.php 1 minute later. Here are the changes I did in /etc/cron.d/librenms:

1-59/5 * * * * librenms echo ‘FLUSHALL’ | nc -v -w 3 10.230.20.101 42217 >> /dev/null 2>&1
2-59/5 * * * * librenms /opt/librenms/html/plugins/Weathermap/map-poller.php >> /dev/null 2>&1

I have edited the title to better describe the issue.

2 Likes