From b0d295c6c99c5787311c2504edac340136aa4b39 Mon Sep 17 00:00:00 2001 From: fawney19 Date: Mon, 15 Dec 2025 18:13:19 +0800 Subject: [PATCH] feat(metrics): add model alias resolution metrics - model_alias_resolution_total: track resolution methods and cache hits - model_alias_resolution_duration_seconds: measure resolution performance - model_alias_conflict_total: monitor alias conflicts across GlobalModels --- src/core/metrics.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/core/metrics.py b/src/core/metrics.py index 76a7f87..025dedd 100644 --- a/src/core/metrics.py +++ b/src/core/metrics.py @@ -44,3 +44,24 @@ health_open_circuits = Gauge( "health_open_circuits", "Number of provider keys currently in circuit breaker open state", ) + +# 模型别名解析相关 +model_alias_resolution_total = Counter( + "model_alias_resolution_total", + "Total number of model alias resolutions", + ["method", "cache_hit"], + # method: direct_match, provider_model_name, alias, not_found + # cache_hit: true, false +) + +model_alias_resolution_duration_seconds = Histogram( + "model_alias_resolution_duration_seconds", + "Duration of model alias resolution in seconds", + ["method"], + buckets=[0.001, 0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1.0], # 1ms 到 1s +) + +model_alias_conflict_total = Counter( + "model_alias_conflict_total", + "Total number of alias conflicts detected (same alias maps to multiple GlobalModels)", +)