원클릭으로
aws-cloudwatch
Monitor AWS with CloudWatch and CloudTrail without MCP. Use when the user asks about logs, metrics, alarms, or API audit trail.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Monitor AWS with CloudWatch and CloudTrail without MCP. Use when the user asks about logs, metrics, alarms, or API audit trail.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Guides migration of code between Arm SoCs with architecture-aware analysis and safe migration practices. Use when mentioning Arm SoC, Cortex migration, embedded migration, or Arm architecture porting.
Build, test, and deploy AI agents using AWS Bedrock AgentCore with local development workflow. Use when mentioning AgentCore, Bedrock agents, or AI agent deployment on AWS.
Build full-stack apps with AWS Amplify Gen 2 using TypeScript, guided workflows, and best practices. Use when mentioning Amplify, Amplify Gen 2, fullstack AWS app, Cognito auth, or GraphQL backend.
Analyze AWS costs, billing, and pricing without MCP. Use when the user asks about cost analysis, cost forecast, pricing lookup, or billing reports.
Query and manage AWS data services (DynamoDB, Aurora, Redshift, ElastiCache, Neptune, S3 Tables) without MCP. Use when the user asks about databases, caching, data queries, or data management.
Analyze source code for Graviton (Arm64) compatibility, identify issues, and suggest fixes for language runtimes and dependencies. Use when mentioning Graviton, Arm64 migration, x86 to Arm, or aarch64 porting.
| name | aws-cloudwatch |
| description | Monitor AWS with CloudWatch and CloudTrail without MCP. Use when the user asks about logs, metrics, alarms, or API audit trail. |
aws logs describe-log-groups --query 'logGroups[].{Name:logGroupName,Size:storedBytes}'
import boto3
logs = boto3.client('logs')
logs.describe_log_groups()
# Start query / 쿼리 시작
aws logs start-query \
--log-group-names "/aws/lambda/my-function" \
--start-time $(date -d '1 hour ago' +%s) \
--end-time $(date +%s) \
--query-string 'fields @timestamp, @message | filter @message like /ERROR/ | limit 50'
# Get results / 결과 조회
aws logs get-query-results --query-id <QUERY_ID>
import time
response = logs.start_query(
logGroupNames=['/aws/lambda/my-function'],
startTime=int(time.time()) - 3600,
endTime=int(time.time()),
queryString='fields @timestamp, @message | filter @message like /ERROR/ | limit 50'
)
query_id = response['queryId']
# Wait and get results / 대기 후 결과 조회
time.sleep(5)
logs.get_query_results(queryId=query_id)
cw = boto3.client('cloudwatch')
# EC2 CPU utilization / EC2 CPU 사용률
from datetime import datetime, timedelta
cw.get_metric_data(
MetricDataQueries=[{
'Id': 'cpu',
'MetricStat': {
'Metric': {
'Namespace': 'AWS/EC2',
'MetricName': 'CPUUtilization',
'Dimensions': [{'Name': 'InstanceId', 'Value': 'i-1234567890abcdef0'}]
},
'Period': 300,
'Stat': 'Average'
}
}],
StartTime=datetime.utcnow() - timedelta(hours=1),
EndTime=datetime.utcnow()
)
aws cloudwatch describe-alarms --state-value ALARM \
--query 'MetricAlarms[].{Name:AlarmName,State:StateValue,Reason:StateReason}'
cw.describe_alarms(StateValue='ALARM')
cw.describe_alarm_history(
AlarmName='my-alarm',
HistoryItemType='StateUpdate',
MaxRecords=10
)
aws cloudtrail lookup-events --max-results 10 \
--query 'Events[].{Time:EventTime,Event:EventName,User:Username}'
ct = boto3.client('cloudtrail', region_name='us-east-1')
ct.lookup_events(MaxResults=10)
# Filter by user / 사용자로 필터
ct.lookup_events(
LookupAttributes=[{'AttributeKey': 'Username', 'AttributeValue': 'admin'}],
MaxResults=20
)
# Query across event data stores / 이벤트 데이터 스토어 전체 쿼리
ct.start_query(QueryStatement="""
SELECT eventTime, eventName, userIdentity.arn
FROM <EVENT_DATA_STORE_ID>
WHERE eventTime > '2024-01-01'
ORDER BY eventTime DESC
LIMIT 100
""")
# Lambda errors in last hour / 지난 1시간 Lambda 에러
logs.start_query(
logGroupNames=['/aws/lambda/my-func'],
startTime=int(time.time()) - 3600,
endTime=int(time.time()),
queryString='stats count(*) as total, sum(@message like /ERROR/) as errors by bin(5m)'
)