Expand description
日志系统 — 对齐 PHP think-logger
§设计
- 基于
sz-orm-logger的StructuredLogger提供日志收集 - 同时通过
tracing宏输出(与 SZ-ORM-Tracing 协同,未来接入 OpenTelemetry) - 全局单例
LogFacade,通过LogFacade::init()初始化、LogFacade::instance()获取 - 支持多通道(file/console),对齐 PHP
config/log.php的channels配置
§PHP 对齐
// PHP think-logger
Log::info('hello');
Log::error('error occurred', ['exception' => $e]);
Log::channel('file')->info('file log');ⓘ
// SZ-Rust 等价
use sz_rust_core::log::LogFacade;
LogFacade::instance().unwrap().info("hello");
LogFacade::instance().unwrap().error("error occurred");Structs§
- Channel
Ref - 命名通道引用
- LogConfig
- Log 中间件配置
- LogEntry
- LogFacade
- 日志 facade — 持有默认
StructuredLogger和命名通道 - Logger
Factory - Factory that creates loggers with different configurations.
- Request
Id - 请求 ID(注入到 request extensions,供下游 handler 和日志使用)
- Structured
Logger
Enums§
Traits§
Functions§
- format_
request_ log - 格式化请求日志消息
- generate_
request_ id - 生成新的
RequestId - log_
level_ for_ status - 根据响应状态码返回日志级别
- log_
middleware - Log 中间件 — 请求/响应日志
- log_
middleware_ with_ config - 带配置的 Log 中间件
- parse_
level - 从字符串解析日志级别