-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Is it possible to send logs to some program instead of file?
Documentation
(http://wiki.codemongers.com/NginxHttpLogModule#access_log) show only
one way (file).
Now we use ‘access_log /dev/stdout’ in configuration and run nginx via
‘nginx | program’ - but it is not elegant.
guzik
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFHFJ/nt25UBlJ9LC4RAk4pAJ9TI6YZoK+HROoDYbhWoPN6EYUI+gCfeWGe
tQIzsg2zVzwGzIivTH0zpMQ=
=6iYI
-----END PGP SIGNATURE-----
On Tue, Oct 16, 2007 at 01:26:31PM +0200, Bart?omiej Syryjczyk wrote:
Is it possible to send logs to some program instead of file?
Documentation
(http://wiki.codemongers.com/NginxHttpLogModule#access_log) show only
one way (file).
Now we use ‘access_log /dev/stdout’ in configuration and run nginx via
‘nginx | program’ - but it is not elegant.
No, nginx does not support logging to pipe or syslog because of
perfomance
issues. Workarounds are /dev/stdout and mkfifo (but they are slow).
We use the following script to roll our nginx logs at midnight, we’ve
found it very reliable
#!/bin/bash
YEAR=date "+%Y"
MONTH=date "+%m"
DAY=date "+%d"
HOSTNAME=hostname -s
LOG_FILES=“access.log error.log images.log redirect.log ssl.log”
DATE=$YEAR/$MONTH/$DAY
REDBUBBLE_LOG_ROOT=/var/log/redbubble
NGINX_LOG_ROOT=$REDBUBBLE_LOG_ROOT/nginx
make path
mkdir -p $NGINX_LOG_ROOT/$DATE
touch and symlink in new log files
for FILE in $LOG_FILES; do
LOG_FILE=$NGINX_LOG_ROOT/$DATE/$HOSTNAME.$FILE
touch $LOG_FILE
ln -fs $LOG_FILE $NGINX_LOG_ROOT/$FILE
done
tell nginx to re-open its log files
kill -USR1 cat /var/run/nginx.pid
Cheers
Dave
Is it possible to send logs to some program instead of file?
Documentation
(http://wiki.codemongers.com/NginxHttpLogModule#access_log) show only
one way (file).
Now we use ‘access_log /dev/stdout’ in configuration and run nginx via
‘nginx | program’ - but it is not elegant.
No, nginx does not support logging to pipe or syslog because of perfomance
issues. Workarounds are /dev/stdout and mkfifo (but they are slow).
http://blog.pjkh.com/articles/2007/03/15/nginx-and-cronolog
But be sure to read the UPDATE at the bottom…
-philip