Invia log di accesso di Apache a syslog

Abbiamo server IBM HTTP (basati su Apache 2.0) e vogliamo submit i log di accesso a syslog. (oltre ai log degli errori che funzionano)

La configuration che utilizziamo è la seguente:

ErrorLog "|/HTTPServer/bin/rotatelogs /archive/http/error_log.%Y%m%d 86400 | /usr/bin/logger -t httpd -plocal6.err" LogLevel warn LogFormat "%h %{True-Client-IP}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D \"%{Host}i\" %v" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent CustomLog "|exec /usr/bin/logger -t ptseelm-ax3004 -i -p local6.notice" combined 

Ma le voci dei registri non appaiono nemless nel syslog.out locale

ecco come si presentano i processi:

 ps -ef | grep httpd apache 6226000 8388618 0 09:04:01 - 0:00 /HTTPServer/bin/httpd -d /HTTPServer -k start apache 6750220 8388618 0 09:04:01 - 0:00 /HTTPServer/bin/httpd -d /HTTPServer -k start apache 7602390 8388618 0 09:04:01 - 0:00 /HTTPServer/bin/httpd -d /HTTPServer -k start root 8388618 1 0 09:04:01 - 0:00 /HTTPServer/bin/httpd -d /HTTPServer -k start root 9044038 8388618 0 09:04:01 - 0:00 /usr/bin/logger -t httpd -plocal6.err 

Quindi non c'è nessun logger collegato ai processi del bambino … è questo il problema? Qualcuno mi può aiutare? 🙂

Abbiamo il seguente in syslog.conf:

 local6.* @somerealipaddress 

One Solution collect form web for “Invia log di accesso di Apache a syslog”

Vorrei suggerire di sostituire direttamente con il logger invece di eseguire la scrittura in un file e quindi avere un process separato leggere quel file e inviarlo a syslog.

Molti programmi syslog, ad esempio rsyslog e syslog-ng, possono leggere da un file e da / dev / log. Un'altra opzione è quella di utilizzare semplicemente la coda -F e il pipe al logger.

Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.