Technical guide

Zabbix report plugin

Scheduled tasks

5 regular tasks issue measurements to Zabbix. They are triggered on distinct schedules adapted to the indicator variablility. Zabbix will let observe those values on a large variaiton of time scales.

Each measurement sensors will be associated with one of those tasks, and thus will be scheduled accordingly to that task.

report_zabbix\task\instant_task

Runs at each cron launch. It issues the few measures one wishes to have an immediate observation on. It is recommended to keep the number of real time indicators as low as possible so as not to induce a permanent load to the server. Similarly, care will be taken to avoid launching measurements whose requests in the database would explore too much data or lead to too long a calculation time. In a simple moodle, the launch frequency is every minute.

report_zabbix\task\hourly_task

This task is started once an hour. It is a good choice for monitoring day to day activity.

report_zabbix\task\daily_task

This task is started once a day. It is a good choice for monitoring weekly or monthly variations with sufficiant accuracy.

report_zabbix\task\weekly_task

This task is started once a week. It addresses observation of changes on long periods such as months or yearly variations.

report_zabbix\task\monthly_task

This task is started once a month. It usually used for values we want a yearly month by month reporting.

Measurements index

Index of measurements

Capabilities

The zabbix report does not offer rights control capabilities.

Extensibility model

The “Zabbix Report” plugin accepts additional measurement “records” that are picked up directly in Moodle plugins if these plugins comply:

The structure scheme of the indicator classes proposed by the central report

The recording principle added in the plugin installation script

Indicator class organization conventions

The indicator classes are implemented in separate files. A file represents a class of indicators that can produce several measurements (submodes). Each class is started with regularity according to the directory in which it is placed in the <modname>/classes/indicators directory:

At the root (instant): the class emits at each launch of the cron

monthly : the class emits once a month

weekly : the class emits once not week

daily : the class issues once a day

hourly: the class emits every hour

For each emission period, the data sent may represent measurements of a certain data interval, for example, a daily measurement may be issued on the basis of the data for the (sliding) week preceding the measurement, or (depending on the internal calculation) of the data since Monday of the current week. It will then be a daily 'updated' measure. It is therefore necessary to differentiate the notion of the discount frequency, and that of the temporal scope of the measurement.

By convention and to facilitate the identification, the name of the class (and the associated source file) is used by convention to indicate the scope of the measurements:

A file monthly_xxxxxx_indicator.class.php should contain only measurements of scope of one month (usually 30 days), even if its refresh frequency is different.

A file weekly_xxxxxx_indicator.class.php should contain only “7 days” scope measurements, even if its refresh frequency is different.

A file daily_xxxxxx_indicator.class.php should contain only “24 hour” scope measurements, even if its refresh frequency is different.

A file hourly_xxxxxx_indicator.class.php should contain only measurements of the scope of one hour, even if its refresh frequency is different.

A file xxxxxxxxx_indicator.class.php should contain only measurements for all available data, without period reference.

Plugins supported with the Zabbix report PRO extension

Moultle virtualization plugin

ENT power supply plugin

Training contract

Back to plugin index - Back to plugin index - Back to catalog