We were expecting high winds and lightning overnight, and a likely power outage. I shut things down to avoid a hard crash, that never happened because the storm fizzled out. I restarted weewx early this morning. It *seems* like it's choking on:
/etc/weewx/skins/Standard/index.html.tmpl
As usual, I didn't change anything (that I know of.)Â I made a
backup copy of the SD card before shutting it down last night. Both the original and the backup give identical errors. This is running on a PI 4 with 4
GB RAM and weewx .
I cleared the logger on the Davis
Vantage Vue in case something in there was corrupted. That explains the gaps in the plots here:
It
looks like it's using a different skin or index.html.tmpl after encountering the error. My website is highly customized with modifications to Tom's default index.html.tmpl
file. I haven't included that because I haven't changed it in several weeks. I can post it if anyone thinks it'll help.
I have been trying to fix this for 6
hours straight and I'm starting to see double. I have a lot of backups from previous weeks, but it seems the one I made prior to the shutdown ought to work. Before I go further, does anyone see anything obvious?Â
This has worked flawlessly since converting to Python 3 in January. There were a couple of what I considered minor updates to Raspbian yesterday that might not have kicked in until a reboot. Sort of suspicious as the error is unsupported operand type(s) for *: 'NoneType' and 'float'.
The first line of my index.html.tmpl is:
#encoding utf-8
I think I saw that in the conversations below as being a possible cause of type mixups, but that too has been there for months.
- Paul VE1DX
==============================================
Here's my system log (long, but the error reports start at time Mar 29 11:30:20)
Mar 29 11:25:21 rhubarb sudo[2294]:Â Â Â Â root : TTY=pts/1 ; PWD=/root ; USER=root ; COMMAND=/etc/init.d/weewx start
Mar 29 11:25:21 rhubarb sudo[2294]: pam_unix(sudo:session): session opened for user root by pdunphy(uid=0)
Mar 29 11:25:21 rhubarb systemd[1]: Starting LSB: weewx weather system...
Mar 29 11:25:22 rhubarb python3[2318]: weewx[2318] INFO __main__: Initializing weewx version 4.4.0
Mar 29 11:25:22 rhubarb python3[2318]: weewx[2318] INFO __main__: Using Python 3.7.3 (default, Jul 25 2020, 13:03:44)
                                      [GCC 8.3.0]
