记录日志的三种方式
在PHP中主要有三种设置记录日志的方式:
- 代码中ini_set()方法
- php-fpm.conf中的配置
- php.ini中的配置
其三种配置的优先级ini_set()>php-fpm.conf>php.ini
常规配置
php-fpm的日志主要配置php-fpm.conf, vim /usr/local/php/etc/php-fpm.conf
; 设置,没有则新增catch_workers_output = yeserror_log = /var/log/php/php_errors.log; 确保注释如下选项,或者和php.ini中二者选其一;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com;php_flag[display_errors] = off;php_admin_value[error_log] = /var/log/fpm-php.www.log;php_admin_flag[log_errors] = on;php_admin_value[memory_limit] = 32M
配置php.ini, vim /usr/local/php/lib/php.ini
display_errors = offlog_errors = Onerror_log = "/var/log/php/php_errors.log"error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
- display_errors = off,表示不显示错误信息(不输出到页面或屏幕上)
- log_errors = On,表示记录日志到文件
- error_log = “/var/log/php/php_errors.log”,表示错误日志记录文件名
- error_reporting=E_ALL,表示捕获所有错误信息,错误、提醒、警告等
- error_reporting = E_ALL & ~ ( E_NOTICE | E_DEPRECATED | E_STRICT),表示记录所有error信息,不记录提醒、弃用提醒等
- error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR|E_WARNING,表示记录E_COMPILE_ERROR或E_RECOVERABLE_ERROR或E_ERROR或E_CORE_ERROR
- 修改了php-fpm,则需要重启php-fpm
php-fpmr
