Multiple stations on one host

1,004 views
Skip to first unread message

tomn...@frontier.com

unread,
Jan 5, 2017, 7:36:48 PM1/5/17
to weewx-user
Best I can tell, you can run only one weather station per weewx process instance, but is there any reason multiple instances can't be run on the same host from per-station directories (installs and configs of weewx)?  To further complicate things, can all the archive data be hosted on a single MySQL process as long at the database names are unique?
Aside from two stations, I've got another sensor source (not exactly weather) to integrate with the graphs.

Thx, Chris

Thomas Keffer

unread,
Jan 5, 2017, 7:46:23 PM1/5/17
to weewx-user
Absolutely possible. Matthew has written about this several times. Here's a recent post of his on the subject.

-tk

--
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+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

mwall

unread,
Jan 5, 2017, 8:17:16 PM1/5/17
to weewx-user
On Thursday, January 5, 2017 at 7:36:48 PM UTC-5, tomnykds wrote:
Best I can tell, you can run only one weather station per weewx process instance, but is there any reason multiple instances can't be run on the same host from per-station directories (installs and configs of weewx)?  To further complicate things, can all the archive data be hosted on a single MySQL process as long at the database names are unique?

chris,

just to be clear: you can run any number of weewx instances from a single weewx installation on a single computer.  each instance must have its own config file, database, and reports directory (if the instance emits any html/text/images).

no need to modify the weewx-multi init script - just put the list of instance names in /etc/default/weewx-multi

m

Gert Andersen

unread,
May 13, 2020, 4:50:24 AM5/13/20
to weewx-user
Hi
Is this script still valid using Weewx 4?

Basically , I want to have 3 WeeWx instances pointing to 3 different domains on 1 computer, each domain with different configuration. All 3 instances should read from the same mqtt subscription port and using Interceptor. Can all 3 Interceptor extensions listen to the same port or must Interceptor  listen to a unique ports, say 8001, 8002 and 8003.

I'll be using Belchertown and mqtt for all 3 domains. More or less the same question here with  Mosquitto. Can I use the  same ports(1883 for mqtt and 9001 for sockets) for all domains or should I setup different ports for each domain.

Thanks
Gert

michael.k...@gmx.at

unread,
Feb 2, 2021, 3:27:55 PM2/2/21
to weewx-user
I have the same question: is the script still valid with weewx4?

When I try to run weewx-multi following the guide at https://github.com/weewx/weewx/wiki/weewx-multi I get:

Feb 02 21:25:22 raspberrypi3B systemd[1]: Starting LSB: weewx-multi...
-- Subject: A start job for unit weewx.service has begun execution
-- Defined-By: systemd
--
-- A start job for unit weewx.service has begun execution.
--
-- The job identifier is 1362.
Feb 02 21:25:22 raspberrypi3B systemd[3728]: weewx.service: Failed to execute command: No such file or directory
Feb 02 21:25:22 raspberrypi3B systemd[3728]: weewx.service: Failed at step EXEC spawning /etc/init.d/weewx: No such file or directory
-- Subject: Process /etc/init.d/weewx could not be executed
-- Defined-By: systemd
--
-- The process /etc/init.d/weewx could not be executed and failed.
--
-- The error number returned by this process is ERRNO.
Feb 02 21:25:22 raspberrypi3B systemd[1]: weewx.service: Control process exited, code=exited, status=203/EXEC
-- Subject: Unit process exited
-- Defined-By: systemd
--
-- An ExecStart= process belonging to unit weewx.service has exited.
--
-- The process' exit code is 'exited' and its exit status is 203.
Feb 02 21:25:22 raspberrypi3B systemd[1]: weewx.service: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
--
-- The unit weewx.service has entered the 'failed' state with result 'exit-code'.
Feb 02 21:25:22 raspberrypi3B systemd[1]: Failed to start LSB: weewx-multi.
-- Subject: A start job for unit weewx.service has failed
-- Defined-By: systemd
--
-- A start job for unit weewx.service has finished with a failure.
--
-- The job identifier is 1362 and the job result is failed.


gjr80

unread,
Feb 2, 2021, 4:18:15 PM2/2/21
to weewx-user
weewx-multi works fine under WeeWX 4. I am am running a dual instance under raspberry Pi OS and have had no problems at all.