Mar 29 11:25:22 rhubarb python3[2318]: weewx[2318] INFO __main__: Platform Linux-5.10.17-v7l+-armv7l-with-debian-10.8
Mar 29 11:25:22 rhubarb python3[2318]: weewx[2318] INFO __main__: Locale is 'en_CA'
Mar 29 11:25:22 rhubarb python3[2318]: weewx[2318] INFO __main__: PID file is /var/run/weewx.pid
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO __main__: Using configuration file /etc/weewx/weewx.conf
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO __main__: Debug is 1
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG __main__: Initializing engine
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Loading station type Vantage (weewx.drivers.vantage)
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Driver version is 3.2.1
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Option loop_request=1
Mar 29 11:25:22 rhubarb weewx[2306]: Starting weewx weather system: weewx.
Mar 29 11:25:22 rhubarb systemd[1]: Started LSB: weewx weather system.
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Opened up serial port /dev/ttyUSB0; baud 19200; timeout 4.00
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Hardware type is 17
Mar 29 11:25:22 rhubarb sudo[2294]: pam_unix(sudo:session): session closed for user root
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: ISS ID is 1
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Hardware name: Vantage Vue
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdTimeSynch
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdTimeSynch
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdConvert
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: StdConvert target unit is 0x10
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdConvert
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdCalibrate
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdCalibrate
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdQC
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdQC
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.wxservices.StdWXCalculate
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.wxservices.StdWXCalculate
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdWXXTypes
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdWXXTypes
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdPressureCooker
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdPressureCooker
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdRainRater
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdRainRater
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.wxxtypes.StdDelta
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdDelta
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdArchive
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Archive will use data binding wx_binding
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Record generation will be attempted in 'hardware'
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Using archive interval of 300 seconds (specified by hardware)
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Use LOOP data in hi/low calculations: 1
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdArchive
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.restx.StdStationRegistry
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: StationRegistry: Station will be registered.
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.restx.StdStationRegistry
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.restx.StdPWSweather
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: PWSWeather: Data for station LakeEcho01 will be posted
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.restx.StdPWSweather
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.restx.StdCWOP
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: CWOP: Data for station VE1DX will be posted
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.restx.StdCWOP
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.restx.StdWOW
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: WOW: Data for station 953456001 will be posted
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.restx.StdWOW
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.restx.StdAWEKAS
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: AWEKAS: Data will be uploaded for user VE1DX
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.restx.StdAWEKAS
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service user.wcloud.WeatherCloud
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO user.wcloud: service version is 0.13
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO user.wcloud: Data will be uploaded for id=3563c30a5fb9c1d6
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service user.wcloud.WeatherCloud
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service user.weather365.Weather365
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO user.weather365: restx: Weather365: service version is 3.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO user.weather365: restx: Weather365: Data will be uploaded for station id RN5CDP36Y3
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service user.weather365.Weather365
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdPrint
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdPrint
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Loading service weewx.engine.StdReport
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.engine: Finished loading service weewx.engine.StdReport
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO __main__: Starting up weewx version 4.4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Clock error is 0.41 seconds (positive is fast)
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Starting backfill of daily summaries
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Daily summaries up to date
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Getting archive packets since 2021-03-29 11:20:00 ADT (1617027600)
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Retrieving 1 page(s); starting index= 2
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Added record 2021-03-29 11:25:00 ADT (1617027900) to database 'weewx.sdb'
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Added record 2021-03-29 11:25:00 ADT (1617027900) to daily summary in 'weewx.sdb'
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Empty record page 0; index 3
Mar 29 11:25:22 rhubarb python3[2322]: weewx[2322] INFO weewx.engine: Starting main packet loop.
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG user.weather365: restx: Weather365: Data uploaded to
https://channel1.weather365.net/stations/index.php is: (b'lat=44.73794&long=-63.37766&alt=85.0&stationid=RN5CDP36Y3&prec_time=60&datum=202103291125&utcstamp=1617027900&winddir=225&windspeed=2.2&windgust=8.5&t2m=8.3&relhum=87&press=989.943&rainh=0.00&raind=37.00&rainrate=0.00&et=0.00000&wchill=7.0&heat=7.4&dew2m=6.2&rxsignal=98&cloudbase=274.1&windrun=0.7&humidex=8.3&appTemp=5.8&soiltemp=-63.3&soiltemp2=-67.8&soiltemp3=-65.6&soiltemp4=-67.8&soilmoisture=4.0&soilmoisture2=8.0&soilmoisture3=8.0&soilmoisture4=8.0&leafwetness=8.0&leafwetness2=8.0')
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Requesting 200 LOOP packets.
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Attempt 1 to
rotate.aprs.net:14580. Connection error: [Errno 111] Connection refused
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: PWSWeather: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Connected to server
rotate.aprs.net:14580Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: AWEKAS: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: WeatherCloud: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: CWOP: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: StationRegistry: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: Weather365: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:25:23 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: WOW: Published record 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:28:57 rhubarb rngd[482]: stats: bits received from HRNG source: 80064
Mar 29 11:28:57 rhubarb rngd[482]: stats: bits sent to kernel pool: 33824
Mar 29 11:28:57 rhubarb rngd[482]: stats: entropy added to kernel pool: 33824
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2 successes: 4
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2 failures: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2(2001-10-10) Monobit: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2(2001-10-10) Poker: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2(2001-10-10) Runs: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2(2001-10-10) Long run: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS 140-2(2001-10-10) Continuous run: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: HRNG source speed: (min=214.870; avg=322.019; max=580.268)Kibits/s
Mar 29 11:28:57 rhubarb rngd[482]: stats: FIPS tests speed: (min=4.037; avg=8.119; max=12.499)Mibits/s
Mar 29 11:28:57 rhubarb rngd[482]: stats: Lowest ready-buffers level: 2
Mar 29 11:28:57 rhubarb rngd[482]: stats: Entropy starvations: 0
Mar 29 11:28:57 rhubarb rngd[482]: stats: Time spent starving for entropy: (min=0; avg=0.000; max=0)us
Mar 29 11:29:01 rhubarb CRON[2353]: pam_unix(cron:session): session opened for user pdunphy by (uid=0)
Mar 29 11:29:01 rhubarb CRON[2354]: (pdunphy) CMD (/home/pdunphy/wx_picture.sh >/dev/null 2>&1)
Mar 29 11:29:01 rhubarb CRON[2353]: pam_unix(cron:session): session closed for user pdunphy
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Getting archive packets since 2021-03-29 11:25:00 ADT (1617027900)
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Retrieving 1 page(s); starting index= 3
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Added record 2021-03-29 11:30:00 ADT (1617028200) to database 'weewx.sdb'
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] INFO weewx.manager: Added record 2021-03-29 11:30:00 ADT (1617028200) to daily summary in 'weewx.sdb'
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Empty record page 0; index 4
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: StationRegistry: wait interval (300 < 604800) has not passed for record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: WeatherCloud: wait interval (300 < 600) has not passed for record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG user.weather365: restx: Weather365: Data uploaded to
https://channel1.weather365.net/stations/index.php is: (b'lat=44.73794&long=-63.37766&alt=85.0&stationid=RN5CDP36Y3&prec_time=60&datum=202103291130&utcstamp=1617028200&winddir=225&windspeed=1.8&windgust=6.3&t2m=8.2&relhum=86&press=990.011&rainh=0.00&raind=41.40&rainrate=0.00&et=0.00000&wchill=7.3&heat=7.3&dew2m=6.0&rxsignal=97&cloudbase=294.4&windrun=0.5&humidex=8.2&appTemp=6.1&soiltemp=-63.3&soiltemp2=-67.8&soiltemp3=-65.6&soiltemp4=-67.8&soilmoisture=4.0&soilmoisture2=8.0&soilmoisture3=8.0&soilmoisture4=8.0&leafwetness=8.0&leafwetness2=8.0&txbattery=0')
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Running reports for latest time in the database.
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Requesting 200 LOOP packets.
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Running report 'SeasonsReport'
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.drivers.vantage: Gentle wake up of console successful
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: PWSWeather: Published record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: AWEKAS: Published record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:16 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: Weather365: Published record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:17 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: WOW: Published record 2021-03-29 11:30:00 ADT (1617028200)
Mar 29 11:30:18 rhubarb python3[2322]: weewx[2322] INFO weewx.cheetahgenerator: Generated 8 files for report SeasonsReport in 2.18 seconds
Mar 29 11:30:18 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] INFO weewx.imagegenerator: Generated 15 images for report SeasonsReport in 0.60 seconds
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] INFO weewx.reportengine: Copied 5 files to /var/www/html/weewx
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping.
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Running report 'StandardReport'
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Standard/skin.conf for report 'StandardReport'
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Mar 29 11:30:19 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: Generate failed with exception '<class 'TypeError'>'
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: **** Ignoring template /etc/weewx/skins/Standard/index.html.tmpl
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: **** Reason: unsupported operand type(s) for *: 'NoneType' and 'float'
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: ****Â Traceback (most recent call last):
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: ****Â Â Â File "/usr/share/weewx/weewx/cheetahgenerator.py", line 324, in generate
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: ****Â Â Â Â Â unicode_string = compiled_template.respond()
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: ****Â Â Â File "_etc_weewx_skins_Standard_index_html_tmpl.py", line 1208, in respond
Mar 29 11:30:20 rhubarb python3[2322]: weewx[2322] ERROR weewx.cheetahgenerator: ****Â TypeError: unsupported operand type(s) for *: 'NoneType' and 'float'
Mar 29 11:30:21 rhubarb python3[2322]: weewx[2322] INFO weewx.cheetahgenerator: Generated 13 files for report StandardReport in 2.15 seconds
Mar 29 11:30:21 rhubarb python3[2322]: weewx[2322] DEBUG weewx.manager: Daily summary version is 4.0
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] INFO weewx.imagegenerator: Generated 13 images for report StandardReport in 0.46 seconds
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] INFO weewx.reportengine: Copied 14 files to /var/www/html/weewx
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Running report 'SFTP'
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/sftp/skin.conf for report 'SFTP'
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: running SFTPGenerator 0.7
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: local_root=/var/www/html/weewx
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: remote_root=public_html
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: server=
palang.ca port=9999 user=pdunphy
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: connecting to
pdu...@palang.caMar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: starting thread (client mode): 0xb12671b0
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Local version/idstring: SSH-2.0-paramiko_2.7.2
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Remote version/idstring: SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] INFO paramiko.transport: Connected (version 2.0, client OpenSSH_7.6p1)
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: kex algos:['curve25519-sha256', '
curve255...@libssh.org', 'ecdh-sha2-nistp256', 'ecdh-sha2-nistp384', 'ecdh-sha2-nistp521', 'diffie-hellman-group-exchange-sha256', 'diffie-hellman-group16-sha512', 'diffie-hellman-group18-sha512', 'diffie-hellman-group14-sha256', 'diffie-hellman-group14-sha1'] server key:['ssh-rsa', 'rsa-sha2-512', 'rsa-sha2-256', 'ecdsa-sha2-nistp256', 'ssh-ed25519'] client encrypt:['
chacha20...@openssh.com', 'aes128-ctr', 'aes192-ctr', 'aes256-ctr', '
aes12...@openssh.com', '
aes25...@openssh.com'] server encrypt:['
chacha20...@openssh.com', 'aes128-ctr', 'aes192-ctr', 'aes256-ctr', '
aes12...@openssh.com', '
aes25...@openssh.com'] client mac:['
umac-...@openssh.com', '
umac-1...@openssh.com', '
hmac-sha...@openssh.com', '
hmac-sha...@openssh.com', '
hmac-s...@openssh.com', '
uma...@openssh.com', '
umac...@openssh.com', 'hmac-sha2-256', 'hmac-sha2-512', 'hmac-sha1'] server mac:['
umac-...@openssh.com', '
umac-1...@openssh.com', '
hmac-sha...@openssh.com', '
hmac-sha...@openssh.com', '
hmac-s...@openssh.com', '
uma...@openssh.com', '
umac...@openssh.com', 'hmac-sha2-256', 'hmac-sha2-512', 'hmac-sha1'] client compress:['none', '
zl...@openssh.com'] server compress:['none', '
zl...@openssh.com'] client lang:[''] server lang:[''] kex follows?False
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Kex agreed:
curve255...@libssh.orgMar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: HostKey agreed: ssh-ed25519
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Cipher agreed: aes128-ctr
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: MAC agreed: hmac-sha2-256
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Compression agreed: none
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: kex engine KexCurve25519 specified hash_algo <built-in function openssl_sha256>
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Switch to new keys ...
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Attempting public-key auth...
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: userauth is OK
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] INFO paramiko.transport: Authentication (publickey) successful!
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html
Mar 29 11:30:22 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: [chan 0] Max packet in: 32768 bytes
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Received global request "
hostk...@openssh.com"
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Rejecting "
hostk...@openssh.com" global request from server.
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: [chan 0] Max packet out: 32768 bytes
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: Secsh channel 0 opened.
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: [chan 0] Sesch channel 0 request ok
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] INFO paramiko.transport.sftp: [chan 0] Opened sftp connection (server version 3)
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html')
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/wx_pix.jpg', 'wb')
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/wx_pix.jpg', 'wb') -> 00000000
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/wx_pix.jpg')
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/wx_pix.jpg
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/wx_pix_small.jpg', 'wb')
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/wx_pix_small.jpg', 'wb') -> 00000000
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:23 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/wx_pix_small.jpg')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/wx_pix_small.jpg
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayvolt.png', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayvolt.png', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayvolt.png')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayvolt.png
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempfeel.png', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempfeel.png', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daytempfeel.png')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daytempfeel.png
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayuv.png', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayuv.png', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayuv.png')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayuv.png
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhum.png', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhum.png', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayhum.png')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayhum.png
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/seasons.css', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/seasons.css', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/seasons.css')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/seasons.css
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/mobile.css', 'wb')
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/mobile.css', 'wb') -> 00000000
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:24 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/mobile.css')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/mobile.css
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempdew.png', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempdew.png', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daytempdew.png')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daytempdew.png
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayradiation.png', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayradiation.png', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayradiation.png')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayradiation.png
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/month.html', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/month.html', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/month.html')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/month.html
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/celestial.html', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/celestial.html', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/celestial.html')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/celestial.html
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytemp.png', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytemp.png', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daytemp.png')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daytemp.png
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempchill.png', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempchill.png', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daytempchill.png')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daytempchill.png
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhumidity.png', 'wb')
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhumidity.png', 'wb') -> 00000000
Mar 29 11:30:25 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayhumidity.png')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayhumidity.png
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywindvec.png', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywindvec.png', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daywindvec.png')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daywindvec.png
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/favicon.ico', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/favicon.ico', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/favicon.ico')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/favicon.ico
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/telemetry.html', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/telemetry.html', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/telemetry.html')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/telemetry.html
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywinddir.png', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywinddir.png', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daywinddir.png')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daywinddir.png
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/week.html', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/week.html', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/week.html')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/week.html
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/rss.xml', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/rss.xml', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/rss.xml')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/rss.xml
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daybarometer.png', 'wb')
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daybarometer.png', 'wb') -> 00000000
Mar 29 11:30:26 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daybarometer.png')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daybarometer.png
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/tabular.html', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/tabular.html', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/tabular.html')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/tabular.html
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayinside.png', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayinside.png', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayinside.png')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayinside.png
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/statistics.html', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/statistics.html', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/statistics.html')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/statistics.html
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayrx.png', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayrx.png', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayrx.png')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayrx.png
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywind.png', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daywind.png', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daywind.png')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daywind.png
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempin.png', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daytempin.png', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daytempin.png')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daytempin.png
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/seasons.js', 'wb')
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/seasons.js', 'wb') -> 00000000
Mar 29 11:30:27 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/seasons.js')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/seasons.js
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/weewx.css', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/weewx.css', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/weewx.css')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/weewx.css
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhumin.png', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayhumin.png', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayhumin.png')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayhumin.png
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/mobile.html', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/mobile.html', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/mobile.html')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/mobile.html
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayrain.png', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/dayrain.png', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/dayrain.png')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/dayrain.png
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/year.html', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/year.html', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/year.html')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/year.html
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/index.html', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/index.html', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/index.html')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/index.html
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daypond.png', 'wb')
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/daypond.png', 'wb') -> 00000000
Mar 29 11:30:28 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/daypond.png')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/daypond.png
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/font
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/font')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/font/OpenSans.woff', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/font/OpenSans.woff', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/font/OpenSans.woff')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/font/OpenSans.woff
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/font/OpenSans.woff2', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/font/OpenSans.woff2', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/font/OpenSans.woff2')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/font/OpenSans.woff2
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/NOAA
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/NOAA')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/NOAA/NOAA-2021.txt', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/NOAA/NOAA-2021.txt', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/NOAA/NOAA-2021.txt')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/NOAA/NOAA-2021.txt
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/NOAA/NOAA-2021-03.txt', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/NOAA/NOAA-2021-03.txt', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/NOAA/NOAA-2021-03.txt')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/NOAA/NOAA-2021-03.txt
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/RSS
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/RSS')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/RSS/weewx_rss.xml', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/RSS/weewx_rss.xml', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/RSS/weewx_rss.xml')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/RSS/weewx_rss.xml
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/backgrounds
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/band.gif', 'wb')
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/band.gif', 'wb') -> 00000000
Mar 29 11:30:29 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/band.gif')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/band.gif
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/drops.gif', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/drops.gif', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/drops.gif')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/drops.gif
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/flower.jpg', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/flower.jpg', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/flower.jpg')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/flower.jpg
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/butterfly.jpg', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/butterfly.jpg', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/butterfly.jpg')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/butterfly.jpg
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/night.gif', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/night.gif', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/night.gif')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/night.gif
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/leaf.jpg', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/backgrounds/leaf.jpg', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/backgrounds/leaf.jpg')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/backgrounds/leaf.jpg
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/smartphone
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/wind.html', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/wind.html', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/wind.html')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/wind.html
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/barometer.html', 'wb')
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/barometer.html', 'wb') -> 00000000
Mar 29 11:30:30 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/barometer.html')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/barometer.html
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/radar.html', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/radar.html', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/radar.html')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/radar.html
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/custom.js', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/custom.js', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/custom.js')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/custom.js
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/rain.html', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/rain.html', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/rain.html')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/rain.html
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/temp_outside.html', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/temp_outside.html', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/temp_outside.html')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/temp_outside.html
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/index.html', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/index.html', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/index.html')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/index.html
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/smartphone/icons
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/icons')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_ipad_x2.png', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_ipad_x2.png', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/icons/icon_ipad_x2.png')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/icons/icon_ipad_x2.png
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_ipad_x1.png', 'wb')
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_ipad_x1.png', 'wb') -> 00000000
Mar 29 11:30:31 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/icons/icon_ipad_x1.png')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/icons/icon_ipad_x1.png
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_iphone_x2.png', 'wb')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_iphone_x2.png', 'wb') -> 00000000
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/icons/icon_iphone_x2.png')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/icons/icon_iphone_x2.png
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_iphone_x1.png', 'wb')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] open(b'public_html/smartphone/icons/icon_iphone_x1.png', 'wb') -> 00000000
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] close(00000000)
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/smartphone/icons/icon_iphone_x1.png')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: uploaded file public_html/smartphone/icons/icon_iphone_x1.png
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG user.sftp: sftp: create remote directory public_html/rad_img
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport.sftp: [chan 0] stat(b'public_html/rad_img')
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] INFO paramiko.transport.sftp: [chan 0] sftp session closed.
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: [chan 0] EOF sent (0)
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] INFO user.sftp: sftpgenerator: transferred 58 files in 10.26 seconds
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Report 'FTP' not enabled. Skipping.
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. Skipping.
Mar 29 11:30:32 rhubarb python3[2322]: weewx[2322] DEBUG paramiko.transport: EOF in transport thread
Mar 29 11:30:36 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Attempt 1 to
rotate.aprs.net:14580. Connection error: timed out
Mar 29 11:30:36 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Attempt 2 to
rotate.aprs.net:14580. Connection error: [Errno 111] Connection refused
Mar 29 11:30:56 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Attempt 3 to
rotate.aprs.net:14580. Connection error: timed out
Mar 29 11:30:57 rhubarb python3[2322]: weewx[2322] DEBUG weewx.restx: CWOP: Connected to server
rotate.aprs2.net:14580Mar 29 11:30:57 rhubarb python3[2322]: weewx[2322] INFO weewx.restx: CWOP: Published record 2021-03-29 11:30:00 ADT (1617028200)
Here's my weewx,conf
# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2020 Tom Keffer <
tke...@gmail.com>
# See the file LICENSE.txt for your rights.
##############################################################################
# This section is for general configuration information.
# Set to 1 for extra debug info, otherwise comment it out or set to zero
debug = 1
# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /
# Whether to log successful operations
log_success = True
# Whether to log unsuccessful operations
log_failure = True
# How long to wait before timing out a socket (FTP, HTTP) connection
socket_timeout = 20
# Do not modify this. It is used when installing and updating weewx.
version = 4.4.0
##############################################################################
#Â Â This section is for information about the station.
[Station]
  Â
   # Description of the station location
   location = "Lake Echo, Nova Scotia"
  Â
   # Latitude and longitude in decimal degrees
   latitude = 44.73794
   longitude = -63.37766
  Â
   # Altitude of the station, with unit it is in. This is downloaded from
   # from the station if the hardware supports it.
   altitude = 26, meter
  Â
   # Set to type of station hardware. There must be a corresponding stanza
   # in this file with a 'driver' parameter indicating the driver to be used.
   station_type = Vantage
  Â
   # If you have a website, you may specify an URL
   #station_url =
