We have mission critical application running with more than 50 EC2 instances , we need to create application availability report out of 50 EC2 instances uptime.
Can you please help me to find the feasible solution.
Interesting question. This seems like it should be easy, and would be if could get the tags for EC2 instance in the metric.
Here’s a few ideas, but it seems that there should be a simpler way.
Have the instances report a custom metric. You could record something interesting like memory or CPU usage also. Then you could report on the custom metric.
Another way would be CloudWatch Events. Use a specific tag on the EC2 for this application. Listen for EC2 instances starting and stopping. Send the event to a Lambda that filters based on the tag and creates a custom metric when an instance starts or stops. You might also want to watch for autoscaling events so you’ll know when an instance when down normally, versus one that had a problem.
Are you collecting the application logs? Perhaps you could report the first and last time you see an instance id.