#amazon-web-services #lambda #amazon-cloudwatch #amazon-kinesis-firehose #aws-event-bridge
#amazon-web-services #лямбда #amazon-cloudwatch #amazon-kinesis-firehose #aws-event-bridge
Вопрос:
быстрый вопрос. Я планирую свести к минимуму использование ресурсов, передав тему SNS в качестве источника в EventBridge вместо того, чтобы передавать ее через Lambda, а затем из EventBridge в Firehose. Я пытался, но это не работает. Возможно ли это, или Lambda — единственный способ сделать его источником?
Ответ №1:
Это невозможно. Единственными допустимыми подписками на тему SNS являются:
For the http protocol, the (public) endpoint is a URL beginning with http://.
For the https protocol, the (public) endpoint is a URL beginning with https://.
For the email protocol, the endpoint is an email address.
For the email-json protocol, the endpoint is an email address.
For the sms protocol, the endpoint is a phone number of an SMS-enabled device.
For the sqs protocol, the endpoint is the ARN of an Amazon SQS queue.
For the application protocol, the endpoint is the EndpointArn of a mobile app and device.
For the lambda protocol, the endpoint is the ARN of an AWS Lambda function.
For the firehose protocol, the endpoint is the ARN of an Amazon Kinesis Data Firehose delivery stream.
Но SNS может напрямую обращаться к Firehose, так что, возможно, просто сделайте это.
Комментарии:
1. О, хорошо, понял. да, я протестировал SNS для Firehose и, похоже, работает. просто я хочу использовать EventBridge, чтобы я мог запускать его для многих целей. Я заметил, что SNS можно использовать как источник событий, но особенно как событие AWS, а не как сообщение SNS, отправленное в определенную тему, верно?
2. @CharmeeLee Это правильно. Вы можете использовать SNS как события AWS, но не для отправки сообщений в EB. Для этого вам нужна подписка на тему sns, которая не поддерживает EB.