http://www.example.com  Â
   # The start of the rain year (1=January; 10=October, etc.). This is
   # downloaded from the station if the hardware supports it.
   rain_year_start = 1
  Â
   # Start of week (0=Monday, 6=Sunday)
   week_start = 6
  Â
   # If you have a website, you may specify a URL
   station_url =
https://www.ve1dx.net/##############################################################################
[Vantage]
   # This section is for the Davis Vantage series of weather stations.
  Â
   # Connection type: serial or ethernet
   # serial (the classic VantagePro)
   # ethernet (the WeatherLinkIP or Serial-Ethernet bridge)
   type = serial
  Â
   # If the connection type is serial, a port must be specified:
   #  Debian, Ubuntu, Redhat, Fedora, and SuSE:
   #    /dev/ttyUSB0 is a common USB port name
   #    /dev/ttyS0  is a common serial port name
   #  BSD:
   #    /dev/cuaU0  is a common serial port name
   port = /dev/ttyUSB0
  Â
   # If the connection type is ethernet, an IP Address/hostname is required:
   host = 1.2.3.4
  Â
   ######################################################
   # The rest of this section rarely needs any attention.
   # You can safely leave it "as is."
   ######################################################
  Â
   # Serial baud rate (usually 19200)
   baudrate = 19200
  Â
   # TCP port (when using the WeatherLinkIP)
   tcp_port = 22222
  Â
   # TCP send delay (when using the WeatherLinkIP):
   tcp_send_delay = 0.5
  Â
   # The type of LOOP packet to request: 1 = LOOP1; 2 = LOOP2; 3 = both
   loop_request = 1
  Â
   # The id of your ISS station (usually 1). If you use a wind meter connected
   # to a anemometer transmitter kit, use its id
   iss_id = 1
  Â
   # How long to wait for a response from the station before giving up (in
   # seconds; must be greater than 2)
   timeout = 4
  Â
   # How long to wait before trying again (in seconds)
   wait_before_retry = 1.2
  Â
   # How many times to try before giving up:
   max_tries = 4
  Â
   # Vantage model Type: 1 = Vantage Pro; 2 = Vantage Pro2
   model_type = 2
  Â
   # The driver to use:
   driver = weewx.drivers.vantage
