用途:为 Litestar 应用添加指标(metrics)能力,可选择 OpenTelemetry 或 Prometheus 作为后端,并完成插件或中间件接线、导出器配置与路径分组。
主要能力:在应用构建阶段集中注册指标采集;支持排除指定路由、方法与路径;支持对动态路径分组以控制标签基数;支持自定义维度与 exemplars;提供导出器或抓取端点的验证思路。
使用方式:先确定后端——需要接入 OTel 管道或共享收集器时用 OpenTelemetry,需要直接暴露抓取端点时用 Prometheus。随后在应用作用域注册相应插件或中间件,决定排除哪些路由,保持标签低基数,必要时对动态路径分组。Prometheus 在路由路径基数可能爆炸时可使用 group_path=True。仅当监控栈确实支持时再启用 exemplars。
适用场景:需要为 Litestar 服务建立请求级指标、对接现有 OTel 或 Prometheus 监控体系、为仪表盘与告警提供稳定指标契约。
限制与注意:避免使用用户 ID、请求 ID、原始路径值等高基数标签;指标命名、单位与标签集应视为稳定契约;不要在多层级重复添加指标中间件或插件;未确认 openmetrics 支持前不要启用 exemplars;指标关注点应与日志、追踪、异常响应格式分离。日志、调试、测试、异常处理等任务应使用对应的其他技能。
参考文件:OpenTelemetry 相关配置见 references/open-telemetry-patterns.md,Prometheus 中间件、标签、分桶、exemplars、排除与路径分组见 references/prometheus-patterns.md。官方文档:https://docs.litestar.dev/latest/usage/metrics/index.html、https://docs.litestar.dev/latest/usage/metrics/open-telemetry.html、https://docs.litestar.dev/latest/usage/metrics/prometheus.html。