retention 없는 CloudWatch logs의 log groups

2022. 12. 7. 14:18기타/scripts

728x90
SMALL

- 개요

테라폼이나 AWS Web console에서 AWS 리소스를 생성할 때 CloudWatch Logs에 log group이 retention 설정 없이 생성되는 경우가 많으며 관리가 안돼서 비용이 과금되는 경우가 많다. 아래는 기 생성된 log groups의 retention을 확인하고 적용하는 명령어를 자동 생성해 주는 스크립트이다.

 

- 스크립트

#!/bin/bash
echo "CloudwatchLog without Retention Settings"
for i in $(aws logs describe-log-groups --query logGroups[*].logGroupName[] --output text)
        do
        CloudwatchLogRetention=$(aws logs describe-log-groups --log-group-name-prefix $i --query logGroups[].retentionInDays --output text 2>/dev/null)
        if [ -z "$CloudwatchLogRetention" ];
        then
                echo "aws logs put-retention-policy --log-group-name $i --retention-in-days x"
        else true
        fi
done
echo "================================================================================================================================="

 

728x90
LIST

'기타 > scripts' 카테고리의 다른 글

tg_attr_deg_delay.sh  (0) 2022.12.07
elb_attr_delete_protection.sh  (0) 2022.12.07
codepipeline stage status  (0) 2022.11.21
AWS VPC에 할당된 전체 리소스 확인  (0) 2022.11.08
ECR repository life-cycle-policy 확인  (0) 2022.11.04