ci: fix CloudWatch Agent config — use python3 instead of nested heredoc

This commit is contained in:
vickytechkey 2026-08-09 18:22:40 +05:30
parent dafb6fca09
commit 59706ab394

View file

@ -43,28 +43,32 @@ jobs:
mkdir -p /home/ubuntu/seller_central_backend_logs
# ── 2. Write CloudWatch Agent config (logs + metrics) ─────────
sudo tee /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json > /dev/null << 'CWEOF'
{
"agent": { "metrics_collection_interval": 60, "run_as_user": "root" },
"metrics": {
"metrics_collected": {
"disk": { "measurement": ["used_percent"], "metrics_collection_interval": 60, "resources": ["/"] },
"mem": { "measurement": ["mem_used_percent"], "metrics_collection_interval": 60 }
}
},
"logs": {
"logs_collected": {
"files": {
"collect_list": [
{ "file_path": "/home/ubuntu/seller_central_backend_logs/app.log", "log_group_name": "/seller-central-backend/app", "log_stream_name": "{instance_id}", "retention_in_days": 30 },
{ "file_path": "/home/ubuntu/seller_central_backend_logs/error.log", "log_group_name": "/seller-central-backend/error", "log_stream_name": "{instance_id}", "retention_in_days": 30 },
{ "file_path": "/home/ubuntu/seller_central_backend_logs/requests.log", "log_group_name": "/seller-central-backend/requests", "log_stream_name": "{instance_id}", "retention_in_days": 30 }
]
}
}
}
}
CWEOF
sudo python3 -c "
import json
config = {
'agent': {'metrics_collection_interval': 60, 'run_as_user': 'root'},
'metrics': {
'metrics_collected': {
'disk': {'measurement': ['used_percent'], 'metrics_collection_interval': 60, 'resources': ['/']},
'mem': {'measurement': ['mem_used_percent'], 'metrics_collection_interval': 60}
}
},
'logs': {
'logs_collected': {
'files': {
'collect_list': [
{'file_path': '/home/ubuntu/seller_central_backend_logs/app.log', 'log_group_name': '/seller-central-backend/app', 'log_stream_name': '{instance_id}', 'retention_in_days': 30},
{'file_path': '/home/ubuntu/seller_central_backend_logs/error.log', 'log_group_name': '/seller-central-backend/error', 'log_stream_name': '{instance_id}', 'retention_in_days': 30},
{'file_path': '/home/ubuntu/seller_central_backend_logs/requests.log', 'log_group_name': '/seller-central-backend/requests', 'log_stream_name': '{instance_id}', 'retention_in_days': 30}
]
}
}
}
}
with open('/opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json', 'w') as f:
json.dump(config, f, indent=2)
print('CW config written')
"
# ── 3. Reload CloudWatch Agent with new config ─────────────────
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \