Amazon SNSサブスクリプションフィルターを設定してPython(boto3)からPublish
2021/08/02
上記のような構成でRocketChatを使うとき使わないときがあります。
都度都度Lambdaのトリガーをオフにするのも面倒ですし、メッセージがSQSまで行ってしまうのもコストも効率も無駄です。
ということでサブスクリプションフィルターを設定しました。
目次
サブスクリプションフィルターの設定
RocketChatに向かうキューのサブスクリプションにサブスクリプションフィルターを設定しました。
|
1 2 3 4 5 6 |
{ "rocket_chat": [ "valid" ] } |
対象の値が1つでも配列にしないといけないようです。
Lambda(Python boto3)
|
1 2 3 4 5 6 7 8 9 10 11 |
sns.publish( TopicArn=snsTopicArn, Message=json.dumps(event), MessageAttributes={ 'rocket_chat': { 'DataType': 'String', 'StringValue': 'valid' } } ) |
MessageAttributesにフィルターで設定した値をStringValueとして追加しました。
予定通りの送信と、StringValueが違う値のときは送信されないことを確認できました。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
AWS Service CatalogポートフォリオをOrganizations組織で共有する
AWS Service Catalogチュートリアルで作成したポートフォリオのO …
-
-
NATインスタンスを作成する
プライベートサブネットのEC2インスタンスからカスタムメトリクスとCloudWa …
-
-
リザーブドインスタンス推奨事項を確認した
マネジメントコンソールで[AWSコスト管理]カテゴリの[AWS Cost Exp …
-
-
ParquetフォーマットのデータにS3 Select SQLを実行する
RDSスナップショットのS3エクスポート結果確認で出力したデータが、S3にPar …
-
-
Rocket.ChatをAmazon EC2 Ubuntuサーバーで起動
こちらRocket.Chatを1行でAWS上に導入を参照させていただきました。 …
-
-
Microsoft TeamsのIncoming Webhooksを使ってAWS Lambda(Python)からFeedlyの記事を自動投稿する
Microsoft Teamsの検証を始めましたので、Slackで自動化している …
-
-
「JAWS-UG in AWS Cloud Roadshow 2017 大阪」で運営をしました
AWS Cloud Roadshow 2017 大阪のナイトイベントで、「JAW …
-
-
AMIをOrganizations組織で共有しました
よく使うAMIをOrganizations組織内のリソースパブリッシュ用のアカウ …
-
-
EC2のAMIとRDSのスナップショットを他のAWSアカウントに共有してブログサイトをAWSアカウント間で引っ越す
当ブログで使用しているEC2とRDSを環境の整理のため、他のAWSアカウントへ引 …
-
-
RDSの拡張モニタリングを有効にしました
RDS for MySQLです。 変更メニューで、[拡張モニタリングを有効にする …


