Weathermap links report “no valid data” with Librenms docker image v1.65.1-rc2

I have been using the librenms docker images for several months and they have worked very well. I recently tried to enable the Weathermap plugin which was recently added to the docker image. My Weathermap configuration is working except the links are staying grey i.e. no data. It appears I am running in to the problem described here: Weathermap links report "no valid data" with distributed poller (rrdcached)

Because I’m using docker, I can’t apply the workaround directly to the containers. Instead, I set up a cron job to send the “FLUSHALL” to the rrdcached container from the host machine. This works but it’s an ugly solution.

I’m not sure where to report this issue for the librenms docker image so I’m doing it here. Is it possible for the docker image to include this workaround (or a better solution) as part of the Weathermap plugin support? Now that the docker image has converted to the distributed poller, I suspect every Weathermap user will have the same issue.

After getting the workaround working, I looked for ways to implement the same behavior but using only the configuration options supported by the librenms docker images. I was able to make the following configuration changes to display the link bandwidth data in the Weathermap plugin without using the workaround.

For the rrdcached container, change the following environment variables:

WRITE_TIMEOUT=300
WRITE_JITTER=30

This sets rrdcached to flush data to storage every 5 minutes with a random additional delay of 0 to 30 seconds.

Then, in the weathermap configuration file, add the following before any NODE or LINK statements:

SET rrd_period 1100

This overrides the default rrd_period of 800 and increases the look back period in the weathermap plugin to account for the additional time rrdcached takes before it writes the rrd data to storage.

These configuration changes make a trade off between the timeliness of the data displayed on the weathermap vs the efficiency/performance gain provided by rrdcached. As configured above, rrdcached is writing to storage more frequently than the default configuration (5 min. vs 30 min. period) but the data displayed is bounded to between 5 to 10 min. old on the weathermap.

In conclusion, there is no need to make any changes to the librenms docker images to have the weathermap plugin work.

I hope this helps others who may be trying to get the weathermap plugin working with their librenms docker deployments.