The first key goal of application monitoring is to detect application failures. Ideally, your monitoring will be able to achieve the following things:
- Identify most issues: Your monitoring tools should be able to report much more than a binary "up" or "down" state. Ideally, all failures, even things that are invisible to the end user, should be reported, although not all of them should generate alerts.
- Identify issues as early as possible: You would want to know about any issues as early as possible, ideally before the end user. For instance, if you are running out of connections in your database connection pool, detecting it early will allow you to scale out or free up resources before your users start getting timeouts.
- Generate ...