Thursday, December 9, 2010

rotate ihs logs

 httpd.conf

CustomLog "|/opt/IBM/HTTPServer/bin/rotatelogs -l /opt/IBM/HTTPServer/logs/access_log.%Y-%m-%d-%H_%M_%S 86400" common

ErrorLog "|/opt/IBM/HTTPServer/bin/rotatelogs -l /opt/IBM/HTTPServer/logs/error_log.%Y-%m-%d-%H_%M_%S 86400"

ErrorLog /usr/IBMHttpServer/logs/error_log
ErrorLog "|/usr/IBMHttpServer/bin/rotatelogs
/data/httparch/error_log.%d-%b-%Y-%H-%M 86400 -360"

#
# LogLevel: Control the number of messages logged to the error_log.
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
#
LogLevel debug

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""
combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

#
# The location and format of the access logfile (Common Logfile Format).
# If you do not define any access logfiles within a
# container, they will be logged here. Contrariwise, if you *do*
# define per- access logfiles, transactions will be
# logged therein and *not* in this file.
#
CustomLog /usr/IBMHttpServer/logs/access_log common
CustomLog "|/usr/IBMHttpServer/bin/rotatelogs
/data/httparch/access_log.%d-%b-%Y-%H-%M 86400 -360" common


The piped portions should be on one line, it seems the post cut the line
in half.

access_log works correctly, appending to the access_log and piping to an
access_log in a different location everyday starting at midnight. So I
have a daily access_log file and one big access_log file.

error_log on the other hand. What it does is create the daily log, but
does not append to the regular error_log. Since I implemented this, the
large error_log has not been written to, but the daily logs are created.
Why is this not working? Am I missing something? It works for
access_log, why not error?