TP5日志记录与异常处理

日志记录
  • 日志配置application/config.php
    'log' => [
        // 日志记录方式,内置 file socket 支持扩展
        'type'  => 'File',
        // 日志保存目录
        'path'  => LOG_PATH,
        // 日志记录级别
        'level' => ['error','notice','debug','sql'],
    ],
  • 日志关闭的方式

    • 设置日志类型为test
    • 设置日志记录级别
  • 日志级别

    • log 常规日志,用于记录日志
    • error 错误,一般会导致程序的终止
    • notice 警告,程序可以运行但是还不够完美的错误
    • info 信息,程序输出信息
    • debug 调试,用于调试信息
    • sql SQL语句,用于SQL记录,只在数据库的调试模式开启时有效
  • 记录日志的几种方式

    • Log::write(‘message’,‘info’),实时写入一条日志信息
    • Log::record(‘message’,‘info’),写到内存中,等系统请求结束后会自动写入
    • trace(‘message’,‘info’)
    • 在应用日志配置关闭的情况下:Log::init()进行手动记录

在开发环境可以通过打印变量和调试来发现错误并纠正,但是如果在生产环境中是不允许随意修改来调试错误,
只有等到新版本系统出来才能去改动生产环境的代码,生产环境通过日志(最好的方法)来排查错误。
很多信息如果都作为日志去记录,则会出现很多无意义的记录信息,不仅耗费了很大的硬盘内存资源,同时也影响了错误的排查。
TP5默认会记录全部(即使你设置了配置项level),需要手动关闭,然后有选择的来记录日志。

  • 自定义全局日志记录
   //首先关闭系统日志记录配置,然后再入口文件最下面添加如下代码
   \think\Log::init([
       'type'  =>  'File',
       'path'  =>  LOG_PATH,
       'level' => ['error']
   ]);
   //然后再想要记录日志的地方写入日志即可
   Log::record('message','error');
   //如果使用的是write方法,则记录的会有其他信息,这是我们不希望的,不便于调试
错误和调试
  • 开启调试模式
    app_debug = true
  • 变量调试
    • dump
    • halt
  • 性能调试

    开发过程中,有些时候为了测试性能,经常需要调试某段代码的运行时间或者内存占用开销

    • 使用Debug
     Debug::remark('begin');
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值