quansitech/qscmf-http-tracer
Composer 安装命令:
composer require quansitech/qscmf-http-tracer
包简介
qscmf http client trace logger
README 文档
README
QSCMF HTTP 客户端请求追踪日志包,用于自动记录 HTTP 请求和响应的完整信息。
功能特性
- ✅ 自动记录 HTTP 请求和响应信息
- ✅ 支持文件存储和数据库存储
- ✅ 基于 Guzzle HTTP 客户端中间件
- ✅ 记录请求耗时和完整数据
安装
composer require quansitech/qscmf-http-tracer
配置
环境变量设置
在 .env 文件中添加:
# 若使用数据库存储,则 # 存储接口请求日志的数据表名,如 api_requests_log,必填 QSCMF_HTTP_TRACE_LOGGER_TABLE_NAME=api_requests_log
数据库迁移
包会自动注册数据库迁移文件,运行迁移命令:
php artisan migrate
快速开始
使用数据库存储
use Qscmf\HttpTracer\Client\GuzzleClient; use Qscmf\HttpTracer\Lib\LogWriter\Context; // 创建日志记录器(数据库存储) $writer = Context::buildWriter('db'); $logger = new RequestLogger($writer); // 创建带追踪的 HTTP 客户端 $client = (new GuzzleClient($logger))->create([]); // 发送 GET 请求 $response = $client->request('GET', 'https://api.example.com/users');
使用文件存储
use Qscmf\HttpTracer\Client\GuzzleClient; use Qscmf\HttpTracer\Lib\LogWriter\Context; // 创建日志记录器(文件存储) $writer = Context::buildWriter('file'); $logger = new RequestLogger($writer); // 创建带追踪的 HTTP 客户端 $client = (new GuzzleClient($logger))->create([]); // 发送请求 $response = $client->request('GET', 'https://api.example.com/users');
数据库表结构
包会自动创建 api_requests_log 表(表名可配置),包含以下字段:
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键 ID |
| trace_id | varchar(32) | 唯一追踪 ID |
| method | varchar(10) | HTTP 方法 |
| url | text | 请求 URL |
| request_headers | text | 请求头(JSON) |
| request_body | text | 请求体 |
| response_status_code | int | 响应状态码 |
| response_headers | text | 响应头(JSON) |
| response_body | text | 响应体 |
| duration_ms | float | 请求耗时(毫秒) |
| create_date | timestamp | 创建时间 |
| update_date | timestamp | 更新时间 |
日志记录内容
每个 HTTP 请求都会记录:
- 请求阶段:方法、URL、请求头、请求体、时间戳
- 响应阶段:状态码、响应头、响应体、请求耗时
- 关联信息:通过
trace_id关联请求和响应
文件存储轮转规则
使用文件存储时,Monolog RotatingFileHandler 的轮转规则:
- 轮转周期:按天轮转
- 最大文件数:无限制(默认值 0)
- 日志路径:
vendor/quansitech/qscmf-http-tracer/src/logs/
注意:当前配置会无限期保留所有历史日志文件,需要定期手动清理。
quansitech/qscmf-http-tracer 适用场景与选型建议
quansitech/qscmf-http-tracer 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 100 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 11 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「http」 「client」 「logger」 「trace」 「thinkphp」 「qscmf」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 quansitech/qscmf-http-tracer 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 quansitech/qscmf-http-tracer 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 quansitech/qscmf-http-tracer 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
repository php library
Workflow logger
HTTP request logger middleware for Laravel
Mock PSR-18 HTTP client
High-performance, zero-dependency PSR-3 logger for MonkeysLegion with structured logging, handlers, processors, and PHP 8.4 features.
Asynchronous MQTT client built on React
统计信息
- 总下载量: 100
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 20
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-11-13