fix(prometheus): route litellm_provider_remaining_budget_metric through get_labels_for_metric and _safe_labels

This commit is contained in:
Ishaan Jaffer 2026-03-23 19:30:13 -07:00
parent 547213de76
commit 54577da42a
2 changed files with 14 additions and 2 deletions

View file

@ -324,7 +324,9 @@ class PrometheusLogger(CustomLogger):
self.litellm_provider_remaining_budget_metric = self._gauge_factory(
"litellm_provider_remaining_budget_metric",
"Remaining budget for provider - used when you set provider budget limits",
labelnames=["api_provider"],
labelnames=self.get_labels_for_metric(
"litellm_provider_remaining_budget_metric"
),
)
# Metric for deployment state
@ -2459,7 +2461,12 @@ class PrometheusLogger(CustomLogger):
"""
Track provider remaining budget in Prometheus
"""
self.litellm_provider_remaining_budget_metric.labels(provider).set(
self.litellm_provider_remaining_budget_metric.labels(
**self._safe_labels(
self.litellm_provider_remaining_budget_metric,
api_provider=provider,
)
).set(
self._safe_get_remaining_budget(
max_budget=budget_limit,
spend=spend,

View file

@ -238,6 +238,7 @@ DEFINED_PROMETHEUS_METRICS = Literal[
"litellm_llm_api_failed_requests_metric",
"litellm_callback_logging_failures_metric",
"litellm_in_flight_requests",
"litellm_provider_remaining_budget_metric",
]
@ -530,6 +531,10 @@ class PrometheusMetricLabels:
UserAPIKeyLabelNames.USER.value,
]
litellm_provider_remaining_budget_metric = [
UserAPIKeyLabelNames.API_PROVIDER.value,
]
litellm_remaining_api_key_requests_for_model = [
UserAPIKeyLabelNames.API_KEY_HASH.value,
UserAPIKeyLabelNames.API_KEY_ALIAS.value,