groups:
- name: mcp_recording_rules
interval: 1m
rules:
- record: job:http_requests_total:rate5m
expr: rate(http_requests_total[5m])
- record: job:http_request_duration_seconds:p90
expr: histogram_quantile(0.9, rate(http_request_duration_seconds_bucket[5m]))
- record: job:redis_memory_used:ratio
expr: redis_memory_used_bytes / redis_memory_max_bytes
- record: job:process_cpu_usage:rate5m
expr: rate(process_cpu_seconds_total[5m]) * 100
- record: job:process_memory_usage:ratio
expr: process_resident_memory_bytes / container_memory_limit_bytes * 100
- record: job:error_rate:ratio5m
expr: |
sum(rate(http_requests_total{status=~"5.."}[5m]))
/
sum(rate(http_requests_total[5m]))
* 100
- record: job:request_success_rate:ratio5m
expr: |
sum(rate(http_requests_total{status=~"2.."}[5m]))
/
sum(rate(http_requests_total[5m]))
* 100
- record: job:redis_operations:rate5m
expr: |
sum by (operation) (
rate(redis_commands_total[5m])
)
- record: job:redis_latency:p90
expr: histogram_quantile(0.9, rate(redis_command_duration_seconds_bucket[5m]))
- record: job:nginx_requests:rate5m
expr: rate(nginx_http_requests_total[5m])