Hi all, I've been trying for a few weeks now (on-off) to get Daniel Macias's METAR extension working on my WeeWX setup but not having any success. I'm running WeeWX v4.2.0 on an RPi0W with RaspIOS Buster. I did a full system install so WeeWx configs and skins are in /etc/weewx.
Dec 17 20:31:24 server systemd[1]: Starting LSB: weewx weather system... Dec 17 20:31:26 server weewx[15115] INFO __main__: Initializing weewx version 4.2.0 Dec 17 20:31:26 server weewx[15115] INFO __main__: Using Python 3.7.3 (default, Jul 25 2020, 13:03:44) #012[GCC 8.3.0] Dec 17 20:31:26 server weewx[15115] INFO __main__: Platform Linux-5.4.79+-armv6l-with-debian-10.7 Dec 17 20:31:26 server weewx[15115] INFO __main__: Locale is 'en_US.UTF-8' Dec 17 20:31:26 server weewx[15115] INFO __main__: PID file is /var/run/weewx.pid Dec 17 20:31:27 server weewx[15104]: Starting weewx weather system: weewx. Following the directions on his web page (https://domoticproject.com/including-metar-reports-weewx/) I have done the following: Downloaded and installed the metargenerator.py file to /usr/share/weewx/user. I added a line to log (in syslog) when a metar is successfully retrieved from the web site. Failures are already being logged. Next I modified /etc/weewx/skins/Seasons/skin.conf in two places. The first modification extends the CheetahGenerator search_list # The CheetahGenerator creates files from templates. This section # specifies which files will be generated from which template. [CheetahGenerator] # Possible encodings are 'html_entities', 'utf8', or 'strict_ascii' encoding = html_entitiese *search_list_extensions = user.metargenerator.MyMetarSearch* At the end the file I added this (I also copied this to the end of the weewx.conf file). *# The list of airports to include in the METAR report:[MetarReport]refresh_interval = 5 [[kdmw]] [[kosh]]* Finally, I added the following lines to /etc/weewx/skins/Seasons/index.html.tmpl to display results in the report: ''' <div id="metar_group" class="widget"> <div class="widget_title"> METAR (Meteorological Aerodrome Report) </div> <div class="widget_contents"> <table> <tbody> <tr> <td class="label">KDMW - Carroll County Regional Airport</td> <td class="data">$kdmw_metar</td> </tr> <tr> <td class="label">KOSH - Wittman Regional Airport</td> <td class="data">$kosh_metar</td> </tr> </tbody> </table> </div> </div> ''' After I restart and wait for the first report to be generated I get this in my syslog. There is no indication that the search_list_extension user.metargenerator.MyMetarSearch was ever run and no METAR data is found in the report, just the tags for the individual airports ($kdmw_metar and $kosh_metar). Dec 17 20:17:51 server weewx[14851] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb' Dec 17 20:17:51 server weewx[14851] INFO weewx.manager: Starting backfill of daily summaries Dec 17 20:17:51 server weewx[14851] INFO weewx.engine: Starting main packet loop. Dec 17 20:17:51 server weewx[14851] INFO weewx.wxxtypes: Type beaufort has been deprecated. Use unit beaufort instead. Dec 17 20:20:22 server weewx[14851] INFO weewx.manager: Added record 2020-12-17 20:20:00 EST (1608254400) to database 'weewx.sdb' Dec 17 20:20:23 server weewx[14851] INFO weewx.manager: Added record 2020-12-17 20:20:00 EST (1608254400) to daily summary in 'weewx.sdb' Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: MainThread: Zambretti: starting thread Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: generating forecast for 2020-12-17 09:00:00 EST (1608213600) Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: MainThread: NWS: not yet time to do the forecast Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: using winddir from 2020-12-17 08:30:00 EST (1608211800) to 2020-12-17 09:00:00 EST (1608213600) Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: using pressure from 2020-12-17 06:00:00 EST (1608202800) to 2020-12-17 09:00:00 EST (1608213600) Dec 17 20:20:23 server weewx[14851] DEBUG weewx.reportengine: Running reports for latest time in the database. Dec 17 20:20:23 server weewx[14851] DEBUG weewx.reportengine: Running report 'SeasonsReport' Dec 17 20:20:23 server weewx[14851] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: units=1 winddir=None pressure=30.07961402744 first_p=30.04029032258066 last_p=30.111866666666675 Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: pressure=1018.6124876429427 month=11 winddir=None trend=0.807950946880851 north=True Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: code is B Dec 17 20:20:23 server weewx[14851] INFO user.forecast: ZambrettiThread: Zambretti: generated 1 forecast record Dec 17 20:20:23 server weewx[14851] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport' Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: saving 1 forecast records Dec 17 20:20:23 server weewx[14851] INFO weewx.manager: Added record 2020-12-17 20:20:00 EST (1608254400) to database 'forecast.sdb' Dec 17 20:20:23 server weewx[14851] INFO user.forecast: ZambrettiThread: Zambretti: saved 1 forecast records Dec 17 20:20:23 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: deleting forecasts prior to 1607649623 Dec 17 20:20:24 server weewx[14851] INFO user.forecast: ZambrettiThread: Zambretti: deleted forecasts prior to 1607649623 Dec 17 20:20:24 server weewx[14851] DEBUG user.forecast: ZambrettiThread: Zambretti: terminating thread Dec 17 20:20:24 server weewx[14851] INFO weewx.restx: StationRegistry: Published record 2020-12-17 20:20:00 EST (1608254400) *Dec 17 20:20:24 server weewx[14851] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'user.forecast.ForecastVariables']* Dec 17 20:20:24 server weewx[14851] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:20:57 server weewx[14851] INFO weewx.cheetahgenerator: Generated 8 files for report SeasonsReport in 33.35 seconds Dec 17 20:20:57 server weewx[14851] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:21:03 server weewx[14851] INFO weewx.imagegenerator: Generated 15 images for report SeasonsReport in 5.86 seconds Dec 17 20:21:04 server weewx[14851] INFO weewx.reportengine: Copied 88 files to /var/www/html/weewx Dec 17 20:21:04 server weewx[14851] DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping. Dec 17 20:21:04 server weewx[14851] DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping. Dec 17 20:21:04 server weewx[14851] DEBUG weewx.reportengine: Report 'StandardReport' not enabled. Skipping. Dec 17 20:21:04 server weewx[14851] DEBUG weewx.reportengine: Running report 'Inigo' Dec 17 20:21:04 server weewx[14851] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Inigo/skin.conf for report 'Inigo' Dec 17 20:21:04 server weewx[14851] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'user.alltime.ExtendedStatistics', 'user.inigo-since.Since'] Dec 17 20:21:04 server weewx[14851] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:21:08 server weewx[14851] INFO weewx.cheetahgenerator: Generated 1 files for report Inigo in 4.67 seconds Dec 17 20:21:08 server weewx[14851] DEBUG weewx.reportengine: Report 'forecast' not enabled. Skipping. Dec 17 20:21:08 server weewx[14851] DEBUG weewx.reportengine: Report 'FTP' not enabled. Skipping. Dec 17 20:21:08 server weewx[14851] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. Skipping. Now I know from his instructions that the search_list_extensions need to be put into the skin.conf file in order for the metar tags to be found but no matter what I do, I don't see any indication the extension ever runs. So, I tried extending the search list in the CheetahGenerator section in weewx.conf (just on a whim). After restarting weewx, this is what I see in the syslog. Dec 17 20:35:21 server weewx[15119] INFO weewx.manager: Added record 2020-12-17 20:35:00 EST (1608255300) to database 'weewx.sdb' Dec 17 20:35:21 server weewx[15119] INFO weewx.manager: Added record 2020-12-17 20:35:00 EST (1608255300) to daily summary in 'weewx.sdb' Dec 17 20:35:22 server weewx[15119] DEBUG user.forecast: MainThread: Zambretti: not yet time to do the forecast Dec 17 20:35:22 server weewx[15119] DEBUG user.forecast: MainThread: NWS: not yet time to do the forecast Dec 17 20:35:22 server weewx[15119] DEBUG weewx.reportengine: Running reports for latest time in the database. Dec 17 20:35:22 server weewx[15119] DEBUG weewx.reportengine: Running report 'SeasonsReport' Dec 17 20:35:22 server weewx[15119] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport' *Dec 17 20:35:22 server weewx[15119] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'user.forecast.ForecastVariables', 'user.metargenerator.MyMetarSearch']* Dec 17 20:35:22 server weewx[15119] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:35:23 server weewx[15119] INFO weewx.restx: StationRegistry: Published record 2020-12-17 20:35:00 EST (1608255300) *Dec 17 20:35:23 server /weewxd: kdmw: error: Cannot get Metar Report. Recovering the last file saved.Dec 17 20:35:23 server /weewxd: metargenerator.py: error: There could not be found an older Metar Report. Skipping!Dec 17 20:35:23 server /weewxd: kosh: error: Cannot get Metar Report. Recovering the last file saved.Dec 17 20:35:23 server /weewxd: metargenerator.py: error: There could not be found an older Metar Report. Skipping!Dec 17 20:35:23 server /weewxd: metargenerator.py: Generated 0 metar tables in 0.02 seconds* Dec 17 20:35:56 server weewx[15119] INFO weewx.cheetahgenerator: Generated 8 files for report SeasonsReport in 33.78 seconds Dec 17 20:35:56 server weewx[15119] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:36:02 server weewx[15119] INFO weewx.imagegenerator: Generated 15 images for report SeasonsReport in 5.38 seconds Dec 17 20:36:02 server weewx[15119] INFO weewx.reportengine: Copied 88 files to /var/www/html/weewx Dec 17 20:36:02 server weewx[15119] DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping. Dec 17 20:36:02 server weewx[15119] DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping. Dec 17 20:36:02 server weewx[15119] DEBUG weewx.reportengine: Report 'StandardReport' not enabled. Skipping. Dec 17 20:36:02 server weewx[15119] DEBUG weewx.reportengine: Running report 'Inigo' Dec 17 20:36:02 server weewx[15119] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Inigo/skin.conf for report 'Inigo' Dec 17 20:36:03 server weewx[15119] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'user.alltime.ExtendedStatistics', 'user.inigo-since.Since'] Dec 17 20:36:03 server weewx[15119] DEBUG weewx.manager: Daily summary version is 2 Dec 17 20:36:07 server weewx[15119] INFO weewx.cheetahgenerator: Generated 1 files for report Inigo in 4.60 seconds Dec 17 20:36:07 server weewx[15119] DEBUG weewx.reportengine: Report 'forecast' not enabled. Skipping. Dec 17 20:36:07 server weewx[15119] DEBUG weewx.reportengine: Report 'FTP' not enabled. Skipping. Dec 17 20:36:07 server weewx[15119] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. Skipping. Interesting enough, I now see that the extension is being called even if all it does is report it can't get the METAR and can't find any backup files. Since it has never created the METAR backup in the first place, I accept these results. I wasn't sure if this was a Python version issue until I confirmed the extension runs when added to the search list in weewx.conf. I guess this could still be a problem but I'm not python savvy enough to see how. I'm at a loss to understand why the metar extension does not run when it is configured in the Seasons/skin.conf file? Can someone enlighten me please? Mike - AJ9x -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/cd9fd127-6c10-4715-abeb-0d82a7a51702n%40googlegroups.com.