[{"data":1,"prerenderedAt":85},["ShallowReactive",2],{"pattern-eventbridge-custom-bus-sqs-observability-sam":3,"pattern-group-eventbridge-custom-bus-sqs-observability-sam":84},{"id":4,"title":5,"architectureURL":6,"cleanup":7,"contributors":11,"deploy":13,"description":16,"extension":17,"framework":18,"gitHub":19,"highlight":6,"introBox":23,"language":29,"level":30,"meta":31,"patternArch":32,"patternGroup":6,"patternGroupLabel":6,"resources":64,"stem":78,"testing":79,"videoId":6,"__hash__":83},"patterns\u002Fpatterns\u002Feventbridge-custom-bus-sqs-observability-sam.json","Amazon EventBridge Custom Event Bus to Amazon SQS with observability",null,{"text":8},[9,10],"Delete the replay subscriber if you created one (the variables are set in the README testing steps), otherwise the stack deletion fails: \u003Ccode>aws eventsv2 delete-subscriber --subscriber-arn \"$REPLAY_ARN\"\u003C\u002Fcode>","Delete the stack: \u003Ccode>sam delete --stack-name \"$STACK_NAME\"\u003C\u002Fcode>",[12],"content\u002Fcontributors\u002Fsurya-sai-d.json",{"text":14},[15],"sam deploy --guided","Deploy an Amazon EventBridge Custom Event Bus with a subscriber that delivers to Amazon SQS, with delivery logs and Amazon CloudWatch alarms to trace a missing event.","json","AWS SAM",{"template":20},{"patternPath":21,"templateFile":22},"eventbridge-custom-bus-sqs-observability\u002Fsam","template.yaml",{"headline":24,"text":25},"How it works",[26,27,28],"This pattern deploys an Amazon EventBridge Custom Event Bus with one subscriber. The subscriber filters events that have `detail.orderId` and delivers each match to an Amazon SQS queue. A second queue receives a failure record for any event that cannot be delivered after the first attempt and two retries.","The pattern also sets up what you need to follow one event from the publish call to the target. An Amazon CloudWatch Logs delivery sends the subscriber's delivery records to a log group, and five CloudWatch alarms cover publish failures, throttling, failed delivery attempts, events written to the dead-letter queue, and failed writes to it. A template parameter removes the delivery role's access to the target queue, so you can break delivery on purpose, see how the metrics, logs and alarms report it, and replay the failed events from the bus.","This pattern deploys one event bus, one subscriber, two Amazon SQS queues, one AWS Identity and Access Management (IAM) role, one log group with its log delivery, and five alarms.","Integration","300",{},{"icon1":33,"icon2":38,"icon3":42,"icon4":47,"icon5":51,"line1":54,"line2":57,"line3":59,"line4":62},{"x":34,"y":35,"service":36,"label":37},8,50,"icon-internet","Publisher",{"x":39,"y":35,"service":40,"label":41},33,"eventbridge","Amazon EventBridge\nCustom Event Bus",{"x":43,"y":44,"service":45,"label":46},71,15,"sqs","Amazon SQS",{"x":48,"y":35,"service":49,"label":50},88,"cloudwatch","Amazon\nCloudWatch",{"x":43,"y":52,"service":45,"label":53},75,"Amazon SQS DLQ",{"from":55,"to":56},"icon1","icon2",{"from":56,"to":58},"icon3",{"from":56,"to":60,"label":61},"icon4","logs, metrics",{"from":56,"to":63},"icon5",{"bullets":65},[66,69,72,75],{"text":67,"link":68},"Observability for the Amazon EventBridge Custom Event Bus: metrics, logs, and AWS CloudTrail","https:\u002F\u002Fdocs.aws.amazon.com\u002Feventbridge\u002Flatest\u002Fuserguide\u002Feb-custom-bus-observability.html",{"text":70,"link":71},"Creating Custom Event Bus resources with AWS CloudFormation","https:\u002F\u002Fdocs.aws.amazon.com\u002Feventbridge\u002Flatest\u002Fuserguide\u002Feb-custom-bus-cloudformation.html",{"text":73,"link":74},"Publishing events to a Custom Event Bus","https:\u002F\u002Fdocs.aws.amazon.com\u002Feventbridge\u002Flatest\u002Fuserguide\u002Feb-custom-bus-publish.html",{"text":76,"link":77},"Introducing enhanced custom event buses in Amazon EventBridge","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Faws\u002Fintroducing-enhanced-custom-event-buses-in-amazon-eventbridge-for-enterprise-scale-event-driven-applications\u002F","patterns\u002Feventbridge-custom-bus-sqs-observability-sam",{"text":80},[81,82],"Publish an event and follow it through the delivery logs, then redeploy with `GrantTargetAccess=false` to break delivery, see the dead-letter queue and alarms report it, and replay the failed event.","See the GitHub repo for the commands and expected output.","ibdqBQfDlj2DSyDtqpVqYI4FmMca539DTYc3yWAhpTg",[],1794479667063]