Gary

michael.k...@gmx.at

unread,
Feb 3, 2021, 4:26:19 PM2/3/21
to weewx-user

Thank you for the reply, Gary. I probably did something wrong with the weewx-multi init script. On a raspian, where is:
util/init.d/weewx-multi
?
I didn't copy it from it's installation path, I made a new file and pasted it into notepad++ and uploaded it with winscp. And by writing this, I think this is what my problem is all about: \r\n linebreaks in the init script file instead of \n...

Rainer Lang

unread,
Feb 3, 2021, 5:58:00 PM2/3/21
to weewx...@googlegroups.com

I had the some question some time ago .... - where is the directory util - until I realized that this path seems to refer to a location on GitHUB.
You can find there the whole script text, mark it, copy it into the clipboard and then create a new file with the name weewx-multi and copy the clipboard content into it and save it.
Then you have the weewx-multi script. Where you place in the beginning it is your choice - you are supposed to overwrite the weex script in /etc/init.d with the weewx-multi
(1. rename the existing /etc/init.d/weewx: sudo mv /etc/init.d/weewx /etc/init.d/weewx-old
2. assuming you have created the weewx-multi script in /home/pi you would then rename and move it to /etc/init.d as weewx: sudo mv /home/pi/weewx-multi /etc/init.d/weewx)
If you saved the weewx-multi script somewhere else you have to take that path as your source for the mv command.

--
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+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/1b10a764-2192-4e3f-b45d-c661f7629fbcn%40googlegroups.com.

gjr80

unread,
Feb 4, 2021, 1:02:53 AM2/4/21
to weewx-user
The How to run multiple instances of WeeWX wiki article is written (as are many other articles/instructions) assuming WeeWX was installed via setup.py. On a setup.py install you will find the util directory in /home/weewx. For a package install you will find most of the util directory contents in /etc/weewx, unfortunately that does not include the util/init.d directory which contains weewx-multi. So if you want to use weewx-multi on a package installation you will need to download weewx-multi from GitHub. The destination directory you download weewx-multi to on your WeeWX system is not important as it will be copied to the correct location during setup. The following command can be used to download weewx-multi to /var/tmp:


Once weewx-multi has been downloaded the rest of the wiki article instructions can be followed substituting the path to weewx-multi accordingly.

I am not sure if incorrect line endings would cause the error you are seeing, I would go back over the wiki article and work through it carefully and completely obtaining weewx-multi as outlined above.

I will touch up the wiki article to clear up the confusion over the location of weewx-multi.

Gary

michael.k...@gmx.at

unread,
Feb 4, 2021, 1:44:34 AM2/4/21
to weewx-user
Thank you Gary.
I will rework everything.
The reason why I think it has something to do with line breaks is the following: on my test system I didn't save the original weewx init script when I tried it the last time. So I also copied and pasted the init script from my production to the test system as described above. After that I was seeing the very same error, but with the origninal single instance init script. Copying the script, instead of pasting it's content into Notepad++ and saving it through WinSCP, solved the problem. A diff didn't show any differences (different line breaks are ignored), also the permissions were set correctly. I will try it all again and we'll see.

Chotechai Piyavongsiri

unread,
Oct 4, 2021, 4:49:03 AM10/4/21
to weewx-user
I just found out I can run more than one weewx instance from this thread. I have two outdoor weather stations (weatherslueth and weatherflow tempest). I already run weewx separately on two physical servers and both are running fine. After I implement two instances on one of the server (one that already hosts weatherslueth instance) with instance named weewx and tempest. The former instance remains running fine without problem; but the newly added instance for Tempest can start running and can't produce webpages. I've checked /var/lib/weewx, it has forecast.sdb, weewx.sdb, tempest.sdb, and weewxwd.sdb. I'm not sure the one forecast.sdb is supposed to cater for both instances?
The syslog for tempest instance, with debug on in tempest.conf:

Oct  4 15:22:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:22:14 +07 (1633335734)
Oct  4 15:23:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:23:14 +07 (1633335794)
Oct  4 15:24:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:24:14 +07 (1633335854)
Oct  4 15:25:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:25:14 +07 (1633335914)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:26:13 +07 (1633335973)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.manager: Added record 2021-10-04 15:25:00 +07 (1633335900) to database 'tempest.sdb'
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.manager: Added record 2021-10-04 15:25:00 +07 (1633335900) to daily summary in 'tempest.sdb'
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Running reports for latest time in the database.
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Report 'SeasonsReport' not enabled. Skipping.
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping.
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Report 'StandardReport' not enabled. Skipping.
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Running report 'Belchertown'
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Belchertown/skin.conf for report 'Belchertown'
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'weewx.cheetahgenerator.JSONHelpers', u'user.belchertown.getData']
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] INFO weewx.restx: MQTT: Published record 2021-10-04 15:25:00 +07 (1633335900)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] DEBUG weewx.manager: Daily summary version is 4.0
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.cheetahgenerator.CheetahGenerator'
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****  Error downloading forecast data. Check the URL in your configuration and try again. You are trying to use URL: https://api.darksky.net/forecast//13.717268,100.590727?units=auto&lang=en, and the error is: <urlopen error [Errno -2] Name or service not known>
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 196, in run
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      obj.start()
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 281, in start
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      self.run()
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 152, in run
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      ngen = self.generate(gen_dict[section_name], self.gen_ts)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 222, in generate
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      ngen += self.generate(section[subsection], gen_ts)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 222, in generate
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      ngen += self.generate(section[subsection], gen_ts)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 311, in generate
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      default_binding)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 387, in _getSearchList
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      searchList += obj.get_extension_list(timespan, db_lookup)
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/user/belchertown.py", line 536, in get_extension_list
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****      raise Warning( "Error downloading forecast data. Check the URL in your configuration and try again. You are trying to use URL: %s, and the error is: %s" % ( forecast_url, error ) )
Oct  4 15:26:16 bthoven-AP34-PRO weewx-tempest[9908] ERROR weewx.reportengine:         ****  Warning: Error downloading forecast data. Check the URL in your configuration and try again. You are trying to use URL: https://api.darksky.net/forecast//13.717268,100.590727?units=auto&lang=en, and the error is: <urlopen error [Errno -2] Name or service not known>

Chotechai Piyavongsiri

unread,
Oct 4, 2021, 5:00:00 AM10/4/21
to weewx-user
Even I disabled forecast from the bechertown skin (latest version), it still produces the error
Oct  4 15:53:05 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.manager: Daily summary version is 4.0
Oct  4 15:53:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.restx: MQTT: Published record 2021-10-04 15:53:12 +07 (1633337592)
Oct  4 15:55:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.restx: MQTT: Published record 2021-10-04 15:55:12 +07 (1633337712)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.restx: MQTT: Published record 2021-10-04 15:56:12 +07 (1633337772)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.manager: Added record 2021-10-04 15:55:00 +07 (1633337700) to database 'tempest.sdb'
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.manager: Added record 2021-10-04 15:55:00 +07 (1633337700) to daily summary in 'tempest.sdb'
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Running reports for latest time in the database.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'SeasonsReport' not enabled. Skipping.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'StandardReport' not enabled. Skipping.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Running report 'Belchertown'
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Belchertown/skin.conf for report 'Belchertown'
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.restx: MQTT: Published record 2021-10-04 15:55:00 +07 (1633337700)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.cheetahgenerator: Using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras', 'weewx.cheetahgenerator.JSONHelpers', u'user.belchertown.getData']
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.manager: Daily summary version is 4.0
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine: Caught unrecoverable exception in generator 'weewx.cheetahgenerator.CheetahGenerator'
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****  No JSON object could be decoded
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****  Traceback (most recent call last):
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 196, in run
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      obj.start()
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/reportengine.py", line 281, in start
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      self.run()
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 152, in run
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      ngen = self.generate(gen_dict[section_name], self.gen_ts)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 222, in generate
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      ngen += self.generate(section[subsection], gen_ts)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 222, in generate
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      ngen += self.generate(section[subsection], gen_ts)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 311, in generate
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      default_binding)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/weewx/cheetahgenerator.py", line 387, in _getSearchList
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      searchList += obj.get_extension_list(timespan, db_lookup)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/share/weewx/user/belchertown.py", line 636, in get_extension_list
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      eqdata = json.load( read_file )
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/lib/python2.7/json/__init__.py", line 291, in load
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      **kw)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      return _default_decoder.decode(s)
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****    File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****      raise ValueError("No JSON object could be decoded")
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****  ValueError: No JSON object could be decoded
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] ERROR weewx.reportengine:         ****  Generator terminated
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.reportengine: Copied 31 files to /var/www/bthofen.com/tempest
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.manager: Daily summary version is 4.0
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'FTP' not enabled. Skipping.
Oct  4 15:56:16 bthoven-AP34-PRO weewx-tempest[20798] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. Skipping.
Oct  4 15:57:16 bthoven-AP34-PRO weewx-tempest[20798] INFO weewx.restx: MQTT: Published record 2021-10-04 15:57:12 +07 (1633337832)