##############################################################################
#Â Â This section is for uploading data to Internet sites
[StdRESTful]
  Â
   [[StationRegistry]]
       # To register this weather station with weewx, set this to true
       register_this_station = true
       station_url =
https://www.ve1dx.net/Â Â Â
   [[AWEKAS]]
       # This section is for configuring posts to AWEKAS.
       # If you wish to do this, set the option 'enable' to true,
       # and specify a username and password.
       # To guard against parsing errors, put the password in quotes.
       #       enable = false
       #       username = replace_me
       #       password = replace_me
       enable = true
       username = VE1DX
       password = XXXXXXXXXXX
  Â
   [[CWOP]]
       # This section is for configuring posts to CWOP.
       # If you wish to do this, set the option 'enable' to true,
       # and specify the station ID (e.g., CW1234).
       #       enable = false
       #       station = replace_me
       enable = true
       station = VE1DX
       passcode = XXXXXXXXXXX
       post_interval = 300
       log_success = True
       log_failure = True
       server_list =
rotate.aprs.net:14580,
rotate.aprs2.net:14580,
cwop.aprs.net:14580,
cwop.aprs.net:23Â Â Â
  Â
   [[PWSweather]]
       # This section is for configuring posts to PWSweather.com.
      Â
       # If you wish to do this, set the option 'enable' to true,
       # and specify a station and password.
       # To guard against parsing errors, put the password in quotes.
       #       enable = false
       #       station = replace_me
       #       password = replace_me
       enable = true
       station = LakeEcho01
       password = XXXXXXXXXXX
  Â
   [[WOW]]
       # This section is for configuring posts to WOW.
       # If you wish to do this, set the option 'enable' to true,
       # and specify a station and password.
       # To guard against parsing errors, put the password in quotes.
       #       enable = false
       #       station = replace_me
       #       password = replace_me
       enable = true
       station = 953456001
       password = XXXXXXXXXXX
  Â
   [[WeatherCloud]]
       id = 3563c30a5fb9c1d6
       key = XXXXXXXXXXX
  Â
   [[Weather365]]
       stationid = RN5CDP36Y3
       password = XXXXXXXXXXX
