当前位置: 首页 > 知识库问答 >
问题:

在AWS Lambda中使用来自S3触发器的事件数据

鲜于子琪
2023-03-14

我试图使用我在bucket上设置的S3触发器中的事件数据创建一个Lambda函数。我的第一个函数按预期工作并打印事件数据。但是,当我尝试将该事件数据拉入下一个函数时,桶名不会打印出来,这是我所期望的。我错过了什么?我可以不把事件数据拉到其他函数中去抓取它的片段吗?

import boto3

s3 = boto3.client("s3")

def lambda_handler(event, context):
    s3_upload_record = event
    print(s3_upload_record)
    
def print_bucket_name(s3_upload_record):
    bucket_name = s3_upload_record["Records"][0]["s3"]["bucket"]["name"]
    print(bucket_name)

共有1个答案

焦驰
2023-03-14

根本没有调用您的函数print_bucket_name。我认为你应该使用:

def lambda_handler(event, context):
    s3_upload_record = event
    print_bucket_name(s3_upload_record)
 类似资料:
  • 我正在尝试创建一个从Azure事件中心触发的Java Azure函数。下面是这些代码片段:https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-event-hubs-trigger?tabs=java#example 这是我的代码: 这是我在构建时遇到的错误: 我已经找了几个小时,一页又一页的谷歌搜索都筋

  • 我有一个烧瓶API,我使用烧瓶SQLAlChemy来处理SQLite数据库。我有一个存储日志条目的表,我想将最大行数限制为n。因为插入也是使用原始SQL从烧瓶之外的另一个脚本进行的,所以我创建了一个触发器来检查行数,如果行数高于n,则删除最旧的行数: 此触发器按预期工作,但我正在努力使用烧瓶-sqlalChemy设置它。如何设置触发器/执行原始SQL使用烧瓶sqlalChemy?SQL只需要在db

  • 问题内容: 我正在使用哈希链接的事件将a 作为弹出窗口打开。但是 ,单击中键不会触发事件,而只会获取链接的属性值并将URL加载到新页面中。如何使用中键打开弹出窗口? 问题答案: beggs的答案是正确的,但是听起来您想阻止默认的中间点击操作。在这种情况下,请包括以下内容 preventDefault()将停止事件的默认操作。

  • 问题内容: 我做了一个自定义的Hibernate Event监听器,扩展了org.hibernate.event.PreInsertEventListener。自定义侦听器会覆盖onPreInsert方法并设置“联系人”实体的字段,然后再使用DAO将其保存在数据库中。 问题是,在侦听器为其提供值之前该字段为null,并且默认的hibernate事件侦听器在我的自定义侦听器之前自动触发。当他们检查d

  • 我的Azure Functions事件网格触发器没有触发。我是这么做的。 Key Vault设置为将事件报告给EventGrid系统主题 此主题由将事件传递到Azure Function的订阅订阅 函数有一个事件网格触发器(见下文,默认由门户创建): 我用谷歌搜索了一下,对于这样的入门级方案,没有更多的指导。我想的也许是授权...订阅如何触发该函数?在此过程中(通过GUI /门户配置),没有任何关

  • 问题内容: 有人知道像使用jQuery的触发函数一样可以触发Prototype中的事件的方法吗? 我已经使用watch方法绑定了一个事件监听器,但是我也希望能够以编程方式触发该事件。 提前致谢 问题答案: 符合您的需求。 我已经使用了几次,它就像一个魅力。它允许您 手动触发本机事件 ,例如单击或悬停,如下所示: 这样做的好处是,所有附加的事件处理程序仍将执行,就像您自己单击该元素一样。 对于 自定