Re: [weewx-user] Co-opting the RSYNC skin as a backup solution - even better with report_timing

2017-02-16 Thread Glenn McKechnie
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


On 14 February 2017 at 13:26, Thomas Keffer  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
>>  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 

Re: [weewx-user] Co-opting the RSYNC skin as a backup solution - even better with report_timing

2017-02-13 Thread Thomas Keffer
Very clever!

-tk

On Mon, Feb 13, 2017 at 3:35 PM, Glenn McKechnie 
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
>  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.