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

Amazon EventBridge规则S3 put object事件无法触发AWS StepFunction

孟开宇
2023-03-14

设置EventBridge后,S3 put object事件仍然无法触发StepFunction。

然而,我试图将事件规则更改为EC2状态。它正在工作!!!

我还尝试将规则更改为S3 all event,但它仍然不起作用。

Amazon EventBridge:

事件模式:

     { 
      "source": ["aws.s3"],
      "detail-type": ["AWS API Call via CloudTrail"],
      "detail": {
                 "eventSource": ["s3.amazonaws.com"],
                 "eventName": ["PutObject"],
                 "requestParameters": {
                 "bucketName": ["MY_BUCKETNAME"]
                 }
     }

目标:

  Type:Step Functions state machine
    ARN:arn:aws:states:us-east-1:xxxxxxx:stateMachine:MY_FUNCTION_NAME

参考:https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-cloudwatch-events-s3.html

共有1个答案

吕修伟
2023-03-14

您的步骤函数没有被触发,因为PutObject事件没有被发布到Cloud dTrail。S3操作被归类为数据事件,因此您必须在创建cloud dTrail时启用数据事件。本教程说下一步下一步和创建,这似乎表明不需要选择其他选项。默认情况下,下一步的数据事件(步骤2-选择日志事件-截至本文撰写时)未被选中。您必须选中它并填写底部以指定是否要记录所有存储桶/事件。

 类似资料:
  • 我有一个多用途的传感器,每个传感器发送计步器数据。我有一个基于macAddress的规则文件,触发规则: My User只有一个字段,Steps事件有以下字段: 现在,当我为每个macAddress插入一个事件时,如果在过去一小时内使用该macAddress的用户的步骤数少于50,则规则将触发。因此,如果满足此条件,则该规则将为每个macAddress触发。但我希望规则只能为插入的步骤事件的mac

  • 在这里,我得到了一个notaccepted异常,我知道原因是stateMachine.getState()是INITIAL,它不能直接将状态从INITIAL更改为THIRD。 所以我的问题是,我是否可以配置我的statemachine在第一个事件完成时自动触发第二个事件

  • 我对口水很陌生,从基础开始。这是一个设置; > 有一些规则文件 不同文件中的规则属于不同的议程组 所有规则都基于同一事实 在我的单元测试中,我获得了一个特定的“议程组”,设置焦点(

  • 我的问题是: 在Drools规则中,有没有一种方法可以拦截“成功”事件?为了更好地解释。。。有一种方法可以在规则的所有条件都为真时调用侦听器? 注意:我不想设置一个全局对象(在会话上)来管理规则的“然后”子句中的这个条件。 我正在寻找一个已经在Drools上实现的解决方案 规则示例

  • 使用mui.trigger()方法可以动态触发特定DOM元素上的事件。 .trigger( element , event , data ) element Type: Element 触发事件的DOM元素 event Type: String 事件名字,例如:'tap'、'swipeleft' data Type: Object 需要传递给事件的业务参数 示例 自动触发按钮的点击事件: var

  • 我刚开始流口水,遇到了一个问题。 我简化了规则以显示问题: 基本上,我想计算特定路段上发生的事件(路段是道路的一部分)。当同一链接上发生3个事件时,我希望触发规则。 上面的规则几乎起作用了,但是当它发射时,它发射了3次,每个事件发射一次。我只希望它发射一次。 我错过了什么? 非常感谢。