aws sns的cdk结构

aws-cdk.aws-sns的Python项目详细描述


amazon简单通知服务构造库


Stability: Stable


将sns主题添加到堆栈:

importsns=require('@aws-cdk/aws-sns');consttopic=newsns.Topic(this,'Topic',{displayName:'Customer subscription topic'});

订阅

可以通过调用 .addSubscription(...)方法。它接受一个subscription对象, 其默认实现可以在 @aws-cdk/aws-sns-subscriptions包装:

向主题添加https订阅:

importsubs=require('@aws-cdk/aws-sns-subscriptions');constmyTopic=newsns.Topic(this,'MyTopic');myTopic.addSubscription(newsubs.UrlSubscription('https://foobar.com/'));

订阅主题的队列:

myTopic.addSubscription(newsubs.SqsSubscription(queue));

请注意,不同帐户中队列的订阅需要由 从队列中读取初始消息并访问其中找到的链接。

筛选策略

订阅主题的终结点时,可以指定筛选策略。

lambda订阅示例:

constmyTopic=newsns.Topic(this,'MyTopic');constfn=newlambda.Function(this,'Function',...);// Lambda should receive only message matching the following conditions on attributes:// color: 'red' or 'orange' or begins with 'bl'// size: anything but 'small' or 'medium'// price: between 100 and 200 or greater than 300topic.subscribeLambda(newsubs.LambdaSubscription(fn,{filterPolicy:{color: sns.SubscriptionFilter.stringFilter({whitelist:['red','orange'],matchPrefixes:['bl']}),size: sns.SubscriptionFilter.stringFilter({blacklist:['small','medium'],}),price: sns.SubscriptionFilter.numericFilter({between:{start: 100,stop: 200},greaterThan: 300})}}));

CloudWatch事件规则目标

sns主题可以用作cloudwatch事件规则的目标。

使用@aws-cdk/aws-events-targets.SnsTopicTarget

importtargets=require('@aws-cdk/aws-events-targets');codeCommitRepository.onCommit(newtargets.SnsTopicTarget(myTopic));

这将导致向事件规则添加一个目标,还将修改 允许CloudWatch事件发布到主题的主题资源策略。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JavaFX触控事件未触发Ubuntu 20.04触控笔记本电脑   java如何在AWT中关闭窗口?   java Dagger 2:注入具有构造函数参数的成员   创建对象的Java调用类   对象我想在A.java中添加两个数字,并在B.java中打印结果(如何?)   java如何使用AWS SDK for Android从数字海洋空间下载图像?   java Facebook sdk 4.0.1无法使用Android studio获取某些字段   4分钟后web应用程序(Angular 8和Rest API)中的java自动会话超时   在Eclipse for Java EE developers edition中禁用HTML警告   java按字母顺序排列字符串我错过了什么明显的东西吗?   java在Jshell中println和printf有什么不同