Regarding delete=False, most like to do with the exclusive mode used on
Windows, see https://bugs.python.org/issue14243.
For logging I would advocate for a or size fits all model. With Python logging
you can also load config from a file, so this would allow developers to specify
their own logging handlers and filters if so desired.
I will most likely put this syslog wrapper out as it's own project once I fix
up the logging mask.
Shall we put the Windows branch into the main Git repo while playing with this?
Can I create a pull request for that?
Things to do
- Setup defaults for binaries, DB, HTML files etc.
- try a driver or two (I have none of the regular devices)
- run as a service
We should move to weewx-development
> On 15 Oct. 2016, at 11:14 pm, Thomas Keffer <tkef...@gmail.com> wrote:
> That's encouraging! We'll see whether the drivers are so simple! :-)
> Your port looks pretty straightforward. Any idea why the delete=False flag is
> needed in setup.py? Is that a Windows thing?
> I've been meaning to encapsulate the logging. The various weewx modules vary
> in how they handle it. Some use raw syslog, others use convenience functions.
> I am contemplating including the convenience function under weeutil, as a new
> module weeutil.log. For *nix, the logging would be implemented using syslog.
> You have nicely emulated syslog, so that could be used for Windows.
> Alternatively, the convenience functions could just call the Python module
> logging directly.
> I'll be interested to see where this goes!
>> On Sat, Oct 15, 2016 at 12:32 AM, Darryn Capes-Davis
>> <email@example.com> wrote:
>> Hi All,
>> I have been working on changes required to run an out of the box Weewx
>> installation on Windows. I have been able to achieve install using setup.py
>> and running the simulator with minimal changes, the main being writing a
>> syslog wrapper. See https://github.com/dcapslock/weewx/tree/windows for my
>> working forked branch.
>> 1. Install python 2.7 for Windows
>> 2. Upgrade pip and setuptools to make getting modules easy. See
>> easy_install will be installed with setuptools
>> python -m pip install -U pip setuptools
>> 3. Install cheetah
>> easy_install cheetah
>> 4. Install Configobj
>> easy_install configobj
>> 5. Install PIL (Pillow)
>> easy_install Pillow
>> 6. Install pyserial
>> easy_install pyserial
>> 7. Install pyusb
>> easy)install pysub
>> 8. Warp syslog
>> This is the main part of work done. I have written a syslog wrapper then
>> when placed in weewx bin directory will be used when syslog module does not
>> exist, which is the case on Windows. The wrapper uses the python logging
>> module and provides both a local rotating file logger as well as a syslog
>> formatted message out to localhost on port 514, simulating what happens on a
>> NIX box. I have used VisualSyslog
>> (https://github.com/MaxBelkov/visualsyslog) to verify.
>> 9. Fixes found so far running Simulator
>> cheetahgenerator.py - os.rename will not overwrite existing file on windows.
>> So delete file before rename.
>> engine.py - No SIGHUP or SIGTERM on Windows. Need to not register but maybe
>> find another way to raise a restart.
>> setup.py - Need to create NamedTemporaryFile with delete=False. If further
>> work not done this will leave some temp files around.Fixes
>> 10. Just for kicks, first 3 lines of syslog
>> Oct 15 17:33:47 ZEBRA weewx: engine: Initializing weewx version 3.6.1
>> Oct 15 17:33:47 ZEBRA weewx: engine: Using Python 2.7.11
>> (v2.7.11:6d1b6a68f775, Dec 5 2015, 20:40:30) [MSC v.1500 64 bit (AMD64)]
>> Oct 15 17:33:47 ZEBRA weewx: engine: Platform Windows-10-10.0.10586
>> More to do like run as a service but that is for another day - should be
>> pretty straightforward. Please feel free to use what I have found so far.
>> 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.
>> For more options, visit https://groups.google.com/d/optout.
> You received this message because you are subscribed to a topic in the Google
> Groups "weewx-user" group.
> To unsubscribe from this topic, visit
> To unsubscribe from this group and all its topics, send an email to
> For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups
To unsubscribe from this group and stop receiving emails from it, send an email
For more options, visit https://groups.google.com/d/optout.