如何将所有 Apache 日志发送到控制台

如何将所有 Apache 日志发送到控制台

我想运行 apache,以便所有日志消息都显示在控制台上(或至少是 STDERR 和/或 STDOUT),因为出现了一些未记录在任何文件中的错误。

我目前正在筛选一个strace service apache2 start但那是一个核苍蝇拍方法,应该是直接的。

我该怎么做?

更详细的情况:

Apache 响应 403,但即使在执行updatedblocate error.log之后,也locate error_log显示没有任何虚拟主机的任何日志文件更新。 也没有任何更新/var/log/apache2/suexec.log

# apachectl -V AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/apache2.conf:222 Server version: Apache/2.4.10 (Debian) Server built: Feb 24 2017 18:40:28 Server's Module Magic Number: 20120211:37 Server loaded: APR 1.5.1, APR-UTIL 1.5.4 Compiled using: APR 1.5.1, APR-UTIL 1.5.4 Architecture: 64-bit Server MPM: event threaded: yes (fixed thread count) forked: yes (variable process count) Server compiled with.... -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=256 -D HTTPD_ROOT="/etc/apache2" -D SUEXEC_BIN="/usr/lib/apache2/suexec" -D DEFAULT_PIDLOG="/var/run/apache2.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="mime.types" -D SERVER_CONFIG_FILE="apache2.conf"

答案1

Apache httpd 允许您将日志“传送”到任何其他程序标准输入。

CustomLog "| programtoreceivestandardinput parameters bla bla bla" common
ErrorLog "| programtoreceivestandardinput parameters"

大多数 httpd docker 镜像也指向 fd 文件,例如:

CustomLog /proc/self/fd/1 common

相关内容