##############################################################################
#Â Â This section specifies what reports, using which skins, to generate.
[StdReport]
  Â
   # Where the skins reside, relative to WEEWX_ROOT
   SKIN_ROOT = /etc/weewx/skins
  Â
   # Where the generated reports should go, relative to WEEWX_ROOT
   HTML_ROOT = /var/www/html/weewx
  Â
   # The database binding indicates which data should be used in reports.
   data_binding = wx_binding
  Â
   # Whether to log a successful operation
   log_success = True
  Â
   # Whether to log an unsuccessful operation
   log_failure = True
  Â
   # Each of the following subsections defines a report that will be run.
   # See the customizing guide to change the units, plot types and line
   # colors, modify the fonts, display additional sensor data, and other
   # customizations. Many of those changes can be made here by overriding
   # parameters, or by modifying templates within the skin itself.
  Â
   [[SeasonsReport]]
       # The SeasonsReport uses the 'Seasons' skin, which contains the
       # images, templates and plots for the report.
       skin = Seasons
       enable = true
  Â
   [[SmartphoneReport]]
       # The SmartphoneReport uses the 'Smartphone' skin, and the images and
       # files are placed in a dedicated subdirectory.
       skin = Smartphone
       enable = false
       HTML_ROOT = /var/www/html/weewx/smartphone
  Â
   [[MobileReport]]
       # The MobileReport uses the 'Mobile' skin, and the images and files
       # are placed in a dedicated subdirectory.
       skin = Mobile
       enable = false
       HTML_ROOT = /var/www/html/weewx/mobile
  Â
   [[StandardReport]]
       # This is the old "Standard" skin. By default, it is not enabled.
       skin = Standard
       enable = true
  Â
  Â
   [[SFTP]]
       skin = sftp
       user = pdunphy
       private_key = /home/pdunphy/XXXXXXXXXXX
       server = XXXXXXXXXXX
       port = XXXXXXXXXXX
       path = public_html
  Â
   #   [[sftp]]
   #       skin = sftp
   #       user = replace_me
   #       password = '"replace_me"'
   #       server = replace with the sftp server name
   #       port = 22
   #       path = replace with the sftp destination path
  Â
   [[FTP]]
       # FTP'ing the results to a webserver is treated as just another report,
       # albeit one with an unusual report generator!
       skin = Ftp
      Â
       # If you wish to use FTP, set "enable" to "true", then
       # fill out the next four lines.
       # Use quotes around passwords to guard against parsing errors.
       enable = false
       user = replace_me
       password = replace_me
       server = replace_me   # The ftp server name, e.g,
