Report_timing was the clincher (Thanks to your addition to version 3.6.0). I'd already put together something but couldn't find a clean way of running it at set intervals, a long loop? (Ugh), temp files (very messy). Plenty of kludges, nothing clean nor tidy until a stumble when reviewing the code. I'm still learning the ins and outs of weewx, and there's always something to discover - no matter how many times I read the docs or weewx-user !
I should note here that HTML_ROOT can only exist in weewx.conf (not as I indicated above) - it will be ignored if added to a skin.conf file. Other than that, the instructions above, here on weewx-user will work, but those at the wiki are definitive. The corrections have been made their. https://github.com/weewx/weewx/wiki/Using-the-RSYNC- skin-as-a-backup-solution Cheers Glenn rorpi - read only raspberry pi + weewx: now with scripts <https://github.com/glennmckechnie/rorpi-raspberrypi> On 14 February 2017 at 13:26, Thomas Keffer <[email protected]> wrote: > Very clever! > > -tk > > On Mon, Feb 13, 2017 at 3:35 PM, Glenn McKechnie < > [email protected]> wrote: > >> >> In looking for a backup solution for the weewx sqlite databases, I found >> one in the most unlikely of places - weewx. :-) >> >> Because the read only pi >> <https://github.com/glennmckechnie/rorpi-raspberrypi/wiki/Rorpi-Home> I >> bang on about can (optionally) keep the database in its own ramfs, there >> was a need to preserve that in case of failure. >> That aside, having a backup of the database is an essential anyway. >> >> As I understand it, the report cycle in weewx only starts once all writes >> to the database have finished, this provides some assurance that any copy >> of the database taken at that time will be a good one. >> >> How to do it... >> It relies on the ability to use multiple instances of a skin by simply >> giving them their own skin [[section]] name in the weewx.conf file, or >> skin.conf file >> >> [[RSYNCSQL]] >> skin = Rsync >> >> Redefining HTML_ROOT (only within the skin itself) to point to the local >> database >> >> [[RSYNCSQL]] >> skin = Rsync >> HTML_ROOT = /var/lib/weewx >> >> Add the rest to get it to start >> >> [[RSYNCSQL]] >> skin = Rsync >> HTML_ROOT = /var/lib/weewx >> server = 192.168.0.100 >> user = graybeard >> path = /home/graybeard/rsynsql-weewx1 >> >> Finally, add a report_time stanza of your choosing (or not if you want a >> rolling copy) >> It would pay to check your archive_interval in weewx.conf, and make this >> longer than that. >> >> To me, besides catching the database between archive intervals, this the >> real sweetener. >> >> [[RSYNCSQL]] >> skin = Rsync >> HTML_ROOT = /var/lib/weewx >> # If it's local, an ip address is fine for the server >> server = 192.168.0.100 >> # account that has password less access to the server >> user = graybeard >> # where to put it all, don't nest too deeply unless you create >> the tree first >> path = /home/graybeard/rsynsql-weewx >> # every 20 minutes, run this report >> report_timing = '*/20 * * * *' >> # add the default >> delete = 0 >> >> Alternatively, transfer it all to a skin.conf file and that way you can >> make changes >> to your setup while weewx is running. >> >> >> In weewx.conf >> [[RSYNCSQL]] >> skin = Rsyncsql >> #HTML_ROOT = /var/lib/weewx >> # If it's local, an ip address is fine for the server >> #server = 192.168.0.100 >> # account that has password less access to the server >> #user = graybeard >> # where to put it all, don't nest too deeply unless you create >> the tree first >> #path = /home/graybeard/rsynsql-weewx1 >> # every 20 minutes, run this report >> # report_timing = '*/20 * * * *' >> # add the default >> delete = 0 >> >> >> cd skins >> cp -r Rsync Rsyncsql/ >> edit skins/Rsyncsql/skin.conf and add the following after the comments at >> the top... >> >> HTML_ROOT = /var/lib/weewx >> # If it's local, an ip address is fine for the server >> server = 192.168.0.100 >> # account that has password less access to the server >> user = graybeard >> # where to put it all, don't nest too deeply unless you create >> the tree first >> path = /home/graybeard/rsynsql-weewx-skin >> # every 20 minutes, run this report >> report_timing = '*/20 * * * *' >> # add the default >> delete = 0 >> >> Finally, create the passwordless access for the remote user, from the >> local root (the account weewx is running as) >> >> I'll add the above, and expand on it, to the weewx wiki >> >> https://github.com/weewx/weewx/wiki/Using-the-RSYNC-skin-as- >> a-backup-solution >> >> Lastly - >> >> The above works well, but the copy is continuosly updated. I've tweaked >> rsyncupload to add a dated directory structure and that appers to be >> working well although it brings its own problems. I'll post about that >> seperately, on the dev list. >> >> >> >> >> >> >> >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "weewx-user" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > > -- > You received this message because you are subscribed to the Google Groups > "weewx-user" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
