sz-orm-observability 2.0.0

SZ-ORM 可观测性模块:Prometheus exporter (TcpListener) + SLO 燃烧率 + Grafana 仪表盘模板;OTLP 导出请使用 sz-orm-tracing 的 otlp feature
Documentation
[package]

name = "sz-orm-observability"

version.workspace = true

edition.workspace = true

authors.workspace = true

license.workspace = true

repository.workspace = true

homepage.workspace = true

keywords.workspace = true

categories.workspace = true

description = "SZ-ORM 可观测性模块:Prometheus exporter (TcpListener) + SLO 燃烧率 + Grafana 仪表盘模板;OTLP 导出请使用 sz-orm-tracing 的 otlp feature"



[features]

default = []

# 启用 Prometheus exporter(暴露 /metrics HTTP 端点,基于 tokio TcpListener)

# 注:start_metrics_server 始终可用,此 feature 保留供未来扩展(如 hyper 实现)

prometheus = []

# 启用真实 Pushgateway HTTP PUT 推送(基于 reqwest)

# 未启用时 PushgatewayExporter::push 仅记录到内存(用于测试)

push-gateway = ["reqwest"]



[dependencies]

sz-orm-core = { workspace = true }

tokio = { workspace = true }

async-trait = { workspace = true }

thiserror = { workspace = true }

serde = { workspace = true }

serde_json = { workspace = true }

chrono = { workspace = true }

parking_lot = { workspace = true }

tracing = { workspace = true }

# 真实 Pushgateway HTTP PUT 推送(可选,通过 push-gateway feature 启用)

reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "blocking"], optional = true }



[dev-dependencies]

tokio = { workspace = true }



[lib]

name = "sz_orm_observability"

path = "src/lib.rs"



[lints]

workspace = true