Thinkphp3.2监控sql报警或超时

来源:互联网 发布:怎么做网络平台 编辑:程序博客网 时间:2024/05/22 06:40

//===================此文档仅供个人笔记用,写的会很乱,如果错误或不懂请加我QQ1042274223

//进入Thinkphp/Library/Think/Db/Driver.class.php    找到 error() 方法

   tp中error方法是sql报错方法,sql一旦执行错误 会调用error方法  进行日志存储

我们将发送邮件的代码写入error方法即可


sendMail(C("admin_email"),"SQL报错",date("Y-m-d H:i:s")."      ".$this->error);
加入这一段即可,sendMail 这个方法是我用PHPEmailer 这个插件封装成的一个发送邮件类



//sql执行过慢,邮件发送

//进入Thinkphp/Library/Think/Db/Driver.class.php    找到 execute() 方法

   tp中execute方法是sql执行方法,无论是save,select,update,最后都会通过这个方法执行,我们在此记录sql执行时间



利用thinkphp  G() 方法记录开始时间


在 sql执行完后,利用G()记录结束时间,利用结束时间-开始时间,做出判断



0 0
原创粉丝点击