> I have multiple application servers running python code under uWSGI.  I'm
> currently not making use of any of the uWSGI python
> library....strictly executing python functions with werkzeug for simple
> routing. These servers writes all log lines to a network logging facility
> on another server with a custom format.
>
> What i'm seeing is that after a period of time, which i believe to be
> random , the log lines are also written to /var/log/uwsgi.log, but in a
> basic format, example:
>
> INFO:pil:SMS - sent to XXXXXXXXX - response status: queued
>
> in the network logger the line looks like:
>
> [2013-03-07 21:02:45,689] 192.168.NN.XX pil INFO 29 sms send_text SMS -
> sent to XXXXXXXXX - response status: queued
>
> I started the server at 17:56:37, so this took about 3 hours to start
> this behavior. Likely executing about 3000 jobs.
>
> Logically, I can see how this would happen, if a new handler were added to
> the list of available log handlers, but we don't configure this anywhere
> and why does it log locally?  The logger is loaded at the module level, so
> either at start up or when at least the first request comes through.
> Modules/functions that run underneath this service import the _LOG from
> the
> main wsgi file, so as not to use logging.getLogger() more then once.
>
> I've found that its a bit more than a simple annoyance, the load on these
> servers, which normally hover around .5-1 spike to > 6 (4 core machine)
> and
> the uwsgi service then needs to be restarted.
>
> Has any one experienced this?  I have two servers running on the the
> latest
> LTS 1.4.8 and an older version 1.2.3, both exhibit the same behaviour.
>
> Hopefully that makes sense...any ideas are greatly appreciated.  Config
> file follows:
>
> Thanks!
> Jeff
>
> <uwsgi>
>     <gid>33</gid>
>     <uid>33</uid>
>     <listen>256</listen>
>     <single-interpreter></single-interpreter>
>     <socket>127.0.0.1:9001</socket>
>     <python-path>/usr/local/lib/python2.7/dist-packages</python-path>
>     <processes>16</processes>
>     <master/>
>     <no-orphans></no-orphans>
>     <disable-logging />
> </uwsgi>


You have to take in account that uWSGI maps the fd 1/2 (stdout,stderr) to
its logging system. While i am not sure to follow your configuration (i do
not understand how you add python loggers at runtime) i suppose some
print() or some console logger is writing to fd 1 or 2.


-- 
Roberto De Ioris
http://unbit.it
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to