Ad Widget

Collapse

Пользовательские макросы

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • akam
    Junior Member
    • Sep 2011
    • 22

    #1

    Пользовательские макросы

    Здравствуйте, пробую использовать пользовательские макросы.
    В хосте добавил макросы {$SHOP_ID} и {$VOIP}, создал элементы cartridge.sh[quantity {$SHOP_ID}] и cartridge.sh[onroad {$SHOP_ID}] которые берут данные из БД согласно значениям макроса. Тут все работает, данные собираются.

    Создаю действие Выполнить удаленную команду:
    pbx: sudo sed -e "s/NUM/{$VOIP}/g" /etc/zabbix/call/cartridge.call > /tmp/cart_call_{$VOIP}
    pbx: sudo chown asterisk:asterisk /tmp/cart_call_{$VOIP}
    pbx: sudo mv /tmp/cart_call_{$VOIP} /var/spool/asterisk/outgoing/
    pbx: sudo echo "{TRIGGER.NAME}: {TRIGGER.STATUS}: {$VOIP} {SHOP_ID}" > /tmp/11111

    и вот в этом действии эти макросы не заменяются на значения, проставленные в параметрах хоста
    в файле (созданном для проверки) 11111 такая запись:
    Картридж, оповещение: PROBLEM: {} {SHOP_ID}
    То есть встроенные макросы работают, а пользовательские не работают.

    Подскажите пожалуйста в чем может быть причина?
    Linux mainhost 2.6.37-gentoo-r4 #1 SMP Tue Apr 19 10:14:09 MSD 2011 x86_64 Intel(R) Xeon(R) CPU E5405 @ 2.00GHz GenuineIntel GNU/Linux
    zabbix-1.8.5 (обновлял до 1.8.6 - без результатно, обновлял до 1.8.7 - краш)
  • akam
    Junior Member
    • Sep 2011
    • 22

    #2
    Обновился до 1.8.8 проблема осталась(

    Comment

    • gdgsoft
      Senior Member
      • Apr 2009
      • 202

      #3
      Если я все правильно понял, то не так!

      Вам нужно все ваши команды закинуть в некий скрипт, и положить его в каталог, который указан в параметре ExternalScript или что то такое(под рукой забикса нет) в конфигурационном файле zabbix_server.cfg
      Дать этому скрипту права на исполнение для пользователя zabbix (я так делаю).

      После этого создать элемент (тип не помню) с именем скрипта в таком виде:
      script_name.php[{$SHOP_ID} {$VOIP}]

      По идее, в параметрах argv[2] argv[3] будут ваши {$SHOP_ID} и {$VOIP}.
      Zabbix 2.4.2
      PHP 5.4.5
      Oracle Linux 6.5
      VmWare ESXi 4

      MariaDB 10.0.15
      Oracle Linux 6.5
      Supermicro SYS-6027TRF(64Gb+RAID-10 600Gb SAS15k)

      Comment

      • akam
        Junior Member
        • Sep 2011
        • 22

        #4
        Вы описали сбор данных. Элементы у меня работают без проблем, макросы заменяются значениями, сбор данных идет.

        Проблема возникает только при выполнении удаленной команды.

        (Вопрос все еще актуален )

        Comment

        • Legat
          Junior Member
          • Oct 2011
          • 6

          #5
          Пользовательские макросы могут быть использованы в ключах элементов данных и в выражениях триггеров. Начиная с Zabbix версии 1.8.4 пользовательские макросы так же возможно использовать в описаниях элементов данных и в именах триггеров.
          В Оповещениях и командах, Оповещениях обнаружения, Оповещениях авторегистрации, GUI скрипты, Подписи на картах1 - нет.

          http://www.zabbix.com/documentation/...B5%D1%82%D0%B8

          Comment

          Working...