Prometheus / VictoriaMetrics
What it gives you — the query_metrics and query_metrics_range tools: PromQL against any
backend that speaks the Prometheus HTTP API, including VictoriaMetrics.
Minimal config
metrics:
url: http://vmsingle.observability.svc:8429Pinning the flavor instead of auto-detecting it:
metrics:
url: http://prometheus.observability.svc:9090
flavor: prometheus # or "victoriametrics" — optional, auto-detected when omittedVerify it locally
curl -s "http://vmsingle.observability.svc:8429/api/v1/query?query=up" | jq .statusThen fire a test incident and confirm query_metrics appears among the tools the model called:
kubectl -n runlore logs deploy/runlore | grep 'tool=query_metrics'Notes
- Presence enables it —
metrics.urlset is all it takes; an unset URL leaves the tool unregistered, no error. - Both Prometheus and VictoriaMetrics speak the same Prometheus HTTP API; VictoriaMetrics also
accepts MetricsQL, a PromQL superset.
metrics.flavorunlocks MetricsQL-only query guidance for the model — it is auto-detected at startup (DetectFlavorprobes/api/v1/status/buildinfo) and fails safe to generic Prometheus behaviour on an ambiguous or failed probe, so the model is never told to use a dialect the backend might reject. Pinflavor:explicitly when the backend sits behind a proxy that confuses the probe. token_env(bearer auth) andheaders(e.g.X-Scope-OrgIDfor a multi-tenant backend) are available like every other data-source endpoint.headersvalues are not secret-safe over plain HTTP — usehttps://for a public host, or keep secrets intoken_envonly.
Reference
- Configuration → Other top-level keys
for the full
metricskey reference. - Data sources — the provider table across every signal.