murderxchip/trace
Composer 安装命令:
composer require murderxchip/trace
包简介
基于HTTP的链路日志跟踪Laravel/Lumen插件,A trace logger SDK for http request between Laravel/Lumen apps by supplying enhanced GuzzleClient implementation
README 文档
README
###Lumen/Laravel 服务链路日志跟踪,采用header传递自定义trace信息方式聚合请求链路日志,本地json结构化存储方便elk采集。
使用方法:
-
安装 项目composer.json中引入
"repositories": [ { "type": "git", "url": "https://github.com/murderxchip/laravel-trace-log.git" } ],
"require" 字段增加
"cactus/tracelog": "v1.0.1"
composer update cactus/tracelog
-
注册provider
$app->register(\Cactus\TraceLog\TraceLogServiceProvider::class);
-
引入middleware 在bootstrap/app.php 增加
$app->middleware([ \Cactus\TraceLog\TraceLogMiddleWare::class ]);
-
日志路径 日志默认存储位置为 storage/logs 下 json 目录为json格式输出
-
微服务中 guzzle 默认 Client替换为 \Cactus\Trace\HttpClient 实例
$client = new HttpClient();
或者直接使用 app('rpcClient') 此为GuzzleClient扩展客户端,接口方法保持一直
-
输出示例
{
"message": "apilog",
"context": {
"apitrace": {
"Host": "server.test",
"Method": "GET",
"Headers": "{\"connection\":[\"keep-alive\"],\"accept\":[\"*/*\"],\"accept-encoding\":[\"gzip, deflate\"],\"user-agent\":[\"python-requests/2.21.0\"],\"host\":[\"cactusserver-mall.test\"],\"content-length\":[\"\"],\"content-type\":[\"\"]}",
"PathInfo": "/version",
"QueryString": null,
"Protocol": "HTTP/1.1",
"IP": "127.0.0.1",
"User-Agent": "python-requests/2.21.0",
"Params": "[]",
"RequestUri": "/version",
"RequestTime": "2019-04-11 14:20:36",
"Response": "{\"data\":{\"version\":\"Lumen (5.5.2) (Laravel Components 5.5.*)\"},\"meta\":{\"timestamp\":1554963636.89317,\"response_time\":0.0965871810913086}}",
"Status": 200,
"ResponseTime": "2019-04-11 14:20:36",
"ElapseTime": "9ms"
}
},
"level": 200,
"level_name": "INFO",
"channel": "lumen",
"datetime": {
"date": "2019-04-11 14:20:36.917776",
"timezone_type": 3,
"timezone": "Asia/Shanghai"
},
"extra": {
"uid": "c36ea4f2386368c1bff60ed0"
},
"Trace": {
"TraceId": "trace:15549636365caedcb4de348",
"TraceIndex": "0.1",
"TracePath": "/Path"
}
}
Trace信息会通过header进行传递
####ChangeLog 1.2.1 版本变更
- trace id 精度提高
- 修复trace index无效问题
- response增加traceid返回
murderxchip/trace 适用场景与选型建议
murderxchip/trace 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 140 次下载、GitHub Stars 达 10, 最近一次更新时间为 2019 年 04 月 12 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 murderxchip/trace 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 murderxchip/trace 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 140
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 10
- 点击次数: 7
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unknown
- 更新时间: 2019-04-12