Sign in Sign up
nuget

HZY.Framework.Observability

HZY.Framework 标准化全链路可观测性基线包:请求关联(CorrelationId)+ Activity 追踪 + 日志 scope, 低侵入、默认安全、可关闭。不绑定任何 OpenTelemetry exporter。 ===== 使用教程 ===== 1、配置(appsettings.json,节名默认 "HzyObservability"): "HzyObservability": { "CorrelationIdHeader": "X-Correlation-ID", // 关联 ID 请求/响应头 "AcceptClientCorrelationId": false, // 默认拒绝客户端伪造的关联 ID,自动生成新值 "MaxCorrelationIdLength": 64, // 客户端 ID 最大长度(超过视为非法并忽略) "WriteToResponseHeader": true, // 响应头回传关联 ID(前端/网关可透传) "EnableActivity": true, // 通过 ActivitySource 建立 server span(遵循 W3C traceparent) "EnableLogScope": true // 建立 ILogger scope(CorrelationId/TraceId/Method/Path) } 2、注册与管线(启动模块中;位置:ForwardedHeaders 之后、CORS/Authentication 之前): builder.Services.AddHzyObservability(builder.Configuration); app.UseHzyObservability(); // 幂等,重复调用只挂载一次 3、业务/HttpClient 共用同一 ActivitySource(可选): ActivitySource source = HzyObservability.ActivitySource; // 全局共享源 using var activity = source.StartActivity("order-process"); // 与请求同链路 4、与 OpenTelemetry 集成(可选,本包不依赖也不内置 exporter): // 宿主自行安装 OpenTelemetry 包后,把本包的 ActivitySource 注册进导出管线即可: builder.Services.AddOpenTelemetry() .WithTracing(t => t.AddSource(HzyObservability.ActivitySourceName)); 安全默认:不采纳客户端伪造 ID;关联 ID 只含安全字符;不记录 Authorization/Cookie/请求体等敏感信息; 日志 scope 仅含 CorrelationId/TraceId/RequestMethod/RequestPath。 源码与完整文档:https://gitee.com/hzy6/HZY.Framework 实战案例(HzyAdmin):https://gitee.com/hzy6/HzyAdmin

nuget View on Nuget

Activity

Latest release
3d ago
Total releases
1
Cadence
Last 12 months
1

Details

License
MIT
First release
Sep 11, 2026
Releases
Version Released
10.1.19 initial