国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

php錯誤處理之錯誤記錄日志

在一些公司里面,有專門的日志收集系統(tǒng)。日志收集系統(tǒng)會在背后默默的幫你收集錯誤、警告、提示。

也有些公司沒有專門的日志收集系統(tǒng),通過文件來服務器當中的運行日志。

其中:PHP的錯誤,警告這些是必須要收信的。

那么問題來了——不讓用戶看到,設置好錯誤報告級別好,如何將錯誤收集到日志系統(tǒng)中呢?

這里有需要使用到php.ini的相關配置項。這兩個配置項為:

參數(shù)配置項說明
log_errorson/off是否開啟日志記錄
log_errors_max_len整型,默認1024單行錯誤最大記錄長度
error_logsyslog或者指定路徑錯誤日志記錄在什么地方

說明:

????1.在表格中的log_errors和log_errors_max_len非常好理解。

????2.而error_log 指定將錯誤存在什么路徑上。配置項中的syslog可能有點不太好理解。syslog是指系統(tǒng)來記錄。windows系統(tǒng)在電腦的日志收集器里面。linux默認在:/etc/syslog.conf

[擴展]?了解知識點。若Linux系統(tǒng)啟動或修改了日志收集。可能存儲在第三方專用的日志收集服務器中。

此外,PHP還為我們專門準備了一個自定義的錯誤日志函數(shù):

bool error_log ( string $錯誤消息 [, int $錯誤消息類型 = 0 [, string $存儲目標]] )

這個函數(shù)可以把錯誤信息發(fā)送到web服務器的錯誤日志,或者到一個文件里。

常用的錯誤消息類型:

錯誤消息類型說明
0發(fā)送至默認的error_log指定位置
1發(fā)送到指定的郵件位置
3發(fā)送至指定的文件位置


示例:

<?php

//無法連接到數(shù)據(jù)庫服務器,直接記錄到php.ini 中的error_log指定位置
error_log("無法連接到數(shù)據(jù)庫服務器服務器");

//可以發(fā)送郵件,但是php.ini必須配置過郵件系統(tǒng)
error_log('可以用郵件報告錯誤,讓運維人員半夜起床干活',1 ,'pig@php.cn');

//記錄在指定的位置
error_log("我是一個錯誤喲", 3, "d:/test/my-errors.log");

?>

注意:
error_log 中發(fā)送郵件可能對初學者不熟,您可以不用掌握些塊知識。


繼續(xù)學習
||
<?php //無法連接到數(shù)據(jù)庫服務器,直接記錄到php.ini 中的error_log指定位置 error_log("無法連接到數(shù)據(jù)庫服務器服務器"); //可以發(fā)送郵件,但是php.ini必須配置過郵件系統(tǒng) error_log('可以用郵件報告錯誤,讓運維人員半夜起床干活',1 ,'liwenkai@phpxy.com'); //記錄在指定的位置 error_log("我是一個錯誤喲", 3, "d:/test/my-errors.log"); ?>
提交重置代碼