qingbing/php-log

日志配置的设置和获取.

此软件包的官方仓库似乎已消失,因此软件包已被冻结。

1.0.1 2018-12-12 09:53 UTC

This package is auto-updated.

Last update: 2021-03-12 15:31:18 UTC


README

描述

与 log 相关的操作,可以单独使用。

注意事项

  • log 的参数配置可参考 qingbing/php-config 组件
  • 目前支持文件日志
  • 日志原理:使用数组作为日志存储栈,当 log->flush() 被调用时会写入硬盘进行持久化,如果不手动 flush,将在请求结束时自动 flush
  • 每个请求都有一个 logId,会先检查 $_REQUEST['LOG_ID'] 是否存在,不存在则会自动创建一个 logId
  • 日志默认存储地址定义:define("RUNTIME_PATH", dirname(realpath(".")) . "/runtime"),也可以在实例化时自行定义
  • 每个 channel 存放在一个目录中,每个文件可以设置最大 size 限制(maxSize)

使用方法

// 实例化 log 组件
$log = Log::getInstance([
    'c-file' => 'log',
    'c-group' => 'info',
]);

$log->push(Log::ALERT, 'this is message', [
    'name' => 'xxx',
]);
// 日志实时持久化
$log->flush();
// 记录 default-level 日志
$log->pushLog('push default message');
// 记录 debug 日志
$log->pushDebug('push debug message');
// 记录 info 日志
$log->pushInfo('push info message');
// 记录 notice 日志
$log->pushNotice('push notice message');
// 记录 warning 日志
$log->pushWarning('push warning message');
// 记录 error 日志
$log->pushError('push error message');
// 记录 critical 日志
$log->pushCritical('push critical message');
// 记录 alert 日志
$log->pushAlert('push alert message');
// 记录 emergency 日志
$log->pushEmergency('push emergency message');
// 请求结束,自动持久化日志

====== 异常代码集合 ======

异常代码格式:1012 - XXX - XX (组件编号 - 文件编号 - 代码内异常)

 - 101200101 : 日志根目录不存在