Skip to content
This repository has been archived by the owner on Sep 13, 2023. It is now read-only.

Latest commit

 

History

History
22 lines (13 loc) · 2.65 KB

service-monitoring-tools.md

File metadata and controls

22 lines (13 loc) · 2.65 KB

service-monitoring-tools

This file keeps track of the decisions taken to choose the service monitoring tool.


Service monitoring tools allow developers to track the performance and how the server resources are being used by collecting data and creating metrics. This means it monitors certain key server components such as CPU load, RAM, firewall, sensor, bandwidth, error rate, network, disk space usage, switch, router, and remote access.

Tool Description Supported platforms System Requirements Advantages Disadvantages
Prometheus* It collects rich metrics and provides a powerful querying language Linux, Windows, macOS RAM: 4GB, Hard Disk Space: 20GBand CPU: 2 cores Support for custom metrics; huge number of exporters available to export metrics to Prometheus from different sources Complex and time-consuming to manage Prometheus instances; Need to manually configure and manage Prometheus exporters
Grafana* It transforms metrics into meaningful visualizations Debian / Ubuntu, RPM-based Linux (CentOS, Fedora, OpenSuse, RedHat), macOS, Windows RAM: 4GB, Hard Disk Space: 300GGBand CPU: 1 core Free and open-source with a huge open-source community for support; Supports notification system in the form of Email, Discord, Telegram, Slack, etc. Manual setup required for graphs and alerts
Zabbix It monitors the IT infrastructure and is configurable directly from the web interface. Windows, Linux, IBM AIX, Mac OS X, Linux, FreeBSD, HP-UX, Solaris: 9-11 RAM: 1.5GB, Hard Disk Space: 8GB and CPU: 2 CPU cores/2GB The user interface is highly customizable; Supports notification system in the form of Email, SMS, etc; Immediate detection of configuration changes Steep learning curve due to the complex database
Icinga It checks server performance and network availability. It also has an integrated engine with the capability to monitor extensive infrastructure. Mac OS X, Windows, Linux, IBM AIX, Solaris, Unix, and HP-UX RAM: 4GB, Hard Disk Space: 50GBand CPU: 2 cores The user interface is simple and customizable; The modules allow for different functionality; Setup is quick, and server monitoring begins immediately New users might find it complicated due to its complex features

*Prometheus and Grafana are usually used together.

Decision

We choose the Prometheus and Grafana tools. Even though they can be complex to configure, echo (library used in the web services projects) supports the generation of metrics for Prometheus. Another pro is that both tools have a big community for support.