tp5 控制日志写入及日志自动清理

项目运行时间长了,就会发现日志文件加占用的空间特别大,现就控制日志写入和日志自动清理两种方式解决此问题:

一,控制日志写入

TP5手册说明:系统并未提供关闭日志的方法,但有两种方式可以关闭日志的写入

方式一:设置日志类型为test,即可不写入任何日志。

    'log'                    => [
        // 日志记录方式,内置 file socket 支持扩展
        'type'  => 'test',
        // 日志保存目录
        'path'  => LOG_PATH,
        // 日志记录级别
        'level' => [],
    ],

方式二:设置日志记录级别。配置文件-->log设置为error级别,这样就只记录错误日志。

    'log'                    => [
        // 日志记录方式,内置 file socket 支持扩展
        'type'  => 'File',
        // 日志保存目录
        'path'  => LOG_PATH,
        // 日志记录级别
        'level' => ['error'],//['log', 'error', 'info', 'sql', 'notice', 'alert', 'debug']
    ],

TP对系统的日志按照级别来分类,并且这个日志级别完全可以自己定义,系统内部使用的级别包括:

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

二,日志自动清理

5.0.16+版本开始,支持文件日志的自动清理功能,设置 'max_files' => 20 则日志文件最多只会保留20个,超过会自动清理较早的日志文件,避免日志文件长期写入占满磁盘空间。【这里的20是指文件个数,不是一个文件中的条数,注意是5.016以上版本】

    'log'                    => [
        // 日志记录方式,内置 file socket 支持扩展
        'type'  => 'File',
        // 日志保存目录
        'path'  => LOG_PATH,
        // 日志记录级别
        'level' => [],
        'max_files' => 20,
    ],

谨此记录,后续更新。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章