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 <tkef...@gmail.com> wrote:

> Very clever!
>
> -tk
>
> On Mon, Feb 13, 2017 at 3:35 PM, Glenn McKechnie <
> glenn.mckech...@gmail.com> 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 weewx-user+unsubscr...@googlegroups.com.
>> 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 weewx-user+unsubscr...@googlegroups.com.
> 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 weewx-user+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to