I try to store a Temperature using RRD4J but it doesn’t work. My item looks as follows:
Number DHT_Temperature "[%s] °C"
the rrd4j.persist contains
everyMinute : "0 * * * * ?"
everyHour : "0 0 * * * ?"
everyDay : "0 0 0 * * ?"
default = everyChange
DHT_Temperature : strategy = everyMinute, restoreOnStartup
When I start openhab the corresponding file ‘persistence/rrd4j/DHT_Temperature.rrd’ was created, but nothing is stored. The Timestamp of the file stays constant. Can you give me some hints how to fix this problem?
You should also have a file rrd4j.cfg in which at least the items you need to persist are set.
I tried it with the default rrd4j.cfg, since I expected that default_numeric applies without explicitly specifing it:
# please note that currently the first archive in each RRD defines the consolidation
# function (e.g. AVERAGE) used by OpenHAB, thus only one consolidation function is
# fully supported
# default_numeric and default_other are internally defined defnames and are used as
# defaults when no other defname applies
#<defname>.items=<list of items for this defname>
I also tried it with the following, but still nothing is stored. As far as I understood, I had to remove the .rrd file when I change rrd4j.cfg but this has no effect, too.
Are you sure nothing is persisted? By design a rrd4j database is always of the same size!
Use the REST Api to check if values are in the database.
[Edit] Why are you not creating an archive that holds a value for each Minute,your archive keeps the last value of each 5 minutes.
I switched to a clean docker-container and the configuration is working! Probably is misconfigured something else. Thanks for your support.
The your item “DHT_Temperature” should have not "_"
It should be "DHTTemperature"
I think it solve your problem.