Helping us know you better so we can serve you best.
- Full Name: _____________________________________________________________
resource "awscc_applicationsignals_service_level_objective" "custom_app_latency" { | |
name = "custom-app-latency-slo" | |
description = "Track app-reported latency (e.g., /health or critical path)" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 200 # 200ms | |
sli_metric = { | |
metric_data_queries = [{ |
resource "awscc_applicationsignals_service_level_objective" "task_restart_slo" { | |
name = "ecs-task-restart-slo" | |
description = "Monitor ECS task restart frequency" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 1.0 # 1 or fewer per 5 min | |
sli_metric = { | |
metric_data_queries = [{ |
resource "awscc_applicationsignals_service_level_objective" "cpu_utilization_slo" { | |
name = "ecs-cpu-slo" | |
description = "Keep ECS CPU Utilization below 80%" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 80.0 | |
sli_metric = { | |
metric_data_queries = [{ |
resource "awscc_applicationsignals_service_level_objective" "app_error_rate" { | |
name = "app-error-rate-slo" | |
description = "Application error rate derived from X-Ray segments" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 1.0 # <1% errors | |
sli_metric = { | |
metric_data_queries = [{ |
resource "awscc_applicationsignals_service_level_objective" "alb_latency_slo" { | |
name = "alb-latency-slo" | |
description = "Target response time for ALB in front of ECS Fargate service" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 500 | |
sli_metric = { | |
metric_data_queries = [{ |
resource "awscc_applicationsignals_service_level_objective" "fargate_latency_slo" { | |
name = "ecs-fargate-latency-slo" | |
description = "Latency SLO for ECS Fargate service behind ALB" | |
sli = { | |
comparison_operator = "LessThan" | |
metric_threshold = 500 # 500ms latency threshold | |
sli_metric = { | |
metric_data_queries = [{ |
backstage.backstage-dev
(short DNS) but needed the full Kubernetes internal DNS:backstage.backstage-dev.svc.cluster.local
i/o timeout
errors in Cloudflare logs.service = "http://backstage.backstage-dev.svc.cluster.local:80"