SNS delivery status logging

0

I have a SNS topic that is subscribed by an HTTPS endpoint (e.g. https://event.pagerduty.com). Though I enabled delivery status logging, it is not logging the status of the delivery.

Per AWS doc (https://docs.aws.amazon.com/sns/latest/dg/msg-status-sdk.html), it allows delivery status logging to few; http, lambda, AWS app endpoint, SQS, Firehose. It does not mention HTTPS.

In this regard, I would like to know "message delivery status for an Amazon SNS topic that is subscribed to an HTTP endpoint" supported or not?

asked 21 days ago61 views
2 Answers
0

Amazon SNS supports delivery status logging for both HTTP and HTTPS endpoint types.

When setting Delivery status logging through the AWS CLI, you need to:

  • Configure IAM roles for successful and failed deliveries (HTTPSuccessFeedbackRoleArn and HTTPFailureFeedbackRoleArn attributes) that have permission to write logs CloudWatch Logs. Have you checked this? See Prerequisites for delivery status logging.
  • Configure Success sample rate (HttpSuccessFeedbackSampleRate attribute) to a value greater than 0 to log sucessful deliveries.

Remember to look at the right log group, it must follow /aws/sns/<region>/<account-id>/<topic-name>.

profile pictureAWS
answered 21 days ago
profile picture
EXPERT
reviewed 21 days ago
  • Thanks Jesus for the info. I have provided more privileges to the SNS role that I created. I also have the following: delivery_status_logging = { http_success_feedback_role_arn = aws_iam_role.sns_delivery_logging.arn http_success_feedback_sample_rate = 100 http_failure_feedback_role_arn = aws_iam_role.sns_delivery_logging.arn } anr of the log group dedicated for this purpose is the following: arn:aws:logs:us-east-1:<account_id>:log-group:/aws/sns/<log-group-name>

    #log-grou-name is dedicated for this purpose alone.

    Though the notification is reaching the HTTPS endpoint, I don't see status logs created in the log group. I don't see any cloudtrial log showing any denied messages either.

    Update: The delivery status logging has been working, but it was not writing to the specific log-group (/aws/sns/...). Instead, it was creating a new one and writing there (sns/.....). Since I was searching for /aws/sns, it did not show up... Thanks for the support Jesus as I was alluding to believe that delivery status logging for https endpoint is not currently supported.

-1

Based on the information available, it appears that message delivery status logging for an Amazon SNS topic subscribed to an HTTPS endpoint is not explicitly supported.

Amazon SNS does offer delivery status logging for several types of endpoints, including HTTP, AWS Lambda, Amazon SQS, Amazon Kinesis Data Firehose, and platform application endpoints. However, HTTPS endpoints are not specifically mentioned in the list of supported protocols for delivery status logging.

The delivery status logging feature is designed to provide insights into message delivery operations, helping users determine whether a message was successfully delivered to an endpoint, identify the response from the endpoint to Amazon SNS, and measure message dwell time. These logs are sent to Amazon CloudWatch Logs for monitoring and troubleshooting purposes.

If you have enabled delivery status logging for your SNS topic but are not seeing logs for your HTTPS endpoint, it's likely because this specific endpoint type is not supported for delivery status logging.

To confirm this or explore potential workarounds, you may want to consider the following options:

  1. Double-check your logging configuration to ensure it's set up correctly for the supported endpoint types.
  2. Consider using an HTTP endpoint instead of HTTPS, if possible, as HTTP is explicitly mentioned as supported.
  3. Reach out to AWS Support for clarification on whether HTTPS endpoints are supported for delivery status logging, as the documentation may not be fully comprehensive.
  4. Explore alternative monitoring solutions or custom logging implementations if delivery status logging is crucial for your HTTPS endpoint.

Remember that while delivery status logging might not be available for HTTPS endpoints, you can still use other Amazon SNS features and best practices to manage and monitor your notifications effectively.
Sources
Amazon SNS message delivery status - Amazon Simple Notification Service
Configuring delivery status logging using the AWS SDKs - Amazon Simple Notification Service
Configuring delivery status logging using the AWS Management Console - Amazon Simple Notification Service

profile picture
answered 21 days ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions