Ad Widget

Collapse

Выполнение скрипта на устройстве при ала

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • omgiafs
    Junior Member
    • Dec 2017
    • 12

    #1

    Выполнение скрипта на устройстве при ала

    Здравствуйте. Zabbix 3.0.6
    Есть задача - при срабатывании триггера на одном устройстве HOST1 выполнять глобальный скрипт на другом устройстве HOST2.

    Проблема в том, что глобальному скрипту надо передавать IP и порт HOST2. IP предполагалось брать из {HOST.CONN}, порт указан в макросе HOST2 {$PORT}

    Создал действие:
    Условие: "Триггер HOST1 - ALARM: ПРОБЛЕМА", в операции:
    Операция:
    Тип операции: удалённая команда;
    Цель: HOST2
    Тип: глобальный скрипт (вида '/path/script.sh {HOST.CONN} {$PORT}')

    При отладке обнаруживается, что параметры {HOST.CONN} и {$PORT} берутся с HOST1, т.е. с устройства, на котором сработал триггер. Порт пустой, т.к. у HOST1 нет макроса {$PORT}.

    Собственно, в этом и проблема. Как дать Заббиксу понять, что в глобальном скрипте мне нужны параметры с HOST2?
    Last edited by omgiafs; 13-12-2017, 12:02.
  • Semiadmin
    Senior Member
    • Oct 2014
    • 1625

    #2
    Originally posted by omgiafs
    Как дать Заббиксу понять, что в глобальном скрипте мне нужны параметры с HOST2?
    Боюсь, что по-хорошему дать ему это понять не получится. IMHO, все подстановки значений макросов происходят до того, как выбирается целевой хост для запуска скрипта. Поэтому он уже никак на них не влияет.
    Так что надо или упоминать целевой хост в условии триггера (минус в том, что триггер нельзя будет сделать шаблонным, т.к. в нем будут участвовать 2 хоста), или в явном виде указывать ip и порт целевого хоста в макросах того хоста (или примененного к нему шаблона), на котором срабатывает триггер.

    Comment

    • omgiafs
      Junior Member
      • Dec 2017
      • 12

      #3
      Originally posted by semiadmin
      Так что надо или упоминать целевой хост в условии триггера (минус в том, что триггер нельзя будет сделать шаблонным, т.к. в нем будут участвовать 2 хоста), или в явном виде указывать ip и порт целевого хоста в макросах того хоста (или примененного к нему шаблона), на котором срабатывает триггер.
      Спасибо.
      Я после написания своего сообщения думал именно в этом направлении. Просто была мысль - вдруг я просмотрел какое-то простое решение?

      Comment

      Working...