I am running 10 AWS EC2 instances. Each of them running different applications. I am looking for application level monitoring solution. Suppose, if Apache fails in any instance, it should notify me with logs. I know about "Nagios" but it is mainly for infrastructure monitoring. There are few tools for application monitoring (like, "Monit") but I have to install them manually in each server, which is not possible when you are having multiple number of EC2 instances (A global set up would be better, because number of instances will keep increasing).

1 Answer 1


It looks like your problem is two fold:

  1. You want to monitor the status of critical applications provisioned on virtual machines

  2. You want to be able to install these checks rather intuitively.

I'll answer these in the reverse order.

The easiest answer for #2 is that you can use configuration management like Chef, Ansible, or Puppet to provision machines. That way you could write a cookbook that as a software package is detected on the system a simple agent based check is dropped in as well. Codifying these things makes them much more manageable in the long term.

In terms of #1 you're probably looking for an agent based monitoring tool. Some examples of this would be Prometheus or Sensu but there's an endless list of them out there. These allow you to describe checks on the server and the master just collects whatever information is given to it.

  • Just a note for the mods: I don't know if it's okay to link to products from here so I avoided doing that. I can certainly do it if appropriate.
    – Matt O.
    Commented Dec 11, 2017 at 18:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.