UNPKG

skills-ws

Version:

87 agent skills for AI coding assistants — marketing, growth, web3, dev, design & operations. Built for OpenClaw, Claude Code, Cursor, and Codex.

65 lines (57 loc) • 2 kB
## 6. Monitoring & Cost Alerts ```hcl resource "aws_sns_topic" "alerts" { name = "${var.project}-${var.environment}-alerts" } resource "aws_cloudwatch_metric_alarm" "alb_5xx" { alarm_name = "${var.project}-high-5xx" namespace = "AWS/ApplicationELB" metric_name = "HTTPCode_Target_5XX_Count" statistic = "Sum" period = 300 evaluation_periods = 2 threshold = 50 comparison_operator = "GreaterThanThreshold" alarm_actions = [aws_sns_topic.alerts.arn] dimensions = { LoadBalancer = var.alb_arn_suffix } } resource "aws_cloudwatch_metric_alarm" "latency_p99" { alarm_name = "${var.project}-high-latency" namespace = "AWS/ApplicationELB" metric_name = "TargetResponseTime" extended_statistic = "p99" period = 300 evaluation_periods = 3 threshold = 2 comparison_operator = "GreaterThanThreshold" alarm_actions = [aws_sns_topic.alerts.arn] dimensions = { LoadBalancer = var.alb_arn_suffix } } resource "aws_cloudwatch_metric_alarm" "ecs_cpu" { alarm_name = "${var.project}-ecs-cpu" namespace = "AWS/ECS" metric_name = "CPUUtilization" statistic = "Average" period = 300 evaluation_periods = 3 threshold = 80 comparison_operator = "GreaterThanThreshold" alarm_actions = [aws_sns_topic.alerts.arn] dimensions = { ClusterName = var.ecs_cluster_name, ServiceName = var.ecs_service_name } } resource "aws_budgets_budget" "monthly" { name = "${var.project}-monthly" budget_type = "COST" limit_amount = "500" limit_unit = "USD" time_unit = "MONTHLY" notification { comparison_operator = "GREATER_THAN" threshold = 80 threshold_type = "PERCENTAGE" notification_type = "ACTUAL" subscriber_email_addresses = [var.alert_email] } } ``` ---