Rainer Lang

unread,
Oct 4, 2021, 6:39:24 AM10/4/21
to weewx...@googlegroups.com
You have probably not disabled the belchertown skin completely for the Cheetah Generator.

What you have to make sure with two (or more) instances on the same server is:

with two weewx instances on one and the same server you need two different weewx.conf
e.g. tempest.conf and 2ndstation.conf
and possibly also two different skin directories with a dedicated skin.conf (if both instances are using the same skin - one instance can use different skins at the same time, but when two instances share the same skin.conf everything must be identical).

You will need to have a separate (sub-)directory for your html output (HTML_ROOT) for each instance (and each skin used by the instance) and you better have two separate directories for your databases (in case both use a database with the same name - or you rename one of them).

Your issue looks to me that you may have not thoroughly and consequently assigned different names (and paths/directories) to the HTML_ROOTs, database bindings,databases etc.

When both instances run properly on both servers, there's no reason why they shouldn't run properly together on one server.

I have separated in my installation the skins directory (i.e. created one for each instance - now each instance has its own, independent skin.conf for each skin it uses - e.g. /etc/weewx/inst1/skins and /etc/weewx/inst2/skins) and have the HTML_ROOT of each instance's weewx.conf point to there, and my databases carry the names of the instance in its name (even though that is not necessary if you separate them with directories, but with such a naming "convention" you sort of implicitly document where they belong to )

If in your use case both of your instances need a forecast.sdb then you have to rename at least one of them - or place them in a different directory) - if you include the name of your instance, it could be forecast-inst1.sdb and forecast-inst2.sdb and they can both remain/stay in /var/lib/weewx. Then it's also easy to tell who/what belongs to where.
--
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+...@googlegroups.com.
Message has been deleted
Message has been deleted

Rainer Lang

unread,
Oct 5, 2021, 3:11:31 AM10/5/21
to weewx...@googlegroups.com
When both your instances have/use identical skin.conf, index.html.tmpl etc. settings for the Belchertown skin, they don't need to be separated. But if you want to "individualize" the skins for each instance, then each one would need their own one.

On 05.10.2021 05:15, Chotechai Piyavongsiri wrote:
Thank you for your detailed explanation.

I have two configs (weewx.conf, tempest.conf), two separated database (weewx.sdb, tempest.sdb) in /var/lib/weewx, two separated HTML roots (/var/html/weewx, var/html/tempest). I saw the second instance write somethings in the /var/html/tempest directory; but not completed because of errors along the process. However I have only one forecast.sdb. Could you tell me more how to identify a specific forecast_tempest.sdb in the weewx config?

For belchertown skin, I'm not sure why we need two separated skins because I understand that both instances are supposed to "read" the skin only?

Chotechai Piyavongsiri

unread,
Oct 6, 2021, 2:47:20 AM10/6/21
to weewx-user
Just to update because it is working now.
It has nothing to do with weewx multi which setups are fine. The issue is on weatherflowudp plugin which listens to udp port 50222 to grab sensors' data. I have my other single weewx instance running on another test server. When I run two-instance weewx on my production server, the one using weatherflowudp plugin cannot listen to udp port 50222 even the port is set as shared in both test and production server's weewx config. Once I stop weewx instance on my test server, the weewx second instance on my production server can grab data from udp port 50222 and produce updated HTML data.

I don't know why udp port 50222 cannot be shared; but that's another problem not relating to this topic.

Thank you.

Reply all
Reply to author
Forward
0 new messages