aws-cloudwatch-clilisted
Install: claude install-skill abdullahkhawer/devops-skills
# AWS CloudWatch CLI Skill
This skill builds on the `aws-cli` skill's profile and region configuration — always pass `--profile` and `--region` explicitly on every command, using the same environment table.
## Command Format
```bash
aws cloudwatch <command> --profile <profile> --region <region> [options]
aws logs <command> --profile <profile> --region <region> [options]
```
## Available Commands
### Read-only (safe, no confirmation needed)
| Command | Description |
|---|---|
| `aws cloudwatch list-metrics` | List available metrics |
| `aws cloudwatch get-metric-data` / `get-metric-statistics` | Query metric datapoints |
| `aws cloudwatch describe-alarms` | List alarms and their state |
| `aws cloudwatch describe-alarm-history` | Show alarm state change history |
| `aws cloudwatch list-dashboards` / `get-dashboard` | List or view dashboards |
| `aws logs describe-log-groups` | List log groups |
| `aws logs describe-log-streams` | List log streams in a group |
| `aws logs filter-log-events` / `get-log-events` | Query log events |
| `aws logs start-query` + `get-query-results` | Run and fetch a CloudWatch Logs Insights query |
### Example — Logs Insights query
```bash
QUERY_ID=$(aws logs start-query \
--profile <profile> --region <region> \
--log-group-name <log-group> \
--start-time $(( $(date -u +%s) - 3600 )) \
--end-time $(date -u +%s) \
--query-string 'fields @timestamp, @message | filter @message like /ERROR/ | limit 50' \
--query "queryId" --output tex