Monitoring in informatics is a broad field with many facets and aspects. The term monitoring itself has many definitions and is thous understood in many different ways. But there is one common understanding when it comes to the goal of monitoring. The goal is to ensure stability to prevent downtimes, to protect the reputation and prevent monetary penalties.
There are many tools to be chosen of for monitoring. In the landscape of tools there is a broad range available. From commercial tools to freeware anything is available. The questions should start here. What has to be monitored? In what depth should it be? Is performance data collection a criteria? What analytics capabilities are needed? Are alarming capabilities needed?
Often the first approach is to specify a a software tool. Or it is even predetermined by the management. The weakness of both approaches is their limited perspective. And often such approaches end with unsatisfied users. Before a tool is even named, the first question, which should be asked is, who is using the monitoring and how. And the primary goal of the monitoring should always kept in mind. There should be no distraction for secondary use of monitoring information such as reporting and alike. All too often, monitoring is controlled by secondary stakeholders and the primary focus is lost. Who are the people who work with the monitoring and what data do they need to prevent outages? How are these people organized? Will they operate and configure the monitoring themselves? Are there multiple teams working with the information provided by the monitoring? Do the teams have different needs?
Of course it is important to look at the elements and environments to be monitored. If you operate a cloud, the focus is different to monitoring of a few single servers. It is also another story to monitor standard applications or applications developed for the customer. In case of application development, the monitoring should be part of the development process. However there is an area in between, individual configured standard applications. Many tools are not built to manage a considerable amount of custom configurations.