在Python中,我保存多个视频文件。
保留1:
但2:
除3外:
我有一个lambda触发器,它使用媒体转换器将HLS格式添加到这些视频中,并生成缩略图。这3种保存是在很短的时间内完成的,因为它们是社交媒体帖子对象的资产。
由于某些原因,S3只触发一些文件。
保存1会触发S3 Lambda,但不能保存2。保存3也会触发S3 Lambda。
我的假设是,S3触发器在识别新的文件上传之间有某种程度的停机时间(在这种情况下,我认为这些文件上传之间的时间几乎是即时的)。
这个假设正确吗?我怎样才能绕过它呢?
发布于 2021-08-05 22:24:33
它应该对所有物体开火。
当Amazon函数触发AWS函数时,引发触发器的对象的信息将在S3字段中传递:
{
"Records": [
{
"eventSource": "aws:s3",
"awsRegion": "us-west-2",
"eventTime": "1970-01-01T00:00:00.000Z",
"eventName": "ObjectCreated:Put",
"s3": {
"bucket": {
"name": "my-s3-bucket",
"arn": "arn:aws:s3:::example-bucket"
},
"object": {
"key": "HappyFace.jpg",
"size": 1024,
...
}
}
}
]
}注意,--这是一个数组,所以可能会将多个对象传递给一个Lambda函数。我从未见过这样的情况发生,但是AWS的示例代码肯定假设这种情况是基于它们的示例代码发生的:
def lambda_handler(event, context):
for record in event['Records']: # <-- Looping here
bucket = record['s3']['bucket']['name']
key = unquote_plus(record['s3']['object']['key'])
...因此,我建议:
examination
event,然后将其放入日志,循环遍历所有可能传递的记录,!
https://stackoverflow.com/questions/68673809
复制相似问题