无服务器中的功能可以共享事件吗?
Can functions in serverless share events?
我想在我们的 AWS 账户(EC2 实例、ELB 等)中创建特定资源时创建多个 cloudwatch 警报
在我的 serverless.yml
中,我可以执行以下操作,但这最终会创建多个侦听同一事件的 cloudwatch 规则。
functions:
createLatencyAlarm:
handler: createLatencyAlarm.main
events:
- cloudwatchEvent:
event:
source:
- "aws.elasticloadbalancing"
detail-type:
- "AWS API Call via CloudTrail"
detail:
eventSource:
- "elasticloadbalancing.amazonaws.com"
eventName:
- "CreateLoadBalancer"
createUnhealthHostAlarm:
handler: createUnhealthyHostAlarm.main
events:
- cloudwatchEvent:
event:
source:
- "aws.elasticloadbalancing"
detail-type:
- "AWS API Call via CloudTrail"
detail:
eventSource:
- "elasticloadbalancing.amazonaws.com"
eventName:
- "CreateLoadBalancer"
我也可以将事件设置为相同的 sns 主题,但是我必须单独(在无服务器之外)创建一个 cloudwatch 规则来侦听事件并发布到 sns 主题
functions:
createLatencyAlarm:
handler: createLatencyAlarm.main
events:
- sns: create-elb
createUnhealthHostAlarm:
handler: createUnhealthyHostAlarm.main
events:
- sns: create-elb
我可以在 serverless.yml
中设置一个事件以在函数之间共享吗?
目前,Serverless 为每个cloudwatch 告警创建单独的规则。如果您希望更改此内容,可以在他们的回购协议中提交问题。
与此同时,如果您希望有一个闹钟,请让一个 lambda 监听它,然后发布到一个 sns 主题。
我想在我们的 AWS 账户(EC2 实例、ELB 等)中创建特定资源时创建多个 cloudwatch 警报
在我的 serverless.yml
中,我可以执行以下操作,但这最终会创建多个侦听同一事件的 cloudwatch 规则。
functions:
createLatencyAlarm:
handler: createLatencyAlarm.main
events:
- cloudwatchEvent:
event:
source:
- "aws.elasticloadbalancing"
detail-type:
- "AWS API Call via CloudTrail"
detail:
eventSource:
- "elasticloadbalancing.amazonaws.com"
eventName:
- "CreateLoadBalancer"
createUnhealthHostAlarm:
handler: createUnhealthyHostAlarm.main
events:
- cloudwatchEvent:
event:
source:
- "aws.elasticloadbalancing"
detail-type:
- "AWS API Call via CloudTrail"
detail:
eventSource:
- "elasticloadbalancing.amazonaws.com"
eventName:
- "CreateLoadBalancer"
我也可以将事件设置为相同的 sns 主题,但是我必须单独(在无服务器之外)创建一个 cloudwatch 规则来侦听事件并发布到 sns 主题
functions:
createLatencyAlarm:
handler: createLatencyAlarm.main
events:
- sns: create-elb
createUnhealthHostAlarm:
handler: createUnhealthyHostAlarm.main
events:
- sns: create-elb
我可以在 serverless.yml
中设置一个事件以在函数之间共享吗?
目前,Serverless 为每个cloudwatch 告警创建单独的规则。如果您希望更改此内容,可以在他们的回购协议中提交问题。
与此同时,如果您希望有一个闹钟,请让一个 lambda 监听它,然后发布到一个 sns 主题。