首页内核与基础Log 日志体系
Log 日志体系
Kuoqi\Core\Log 缓冲落盘式日志:Web 请求整包写入、CLI 阈值/秒切刷盘、10M 轮转
本页内容
  1. 核心机制
  2. 关键方法

核心机制

机制说明
缓冲写入Web 模式:日志先入 __tmp_info,register_shutdown_function 兜底整包落盘(含请求头/尾)
阈值刷盘CLI 模式:超 1000 条或跨秒时刷盘
文件路径Public/Runtime/Logs/{模块}/info_20260831.log(前缀由构造参数决定)
大小轮转超过 10M 时锁文件切分,归档为 info_Ymd_His_随机6位.log
开关LOG_LEV 配置为 0 时 log() 直接返回不记录

关键方法

方法签名说明
__constructnew Log($filename="info")注册 shutdown 兜底写入;file_prefix = filename_
loglog($stream, $key, $timelen=0)记录一条日志,$timelen=0 时自动计算距上一条耗时
getHeadgetHead()请求头:时间/IP/方法/URL/UA
getFootgetFoot()请求尾:总耗时
openopen()打开日志文件(含目录创建与切分逻辑),失败返回 false 不抛异常
典型用法
// 全局静态日志(自动创建 Log("info"))
\Kuoqi::log("用户登录成功", "info");
\Kuoqi::error("数据库连接失败");   // Web 记 error 日志;CLI 直接 echo
\Kuoqi::warn("磁盘即将写满");      // Web 记 warn;CLI 直接 echo
日志格式
============================================================
[REQUEST]2026-08-31 10:00:00 127.0.0.1 GET /index.php/Home/Index/Index Mozilla/5.0...
[info][0.001200] 用户登录成功
[REQUEST_END]2026-08-31 10:00:00 runtime 0.015234
KuoqiPHP v1.05 · 离线静态文档 · 界面基于 KuoqiUI · 返回首页