Ad Widget

Collapse

Срабатывание триггеров от временной зон&

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • beta_achtung
    Junior Member
    • Mar 2015
    • 2

    #1

    Срабатывание триггеров от временной зон&

    Сценарий:
    Zabbix Сервер - веременная зона UTC
    Zabbix linux агенты - в 10 разных временных зонах

    С 00:00 до 03:00 (по веремени на хосте) идет большая запланированная нагрузка на систему (бекапы и синхронизации).

    Как создать триггер, который не будет срабатывать с 00:00 до 03:00 по времени на агенте(временной зоне на хосте Zabbix агента)?

    И можно ли это сделать стандартными функциями триггеров(Trigger functions) и элементами данных(Items), без исполнения скриптов или команд на Zabbix агенте?
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by beta_achtung
    Сценарий:
    Zabbix Сервер - веременная зона UTC
    Zabbix linux агенты - в 10 разных временных зонах

    С 00:00 до 03:00 (по веремени на хосте) идет большая запланированная нагрузка на систему (бекапы и синхронизации).

    Как создать триггер, который не будет срабатывать с 00:00 до 03:00 по времени на агенте(временной зоне на хосте Zabbix агента)?

    И можно ли это сделать стандартными функциями триггеров(Trigger functions) и элементами данных(Items), без исполнения скриптов или команд на Zabbix агенте?
    Сходу могу предложить только такое:
    В 00:00 агент траппером присылает что-то типа "maintenance=1", а в 3:00 присылает "maintenance=0", а все триггеры меняются на "... AND maintenance <> 1". Сюда же можно добавить триггер, что "maintenance=1" длиться не более 3х часов.

    Comment

    • n0b0dy
      Junior Member
      • May 2016
      • 19

      #3
      А почему бы не разделить все хосты по разным группам в зависимости от utc и с помощью обычного обслуживания создать периоды - для каждой группы свой период?

      Comment

      • glebs.ivanovskis
        Senior Member
        • Jul 2015
        • 237

        #4
        Или сдвиг относительно utc временной зоны каждого хоста прописать в макросах и учесть эти макросы в триггерах. Время сервера можно получить с помощью стандартных триггерных функций.

        Comment

        • beta_achtung
          Junior Member
          • Mar 2015
          • 2

          #5
          Спасибо за советы, но уж слишком много телодвижений для такой, на первый взгляд простой, задачи.

          Решил это так:

          Я использовал linux template, стандартный, который шел с Zabbix сервером. Там есть items -> system.localtime
          По умолчанию значение в Numeric(unsigned) и вермя в секундах - epoch time.

          Поменяв в items значение на system.localtime[local] - полученные значения с Z агента возвр. в формате: "2016-05-25,23:15:47.843,-04:00" и тип на "Character".

          Теперь можно создавать триггеры по типу:

          {host.example.com:system.cpu.load[,avg5].last()}>4 and (not {host.example.com:system.localtime[local].regexp(0[0-4]:..})

          где regexp(0[0-4]:.. должен перекрыть временной интервал с 12 ночи до 5 утра.

          Надеюсь не напутал с маской и логикой в триггерре

          Comment

          • glebs.ivanovskis
            Senior Member
            • Jul 2015
            • 237

            #6
            Здорово! Было бы полезно сделать это отдельным триггером и прописать dependency, а то замучаетесь исправлять этот крокодил во всех триггерах, если что не так.

            Comment

            Working...