当前位置: 代码迷 >> 综合 >> tp5 控制日志写入及日志自动清理
  详细解决方案

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

热度:90   发布时间:2024-01-24 07:17:46.0

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

一,控制日志写入

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,],

谨此记录,后续更新。

  相关解决方案