Ahh, I see! 

Now I deleted the record and restarted WeeWX but I got an error the with 
timestamp:
****  ViolatedPrecondition: lastUpdate(2021-06-27 13:00:00 CEST 
(1624791600)) > lastRecord(2021-06-26 18:20:00 CEST (1624724400))

So I did a --drop-daily and the -rebuild-daily

Then restarted WeeWX and backfill seems to work without errors!

Did -drop-daily and --rebuild-daily once more after backfill and all is 
good!

Great, thank you Gary for your help!

söndag 27 juni 2021 kl. 12:28:43 UTC+2 skrev gjr80:

> Mikhail,
>
> When I said delete archive records I meant delete the entire record, don't 
> delete the contents of any fields just delete the record. If you only 
> deleted the contents of some fields and left dateTime then WeeWX would 
> consider that record still exists and if that record's dateTime value is 
> after the timestamp of your missing data then the backfill will not occur 
> (actually the backfill will still be attempted, it just won't cover the 
> period of your missing data).
>
> The error you are seeing now is because you deleted the contents of some 
> fields. You have deleted the contents of the usUnits field in one or more 
> records and when various RESTful uploaders try to calculate hourRain WeeWX 
> is finding an hour of archive records where some records have usUnits = 1 
> and some records have no usUnits data. WeeWX cannot accept this and the 
> uploader exits. This is not serious enough to cause WeeWX to fail, so only 
> the uploaders concerned fail. Eventually (most likely within an hour) the 
> period used for hourRain will no longer use the records you modified and 
> normal (error free) operation will occur. Though the missing data (usUnits 
> and any other fields whose contents you deleted) in the modified records 
> will of course still be missing. If it was my data I would restore from 
> backup.
>
> Gary
>
> On Sunday, 27 June 2021 at 19:19:19 UTC+10 [email protected] wrote:
>
>> Gary,
>> thank you for your answer!
>>
>> I tried the first option you wrote, I stopped WeeWX, did a backup of 
>> database, deleted the records after the outage and then restarted WeeWX. 
>> This didn't backfill my database. 
>>
>> I used DB browser for sqlite and just marked all those lines after the 
>> outage and deleted the content of the cells, and then saved the database.
>> The dateTime column didn't get erased but that maybe is ok? Or must that 
>> also be erased?
>>
>> Here are the log file after I started WeeWX, there are some errors, like 
>> " ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain" 
>> Do you have any idea what could be wrong? 
>>
>> Jun 27 10:44:39 raspberrypi weewx[8704] INFO __main__: Initializing weewx 
>> version 4.0.0
>> Jun 27 10:44:39 raspberrypi weewx[8704] INFO __main__: Using Python 
>> 2.7.13 (default, Sep 26 2018, 18:42:22) #012[GCC 6.3.0 20170516]
>> Jun 27 10:44:39 raspberrypi weewx[8704] INFO __main__: Platform 
>> Linux-4.14.98-v7+-armv7l-with-debian-9.9
>> Jun 27 10:44:39 raspberrypi weewx[8704] INFO __main__: Locale is 
>> 'sv_SE.UTF-8'
>> Jun 27 10:44:39 raspberrypi weewx[8704] INFO __main__: PID file is 
>> /var/run/weewx.pid
>> Jun 27 10:44:39 raspberrypi weewx[8692]: Starting weewx weather system: 
>> weewx.
>> Jun 27 10:44:39 raspberrypi systemd[1]: Started LSB: weewx weather system.
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO __main__: Using 
>> configuration file /etc/weewx/weewx.conf
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.engine: Loading 
>> station type FineOffsetUSB (weewx.drivers.fousb)
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.drivers.fousb: driver 
>> version is 1.20
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.drivers.fousb: polling 
>> mode is PERIODIC
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.drivers.fousb: polling 
>> interval is 50
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.drivers.fousb: found 
>> station on USB bus= device=
>> Jun 27 10:44:39 raspberrypi weewxd: pond: using /home/pliggen/log.txt
>> Jun 27 10:44:39 raspberrypi weewxd: pond: using /home/pliggen/log2.txt
>> Jun 27 10:44:39 raspberrypi weewxd: pond: using 
>> /home/pliggen/dht11_humid.txt
>> Jun 27 10:44:39 raspberrypi weewxd: pond: using /home/pliggen/log3.txt
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.engine: StdConvert 
>> target unit is 0x1
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.wxservices: The 
>> following values will be calculated: pressure=prefer_hardware, 
>> barometer=prefer_hardware, altimeter=prefer_hardware, 
>> windchill=prefer_hardware, heatindex=prefer_hardware, 
>> dewpoint=prefer_hardware, inDewpoint=prefer_hardware, 
>> rainRate=prefer_hardware, maxSolarRad=prefer_hardware, 
>> cloudbase=prefer_hardware, humidex=prefer_hardware, 
>> appTemp=prefer_hardware, ET=prefer_hardware, windrun=prefer_hardware
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.wxservices: The 
>> following algorithms will be used for calculations: altimeter=aaASOS, 
>> maxSolarRad=RS
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.engine: Archive will 
>> use data binding wx_binding
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.engine: Record 
>> generation will be attempted in 'software'
>> Jun 27 10:44:39 raspberrypi weewx[8708] INFO weewx.engine: Using archive 
>> interval of 600 seconds (software record generation)
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Zambretti: 
>> forecast version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Zambretti: last 
>> forecast issued 2020-05-04 22:40:00 CEST (1588624800), requested 2020-05-04 
>> 22:40:00 CEST (1588624800)
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Zambretti: 
>> interval=600 max_age=604800 winddir_period=1800 pressure_period=10800 
>> hemisphere=NORTH lower_pressure=950.0 upper_pressure=1050.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: NWS: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: NWS: location 
>> ID (lid) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: NWS: forecast 
>> office ID (foid) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: NWS: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WU: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WU: API key 
>> (api_key) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WU: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: OWM: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: OWM: last 
>> forecast issued 2020-05-04 19:50:58 CEST (1588614658), requested 2020-05-04 
>> 19:50:58 CEST (1588614658)
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: OWM: 
>> interval=10800 max_age=604800 api_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXX2250 
>> location=57.961878399999996,13.750314399999999 fc=5day3hour
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: UKMO: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: UKMO: 
>> interval=10800 max_age=604800 api_key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX5b92 
>> location=2337
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Aeris: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Aeris: client 
>> identifier (client_id) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Aeris: client 
>> secret (client_secret) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: Aeris: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WWO: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WWO: API key 
>> (api_key) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: WWO: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: DS: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: DS: API key 
>> (api_key) is not specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: DS: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: XTide: forecast 
>> version 3.3.0
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: XTide: location 
>> (location) has not been specified
>> Jun 27 10:44:40 raspberrypi weewxd: forecast: MainThread: XTide: forecast 
>> will not be run
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: 
>> StationRegistry: Station will be registered.
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: 
>> Wunderground-PWS: Data for station XXXXXXXXX will be posted
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: PWSweather: 
>> Posting not enabled.
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: CWOP: Posting 
>> not enabled.
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: WOW: Data for 
>> station XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX will be posted
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.restx: AWEKAS: Posting 
>> not enabled.
>> Jun 27 10:44:40 raspberrypi weewxd: restx: WeatherCloud: service version 
>> is 0.11
>> Jun 27 10:44:40 raspberrypi weewxd: restx: WeatherCloud: Data will be 
>> uploaded for id=XXXXXXXXXXXXXX
>> Jun 27 10:44:40 raspberrypi weewxd: restx: OWM: service version is 0.7
>> Jun 27 10:44:40 raspberrypi weewxd: restx: OWM: Data will not be posted: 
>> Missing option 'appid'
>> Jun 27 10:44:40 raspberrypi weewxd: windy: version is 0.6
>> Jun 27 10:44:40 raspberrypi weewxd: windy: Data will be uploaded to 
>> https://stations.windy.com/pws/update
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.mqtt: service version 
>> is 0.23
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.mqtt: binding to 
>> [u'archive', u'loop']
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.mqtt: topic is weather
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.mqtt: desired unit 
>> system is METRIC
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.mqtt: data will be 
>> uploaded to mqtt://192.168.1.199:1883
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 0: "extraTemp2 < 57"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 1: "extraTemp2 > 75"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 2: "extraTemp3 < 37"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 3: "extraTemp3 > 75"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 4: "extraTemp1 < 33"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 5: "extraTemp1 > 65"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm set 
>> for expression 6: "rxCheckPercent == 0"
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO __main__: Starting up weewx 
>> version 4.0.0
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.engine: Using binding 
>> 'wx_binding' to database 'weewx.sdb'
>> Jun 27 10:44:40 raspberrypi weewx[8708] INFO weewx.manager: Starting 
>> backfill of daily summaries
>> Jun 27 10:44:41 raspberrypi weewx[8708] ERROR weewx.drivers.fousb: 
>> unrecognised magic number 1104
>> Jun 27 10:44:41 raspberrypi weewx[8708] INFO weewx.drivers.fousb: 
>> synchronising to the weather station (quality=0)
>> Jun 27 10:44:59 raspberrypi weewx[8708] INFO weewx.drivers.fousb: 
>> unstable read: blocks differ for ptr 0x000000
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO weewx.drivers.fousb: 
>> unstable read: blocks differ for ptr 0x00aa80
>> Jun 27 10:45:00 raspberrypi weewxd: pond: found value of 55.2866
>> Jun 27 10:45:00 raspberrypi weewxd: pond: found value of 70.925
>> Jun 27 10:45:00 raspberrypi weewxd: pond: found value of 99.9000
>> Jun 27 10:45:00 raspberrypi weewxd: pond: found value of 67.325
>> Jun 27 10:45:00 raspberrypi weewx[8708] WARNING weewx.qc: 2021-06-27 
>> 10:44:59 CEST (1624783499) Archive value 'extraTemp2' 159.665 outside 
>> limits (32.0, 95.0)
>> Jun 27 10:45:00 raspberrypi weewx[8708] WARNING weewx.qc: 2021-06-27 
>> 10:44:59 CEST (1624783499) Archive value 'extraTemp3' 153.185 outside 
>> limits (32.0, 95.0)
>> Jun 27 10:45:00 raspberrypi weewx[8708] WARNING weewx.qc: 2021-06-27 
>> 10:44:59 CEST (1624783499) Archive value 'extraTemp1' 131.51588 outside 
>> limits (23.0, 68.0)
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO weewx.manager: Added record 
>> 2021-06-27 10:44:59 CEST (1624783499) to database 'weewx.sdb'
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO weewx.manager: Added record 
>> 2021-06-27 10:44:59 CEST (1624783499) to daily summary in 'weewx.sdb'
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: MainThread: Zambretti: 
>> starting thread
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> generating forecast for 2021-06-27 09:00:00 CEST (1624777200)
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> using winddir from 2021-06-27 08:30:00 CEST (1624775400) to 2021-06-27 
>> 09:00:00 CEST (1624777200)
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> using pressure from 2021-06-27 06:00:00 CEST (1624766400) to 2021-06-27 
>> 09:00:00 CEST (1624777200)
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: MainThread: OWM: starting 
>> thread
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: MainThread: UKMO: starting 
>> thread
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: OWMThread: OWM: download 
>> forecast from '
>> http://api.openweathermap.org/data/2.5/forecast?APPID=XXXXXXXXXXXXXXXXXXXXXXXXXXXX2250&lat=57.961878399999996&lon=13.750314399999999
>> '
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: UKMOThread: UKMO: download 
>> forecast from '
>> http://datapoint.metoffice.gov.uk/public/data/val/wxfcs/all/json/2337?res=3hourly&key=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX5b92
>> '
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: Windy: 
>> Unexpected exception of type <type 'exceptions.ValueError'>
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: WOW: 
>> Unexpected exception of type <type 'exceptions.ValueError'>
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: WeatherCloud: 
>> Unexpected exception of type <type 'exceptions.ValueError'>
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: 
>> Wunderground-PWS: Unexpected exception of type <type 
>> 'exceptions.ValueError'>
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: MQTT: 
>> Unexpected exception of type <type 'exceptions.ValueError'>
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** Traceback 
>> (most recent call last):
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm 
>> expression "extraTemp2 < 57" evaluated True at 2021-06-27 10:44:59 CEST 
>> (1624783499)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 378, in run_loop
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  self.process_record(_record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 422, in process_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  _full_record = self.get_record(record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 300, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     % 
>> (_result[1], _result[2], record['usUnits']))
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** 
>> ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] CRITICAL weewx.restx: Windy: 
>> Thread terminating. Reason: Inconsistent units (1 vs  vs 1) when querying 
>> for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** Traceback 
>> (most recent call last):
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 378, in run_loop
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  self.process_record(_record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 422, in process_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  _full_record = self.get_record(record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 300, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     % 
>> (_result[1], _result[2], record['usUnits']))
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** 
>> ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] CRITICAL weewx.restx: WOW: Thread 
>> terminating. Reason: Inconsistent units (1 vs  vs 1) when querying for 
>> hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** Traceback 
>> (most recent call last):
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 378, in run_loop
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  self.process_record(_record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/user/wcloud.py", line 238, in process_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** Traceback 
>> (most recent call last):
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 378, in run_loop
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  self.process_record(_record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** Traceback 
>> (most recent call last):
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/user/mqtt.py", line 472, in process_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     record 
>> = self.get_record(record, dbm)
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> units=1 winddir=0.0 pressure=0.0 first_p= last_p=
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> forecast failure: could not convert string to float:
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: ZambrettiThread: Zambretti: 
>> terminating thread
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm 
>> expression "extraTemp3 < 37" evaluated True at 2021-06-27 10:44:59 CEST 
>> (1624783499)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 378, in run_loop
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 300, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO weewx.engine: Starting main 
>> packet loop.
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     % 
>> (_result[1], _result[2], record['usUnits']))
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** 
>> ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  self.process_record(_record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     r = 
>> self.get_record(record, dbm)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/user/wcloud.py", line 249, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     rec = 
>> super(WeatherCloudThread, self).get_record(record, dbm)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 300, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     % 
>> (_result[1], _result[2], record['usUnits']))
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** 
>> ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] CRITICAL weewx.restx: 
>> WeatherCloud: Thread terminating. Reason: Inconsistent units (1 vs  vs 1) 
>> when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 422, in process_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] INFO user.alarm_multi: Alarm 
>> expression "extraTemp1 < 33" evaluated True at 2021-06-27 10:44:59 CEST 
>> (1624783499)
>> Jun 27 10:45:00 raspberrypi weewx[8708] CRITICAL weewx.restx: MQTT: 
>> Thread terminating. Reason: Inconsistent units (1 vs  vs 1) when querying 
>> for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***    
>>  _full_record = self.get_record(record, dbmanager)
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***   File 
>> "/usr/share/weewx/weewx/restx.py", line 300, in get_record
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: ***     % 
>> (_result[1], _result[2], record['usUnits']))
>> Jun 27 10:45:00 raspberrypi weewx[8708] ERROR weewx.restx: *** 
>> ValueError: Inconsistent units (1 vs  vs 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewx[8708] CRITICAL weewx.restx: 
>> Wunderground-PWS: Thread terminating. Reason: Inconsistent units (1 vs  vs 
>> 1) when querying for hourRain
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: OWMThread: OWM: got 40 
>> forecast records
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: OWMThread: OWM: saving 40 
>> forecast records
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: OWMThread: OWM: forecast 
>> failure: addRecord() got an unexpected keyword argument 'log_level'
>> Jun 27 10:45:00 raspberrypi weewxd: forecast: OWMThread: OWM: terminating 
>> thread
>> Jun 27 10:45:01 raspberrypi weewxd: forecast: UKMOThread: UKMO: missing 
>> field 'Location'
>> Jun 27 10:45:01 raspberrypi weewxd: forecast: UKMOThread: UKMO: got 0 
>> forecast records
>> Jun 27 10:45:01 raspberrypi weewxd: forecast: UKMOThread: UKMO: saving 0 
>> forecast records
>> Jun 27 10:45:01 raspberrypi weewxd: forecast: UKMOThread: UKMO: forecast 
>> failure: addRecord() got an unexpected keyword argument 'log_level'
>> Jun 27 10:45:01 raspberrypi weewxd: forecast: UKMOThread: UKMO: 
>> terminating thread
>> Jun 27 10:45:01 raspberrypi CRON[8748]: (pliggen) CMD (/usr/bin/php7.0 
>> /var/www/html/weewx/smhi_warnings_bjurdammen.php > /dev/null 2>&1)
>> Jun 27 10:45:02 raspberrypi systemd[1]: Started Session c2641 of user 
>> pliggen.
>> Jun 27 10:45:02 raspberrypi weewx[8708] INFO user.alarm_multi: email sent 
>> to: [u'XXXXXXXXXXXXXXXXXXX']
>> Jun 27 10:45:02 raspberrypi weewx[8708] INFO user.alarm_multi: email sent 
>> to: [u'XXXXXXXXXXXXXXXXXXX']
>> Jun 27 10:45:02 raspberrypi systemd[1]: Started Session c2642 of user 
>> pliggen.
>> Jun 27 10:45:02 raspberrypi systemd[1]: Started Session c2643 of user 
>> pliggen.
>> Jun 27 10:45:02 raspberrypi weewx[8708] INFO user.alarm_multi: email sent 
>> to: [u'XXXXXXXXXXXXXXXXXXX']
>> Jun 27 10:45:03 raspberrypi weewx[8708] INFO weewx.drivers.fousb: station 
>> status {'unknown': 0, 'lost_connection': 0, 'rain_overflow': 0} (0)
>> Jun 27 10:45:12 raspberrypi weewx[8708] ERROR weewx.restx: 
>> StationRegistry: Failed to publish record 2021-06-27 10:44:59 CEST 
>> (1624783499): Failed upload after 3 tries
>> Jun 27 10:46:02 raspberrypi systemd[1]: Started Session c2644 of user 
>> pliggen.
>> Jun 27 10:46:02 raspberrypi systemd[1]: Started Session c2645 of user 
>> pliggen.
>> Jun 27 10:46:03 raspberrypi systemd[1]: Started Session c2646 of user 
>> pliggen.
>> Jun 27 10:47:02 raspberrypi systemd[1]: Started Session c2647 of user 
>> pliggen.
>> Jun 27 10:47:02 raspberrypi systemd[1]: Started Session c2648 of user 
>> pliggen.
>> Jun 27 10:47:02 raspberrypi systemd[1]: Started Session c2649 of user 
>> pliggen.
>> Jun 27 10:47:32 raspberrypi systemd[1]: Stopping LSB: weewx weather 
>> system...
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__: Received signal 
>> TERM (15).
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO weewx.engine: Main loop 
>> exiting. Shutting engine down.
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__: Terminating weewx 
>> version 4.0.0
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****  
>> Traceback (most recent call last):
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****    File 
>> "/usr/share/weewx/weewxd", line 154, in main
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****      
>> engine.run()
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****    File 
>> "/usr/share/weewx/weewx/engine.py", line 188, in run
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****      for 
>> packet in self.console.genLoopPackets():
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****    File 
>> "/usr/share/weewx/weewx/drivers/fousb.py", line 1072, in genLoopPackets
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****      for 
>> p in self.get_observations():
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****    File 
>> "/usr/share/weewx/weewx/drivers/fousb.py", line 1153, in get_observations
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****      
>> time.sleep(self.polling_interval)
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****    File 
>> "/usr/share/weewx/weewxd", line 257, in sigTERMhandler
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****      
>> raise Terminate
>> Jun 27 10:47:32 raspberrypi weewx[8708] INFO __main__:     ****  Terminate
>> Jun 27 10:47:32 raspberrypi weewx[9056]: Stopping weewx weather system: 
>> weewx.
>> Jun 27 10:47:32 raspberrypi systemd[1]: Stopped LSB: weewx weather system.
>>
>>
>>
>> /Mikael
>>
>>
>> söndag 27 juni 2021 kl. 01:47:02 UTC+2 skrev gjr80:
>>
>>> The catch up is built in to WeeWX and automatically occurs when WeeWX 
>>> starts up. There are a few ifs buts and maybes though.
>>>
>>> First up your driver and hardware needs to support it. I assume you are 
>>> using the fousb driver which does support catchup, your station also 
>>> appears to support it. What WeeWX does during the catchup is ask the driver 
>>> to provide any records since the timestamp of the last good record in your 
>>> archive. The driver then does what it needs to obtain these records from 
>>> your station. If the missing data in your database has good records after 
>>> the period of missing data  (eg you have no data from 9am to 10am but there 
>>> is data from 10am onwards) then that period of missing data will not be 
>>> filled, even if the records are in the stations logger. So generally 
>>> speaking there is one chance to catchup, and that is on the first WeeWX 
>>> startup after an outage. Once WeeWX starts adding records after the outage 
>>> backfill of that outage will not occur. If you look at the log during 
>>> startup you will see the catchup just before startup is complete. I don't 
>>> believe there is any detail of the outcome in the log though.
>>>
>>> That fairly much covers the automatic catchup. There are a few things 
>>> you can try to force a backfill. Firstly, if there are records in the 
>>> archive after the period of the outage then try stopping WeeWX, backup you 
>>> database just in case, delete the records after the outage and then restart 
>>> WeeWX. This will trigger the automatic backfill again and you may or may 
>>> not have success. Check the archive afterwards to see if the data was 
>>> restored.
>>>
>>> The other thing you can try is using wee_device 
>>> <http://weewx.com/docs/utilities.htm#wee_device_utility> to somehow 
>>> dump the contents of your logger. wee_device capabilities in this 
>>> regard are dependent on the capabilities of your driver and station. When 
>>> used with the vantage driver wee_device has the --dump command line 
>>> option that dumps all logger records to database, the result is that any 
>>> gaps in the archive are filled if the corresponding record is in the 
>>> logger. Looking at wee_device, when used with the fousb driver the 
>>> --dump option is not available but the --history option 
>>> <http://weewx.com/docs/hardware.htm#Action_--history> is. --history 
>>> appears to dump the logger contents to console not the database, not sure 
>>> why not, that is one for the fousb driver author. At least this will 
>>> let you see what is in your stations logger. If the missing data is there 
>>> you may be able to find a way of dumping the data to file and then 
>>> importing with wee_import 
>>> <http://weewx.com/docs/utilities.htm#wee_import_utility> or the like.
>>>
>>> Finally, remember that the 1080 uses a circular buffer, once it is full 
>>> the oldest data is overwritten. It appears the 1080 has 4080 buffer 
>>> locations, how long that covers in time depends on the interval. The 
>>> default 30 minutes will give you about 85 days of coverage, something like 
>>> 5 minutes will give you around 14 days. So I wouldn't leave it for a few 
>>> months to sort out!
>>>
>>> Gary
>>>
>>> On Sunday, 27 June 2021 at 06:22:27 UTC+10 [email protected] wrote:
>>>
>>>> Vince, 
>>>> The wh1080 has a battery backup and runs if it's out of power via usb. 
>>>> So I'll wait and see if the rain gets into the database!
>>>> Do you know how this is done? And when?
>>>> Thanks for your answer! 
>>>> /Mikael
>>>>
>>>> lördag 26 juni 2021 kl. 21:59:27 UTC+2 skrev vince:
>>>>
>>>>> Does the WH1080 have a logger that works if the power is out ?   If 
>>>>> so, weewx should gracefully catch up.
>>>>>
>>>>> FWIW, a Davis VP2 has a battery backed up console which is where the 
>>>>> logger is physically, so the console has to have good batteries (or UPS) 
>>>>> for data to be saved while the power is out.  Sorry but I don't know 
>>>>> enough 
>>>>> about the WH1080 to help more.
>>>>>
>>>>>

-- 
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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/8c0ff1eb-6aca-4bfd-b40b-545b68cd46fdn%40googlegroups.com.

Reply via email to