Dear Thomas, I moved this morning from 4.1.0 to 4.1.1 and discovered the error (in /var/log/syslog): Module 'user.xstats' has no attribute 'XStatsService' when searching ...
In fact it was already there in 4.1.0, but I didn't noticed, as it had no apparent effects. I tries to figure out what/where is wrong, but no success. Then I found you answer, implemented it and the result is catastrophic. Weewx stops working. Running "wee_extension --uninstall " is not better. (Error: No module named 'user.xstats', seems normal, but I don;t know where to go. May be I should better reinstall weewx. Running python 3, on a Debian 10.4 X64 / DEBUG is ON. This is the extract from syslog: **** Module 'user.xstats' has no attribute 'XStatsService' when searching for 'user.xstats.XStatsService' Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** Traceback (most recent call last): Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** File "/usr/share/weewx/weeutil/weeutil.py", line 1098, in get_object Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** mod = getattr(mod, part) Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** AttributeError: module 'user.xstats' has no attribute 'XStatsService' Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** During handling of the above exception, another exception occurred: Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** Traceback (most recent call last): Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** File "/usr/share/weewx/weewxd", line 148, in main Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** engine = weewx.engine.StdEngine(config_dict) Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 75, in __init__ Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** self.loadServices(config_dict) Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** File "/usr/share/weewx/weewx/engine.py", line 138, in loadServices Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** obj = weeutil.weeutil.get_object(svc)(self,config_dict) Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** File "/usr/share/weewx/weeutil/weeutil.py", line 1102, in get_object Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** "Module '%s' has no attribute '%s' when searching for '%s'" % (mod.__name__, part, module_class)) Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** AttributeError: Module 'user.xstats' has no attribute 'XStatsService' when searching for 'user.xstats.XStatsService' Jun 2 23:04:57 aragorn weewx[4012] CRITICAL __main__: **** Exiting. Any help will be welcome, but no hurry! It is time to sleep form me... Best regards and thanks, Paul Le jeudi 18 janvier 2018 00:33:55 UTC+1, Thomas Keffer a écrit : > > While xstats is included in the weeWX distribution as an example of an > extension, it is not part of the code base. If you want to use it, you > would have to install it first. > > It's location depends on the install method you used > <http://weewx.com/docs/usersguide.htm#Where_to_find_things>, > typically either /usr/share/doc/weewx/examples/xstats or > /home/weewx/examples/xstats. > > Installation instructions are included in the accompanying readme.txt > file, located in the subdirectory. > > -tk > > > On Wed, Jan 17, 2018 at 3:56 PM, ON9CB <[email protected] <javascript:>> > wrote: > >> Hi All, >> >> Really struggling to make sense of this one. Just completed a fresh >> install of 3.8.0 on a fresh install of Raspbian Stretch on a Pi3B after a >> replacement SD card - failed after only a week in service! >> >> Copied the backup weewx.conf, skins, and DB's and all looked good until I >> got the xstats module missing error, followed by 'launch of report thread >> aborted...'. The aborted thread errors started after I upgraded to 3.8.0. >> The xstats errors started today. Debug report is attached. >> >> Also, the graphs are all updating nicely, but apparently no index page is >> being generated. >> >> Thanks in advance for any assistance!! >> >> Craig >> >> >> >> >>>>>>>>>>>>>>>>>>> >> >> Jan 17 23:09:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:09:00 CET (1516226940) to database 'weewx.sdb' >> Jan 17 23:09:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:09:00 CET (1516226940) to daily summary in 'weewx.sdb' >> Jan 17 23:10:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:10:11 CET (1516227011) to database 'cmon.sdb' >> Jan 17 23:10:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:10:11 CET (1516227011) to daily summary in 'cmon.sdb' >> Jan 17 23:10:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:10:00 CET (1516227000) to database 'weewx.sdb' >> Jan 17 23:10:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:10:00 CET (1516227000) to daily summary in 'weewx.sdb' >> Jan 17 23:10:13 Weewx weewx[1828]: restx: PWSWeather: Published record >> 2018-01-17 23:10:00 CET (1516227000) >> Jan 17 23:10:13 Weewx weewx[1828]: restx: AWEKAS: Published record >> 2018-01-17 23:10:00 CET (1516227000) >> Jan 17 23:10:13 Weewx weewx[1828]: restx: WOW: Published record >> 2018-01-17 23:10:00 CET (1516227000) >> Jan 17 23:10:13 Weewx weewx[1828]: **** Traceback (most recent >> call last): >> Jan 17 23:10:13 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/reportengine.py", line 239, in run >> Jan 17 23:10:13 Weewx weewx[1828]: **** obj.start() >> Jan 17 23:10:13 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/reportengine.py", line 273, in start >> Jan 17 23:10:13 Weewx weewx[1828]: **** self.run() >> Jan 17 23:10:13 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/cheetahgenerator.py", line 155, in run >> Jan 17 23:10:13 Weewx weewx[1828]: **** >> self.initExtensions(gen_dict[section_name]) >> Jan 17 23:10:13 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/cheetahgenerator.py", line 197, in initExtensions >> Jan 17 23:10:13 Weewx weewx[1828]: **** class_ = >> weeutil.weeutil._get_object(x) >> Jan 17 23:10:13 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weeutil/weeutil.py", line 1132, in _get_object >> Jan 17 23:10:13 Weewx weewx[1828]: **** mod = >> __import__(module) >> Jan 17 23:10:13 Weewx weewx[1828]: **** ImportError: No module >> named xstats >> Jan 17 23:10:13 Weewx weewx[1828]: restx: CWOP: Published record >> 2018-01-17 23:10:00 CET (1516227000) >> Jan 17 23:10:19 Weewx weewx[1828]: imagegenerator: Generated 13 images >> for sofaskin in 6.22 seconds >> Jan 17 23:10:19 Weewx weewx[1828]: **** Traceback (most recent >> call last): >> Jan 17 23:10:19 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/reportengine.py", line 239, in run >> Jan 17 23:10:19 Weewx weewx[1828]: **** obj.start() >> Jan 17 23:10:19 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/reportengine.py", line 273, in start >> Jan 17 23:10:19 Weewx weewx[1828]: **** self.run() >> Jan 17 23:10:19 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/cheetahgenerator.py", line 155, in run >> Jan 17 23:10:19 Weewx weewx[1828]: **** >> self.initExtensions(gen_dict[section_name]) >> Jan 17 23:10:19 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weewx/cheetahgenerator.py", line 197, in initExtensions >> Jan 17 23:10:19 Weewx weewx[1828]: **** class_ = >> weeutil.weeutil._get_object(x) >> Jan 17 23:10:19 Weewx weewx[1828]: **** File >> "/usr/share/weewx/weeutil/weeutil.py", line 1132, in _get_object >> Jan 17 23:10:19 Weewx weewx[1828]: **** mod = >> __import__(module) >> Jan 17 23:10:19 Weewx weewx[1828]: **** ImportError: No module >> named xstats >> Jan 17 23:10:26 Weewx weewx[1828]: imagegenerator: Generated 13 images >> for sofaskin_EN in 6.63 seconds >> Jan 17 23:10:26 Weewx weewx[1828]: copygenerator: copied 0 files to >> /var/www/html/sofa >> Jan 17 23:10:26 Weewx weewx[1828]: cheetahgenerator: Generated 1 files >> for report cmon in 0.31 seconds >> Jan 17 23:11:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:11:10 CET (1516227070) to database 'cmon.sdb' >> Jan 17 23:11:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:11:10 CET (1516227070) to daily summary in 'cmon.sdb' >> Jan 17 23:11:14 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:11:00 CET (1516227060) to database 'weewx.sdb' >> Jan 17 23:11:14 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:11:00 CET (1516227060) to daily summary in 'weewx.sdb' >> Jan 17 23:11:14 Weewx weewx[1828]: engine: Launch of report thread >> aborted: existing report thread still running >> Jan 17 23:12:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:12:11 CET (1516227131) to database 'cmon.sdb' >> Jan 17 23:12:10 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:12:11 CET (1516227131) to daily summary in 'cmon.sdb' >> Jan 17 23:12:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:12:00 CET (1516227120) to database 'weewx.sdb' >> Jan 17 23:12:12 Weewx weewx[1828]: manager: Added record 2018-01-17 >> 23:12:00 CET (1516227120) to daily summary in 'weewx.sdb' >> Jan 17 23:12:19 Weewx weewx[1828]: engine: Launch of report thread >> aborted: existing report thread still running >> >> >>>>>>>>>>>>>>>>>>>>> >> >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "weewx-user" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "weewx-user" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/a82786a0-02f4-4999-9afe-e7a7eb596801%40googlegroups.com.