www.myserver.org       path = replace_me   # The destination directory, e.g., /weather
      Â
       # Set to True for an FTP over TLS (FTPS) connection. Not all servers
       # support this.
       secure_ftp = False
      Â
       # To upload files from something other than what HTML_ROOT is set
       # to above, specify a different HTML_ROOT here.
       #HTML_ROOT = /var/www/html/weewx
      Â
       # Most FTP servers use port 21
       port = 21
      Â
       # Set to 1 to use passive mode, zero for active mode
       passive = 1
  Â
   [[RSYNC]]
       # rsync'ing to a webserver is treated as just another report
       skin = Rsync
      Â
       # If you wish to use rsync, you must configure passwordless ssh using
       # public/private key authentication from the user account that weewx
       # runs to the user account on the remote machine where the files
       # will be copied.
       #
       # If you wish to use rsync, set "enable" to "true", then
       # fill out server, user, and path.
       # The server should appear in your .ssh/config file.
       # The user is the username used in the identity file.
       # The path is the destination directory, such as /var/www/html/weather.
       # Be sure that the user has write permissions on the destination!
       enable = false
       server = replace_me
       user = replace_me
       path = replace_me
      Â
       # To upload files from something other than what HTML_ROOT is set
       # to above, specify a different HTML_ROOT here.
       #HTML_ROOT = /var/www/html/weewx
      Â
       # Rsync can be configured to remove files from the remote server if
       # they don't exist under HTML_ROOT locally. USE WITH CAUTION: if you
       # make a mistake in the remote path, you could could unintentionally
       # cause unrelated files to be deleted. Set to 1 to enable remote file
       # deletion, zero to allow files to accumulate remotely.
       delete = 0
  Â
   ####
  Â
   # Various options for customizing your reports.
  Â
   [[Defaults]]
      Â
       [[[Units]]]
          Â
           # The following section sets what unit to use for each unit group.
           # NB: The unit is always in the singular. I.e., 'mile_per_hour',
           # NOT 'miles_per_hour'
           [[[[Groups]]]]
              Â
               group_altitude = meter   # Options are 'foot' or 'meter'
               group_degree_day = degree_C_day   # Options are 'degree_F_day' or 'degree_C_day'
               group_distance = km   # Options are 'mile' or 'km'
               group_pressure = mbar   # Options are 'inHg', 'mmHg', 'mbar', 'hPa', or 'kPa'
               group_rain = cm   # Options are 'inch', 'cm', or 'mm'
               group_rainrate = cm_per_hour   # Options are 'inch_per_hour', 'cm_per_hour', or 'mm_per_hour'
               group_speed = km_per_hour   # Options are 'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'
               group_speed2 = km_per_hour2   # Options are 'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
               group_temperature = degree_C   # Options are 'degree_F' or 'degree_C'
          Â
           # The following section sets the formatting for each type of unit.
           [[[[StringFormats]]]]
              Â
               centibar = %.0f
               cm = %.2f
               cm_per_hour = %.2f
               degree_C = %.1f
               degree_F = %.1f
               degree_compass = %.0f
               foot = %.0f
               hPa = %.1f
               hour = %.1f
               inHg = %.3f
               inch = %.2f
               inch_per_hour = %.2f
               km = %.1f
               km_per_hour = %.0f
               km_per_hour2 = %.1f
               knot = %.0f
               knot2 = %.1f
               kPa = %.2f
               mbar = %.1f
               meter = %.0f
               meter_per_second = %.1f
               meter_per_second2 = %.1f
               mile = %.1f
               mile_per_hour = %.0f
               mile_per_hour2 = %.1f
               mm = %.1f
               mmHg = %.1f
               mm_per_hour = %.1f
               percent = %.0f
               second = %.0f
               uv_index = %.1f
               volt = %.1f
               watt_per_meter_squared = %.0f
               NONE = "  N/A"
          Â
           # The following section overrides the label used for each type of unit
           [[[[Labels]]]]
              Â
               meter = " meter", " meters"   # You may prefer "metre".
               day = " day", " days"
               hour = " hour", " hours"
               minute = " minute", " minutes"
               second = " second", " seconds"
               NONE = ""
          Â
           # The following section sets the format for each time scale.
           # The values below will work in every locale, but they may not look
           # particularly attractive.
           [[[[TimeFormats]]]]
              Â
               hour = %H:%M
               day = %X
               week = %X (%A)
               month = %x %X
               year = %x %X
               rainyear = %x %X
               current = %x %X
               ephem_day = %X
               ephem_year = %x %X
          Â
           [[[[Ordinates]]]]
              Â
               # Ordinal directions. The last one is for no wind direction
               directions = N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW, N/A
          Â
           # The following section sets the base temperatures used for the
           # calculation of heating, cooling, and growing degree-days.
           [[[[DegreeDays]]]]
              Â
               # Base temperature for heating days, with unit:
               heating_base = 65, degree_F
               # Base temperature for cooling days, with unit:
               cooling_base = 65, degree_F
               # Base temperature for growing days, with unit:
               growing_base = 50, degree_F
          Â
           # A trend takes a difference across a time period. The following
           # section sets the time period, and how big an error is allowed to
           # still be counted as the start or end of a period.
           [[[[Trend]]]]
              Â
               time_delta = 10800   # 3 hours
               time_grace = 300   # 5 minutes
      Â
       # The labels to be used for each observation type
       [[[Labels]]]
          Â
           # Set to hemisphere abbreviations suitable for your location:
           hemispheres = N, S, E, W
          Â
           # Formats to be used for latitude whole degrees, longitude whole
           # degrees, and minutes:
           latlon_formats = %02d, %03d, %05.2f
          Â
           # Generic labels, keyed by an observation type.
           [[[[Generic]]]]
               barometer = Barometer
               dewpoint = Dew Point
               ET = ET
               heatindex = Heat Index
               inHumidity = Inside Humidity
               inTemp = Inside Temperature
               outHumidity = Humidity
               outTemp = Outside Temperature
               radiation = Radiation
               rain = Rain
               rainRate = Rain Rate
               UV = UV Index
               windDir = Wind Direction
               windGust = Gust Speed
               windGustDir = Gust Direction
               windSpeed = Wind Speed
               windchill = Wind Chill
               windgustvec = Gust Vector
               windvec = Wind Vector
               extraTemp1 = Temperature1
               extraTemp2 = Temperature2
               extraTemp3 = Temperature3
              Â
               # Sensor status indicators
              Â
               rxCheckPercent = Signal Quality
               txBatteryStatus = Transmitter Battery
               windBatteryStatus = Wind Battery
               rainBatteryStatus = Rain Battery
               outTempBatteryStatus = Outside Temperature Battery
               inTempBatteryStatus = Inside Temperature Battery
               consBatteryVoltage = Console Battery
               heatingVoltage = Heating Battery
               supplyVoltage = Supply Voltage
               referenceVoltage = Reference Voltage
      Â
       [[[Almanac]]]
          Â
           # The labels to be used for the phases of the moon:
           moon_phases = New, Waxing crescent, First quarter, Waxing gibbous, Full, Waning gibbous, Last quarter, Waning crescent
##############################################################################
#Â Â This service acts as a filter, converting the unit system coming from
#Â Â the hardware to a unit system in the database.
[StdConvert]
  Â
   # The target_unit affects only the unit system in the database. Once
   # chosen it cannot be changed without converting the entire database.
   # Modification of target_unit after starting weewx will result in
   # corrupt data - the database will contain a mix of US and METRIC data.
   #
   # The value of target_unit does not affect the unit system for
   # reporting - reports can display US, Metric, or any combination of units.
   #
   # In most cases, target_unit should be left as the default: US
   #
   # In particular, those migrating from a standard wview installation
   # should use US since that is what the wview database contains.
  Â
   # DO NOT MODIFY THIS VALUE UNLESS YOU KNOW WHAT YOU ARE DOING!
   target_unit = METRIC   # Options are 'US', 'METRICWX', or 'METRIC'
##############################################################################
#Â Â This section can adjust data using calibration expressions.
[StdCalibrate]
  Â
   [[Corrections]]
       # For each type, an arbitrary calibration expression can be given.
       # It should be in the units defined in the StdConvert section.
       # Example:
       foo = foo + 0.2
##############################################################################
#Â Â This section is for quality control checks. If units are not specified,
#Â Â values must be in the units defined in the StdConvert section.
[StdQC]
  Â
   [[MinMax]]
       barometer = 26, 32.5, inHg
       pressure = 24, 34.5, inHg
       outTemp = -40, 120, degree_F
       inTemp = 10, 120, degree_F
       outHumidity = 0, 100
       inHumidity = 0, 100
       windSpeed = 0, 120, mile_per_hour
       rain = 0, 10, inch
##############################################################################
#Â Â This section controls the origin of derived values.
[StdWXCalculate]
  Â
   [[Calculations]]
       # How to calculate derived quantities. Possible values are:
       # hardware       - use the value provided by hardware
       # software       - use the value calculated by weewx
       # prefer_hardware - use value provide by hardware if available,
       #                     otherwise use value calculated by weewx
      Â
       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
##############################################################################
#Â Â For hardware that supports it, this section controls how often the
#Â Â onboard clock gets updated.
[StdTimeSynch]
  Â
   # How often to check the weather station clock for drift (in seconds)
   clock_check = 14400
  Â
   # How much it can drift before we will correct it (in seconds)
   max_drift = 5
##############################################################################
#Â Â This section is for configuring the archive service.
[StdArchive]
  Â
   # If the station hardware supports data logging then the archive interval
   # will be downloaded from the station. Otherwise, specify it (in seconds).
   archive_interval = 300
  Â
   # If possible, new archive records are downloaded from the station
   # hardware. If the hardware does not support this, then new archive
   # records will be generated in software.
   # Set the following to "software" to force software record generation.
   record_generation = hardware
  Â
   # Whether to include LOOP data in hi/low statistics
   loop_hilo = True
  Â
   # The data binding used to save archive records
   data_binding = wx_binding
##############################################################################
#Â Â This section binds a data store to a database.
[DataBindings]
  Â
   [[wx_binding]]
       # The database must match one of the sections in [Databases].
       # This is likely to be the only option you would want to change.
       database = archive_sqlite
       # The name of the table within the database
       table_name = archive
       # The manager handles aggregation of data for historical summaries
       manager = weewx.manager.DaySummaryManager
       # The schema defines the structure of the database.
       # It is *only* used when the database is created.
       schema = schemas.wview.schema
##############################################################################
#Â Â This section defines various databases.
[Databases]
  Â
   # A SQLite database is simply a single file
   [[archive_sqlite]]
       database_name = weewx.sdb
       database_type = SQLite
  Â
   # MySQL
   [[archive_mysql]]
       database_name = weewx
       database_type = MySQL
##############################################################################
#Â Â This section defines defaults for the different types of databases.
[DatabaseTypes]
  Â
   # Defaults for SQLite databases
   [[SQLite]]
       driver = weedb.sqlite
       # Directory in which the database files are located
       SQLITE_ROOT = /var/lib/weewx
  Â
   # Defaults for MySQL databases
   [[MySQL]]
       driver = weedb.mysql
       # The host where the database is located
       host = localhost
       # The user name for logging in to the host
       user = weewx
       # The password for the user name (quotes guard against parsing errors)
       password = weewx
##############################################################################
#Â Â This section configures the internal weewx engine.
[Engine]
   # The following section specifies which services should be run and in what order.
   [[Services]]
       prep_services = weewx.engine.StdTimeSynch
       data_services = ,
       process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
       xtype_services = weewx.wxxtypes.StdWXXTypes, weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater, weewx.wxxtypes.StdDelta
       archive_services = weewx.engine.StdArchive
       restful_services = weewx.restx.StdStationRegistry, weewx.restx.StdPWSweather, weewx.restx.StdCWOP, weewx.restx.StdWOW, weewx.restx.StdAWEKAS, user.wcloud.WeatherCloud, user.weather365.Weather365
       report_services = weewx.engine.StdPrint, weewx.engine.StdReport