php日志托管给apache处理

php.ini配置:

log_errors = On
;不显示错误
display_startup_errors = Off
display_errors = Off
;除了notice级别错误外,报告所有其他错误
error_reporting = E_ALL & ~E_NOTICE
;error_log不配置,交给apache做日志处理
;error_log = php_errors.log
; Log errors to syslog (Event Log on Windows);/系统日志,linux上查看系统日志journalctl -xe
;error_log = syslog

 httpd.conf配置

[root@izbp18dv3a3metugyd02qxz conf]# cat httpd.conf|grep LogLevel
# LogLevel: Control the number of messages logged to the error_log.
LogLevel warn

httpd-vhosts.conf

[root@VM_58_118_centos logs]# vim /etc/httpd/conf/extra/httpd-vhosts.conf
<VirtualHost *:8080> ServerAdmin "[email protected]" DocumentRoot "/data/www/syhuo.net" ServerName www.syhuo.net <FilesMatch "\.(ico|gif|jpg|png|bmp|swf|js|css|eot)"> SetEnv IMAGE 1 </FilesMatch>      ErrorLog "| /usr/sbin/rotatelogs /data/httpd/logs/syhuo.net-error-%Y%m%d.log 86400" #CustomLog "| /usr/sbin/rotatelogs /data/httpd/logs/syhuo.net-access-%y%m%d.log 86400" common env=!IMAGE <Directory "/"> #Options Indexes FollowSymLinks Options FollowSymLinks AllowOverride All #AllowOverride None #Order Allow, Deny Order Deny,Allow Require all granted </Directory>

[root@VM_58_118_centos logs]# systemctl restart httpd

LogLevel warn

其中LogLevel用于调整记录错误日志中的信息的详细程度。(参阅ErrorLog指令)。可以选择下列级别,依照重要性降序排列:
Level Description Example  
emerg 紧急 - 系统无法使用。 "Child cannot open lock file. Exiting"  
alert 必须立即采取措施。 "getpwuid: couldn't determine user name from uid"  
crit 致命情况。 "socket: Failed to get a socket, exiting child"  
error 错误情况。 "Premature end of script headers"  
warn 警告情况。 "child process 1234 did not exit, sending another SIGHUP"  
notice 一般重要情况。 "httpd: caught SIGBUS, attempting to dump core in ..."  
info 普通信息。 "Server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers)..."  
debug 出错级别信息 "Opening config file ..."  
 
apache默认级别是warn,那么warn级别以上的日志都会记录,会产生大量“文件不存在”的erro级别的错误日志。建议使用 crit 级别的设置,这样只记录致命级别以上的日志,有效减少日志数量。 把LogLevel warn更改为LogLevel crit  然后重启apache即可

猜你喜欢

转载自www.cnblogs.com/hnhycnlc888/p/12031826.html