How to check emails logs through AWS? - amazon-web-services

I have a Joomla website & it is configured to use AWS-SES for outgoing emails. Is there any way or logging by which I can check all outgoing emails from AWS/Joomla with minimum details like timestamp, sent to email id, subject.
Please let me know. Thanks

So while SES doesn't have any fully featured monitoring Suite, you can set SES up to deliver Delivery, Bounce and Complaint Notifications.
With these notifications, you can develop your own application or read the raw notifications that will show you what emails got delivered/bounced/complaints.
Full information on these notifications is available on the AWS Documentation:
http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html

You can publish your email sending events to an Amazon Kinesis Data Firehose delivery stream. This will take metadata from your sent emails and write it to an S3 bucket, which should produce your desired log.
Amazon has a tutorial on implementing this process at the link below.
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/event-publishing-kinesis-analytics.html

Related

Email status in AWS SES

I want to track emails that are being send by SES. I want to check if the email I am sending to my client is delivered or not. I found that AWS C# sdk provides the statistics, but it doesn't provide statistics per email address.
From Monitor email sending using Amazon SES event publishing - Amazon Simple Email Service:
To enable you to track your email sending at a granular level, you can set up Amazon SES to publish email sending events to Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon Simple Notification Service based on characteristics that you define.
You can track several types of email sending events, including sends, deliveries, opens, clicks, bounces, complaints, rejections, rendering failures, and delivery delays. This information can be useful for operational and analytical purposes. For example, you can publish your email sending data to CloudWatch and create dashboards that track the performance of your email campaigns, or you can use Amazon SNS to send you notifications when certain events occur.

Filter SES delivery SNS by original environment

We have different environments that all use same SES to send emails. We are looking for a way to filter the delivery notifications that SES sends back to the topic we have created so that they end up in the correct SQS of each environment.
We tried adding a header to the message but unfortunately SNS topic filter only works with message attributes that we have no control over when SES publishes the delivery notification. How can we achieve this? How can we filter delivery notifications by original environment that has sent the email?

How to get status of emails sent via Amazon SES

I want to ask some question related to AWS SES. Please help me with my queries.
As described in the above image that we need to pay $0 for the first 62000 emails if sending email
from ec2 hosted application. How does AWS SES know that i will send email from my ec2 instance hosted
application or from somewhere else or we need to code?
How can i get the list of emails that successfully send, which emails get bounces, complaints,
rejected? Mean i want a log of my sending emails. I do not want to login in AWS and watch dashboard multiple time.
It can detect sends from Amazon EC2 based on IP address range.
For detailed logs of email sends, see: Monitoring Your Amazon SES Sending Activity - Amazon Simple Email Service
There are options for Event messages and Notifications.
You can track the mail events with event publishing. Here is a post explaining how to: https://mailintel.io/resources/tracking-deliveries-opens-and-clicks-for-amazon-ses. If you don't want to build anything yourself, you can use mailintel.io. Gives you a detailed reporting dashboard.

Can we save client SMS responses in AWS Pinpoint's 2-way SMS?

I know that Amazon Pinpoint enables 2-way SMS, but I was wondering whether it was possible to save the message that the client sends. I'm finding myself going down the AWS rabbit-hole a bit, but I was wondering if anyone has any recommendations as to what AWS services could hold onto response data.
Just to clarify, I understand that Pinpoint allows us to return automated messages when the client passes a keyword. I am also aware that we can create user segments to save user attributes, I am moreso inquiring whether there is a way to stream user responses (that are not keywords) to another service or topic. Thank you!
An overview of Amazon Pinpoint two-way messaging can be summarized as per the above sample architecture.
You can capture the incoming messages from your users using the SNS topic you would have created when activating Pinpoint two-way messaging i.e When your users reply to your SMS message using the long code number, Amazon Pinpoint sends a JSON payload to the Amazon SNS topic that you designated. As a developer you handle these incoming messages by adding subscriptions to this SNS topic. The supported subscriptions include SQS, Lambda, email, HTTPS endpoint or SMS.
A sample JSON payload that your SNS topic subscriptions would receive would resemble the following :
{
"originationNumber":"+27155550000",
"destinationNumber":"+2722255511111",
"messageKeyword":"START",
"messageBody":"Hello World from Amazon Pinpoint",
"inboundMessageId":"cae173d2-66b9-564c-8309-66b9",
"previousPublishedMessageId":"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
}
Hope this Helps!

SES: API to get delivery status of mails as json response

I want to get the delivery status of the mails sent through Amazon SES by hitting an API and saving the response in my database. I know of Amazon SNS and sending notification through email, but could not find a solution for this. Is there a solution to this?
There is no polling mechanism in SES for delivery status.
The SNS delivery/status notifications that SES provides, which you have indicated you are familiar with, is the standard mechanism for this.
Enable these and then subscribe an SQS queue, or a Lambda function, or even an HTTPS endpoint from your app, to the designated SNS topic. It should be relatively simple using any of these mechanisms to code a solution to store the reports in the database as they are provided to you by SES.