如何解决aws.events 的 EventBridge 规则问题
我想将发送到自定义事件总线的所有事件发送到 CloudWatch 日志。
我创建了自定义事件总线:my-event-bus
我创建了 CloudWatch 日志组
我创建了事件总线策略,以便我帐户中的每个人都可以将事件放入 my-event-bus
我为那个自定义总线创建了一个规则
这是规则:
MyRuleForBus:
Type: AWS::Events::Rule
Properties:
Description: Testing rule
EventBusName:
Name: testing-rule-for-my-event-bus
EventPattern:
source:
- aws.events
State: ENABLED
Targets:
- Arn: arn:aws:logs:us-east-1:MY_ACCOUNT_ID:log-group:my-event-bus-log-group
Id: 'my-bus'
当我尝试放置一个事件时
aws events put-events --entries file://put-events.json
我收到以下错误
{
"FailedEntryCount": 1,"Entries": [
{
"ErrorCode": "NotAuthorizedForSourceException","ErrorMessage": "Not authorized for the source."
}
]
}
这是put-events.json
[
{
"Source": "aws.events","EventBusName": "my-event-bus","Detail": "{ \"key1\": \"value3\",\"key2\": \"value4\" }","Resources": [
"resource1","resource2"
],"DetailType": "myDetailType"
}
]
但是,如果我将源更改为其他,例如“hello”,则在规则和事件中都有效。
我做错了什么?
我想让它与 aws.events
一起工作,以便发送到此总线的所有事件都在 CloudWatch(目标)
解决方法
aws.events
属于 AWS,而不属于您,因此您无法将其定义为您的事件源。只有 AWS 可以做到。
您需要使用自己的自定义名称作为事件来源,例如myapp.events
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。