Troubleshoot along the workflow

SymptomCheck first
No historySource, template variables, labels, time range, and units.
Some models have no resultsSample requirements, parameters, inputs, and runtime in model-run details.
Evaluation is emptyWhether target times have arrived and actuals have been collected.
Fallback adviceSnapshot sources, input freshness, eligibility, and recovery state.
Replicas are unchangedAuthorization, bypass, conflicts, expiry, step limits, and cooldowns.
Desired count changed but capacity is lowCurrent replicas, Ready status, Pod startup, and preparation time.

Inspect metrics and curves

Use the metric catalog and query tools to compare history, forecasts, actual performance, freshness, and runtime status. Distinguish missing samples from observations; connections across gaps are not measurements.

External monitoring

Set metrics.listen to expose /metrics, /healthz, and /readyz. Platform metrics use kube_res_foresight_*; Operator metrics use kube_res_foresight_operator_*.

Metrics observe the workflow rather than replacing snapshots, action reports, or readiness. Synchronous admission does not wait for long Prometheus queries or inference.

Review connected records

Follow a module through model runs, forecasts, evaluations, recommendations, admission, and scaling. For offline review, use audit exports with the appropriate scope and permissions.

Watch decision sources and scaling delays

Distinguish platform responses, cached decisions, recovery, and expired caches. Inspect kube_res_foresight_operator_decision_source_total and kube_res_foresight_operator_decision_cache_age_seconds, then correlate expansion timeliness with Ready-replica curves to separate forecast lag from slow capacity readiness.

No model output is expected when prediction is disabled. Check the module's prediction mode before investigating data, models, and execution.