利用日志实现简单的业务监控

前提

系统日志按照一定格式记录并按照时间记录拆分

 

话不多说直接上代码(PHP)

$wf_log_path="";
$cmd_last_minute=date('m-d H:i',time()-60);
$cmd_fatal='FATAL';

$cmd="tac {$wf_log_path}  | grep '{$cmd_last_minute}' | grep '{$cmd_fatal}'";

exec($cmd,$res_exe);

 

利用上面的方法可以监控到所有的日志文件,包括PHP、Nginx、crontab;当然接口超时也可以利用这个方法

最终利用邮件发送

foreach ($data_arr as $key => $value) {

    if(empty($arr_valid_data)){
        print_r("没有需要报警的数据\n");
        continue;
    }

    foreach ($arr_valid_data as $key=>$item) {
        $num=$key+1;
        $sendcontent.='第'.$num.'条报警信息:'.$item."。<br/><br/>";
    }

    if($sendcontent){
        $res=EmailHelper::sendEmail($sendto,$sendtitle,$sendfrom,$sendcontent);
    }else{
        echo "没有报警!";
    }

 

posted @ 2018-09-14 11:33  老阳  阅读(225)  评论(0编辑  收藏  举报