3 Окидачи

Overview

Triggers are logical expressions that "evaluate" data gathered by items and represent the current system state.

While items are used to gather system data, it is highly impractical to follow these data all the time waiting for a condition that is alarming or deserves attention. The job of "evaluating" data can be left to trigger expressions.

Trigger expressions allow to define a threshold of what state of data is "acceptable". Therefore, should the incoming data surpass the acceptable state, a trigger is "fired" - or changes its status to PROBLEM.

A trigger may have the following status:

Status Description
OK This is a normal trigger status.
Problem Something has happened. For example, the processor load is too high.
Unknown The trigger value cannot be calculated. See Unknown status.

In a simple trigger we may want to set a threshold for a five-minute average of some data, for example, the CPU load. This is accomplished by defining a trigger expression where:

  • the 'avg' function is applied to the value received in the item key
  • a five minute period for evaluation is used
  • a threshold of '2' is set
    avg(/host/key,5m)>2

This trigger will "fire" (become PROBLEM) if the five-minute average is over 2.

In a more complex trigger, the expression may include a combination of multiple functions and multiple thresholds. See also: Trigger expression.

Triggers cannot be created for items with binary values.

Након омогућавања окидача (променом његовог статуса конфигурације са Онемогућено на Омогућено), израз окидача се израчунава чим ставка у њему добије вредност или време за обраду функција датум и време и/или nodata().

Већина функција окидача се процењује на основу вредности ставке историја подаци, док неки окидач функције за дугорочну аналитику, нпр. trendavg(), trendcount(), итд., користите податке о тренду.

Време израчунавања

Окидач се поново израчунава сваки пут када Zabbix сервер прими нову вредност која је део израза. Када се прими нова вредност, свака функција која је укључена у израз се поново израчунава (не само она која је примила нову вредност).

Поред тога, окидач се поново израчунава сваки пут када се прими нова вредност и сваких 30 секунди ако се у изразу користе функције date and time и/или nodata().

Функције Date and time и/или nodata() се поново израчунавају сваких 30 секунди од стране Zabbix процеса синхронизације историје.

Окидачи који референцирају само функције тренда се процењују једном по најмањем временском периоду у изразу. Види такође функције трендова.

Период евалуације

Период евалуације се користи у функцијама које референцирају историју ставке. Омогућава нам да одредимо интервал који нас занима. Може се одредити као временски период (30s, 10m, 1h) или као распон вредности (#5 - за пет најновијих вредности).

Период евалуације се мери до "now" - где је "now" најновије време поновног израчунавања окидача (видети Време израчунавања изнад); "now" није време "now" сервера.

Период евалуације одређује или:

  • Да се узму у обзир све вредности између "now-time period" и "now" (или, са временски помак, између "now-time shift-time period" и "now-time_shift")
  • Да се не узме у обзир више од броја вредности из прошлости, до "now"
  • Ако постоји 0 доступних вредности за временски период или број наведених - онда окидач или израчуната ставка која користи ову функцију постаје неподржана

Имајте на уму да:

  • Ако се у окидачу користи само једна функција (референцирање историје података), "now" је увек најновија примљена вредност. На пример, ако је последња вредност примљена пре сат времена, период евалуације ће се сматрати као до најновије вредности пре сат времена.
  • Нови окидач се израчунава чим се прими прва вредност (функције историје); Израчунаће се у року од 30 секунди за функције date and time и nodata(). Стога ће се окидач израчунати чак и ако можда подешени период евалуације (на пример, један сат) још није прошао од када је окидач креиран. Окидач ће се такође израчунати након прве вредности, чак и ако је опсег евалуације подешен, на пример, на десет најновијих вредности.

Непознат статус

Могуће је да се непознати операнд појављује у изразу окидача ако:

  • користи се неподржана ставка
  • евалуација функције за подржану ставку резултира грешком

У овом случају окидач се генерално оцењује као "непознато" (иако постоје неки изузеци). За више детаља погледајте Изрази са непознатим операндима.

Могуће је добити обавештење о непознатим окидачима.