Как включить результат запроса в тело сообщения SNS

#amazon-web-services #amazon-sns

#amazon-web-services #amazon-sns

Вопрос:

Пожалуйста, как я могу заставить SNS включить результат запроса в электронное письмо, отправленное мне из этой лямбда-функции? Теперь он отправляет пустое электронное письмо.

 import boto3
import os
    
def lambda_handler(event, context):
BUCKET_NAME = 'dde-diskscallers'
KEY = 'test/LO/dc893c0a-9d20-5d2c6.csv'  
s3 = boto3.client('s3','ap-southeast-1')
response = s3.select_object_content(
    Bucket = BUCKET_NAME,
    Key = KEY,
    ExpressionType = 'SQL',
    Expression = "SELECT s._2, s._5, s._4 FROM S3Object s WHERE s._4 > '80'",
    InputSerialization = {'CSV': {"FileHeaderInfo": "None"}},
    OutputSerialization = {'JSON': {}},
)

for event in response['Payload']:
    if 'Records' in event:
        records = event['Records']['Payload'].decode('utf-8')
        
        Client = boto3.client('sns')
        response = client.publish(
            TargetArn='arn:aws:sns:xxxxxxxxx:Diskcall',
            Message=
 

Комментарии:

1. В select_object_content() документации ответ показан как 'Payload': EventStream({... , что предполагает, что ответ представляет собой словарь, а не список. Это означало бы, что for цикл не будет работать. Если вы печатаете содержимое response['Payload'] , что оно содержит?