atlas-iac/services/monitoring/grafana-dashboard-ai.yaml

2005 lines
63 KiB
YAML

# services/monitoring/grafana-dashboard-ai.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: grafana-dashboard-ai
labels:
grafana_dashboard: "1"
data:
atlas-ai.json: |
{
"uid": "atlas-ai",
"title": "Atlas AI Operations",
"folderUid": "atlas-internal",
"editable": true,
"panels": [
{
"id": 1,
"type": "stat",
"title": "Codex 5h Remaining",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 0,
"y": 0
},
"targets": [
{
"expr": "((min by (provider) (last_over_time(atlas_ai_quota_remaining_percent{provider=\"openai\",window=\"five_hour\"}[20m])) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"openai\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-red",
"value": 0
},
{
"color": "dark-orange",
"value": 15
},
{
"color": "dark-yellow",
"value": 30
},
{
"color": "dark-green",
"value": 50
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Lowest remaining percentage across the provider's active first-party quota buckets for this window. This conservative value shows the limit most likely to constrain new work. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 2,
"type": "stat",
"title": "Codex 5h Reset In",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 4,
"y": 0
},
"targets": [
{
"expr": "((clamp_min(min by (provider) (last_over_time(atlas_ai_quota_reset_timestamp_seconds{provider=\"openai\",window=\"five_hour\"}[20m])) - time(), 0) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"openai\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-blue",
"value": 0
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Time until the earliest active first-party quota reset for this provider and window. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 3,
"type": "stat",
"title": "Codex 7d Remaining",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 8,
"y": 0
},
"targets": [
{
"expr": "((min by (provider) (last_over_time(atlas_ai_quota_remaining_percent{provider=\"openai\",window=\"seven_day\"}[20m])) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"openai\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-red",
"value": 0
},
{
"color": "dark-orange",
"value": 15
},
{
"color": "dark-yellow",
"value": 30
},
{
"color": "dark-green",
"value": 50
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Lowest remaining percentage across the provider's active first-party quota buckets for this window. This conservative value shows the limit most likely to constrain new work. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 4,
"type": "stat",
"title": "Codex 7d Reset In",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 12,
"y": 0
},
"targets": [
{
"expr": "((clamp_min(min by (provider) (last_over_time(atlas_ai_quota_reset_timestamp_seconds{provider=\"openai\",window=\"seven_day\"}[20m])) - time(), 0) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"openai\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"openai\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-blue",
"value": 0
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Time until the earliest active first-party quota reset for this provider and window. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 5,
"type": "stat",
"title": "Codex Routed Tokens (24h)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 16,
"y": 0
},
"targets": [
{
"expr": "(sum(increase(switchyard_prompt_tokens_total{model=~\"(route|worker)/codex/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_cached_tokens_total{model=~\"(route|worker)/codex/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_cache_creation_tokens_total{model=~\"(route|worker)/codex/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_reasoning_tokens_total{model=~\"(route|worker)/codex/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_completion_tokens_total{model=~\"(route|worker)/codex/.+\"}[24h])) or on() vector(0))",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "short",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Prompt, cache-read, cache-creation, reasoning, and completion tokens observed by Switchyard for this provider, including interactive and worker routes."
},
{
"id": 6,
"type": "stat",
"title": "Codex Routed Tokens (7d)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 20,
"y": 0
},
"targets": [
{
"expr": "(sum(increase(switchyard_prompt_tokens_total{model=~\"(route|worker)/codex/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_cached_tokens_total{model=~\"(route|worker)/codex/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_cache_creation_tokens_total{model=~\"(route|worker)/codex/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_reasoning_tokens_total{model=~\"(route|worker)/codex/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_completion_tokens_total{model=~\"(route|worker)/codex/.+\"}[7d])) or on() vector(0))",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "short",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Prompt, cache-read, cache-creation, reasoning, and completion tokens observed by Switchyard for this provider, including interactive and worker routes."
},
{
"id": 7,
"type": "stat",
"title": "Claude 5h Remaining",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 0,
"y": 4
},
"targets": [
{
"expr": "((min by (provider) (last_over_time(atlas_ai_quota_remaining_percent{provider=\"anthropic\",window=\"five_hour\"}[20m])) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"anthropic\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-red",
"value": 0
},
{
"color": "dark-orange",
"value": 15
},
{
"color": "dark-yellow",
"value": 30
},
{
"color": "dark-green",
"value": 50
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Lowest remaining percentage across the provider's active first-party quota buckets for this window. This conservative value shows the limit most likely to constrain new work. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 8,
"type": "stat",
"title": "Claude 5h Reset In",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 4,
"y": 4
},
"targets": [
{
"expr": "((clamp_min(min by (provider) (last_over_time(atlas_ai_quota_reset_timestamp_seconds{provider=\"anthropic\",window=\"five_hour\"}[20m])) - time(), 0) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"anthropic\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-blue",
"value": 0
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Time until the earliest active first-party quota reset for this provider and window. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 9,
"type": "stat",
"title": "Claude 7d Remaining",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 8,
"y": 4
},
"targets": [
{
"expr": "((min by (provider) (last_over_time(atlas_ai_quota_remaining_percent{provider=\"anthropic\",window=\"seven_day\"}[20m])) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"anthropic\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"legendFormat": "Overall weekly",
"instant": true
},
{
"expr": "((min by (provider) (last_over_time(atlas_ai_quota_remaining_percent{provider=\"anthropic\",window=\"seven_day_fable\"}[20m])) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"anthropic\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "B",
"legendFormat": "Fable 5 weekly",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-red",
"value": 0
},
{
"color": "dark-orange",
"value": 15
},
{
"color": "dark-yellow",
"value": 30
},
{
"color": "dark-green",
"value": 50
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value_and_name"
},
"description": "Overall weekly and Fable 5 weekly remaining percentages from Claude Code's first-party scoped usage ledger. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 10,
"type": "stat",
"title": "Claude 7d Reset In",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 12,
"y": 4
},
"targets": [
{
"expr": "((clamp_min(min by (provider) (last_over_time(atlas_ai_quota_reset_timestamp_seconds{provider=\"anthropic\",window=\"seven_day\"}[20m])) - time(), 0) and on(provider) ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) and on(provider) (time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds{provider=\"anthropic\"}[20m]) < 1200))) or on() ((last_over_time(atlas_ai_provider_authenticated{provider=\"anthropic\"}[20m]) == 1) * 0 - 2)) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-2": {
"text": "not exposed",
"color": "dark-blue"
},
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-blue",
"value": 0
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Time until the earliest active first-party quota reset for this provider and window. A last-good snapshot remains visible for up to 20 minutes through a transient fetch miss. Not exposed means access is healthy but the credential cannot read this quota; unavailable means access is unhealthy or the snapshot is stale."
},
{
"id": 11,
"type": "stat",
"title": "Claude Routed Tokens (24h)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 16,
"y": 4
},
"targets": [
{
"expr": "(sum(increase(switchyard_prompt_tokens_total{model=~\"(route|worker)/claude/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_cached_tokens_total{model=~\"(route|worker)/claude/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_cache_creation_tokens_total{model=~\"(route|worker)/claude/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_reasoning_tokens_total{model=~\"(route|worker)/claude/.+\"}[24h])) or on() vector(0)) + (sum(increase(switchyard_completion_tokens_total{model=~\"(route|worker)/claude/.+\"}[24h])) or on() vector(0))",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "short",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Prompt, cache-read, cache-creation, reasoning, and completion tokens observed by Switchyard for this provider, including interactive and worker routes."
},
{
"id": 12,
"type": "stat",
"title": "Claude Routed Tokens (7d)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 4,
"x": 20,
"y": 4
},
"targets": [
{
"expr": "(sum(increase(switchyard_prompt_tokens_total{model=~\"(route|worker)/claude/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_cached_tokens_total{model=~\"(route|worker)/claude/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_cache_creation_tokens_total{model=~\"(route|worker)/claude/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_reasoning_tokens_total{model=~\"(route|worker)/claude/.+\"}[7d])) or on() vector(0)) + (sum(increase(switchyard_completion_tokens_total{model=~\"(route|worker)/claude/.+\"}[7d])) or on() vector(0))",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "short",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Prompt, cache-read, cache-creation, reasoning, and completion tokens observed by Switchyard for this provider, including interactive and worker routes."
},
{
"id": 13,
"type": "stat",
"title": "Provider Access Healthy",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 0,
"y": 8
},
"targets": [
{
"expr": "sum(last_over_time(atlas_ai_provider_authenticated[20m])) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-red",
"value": null
},
{
"color": "dark-yellow",
"value": 1
},
{
"color": "dark-green",
"value": 2
}
]
},
"unit": "none",
"custom": {
"displayMode": "auto",
"valueSuffix": " / 2"
}
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Authenticated first-party provider boundaries observed within 20 minutes. Quota visibility is tracked separately from model access."
},
{
"id": 14,
"type": "stat",
"title": "Quota Fetch Healthy",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 3,
"y": 8
},
"targets": [
{
"expr": "sum(last_over_time(atlas_ai_quota_fetch_success[20m])) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-red",
"value": null
},
{
"color": "dark-yellow",
"value": 1
},
{
"color": "dark-green",
"value": 2
}
]
},
"unit": "none",
"custom": {
"displayMode": "auto",
"valueSuffix": " / 2"
}
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Provider quota collectors whose latest refresh observed within 20 minutes completed successfully."
},
{
"id": 15,
"type": "stat",
"title": "Oldest Quota Sample",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 6,
"y": 8
},
"targets": [
{
"expr": "max(time() - last_over_time(atlas_ai_quota_last_success_timestamp_seconds[20m])) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "gray",
"value": null
},
{
"color": "dark-green",
"value": 0
},
{
"color": "dark-yellow",
"value": 600
},
{
"color": "dark-red",
"value": 1200
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
}
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Age of the stalest successful provider quota snapshot."
},
{
"id": 16,
"type": "stat",
"title": "Switchyard Requests",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 9,
"y": 8
},
"targets": [
{
"expr": "sum(increase(switchyard_requests_total[$__range])) or on() vector(0)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "short",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Hosted model requests observed by Switchyard in the selected dashboard range."
},
{
"id": 17,
"type": "stat",
"title": "Prompt Cache Share",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 12,
"y": 8
},
"targets": [
{
"expr": "100 * sum(rate(switchyard_cached_tokens_total[5m])) / clamp_min(sum(rate(switchyard_prompt_tokens_total[5m])) + sum(rate(switchyard_cached_tokens_total[5m])), 1)",
"refId": "A"
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "rgba(115, 115, 115, 1)",
"value": null
},
{
"color": "dark-green",
"value": 1
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Cached tokens as a share of prompt plus cached tokens; higher generally means less repeated provider work."
},
{
"id": 18,
"type": "stat",
"title": "Client Success Rate",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 15,
"y": 8
},
"targets": [
{
"expr": "100 * sum(increase(switchyard_client_responses_total{outcome=\"success\"}[$__range])) / clamp_min(sum(increase(switchyard_client_responses_total[$__range])), 1)",
"refId": "A"
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-red",
"value": null
},
{
"color": "dark-yellow",
"value": 95
},
{
"color": "dark-green",
"value": 99
}
]
},
"unit": "percent",
"custom": {
"displayMode": "auto"
},
"decimals": 1
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Successful client-facing Switchyard responses in the selected range."
},
{
"id": 19,
"type": "stat",
"title": "Classifier Fail-Open",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 18,
"y": 8
},
"targets": [
{
"expr": "sum(increase(switchyard_classifier_fail_open_total[$__range])) or on() vector(0)",
"refId": "A"
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-yellow",
"value": 1
},
{
"color": "dark-red",
"value": 5
}
]
},
"unit": "none",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Local classifier failures that safely fell back to the conservative hosted route."
},
{
"id": 20,
"type": "stat",
"title": "Upstream Errors",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 3,
"x": 21,
"y": 8
},
"targets": [
{
"expr": "sum(increase(switchyard_errors_total[$__range])) or on() vector(0)",
"refId": "A"
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-yellow",
"value": 1
},
{
"color": "dark-red",
"value": 5
}
]
},
"unit": "none",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Hosted model attempts that returned errors in the selected range."
},
{
"id": 21,
"type": "timeseries",
"title": "Model Selection Rate",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 12
},
"targets": [
{
"expr": "sum by (selected_model) (rate(switchyard_decisions_total[5m]))",
"refId": "A",
"legendFormat": "{{selected_model}}"
}
],
"fieldConfig": {
"defaults": {
"unit": "reqps"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "right"
},
"tooltip": {
"mode": "multi"
}
},
"description": "AUTO and fixed-route decisions by selected provider, model family, and reasoning effort."
},
{
"id": 22,
"type": "bargauge",
"title": "Provider Selections (Range)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 12
},
"targets": [
{
"expr": "sort_desc(sum by (provider) (label_replace(increase(switchyard_decisions_total{selected_model=~\"(route|worker)/(codex|claude|local)/.*\"}[$__range]), \"provider\", \"$2\", \"selected_model\", \"^(route|worker)/(codex|claude|local)/.*\")))",
"refId": "A",
"legendFormat": "{{provider}}",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"unit": "short",
"min": 0,
"max": null,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-yellow",
"value": 50
},
{
"color": "dark-orange",
"value": 70
},
{
"color": "dark-red",
"value": 85
}
]
}
},
"overrides": []
},
"options": {
"displayMode": "basic",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
}
},
"description": "Switchyard selections grouped by provider over the selected dashboard range.",
"transformations": [
{
"id": "sortBy",
"options": {
"fields": [
"Value"
],
"order": "desc"
}
}
]
},
{
"id": 23,
"type": "timeseries",
"title": "Token Throughput",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 20
},
"targets": [
{
"expr": "sum(rate(switchyard_prompt_tokens_total[5m]))",
"refId": "A",
"legendFormat": "prompt"
},
{
"expr": "sum(rate(switchyard_cached_tokens_total[5m]))",
"refId": "B",
"legendFormat": "cached"
},
{
"expr": "sum(rate(switchyard_cache_creation_tokens_total[5m]))",
"refId": "C",
"legendFormat": "cache creation"
},
{
"expr": "sum(rate(switchyard_reasoning_tokens_total[5m]))",
"refId": "D",
"legendFormat": "reasoning"
},
{
"expr": "sum(rate(switchyard_completion_tokens_total[5m]))",
"refId": "E",
"legendFormat": "completion"
}
],
"fieldConfig": {
"defaults": {
"unit": "tps"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "bottom"
},
"tooltip": {
"mode": "multi"
}
},
"description": "Prompt, cache, reasoning, and completion token rates reported by hosted Switchyard calls."
},
{
"id": 24,
"type": "timeseries",
"title": "Model Call p95 Latency",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 20
},
"targets": [
{
"expr": "histogram_quantile(0.95, sum by (le, model) (rate(switchyard_model_call_latency_ms_bucket[5m])))",
"refId": "A",
"legendFormat": "{{model}}"
}
],
"fieldConfig": {
"defaults": {
"unit": "ms"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "right"
},
"tooltip": {
"mode": "multi"
}
},
"description": "95th percentile upstream latency for each selected model route."
},
{
"id": 25,
"type": "timeseries",
"title": "Local Classifier Calls",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 8,
"x": 0,
"y": 28
},
"targets": [
{
"expr": "sum by (outcome) (rate(switchyard_llm_calls_total{selected_model=~\"qwen.*\"}[5m]))",
"refId": "A",
"legendFormat": "{{outcome}}"
}
],
"fieldConfig": {
"defaults": {
"unit": "reqps"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "bottom"
},
"tooltip": {
"mode": "multi"
}
},
"description": "Local Qwen routing-classifier activity, split by successful and failed calls."
},
{
"id": 26,
"type": "timeseries",
"title": "Routing Overhead p95",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 8,
"x": 8,
"y": 28
},
"targets": [
{
"expr": "histogram_quantile(0.95, sum by (le, algorithm) (rate(switchyard_routing_overhead_ms_bucket[5m])))",
"refId": "A",
"legendFormat": "{{algorithm}}"
}
],
"fieldConfig": {
"defaults": {
"unit": "ms"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "bottom"
},
"tooltip": {
"mode": "multi"
}
},
"description": "95th percentile time Switchyard spends selecting a model before the upstream call."
},
{
"id": 27,
"type": "bargauge",
"title": "Traffic Lanes (Range)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 8,
"x": 16,
"y": 28
},
"targets": [
{
"expr": "sort_desc(sum by (lane) (label_replace(increase(switchyard_requests_total{model=~\"(route|worker)/.*\"}[$__range]), \"lane\", \"$1\", \"model\", \"^(route|worker)/.*\")))",
"refId": "A",
"legendFormat": "{{lane}}",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"unit": "short",
"min": 0,
"max": null,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-green",
"value": null
},
{
"color": "dark-yellow",
"value": 50
},
{
"color": "dark-orange",
"value": 70
},
{
"color": "dark-red",
"value": 85
}
]
}
},
"overrides": []
},
"options": {
"displayMode": "basic",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
}
},
"description": "Request volume split between interactive route traffic and durable worker traffic.",
"transformations": [
{
"id": "sortBy",
"options": {
"fields": [
"Value"
],
"order": "desc"
}
}
]
},
{
"id": 28,
"type": "text",
"title": "Cost Semantics",
"gridPos": {
"h": 8,
"w": 12,
"x": 0,
"y": 36
},
"datasource": null,
"options": {
"mode": "markdown",
"content": "Codex and Claude currently run through first-party subscription OAuth lanes, so providers expose quota utilization rather than per-call dollar invoices. This dashboard does not invent API costs from tokens. If a metered API-key lane is added, its provider billing metric should be displayed separately from subscription usage."
}
},
{
"id": 29,
"type": "timeseries",
"title": "Hermes Workload CPU (Attribution Proxy)",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 8,
"w": 12,
"x": 12,
"y": 36
},
"targets": [
{
"expr": "sum by (pod, container) (rate(container_cpu_usage_seconds_total{namespace=\"hermes\",pod=~\"hermes-(agent|chat-tenant|switchyard|model-gate).*\",container!=\"\",image!=\"\"}[5m]))",
"refId": "A",
"legendFormat": "{{pod}} \u00b7 {{container}}"
}
],
"fieldConfig": {
"defaults": {
"unit": "cores"
},
"overrides": []
},
"options": {
"legend": {
"displayMode": "table",
"placement": "right"
},
"tooltip": {
"mode": "multi"
}
},
"description": "Compute use by Hermes pod/container. Switchyard currently exposes model and worker-vs-route attribution, but not tenant-slot token labels; CPU is clearly marked as a proxy rather than token usage."
},
{
"id": 30,
"type": "stat",
"title": "Claude Quota Auth Expires In",
"datasource": {
"type": "prometheus",
"uid": "atlas-vm"
},
"gridPos": {
"h": 4,
"w": 6,
"x": 0,
"y": 44
},
"targets": [
{
"expr": "clamp_min(last_over_time(atlas_ai_quota_credential_refresh_expiry_timestamp_seconds{provider=\"anthropic\"}[20m]) - time(), 0) or on() vector(-1)",
"refId": "A",
"instant": true
}
],
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"type": "value",
"options": {
"-1": {
"text": "unavailable",
"color": "gray"
}
}
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "dark-red",
"value": null
},
{
"color": "dark-yellow",
"value": 86400
},
{
"color": "dark-green",
"value": 604800
}
]
},
"unit": "s",
"custom": {
"displayMode": "auto"
},
"decimals": 0
},
"overrides": []
},
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "center",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"fields": "",
"values": false
},
"textMode": "value"
},
"description": "Time until the full-scope Claude quota credential needs interactive renewal. Warning begins at seven days; inference continues through its separate one-year setup token if this expires, but scoped Fable quota telemetry does not."
}
],
"time": {
"from": "now-24h",
"to": "now"
},
"refresh": "1m",
"annotations": {
"list": []
},
"schemaVersion": 39,
"style": "dark",
"tags": [
"atlas",
"ai",
"hermes",
"switchyard"
]
}