Ad Widget

Collapse

Простой триггер

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • m2k9
    Junior Member
    • Apr 2016
    • 10

    #1

    Простой триггер

    Всем привет!
    Пытаюсь настроить триггер который будет сигналить при увеличении температуры в серверной до 25 градусов.
    Температура в серверной обычно 16-18 градусов. Хочется что бы при достижении температуры в 25 срабатывал триггер, при достижении менее 20 менял статус на ОК.
    В мануале на Zabbix.com есть пример:
    ({TRIGGER.VALUE}=0&{server:temp.last()}>20) or
    ({TRIGGER.VALUE}=1&{server:temp.last()}>15)
    я так понимаю "{TRIGGER.VALUE}=0" - это состояние триггера проблема, а 1 - это состояние ОК!
    Получается если t больше 20 это проблема, а если больше 15 то это ОК.
    Но больше 20 это тоже больше 15! Как это работает?
    Как пытаюсь настроить у себя:
    ({TRIGGER.VALUE}=1 and {vn-122:temp.avg(600)}<20) or ({TRIGGER.VALUE}=0 and {vn-122:temp.avg(300)}>25)
    Если t меньше 20 то все ок, если больше 25 то проблема.
    Итого для удобства завел UserParam который из файла берет цифру и передает ее в vn-122:temp.
    Ставлю значение в 33. По идее триггер должен был сработать через 300 сек, а от не срабатывает.
    Ставлю значение t в 6, триггер появляется и пропадает каждые 10 сек.
    Помогите куда капать?
    Спасибо.
  • DmitryL
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • May 2016
    • 278

    #2
    Добрый день,

    Попробуйте такой триггер
    Code:
    ({TRIGGER.VALUE}=0 and {vn-122:temp.last()}>25) or ({TRIGGER.VALUE}=1 and {vn-122:temp.last()}>20)
    Last edited by DmitryL; 20-05-2016, 13:07.

    Comment

    • aib
      Senior Member
      • Jan 2014
      • 1615

      #3
      Во-первых, почитайте про "Гистерезис в триггерах"

      В рассмотренном примере:
      Code:
      ({TRIGGER.VALUE}=0 and {server:temp.last()}>20) or
      ({TRIGGER.VALUE}=1 and {server:temp.last()}>15)
      Логика действий такова:
      - Если триггер еще не сработал, но температура превысила 20 градусов => ВКЛЮЧИТЬ триггер
      - Если триггер уже сработал (включен), но температура всё ещё выше 15 градусов => ВКЛЮЧИТЬ триггер (т.е. держать его включенным/активным)

      Триггер отключается, если он был включен И температура упала ниже 15 градусов.

      Originally posted by m2k9
      ({TRIGGER.VALUE}=1 and {vn-122:temp.avg(600)}<20) or ({TRIGGER.VALUE}=0 and {vn-122:temp.avg(300)}>25)
      Ваш триггер имеет другую логику:
      - Если триггер еще не сработал, но СРЕДНЯЯ температура за прошедшие 5 минут превысила 25 градусов => ВКЛЮЧИТЬ триггер
      - Если триггер уже сработал (включен), И СРЕДНЯЯ температура за 10 минут упала ниже 15 градусов => ВКЛЮЧИТЬ триггер (т.е. держать его включенным/активным) ?????????

      Триггер отключается, если он был включен И средняя температура за 10 минут ПОДНЯЛАСЬ выше 20 градусов.

      Вы точно хотите такого поведения?
      Я бы скорее использовал формулу из примера, добавив средние температуры
      Code:
      ({TRIGGER.VALUE}=1 and {vn-122:temp.avg(300)}>20) or ({TRIGGER.VALUE}=0 and {vn-122:temp.avg(300)}>25)
      В этом случае триггер будет активироваться, если средняя температура за последние 5 минут превысила 25 градусов, и оставаться активным, пока средняя температура за последние 5 минут не упадет ниже 20.
      Sincerely yours,
      Aleksey

      Comment

      • m2k9
        Junior Member
        • Apr 2016
        • 10

        #4
        Всем спасибо за ответы вопрос решен!
        Когда я читал про "Гистерезис в триггерах" я не правильно понял как это работает.
        Получил желаемый результат при помощи:
        ({TRIGGER.VALUE}=1 and {vn-122:temp.avg(300)}>20) or ({TRIGGER.VALUE}=0 and {vn-122:temp.avg(300)}>25)

        Comment

        Working...