CloudWatch Log Groups deletion using AWS Lambda function

0

Hi Aws, Need a lambda function to delete log group with no retention and if the retention period <365 days, and with no KMS encryption configured

Aman
demandé il y a un an329 vues
3 réponses
1
profile picture
EXPERT
répondu il y a un an
profile picture
EXPERT
vérifié il y a un an
0

I have edited the code created in this question to the code that meets your requirements.
https://repost.aws/questions/QUMcZ1aqV1Rwu-IozegdMF6g/delete-cloudwatch-log-groups-using-aws-lambda-function

The following code inserts an if statement in line 10 to determine if the retention period is less than 365 days and if the file is not encrypted by KMS.

import boto3

def lambda_handler(event, context):
    logs_client = boto3.client('logs')
    response = logs_client.describe_log_groups()

    for log_group in response['logGroups']:
        if 'retentionInDays' in log_group:
            retentionin_days = log_group['retentionInDays']
            if retentionin_days < 365 and 'kmsKeyId' not in log_group:
                log_group_name = log_group['logGroupName']
                logs_client.delete_log_group(logGroupName=log_group_name)
profile picture
EXPERT
répondu il y a un an
  • what if the log groups have never expire? how to delete that?

0

what if the log groups have never expire? how to delete that?

Aman
répondu il y a un an

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions