Pull its power supply,  then plug it back in. That's as good a test as any.

On Thu, Feb 28, 2019 at 6:40 AM David Hindley <[email protected]> wrote:

> Thanks for your reply, Tom - much appreciated.
>
> I have removed the fake clock (pending purchase of a RTC) and made the
> change to the file in init.d and restarted weewx with a working network and
> all seems OK, but I guess I won't know fully until the Pi crashes again.
>
> David.
>
> On Thu, 28 Feb 2019 at 13:32, Thomas Keffer <[email protected]> wrote:
>
>> 1. It looks like you're using the WeatherLinkIP logger in your Vantage.
>> These are generally not as reliable as the serial and USB versions and, as
>> you discovered, depend on the network being up before the Vantage is useful.
>>
>> I am not a boot expert, but try this: go into /etc/init.d/weewx and
>> change this
>>
>> ### BEGIN INIT INFO
>> # Provides:          weewx
>> # Required-Start:    $local_fs $remote_fs $syslog $time
>> # Required-Stop:     $local_fs $remote_fs $syslog
>> # Default-Start:     2 3 4 5
>> # Default-Stop:      0 1 6
>> # Short-Description: weewx weather system
>> # Description:       Manages the weewx weather system
>> ### END INIT INFO
>>
>>
>> to this
>>
>> ### BEGIN INIT INFO
>> # Provides:          weewx
>> # Required-Start:    $local_fs $remote_fs $syslog $networking $time
>> # Required-Stop:     $local_fs $remote_fs $syslog
>> # Default-Start:     2 3 4 5
>> # Default-Stop:      0 1 6
>> # Short-Description: weewx weather system
>> # Description:       Manages the weewx weather system
>> ### END INIT INFO
>>
>> This says that the system should not run WeeWX until the network is up.
>> What I'm not sure of is how Debian defines "up." Worth a try.
>>
>> 2. The clock must also be set. Either use a hardware real time clock
>> (RTC), or remove the "fake clock" by following these directions
>> <https://github.com/weewx/weewx/wiki/Raspberry-Pi#b-remove-the-fake-clock>
>> .
>>
>> On Thu, Feb 28, 2019 at 3:57 AM David Hindley <[email protected]>
>> wrote:
>>
>>> Many Thanks.
>>>
>>> 1.  I will do as you suggest re separate log files.
>>>
>>> 3. The cron task was something I had to add after installing the
>>> belchertown skin, just to copy some files from one directory to another, on
>>> the Rpi, before then using sftp to upload to my website. It seems to work
>>> most of the time, but, as you say, this seemed to be when the corruption
>>> occurred.  The CRON job works every five minutes at 1,6,11... minutes past
>>> each hour - on the basis that weewx should have updated the archive etc by
>>> then - maybe that is something to do with it.
>>>
>>> 4. Further down the log file, I see:
>>>
>>> Feb 27 15:17:04 raspberrypi weewx[379]: Starting weewx weather system:
>>> weewxerror: unexpectedly disconnected from boot status daemon
>>>
>>> and then...
>>>
>>> Feb 27 15:17:05 raspberrypi weewx[423]: engine: Initializing weewx
>>> version 3.9.1
>>> Feb 27 15:17:05 raspberrypi weewx[423]: engine: Using Python 2.7.13
>>> (default, Sep 26 2018, 18:42:22) #012[GCC 6.3.0 20170516]
>>> Feb 27 15:17:05 raspberrypi weewx[423]: engine: Platform
>>> Linux-4.14.79-v7+-armv7l-with-debian-9.6
>>> Feb 27 15:17:05 raspberrypi weewx[423]: engine: Locale is 'en_GB.UTF-8'
>>> Feb 27 15:17:05 raspberrypi weewx[423]: engine: pid file is
>>> /var/run/weewx.pid
>>> Feb 27 15:17:05 raspberrypi weewx[467]: engine: Using configuration file
>>> /etc/weewx/weewx.conf
>>> Feb 27 15:17:05 raspberrypi weewx[467]: engine: Debug is 1
>>> Feb 27 15:17:05 raspberrypi weewx[379]: .
>>> Feb 27 15:17:05 raspberrypi systemd[1]: Started LSB: weewx weather
>>> system.
>>> Feb 27 15:17:05 raspberrypi weewx[467]: engine: Initializing engine
>>> Feb 27 15:17:05 raspberrypi weewx[467]: engine: Loading station type
>>> Vantage (weewx.drivers.vantage)
>>> Feb 27 15:17:06 raspberrypi weewx[467]: vantage: Driver version is 3.1.1
>>> Feb 27 15:17:06 raspberrypi weewx[467]: vantage: Socket error while
>>> opening port 22222 to ethernet host 10.0.1.83.
>>> Feb 27 15:17:06 raspberrypi weewx[467]: import of driver failed: [Errno
>>> 101] Network is unreachable (<class 'weewx.WeeWxIOError'>)
>>> Feb 27 15:17:06 raspberrypi weewx[467]: engine: Unable to load driver:
>>> [Errno 101] Network is unreachable
>>> Feb 27 15:17:06 raspberrypi weewx[467]:     ****  Exiting...
>>>
>>> So, looks like the internet connection went down perhaps? (I was away
>>> when all this happened yesterday, so not sure)
>>>
>>> Good point re making sure weewx doesn't restart until it has a sensible
>>> time via valid NTP connection - any idea how I do that?  I will order an
>>> RTC anyway I think.
>>>
>>> Thanks
>>>
>>> David.
>>>
>>> On Thu, 28 Feb 2019 at 11:25, Andrew Milner <[email protected]>
>>> wrote:
>>>
>>>> 1.  I recommend you put weewx log messages in their own log file - see
>>>> wiki for a) separate logfile and also logrotation.
>>>> 2.  The ^@ rubbish looks like possible corruption whilst executing a
>>>> cron task
>>>> 3.  What cron task was it trying to execute
>>>> 4.  I see the clock has gone backwards around the rubbish point -
>>>> implying the rpi has rebooted itself.  If that is the case you need to
>>>> ensure that weewx does not restart again until it has a sensible time - or
>>>> fit an RTC to your rpi
>>>>
>>>> All looks like some form of corruption - power supply perhaps or memory
>>>> card problem which is then causing a pi reboot and should cause a weewx
>>>> restart - but the log portion you posted does not run long enough to give
>>>> weewx restart details and ensure it held off until it had a valid time and
>>>> ntp connection.
>>>>
>>>>
>>>>
>>>> On Thursday, 28 February 2019 13:10:57 UTC+2, David Hindley wrote:
>>>>>
>>>>> Thanks.  I agree that it is probably the Raspberry Pi, rather than
>>>>> weewx.  My syslog file around the relevant time that it stopped working
>>>>> yesterday is as follows.  Does anyone have any idea how to interpret this?
>>>>> The "^@" is very puzzling to a linux novice such as me!
>>>>>
>>>>> David.
>>>>>
>>>>> Feb 27 15:30:28 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /belchertown/graphs/index.html
>>>>> Feb 27 15:30:28 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /belchertown/records
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /belchertown/records/index.html
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /belchertown/reports
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /belchertown/reports/index.html
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /belchertown/about
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /belchertown/about/index.html
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /belchertown/images
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /reports
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /reports/index.html
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /about
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: uploaded file
>>>>> /about/index.html
>>>>> Feb 27 15:30:29 raspberrypi weewx[9312]: sftp: create remote directory
>>>>> /images
>>>>> Feb 27 15:30:30 raspberrypi weewx[9312]: sftpgenerator: transferred 34
>>>>> files in 7.72 seconds
>>>>> Feb 27 15:30:30 raspberrypi weewx[9312]: reportengine: Running report
>>>>> 'Highcharts_Belchertown'
>>>>> Feb 27 15:30:30 raspberrypi weewx[9312]: reportengine: Found
>>>>> configuration file /etc/weewx/skins/Highcharts_Belchertown/skin.conf for
>>>>> report 'Highcharts_Belchertown'
>>>>> Feb 27 15:30:30 raspberrypi weewx[9312]: cheetahgenerator: using
>>>>> search list ['weewx.cheetahgenerator.Almanac',
>>>>> 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current',
>>>>> 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo',
>>>>> 'weewx.cheetahgenerator.Extras', 'user.belchertown_highchartsSearchX.$
>>>>> Feb 27 15:30:30 raspberrypi weewx[9312]: manager: Daily summary
>>>>> version is 2.0
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: cheetahgenerator: Generated 4
>>>>> files for report Highcharts_Belchertown in 14.36 seconds
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: copygenerator: copied 0 files
>>>>> to /var/www/html/weewx/belchertown
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: reportengine: Running report
>>>>> 'Belchertown'
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: reportengine: Found
>>>>> configuration file /etc/weewx/skins/Belchertown/skin.conf for report
>>>>> 'Belchertown'
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: cheetahgenerator: using
>>>>> search list ['weewx.cheetahgenerator.Almanac',
>>>>> 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current',
>>>>> 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo',
>>>>> 'weewx.cheetahgenerator.Extras', 'user.belchertown.getData']
>>>>> Feb 27 15:30:44 raspberrypi weewx[9312]: manager: Daily summary
>>>>> version is 2.0
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: cheetahgenerator: Generated
>>>>> 12 files for report Belchertown in 3.13 seconds
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: copygenerator: copied 1 files
>>>>> to /var/www/html/weewx/belchertown
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: reportengine: Running report
>>>>> 'FTP'
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: reportengine: Found
>>>>> configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: ftpgenerator: FTP upload not
>>>>> requested. Skipped.
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: reportengine: Running report
>>>>> 'RSYNC'
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: reportengine: Found
>>>>> configuration file /etc/weewx/skins/Rsync/skin.conf for report 'RSYNC'
>>>>> Feb 27 15:30:47 raspberrypi weewx[9312]: rsyncgenerator: rsync upload
>>>>> not requested. Skipped.
>>>>> Feb 27 15:31:01 raspberrypi CRON[12528]: (pi) CMD (sudo cp -f
>>>>> /var/www/html/weewx/belchertown/json/day.json
>>>>> /var/www/html/weewx/belchertown/json/week.json
>>>>> /var/www/html/weewx/belchertown/json/month.json
>>>>> /var/www/html/weewx/belchertown/json/year.json /var/www/html/weewx/json)
>>>>>
>>>>> ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@$
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Booting Linux on
>>>>> physical CPU 0x0
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Linux version
>>>>> 4.14.79-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG
>>>>> crosstool-ng-1.22.0-88-g8460611)) #1159 SMP Sun Nov 4 17:50:20 GMT 2018
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] CPU: ARMv7
>>>>> Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] CPU: div
>>>>> instructions available: patching division code
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] CPU: PIPT / VIPT
>>>>> nonaliasing data cache, VIPT aliasing instruction cache
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] OF: fdt: Machine
>>>>> model: Raspberry Pi 3 Model B Plus Rev 1.3
>>>>> Feb 27 15:17:04 raspberrypi fake-hwclock[87]: Wed 27 Feb 15:17:01 UTC
>>>>> 2019
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Memory policy: Data
>>>>> cache writealloc
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] cma: Reserved 8 MiB
>>>>> at 0x3ac00000
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] On node 0
>>>>> totalpages: 242688
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000]
>>>>> free_area_init_node: node 0, pgdat 80c85280, node_mem_map ba39f000
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000]   Normal zone: 2133
>>>>> pages used for memmap
>>>>> Feb 27 15:17:04 raspberrypi systemd[1]: Started Apply Kernel Variables.
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000]   Normal zone: 0
>>>>> pages reserved
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000]   Normal zone:
>>>>> 242688 pages, LIFO batch:31
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] percpu: Embedded 17
>>>>> pages/cpu @ba348000 s38720 r8192 d22720 u69632
>>>>> Feb 27 15:17:04 raspberrypi systemd[1]: Started File System Check
>>>>> Daemon to report status.
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] pcpu-alloc: s38720
>>>>> r8192 d22720 u69632 alloc=17*4096
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] pcpu-alloc: [0] 0
>>>>> [0] 1 [0] 2 [0] 3
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Built 1 zonelists,
>>>>> mobility grouping on.  Total pages: 240555
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Kernel command
>>>>> line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=640 bcm2708_fb.fbheight=480
>>>>> bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000
>>>>> dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p7
>>>>> rootfstype=ext4 elevator=deadli$
>>>>> Feb 27 15:17:04 raspberrypi systemd-fsck[119]: e2fsck 1.43.4
>>>>> (31-Jan-2017)
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] PID hash table
>>>>> entries: 4096 (order: 2, 16384 bytes)
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Dentry cache hash
>>>>> table entries: 131072 (order: 7, 524288 bytes)
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Inode-cache hash
>>>>> table entries: 65536 (order: 6, 262144 bytes)
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Memory:
>>>>> 940232K/970752K available (7168K kernel code, 576K rwdata, 2076K rodata,
>>>>> 1024K init, 698K bss, 22328K reserved, 8192K cma-reserved)
>>>>> Feb 27 15:17:04 raspberrypi systemd[1]: Started Create Static Device
>>>>> Nodes in /dev.
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000] Virtual kernel
>>>>> memory layout:
>>>>> Feb 27 15:17:04 raspberrypi kernel: [    0.000000]     vector  :
>>>>> 0xffff0000 - 0xffff1000   (   4 kB)
>>>>>
>>>>>
>>>>> On Thu, 28 Feb 2019 at 10:33, Andrew Milner <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> The best tip I can give you is to identify why the site is crashing
>>>>>> by looking at the weewx and webserver logs.
>>>>>>
>>>>>> Weewx should never crash per se.  If it encounters an irrecpoverable
>>>>>> situation it should restart.  If it is not restarting Tom would require, 
>>>>>> I
>>>>>> am pretty sure, to see the log of the failure.  The log should also give
>>>>>> you a clue as to the cause of the failure (if it is indeed weewx).
>>>>>>
>>>>>> A more likely cause would be flakey RPi power supply or flakey SD
>>>>>> card - both of which are pretty notorious issues when an RPi is running
>>>>>> 24/7.  If you are also hosting the site on the RPi it is even possible 
>>>>>> that
>>>>>> your site is being hacked from outside and brought down!!!
>>>>>>
>>>>>> So there you have it, in a nutshell.  Find the cause first then try
>>>>>> and find a solution!!!
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thursday, 28 February 2019 11:36:14 UTC+2, [email protected]
>>>>>> wrote:
>>>>>>>
>>>>>>> I use weewx on a Raspberry pi and post my results to my own public
>>>>>>> weather station website (www.ashteadweather.com) with the excellent
>>>>>>> belchertown skin.  It all works very nicely most of the time, but now 
>>>>>>> and
>>>>>>> again, something goes wrong and the Raspberry pi crashes and weewx stops
>>>>>>> working - then my weather website shows out of date results until I 
>>>>>>> notice
>>>>>>> this and restart the pi and weewx - then all fine again.  Has anyone got
>>>>>>> any tips for tracking these problems proactively so as to minimise the
>>>>>>> downtime (rather than waiting until I happen to notice the problem) and
>>>>>>> perhaps getting weewx to show a holding message on the website until the
>>>>>>> problem is corrected?
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>> David.
>>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to a topic in
>>>>>> the Google Groups "weewx-user" group.
>>>>>> To unsubscribe from this topic, visit
>>>>>> https://groups.google.com/d/topic/weewx-user/P7KTI7Xv1CQ/unsubscribe.
>>>>>> To unsubscribe from this group and all its topics, 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 a topic in the
>>>> Google Groups "weewx-user" group.
>>>> To unsubscribe from this topic, visit
>>>> https://groups.google.com/d/topic/weewx-user/P7KTI7Xv1CQ/unsubscribe.
>>>> To unsubscribe from this group and all its topics, 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 a topic in the
>> Google Groups "weewx-user" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/weewx-user/P7KTI7Xv1CQ/unsubscribe.
>> To unsubscribe from this group and all its topics, 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.

Reply via email to