php监控日志500、503错误并发送邮件提示的代码
-
-
/**
- * 监控日志 500 503错误
- * by bbs.it-home.org
- */
- include("PHPMailer/class.phpmailer.php");
- //error_reporting(0);
- $mail = new PHPMailer();
- $mail->IsSMTP(); // telling the class to use SMTP
- $mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
- // 1 = errors and messages
- // 2 = messages only
- $mail->SMTPAuth = true; // enable SMTP authentication
- $mail->Host = "smtp.126.com"; // sets the SMTP server
- $mail->Port = 25; // set the SMTP port for the GMAIL server
- $mail->Username = "xxx@126.com"; // SMTP account username 邮箱用户名
- $mail->Password = "xxxxxxxxx"; // SMTP account password 密码
- $mail->SetFrom('xxxxxxx@126.com', '报错');//
$now = "u_ex".date("ymdH").".log";
try{
- $log = file("F:/iis-log/W3SVC2/".$now);//日志路径自己改
- }catch(Exception $e){
- echo "no file ";
- exit;
- }
$error = array();
- $start = date("i",time()-120);
- $end = date("i");
- if($start > $end){
- exit;
- }
- $aa = range($start,$end);
- $code = mkstr($aa);
- echo $code;
- $pattern = "/($code).*(\s500\s|\s503\s)/";//这里自己修改
- $i = 0;
- foreach($log as $k => $v){
- if(preg_match($pattern,$v)){
- $error[] = $v;
- echo $v;
- $i += 1;
- }
- }
- if(!empty($error)){
- $content = implode("
",$error);
- $mail->Subject="$i errors ";
- $mail->AddAddress("xxxxxxxxxx@163.com");
- $mail->AddAddress("xxxxxxxx@126.com");
- $mail->MsgHTML($content);
- $mail->send();
- }
- echo "\nover";
- function mkstr($arr){
- $code = '';
- foreach($arr as $k => $e){
- $code .="\:$e\:|";
- }
- $code = rtrim($code,"|");
- return $code;
- }
-
复制代码
|
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31