The operator can query a Prometheus server to learn resource usage baselines for each ApplicationPersona. This provides actual CPU and memory usage data alongside the declared persona constraints, helping teams right-size their resource limits.Documentation Index
Fetch the complete documentation index at: https://dorguai.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
How it works
During each ApplicationPersona reconciliation (every 60 seconds), the controller queries Prometheus for the last hour of container metrics and stores the results in.status.resourceBaseline.
Baseline fields
| Field | Description | PromQL metric |
|---|---|---|
avgCPU | Average CPU usage (millicores) | container_cpu_usage_seconds_total |
avgMemory | Average memory usage | container_memory_working_set_bytes |
peakCPU | Peak CPU usage (millicores) | container_cpu_usage_seconds_total |
peakMemory | Peak memory usage | container_memory_working_set_bytes |
150m), memory in Mi or Gi (e.g., 256Mi, 1.2Gi).
PromQL queries
The operator runs four queries per reconciliation:Average CPU
Average memory
Peak CPU
Peak memory
Pods are matched using a regex pattern
<appName>.* based on the persona’s spec.name field. The container!="POD" and container!="" filters exclude pause containers and empty container names.Graceful failure
If Prometheus is unreachable or returns no data:- The baseline fields are left empty (not cleared)
- The reconciliation continues normally
- Validation and health checks are unaffected
- A log message is emitted but no error condition is set
Configuration
Via Helm
Via CLI flag
Checking baselines
ApplicationPersona validation
How validation uses resource constraints
Cluster discovery
Cluster-level resource aggregation