Predictive Monitoring

Predictive monitoring

Introduction

In addition to features like remote monitoring, agent-based monitoring or web monitoring, Pandora FMS offers other advanced resources to improve monitoring. With these resources, you are able to predict the value of a module based on historical data or create new modules, carrying out arithmetic operations by using existing ones.

Types of predictive monitoring

When creating a predictive monitoring module, you may choose one of the following options:

  • Predictive monitoring:
    • Capacity planning: It makes a prediction based on the time window specified by the user, assuming a more or less linear performance of the target module. This type of predictive module allows you to find out how many days are left before the disk is full, or the number of requests to the database you will have in a month, if it continues as before. These modules replace old predictive modules.
    • Service: It retrieves the value of a service to be able to show it in any Agent where it is needed.
  • Arithmetic monitoring:
    • Synthetic arithmetic: It is about being able to perform arithmetic operations (addition, subtraction, multiplication and division) with data previously obtained in other modules.
    • Syntethic average: It is about averaging data previously obtained in other Modules.
    • Trending module: It compares the current average with the average of the previous period and returns the difference in absolute value or as a percentage.

  • The Trending module averages the last period in the indicated periodicity versus the average of the same period one day/week/month before. For example if you select a week, the Trending module calculates the average of the last week and compares it with the average of the previous week.

Monitoring through Synthetic Modules

Versión Enterprise.

This is an Enterprise version feature. Synthetic modules are manufactured from data from other modules, which can be in the same agent or in different agents. The operations that can be carried out (add, subtract, multiply and divide) between modules and/or with absolute values are arithmetic.

Here are some examples:

  • A module called “Traffic sum” which adds the values of the incoming and outgoing traffic of a router, generating a new module by the total traffic of the interface.
  • A module called “Total users” which adds the values of ten modules called 'Connected users' in each of the five servers where the number of connected users is monitored.

Synthetic modules are managed by the prediction Server, so in order to use them that subcomponent of Pandora FMS server must be activated and working. Likewise, the agent that contains Synthetic modules must use a Prediction server. Remember you can also use a HA environment and have load balancing on said servers.

The first step to create a synthetic module is to go to the management section in the module tab of an agent, and once there create a new module of the prediction type.

In the first example, a fictitious module will be created, which is going to contain the arithmetic average value of two modules from two different agents: CPUUse (Sancho-XP) and cpu_user (Garfio). Within each machine, this module measures the percentage of CPU use, and they are two Windows® and Linux® machines respectively. The final result will be a module stored in 'Sancho-XP' agent which is going to contain the average of both values.

The second example creates a module called “Total accesses” with the average of the values of the “Apache_accesses” modules from two different agents, called Sancho-XP and Sancho-XP_2.

Another easier but more useful example is the one which has been used to create the same module called 'Total accesses' in Win10B. It simply “copies” the value of a module of the same name into Win10A to produce the value.

In order to operate with other logical operations (multiplication, subtraction, and division), keep the order of the operators in mind. Feel free to play around with the interface to see how all other arithmetic operations between different modules can be done. You are also able to use a fixed value to add it to your logical operations as shown in the picture below.

You are able to select multiple agents from the box on the left side (by using 'control'). In the central box, all the 'common' modules from the selected agents are going to be shown. It can be pretty useful to produce averages from common modules in a server group (e.g. CPU or disk space).