Lambda trigger from a specific tag key value of S3 Object

0

Hi Team,

Our use case is that, we will be uploading S3 objects with specific tag values and based on that specific tag value lambda function need to be triggered and it should move that object with specific tag value to another bucket.

Kindly share the lambda function code to achieve this.

已提问 1 个月前202 查看次数
1 回答
0

Hi there,

You can check the objects uploaded under a certain prefix and file extensions and in your lamdba, filter for the specific tags see here on how to fetch the object tags. Do change it for the programming language you are using :)

These are the list of options for s3 tigger. Enter image description here

Below is a lambda code you can use to copy from source to destination bucket(replace with the actual bucket values), here I am using the copy_object method

def lambda_handler(event, context):

    session_aws = boto3.Session()
    s3_client_aws = session_aws.client("s3")

    source_bucket_objects = s3_client_aws.list_objects_v2(
        Bucket=f"{sourcebucketname}", Prefix=f"{source_prefix}"
    )

    # add additional logic as    

    resp = s3_client_aws.copy_object(
        CopySource=f"{source_bucket}",
        Bucket=f"{dest_bucket}",
        Key=content["Key"],
    )
    # check response errors 
    except Exception:
        # handle errors

Also check this doc on the how to do it. Here is another lambda example (in different languages) from aws doc above code I posted is just an slight deviation

HTH

AWS
jay-aws
已回答 1 个月前
profile picture
专家
已审核 1 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则