weewx stopped Jan 1st, 2021

89 views
Skip to first unread message

marb...@gmail.com

unread,
Jan 10, 2021, 1:35:10 PM1/10/21
to weewx-user

I am a desperately lost. On midnight 1st of Jan 2021 weewx stopped working (well at least I did not see any more output generated on my weewx weather webserver).

The ubuntu 16.04 LTS system was running fine with weewx for about 5 years, I use WMR300 weather station.

I tried to read here in the group and tried several upgrades of python and weewx and some more other ideas but I still can not get it to run... Actually the true reason is, I do not exactly know what I am doing, I am just not experienced enough to help myself.

Is anyone here willing to guide me through the troubleshooting?

Help is much appreciated!

Markus

vince

unread,
Jan 10, 2021, 2:10:21 PM1/10/21
to weewx-user
As always, we need to see some log files.

Set debug=1 in weewx.conf and restart weewx.   Then post excerpts from your /var/log/messages and /var/log/syslog (if your os has both) from the period when you started weewx until it failed.

marb...@gmail.com

unread,
Jan 10, 2021, 2:46:15 PM1/10/21
to weewx-user
Thanks. debug is set to 1 - There is no /var/log/messages but here a few other infos:

tail -f /var/log/syslog
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Finished loading service weewx.engine.StdConvert
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Loading service weewx.engine.StdCalibrate
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Finished loading service weewx.engine.StdCalibrate
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Loading service weewx.engine.StdQC
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Finished loading service weewx.engine.StdQC
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.engine: Loading service weewx.wxservices.StdWXCalculate
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.manager: Daily summary version is 2.0
Jan 10 20:26:16 MyServer weewx[28539] INFO weewx.manager: Daily summaries at V2.0. Patching to V3.0
Jan 10 20:26:16 MyServer weewx[28539] INFO weewx.manager: recalculate_weights: Using database 'weewx.sdb'
Jan 10 20:26:16 MyServer weewx[28539] DEBUG weewx.manager: recalculate_weights: Tranche size 100
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__: Caught unrecoverable exception:
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****  Non-positive value for record field 'interval': 0
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****  Traceback (most recent call last):
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd", line 148, in main
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      engine = weewx.engine.StdEngine(config_dict)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 93, in __init__
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self.loadServices(config_dict)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 161, in loadServices
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      obj = weeutil.weeutil.get_object(svc)(self, config_dict)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxservices.py", line 38, in __init__
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self.db_manager = engine.db_binder.get_manager(data_binding=data_binding, initialize=True)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 534, in get_manager
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self.manager_cache[data_binding] = open_manager(manager_dict, initialize)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 684, in open_manager
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      manager_dict['schema'])
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 164, in open_with_create
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      dbmanager = cls(connection, table_name=table_name, schema=schema)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 831, in __init__
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self.patch_sums()
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1255, in patch_sums
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self.recalculate_weights(start_d=datetime.date(2020,6,1))
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1182, in recalculate_weights
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      self._do_tranche(mark_d, end_of_tranche_d, weight_fn, progress_fn)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1215, in _do_tranche
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      weight = weight_fn(self, rec)
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1366, in _calc_weight
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****      "Non-positive value for record field 'interval': %s" % (record['interval'],))
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****  IntervalError: Non-positive value for record field 'interval': 0
Jan 10 20:28:11 MyServer weewx[28539] CRITICAL __main__:     ****  Exiting.
Jan 10 20:39:01 MyServer CRON[28786]: (root) CMD (  [ -x /usr/lib/php5/maxlifetime ] && [ -x /usr/lib/php5/sessionclean ] && [ -d /var/lib/php5 ] && /usr/lib/php5/sessionclean /var/lib/php5 $(/usr/lib/php5/maxlifetime))
^C

linaro@MyServer:~$ ls -l /usr/share/weewx
total 264
-rw-r--r-- 1 root root  2888 Jan  4 20:43 daemon.py
-rw-r--r-- 1 root root  2712 Jan  9 21:10 daemon.pyc
drwxr-xr-x 2 root root  4096 Jan  9 21:10 schemas
-rw-r--r-- 1 root root 32452 Jan  4 20:43 six.py
-rw-r--r-- 1 root root 31099 Jan  9 21:10 six.pyc
drwxr-xr-x 3 root root  4096 Jan  9 21:10 user
drwxr-xr-x 2 root root  4096 Jan  9 21:10 weecfg
-rwxr-xr-x 1 root root  5637 Jan  4 20:43 wee_config
-rwxr-xr-x 1 root root 45051 Jan  4 20:43 wee_database
drwxr-xr-x 2 root root  4096 Jan  9 21:10 weedb
-rwxr-xr-x 1 root root 16776 Jan  4 20:43 wee_debug
-rwxr-xr-x 1 root root  2195 Jan  4 20:43 wee_device
-rwxr-xr-x 1 root root  3157 Jan  4 20:43 wee_extension
drwxr-xr-x 2 root root  4096 Jan  9 21:09 weeimport
-rwxr-xr-x 1 root root 39016 Jan  4 20:43 wee_import
drwxr-xr-x 2 root root  4096 Jan  9 21:09 weeplot
-rwxr-xr-x 1 root root  3348 Jan  4 20:43 wee_reports
drwxr-xr-x 2 root root  4096 Jan  9 21:10 weeutil
drwxr-xr-x 3 root root  4096 Jan  9 21:10 weewx
-rwxr-xr-x 1 root root  9840 Jan  4 20:43 weewxd
-rwxr-xr-x 1 root root 23741 Jan  4 20:43 wunderfixer

linaro@MyServer:~$ sudo systemctl status weewx.service
● weewx.service - LSB: weewx weather system
   Loaded: loaded (/etc/init.d/weewx; bad; vendor preset: enabled)
   Active: active (exited) since So 2021-01-10 20:26:15 CET; 18min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 28483 ExecStop=/etc/init.d/weewx stop (code=exited, status=0/SUCCESS)
  Process: 28523 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS)

Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****      self.recalculate_weights(start_d=datetime.date(2020,6,1))
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1182, in recalculate_weights
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****      self._do_tranche(mark_d, end_of_tranche_d, weight_fn, progress_fn)
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1215, in _do_tranche
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****      weight = weight_fn(self, rec)
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/manager.py", line 1366, in _calc_weight
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****      "Non-positive value for record field 'interval': %s" % (record['interval']
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****  IntervalError: Non-positive value for record field 'interval': 0
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****  Exiting.
Jan 10 20:42:50 MyServer systemd[1]: Started LSB: weewx weather system.
lines 1-17/17 (END)

vince

unread,
Jan 10, 2021, 4:10:14 PM1/10/21
to weewx-user
On Sunday, January 10, 2021 at 11:46:15 AM UTC-8 marb...@gmail.com wrote:
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****  IntervalError: Non-positive value for record field 'interval': 0
Jan 10 20:28:11 MyServer python2[28539]: weewx[28539] CRITICAL __main__:     ****  Exiting.




There was just another thread about this a day or two ago.  You have to do a little cleanup of your database to remove some odd old records.

 

marb...@gmail.com

unread,
Jan 10, 2021, 4:50:24 PM1/10/21
to weewx-user
I have already read this thread. But I did not succeed. As written I have installed  sqlite3 but I can't get very far....


linaro@MyServer:~$ sqlite3 /var/weewx/weedwx.sdb
SQLite version 3.11.0 2016-02-15 17:29:24
Enter ".help" for usage hints.
sqlite> select dateTime, datetime(dateTime, 'unixepoch', 'localtime'), interval from archive where interval<=0;
Error: unable to open database "/var/weewx/weedwx.sdb": unable to open database file
linaro@MyServer:~$
Message has been deleted

vince

unread,
Jan 10, 2021, 5:00:49 PM1/10/21
to weewx-user
oops - sorry - it is /var/lib/weewx/weewx.sdb  if you installed via the packaged installer.

On Sunday, January 10, 2021 at 1:59:42 PM UTC-8 vince wrote:
You spelled it wrong - it's /var/lib/weewx.sdb
You might also need to preface your command with 'sudo'

marb...@gmail.com

unread,
Jan 10, 2021, 5:33:47 PM1/10/21
to weewx-user
WOW !!! It works again! Thanks so much for your fast help!
Reply all
Reply to author
Forward
0 new messages