nginx doesn't seem to log all accesses (some uwsgi accesses are missing)
Maxim Dounin
mdounin at mdounin.ru
Sun Jan 29 23:03:53 UTC 2012
Hello!
On Sat, Jan 28, 2012 at 04:38:46PM +0100, Gelonida wrote:
> Hi everybody,
> I hope the message does NOT show up three times.
> My news client always reports errors and I don't know whether the
> message was sent out or not.
It was shown up at least 2 times. It may be not a good idea to
post via gmane, probably subscribing directly instead would be
better.
> I'm having following setup:
>
> nginx <-unix_socket-> uwsgi -> django
>
> What I noticed is, that some requests of the uwsgi.log file do NOT
> show up in nginx' access_log file.
>
>
> Example:
> in uwsgi.log I can see:
> [pid: 1205|app: 0|req: 537/1453] xx.xx.xx.33 () {40 vars in 1794
> bytes} [Thu Jan 26 18:42:31 2012] POST /my_url/run?var=123 =>
> generated 129 bytes in 94 msecs (HTTP/1.0 200) 3 headers in 174
> bytes (1 switches on core 0)
>
> However I don't see any corresponding request logged in nginx log.
>
> Is this the expected behaviour?
> What could be the reason?
>
> Ideally I would like to see all accesses in nginx' access file.
All accesses are expected to be logged, unless logging is switched
off. Note though:
1) requests are logged on completion, and if request processing
and/or sending response to client takes a while - log line won't
appear till completion
2) requests are logged in configuration of a location where
request ends; this may be quite different from one where
processing reaches backend, especially if X-Accel-Redirect or
error_page redirections are used.
3) one request may hit easily hit backends several times (see
above about redirections)
If you think something is wrong, you may build debug log to see
what actually happens, see
http://nginx.org/en/docs/debugging_log.html.
Note that you have to configure one at global level, and make sure
it's not overriten at more specific levels (best solution is to
comment out all other error_log directives), else you are risking
to miss debug log data as well.
> My nginx.conf
> #--------------
> worker_processes 2;
> events {
> worker_connections 1024;
> }
> http {
> include mime.types;
> default_type application/octet-stream;
>
> sendfile on;
> keepalive_timeout 65;
>
> include sites-enabled/*;
>
> uwsgi_temp_path /etc/uwsgi/;
>
> }
>
> # sites_enabled/ssl;
> # ---------------------------------------
> The probably relevant nginx config lines:
Actually, full configuration is relevant, including all
other includes. Else the information is mostly useless.
[...]
Maxim Dounin
More information about the nginx
mailing list