Ad Widget

Collapse

Макросы в элементах данных Zabbix 3+

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Mixasik
    Junior Member
    • Oct 2016
    • 3

    #1

    Макросы в элементах данных Zabbix 3+

    Добрый день!
    Имееться проблема с использованием макросов в элементах данных.
    Узел имеет 2 ИП адреса.
    На узле создан элементы icmppingsec[{HOST.CONN1}] и icmppingsec[{HOST.CONN2}]

    До обновления на 3.0 и 3.2, данные по пингам успешно записывались.
    После обновления элемент данных стал не поддерживаемым, в лог сервера выводиться fping failed: {HOST.CONN1}: Name or service not known.

    Т.е. макрос больше не переводиться в знечение ИП.

    Есть какие идеи как вернуть работу макроса на 3+?
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by mixasik
    Добрый день!
    Имееться проблема с использованием макросов в элементах данных.
    Узел имеет 2 ИП адреса.
    На узле создан элементы icmppingsec[{host.conn1}] и icmppingsec[{host.conn2}]

    До обновления на 3.0 и 3.2, данные по пингам успешно записывались.
    После обновления элемент данных стал не поддерживаемым, в лог сервера выводиться fping failed: {host.conn1}: Name or service not known.

    Т.е. макрос больше не переводиться в знечение ИП.

    Есть какие идеи как вернуть работу макроса на 3+?
    host.conn1 и host.conn2 это не первый и второй адрес узла, это адрес первого и второго узла встречающегося в триггере.

    Comment

    • Kos
      Senior Member
      Zabbix Certified SpecialistZabbix Certified Professional
      • Aug 2015
      • 3404

      #3
      Подобная тема с макросом {HOST.IP2} обсуждалась пару месяцев назад.

      Comment

      • Mixasik
        Junior Member
        • Oct 2016
        • 3

        #4
        Originally posted by yukra
        host.conn1 и host.conn2 это не первый и второй адрес узла, это адрес первого и второго узла встречающегося в триггере.
        Не только, также в документации сказано "→ Параметры ключей элементов данных"

        А это и есть параметры пинга в элементе данных.

        Comment

        • Mixasik
          Junior Member
          • Oct 2016
          • 3

          #5
          Originally posted by kos
          Подобная тема с макросом {host.ip2} обсуждалась пару месяцев назад.
          Да прочитал, но ответа там тоже нету.
          Там говарят что только в тригерах, хотя из документации указано и про параметры элементов данных.

          Comment

          • glebs.ivanovskis
            Senior Member
            • Jul 2015
            • 237

            #6
            Уже прозвучали слова, что {host.ip1} и {host.ip2} - это адреса хостов, которым принадлежат первый и второй элемент данных в триггерном выражении.

            В ключах доступен только {host.ip} (без индекса). Должен Вас опечалить, Ваши icmppingsec[{HOST.CONN1}] и icmppingsec[{HOST.CONN2}] пинговали один и тот же адрес.

            Comment

            • Kos
              Senior Member
              Zabbix Certified SpecialistZabbix Certified Professional
              • Aug 2015
              • 3404

              #7
              Originally posted by glebs.ivanovskis
              Уже прозвучали слова, что {host.ip1} и {host.ip2} - это адреса хостов, которым принадлежат первый и второй элемент данных в триггерном выражении.

              В ключах доступен только {host.ip} (без индекса). Должен Вас опечалить, Ваши icmppingsec[{HOST.CONN1}] и icmppingsec[{HOST.CONN2}] пинговали один и тот же адрес.
              Глеб, спасибо за разъяснения.
              Однако, в документации действительно в описании макросов {HOST.CONN<1-9>}, {HOST.IP<1-9>} и им подобных говорится, что они допустимы в параметрах ключей элементов данных, и в имеющихся примечаниях ничего не говорится о том, что в таком случае индексы просто игнорируются. Может, имеет смысл явно это отметить в примечаниях?

              Comment

              • glebs.ivanovskis
                Senior Member
                • Jul 2015
                • 237

                #8
                Originally posted by kos
                Глеб, спасибо за разъяснения.
                Однако, в документации действительно в описании макросов {host.conn<1-9>}, {host.ip<1-9>} и им подобных говорится, что они допустимы в параметрах ключей элементов данных, и в имеющихся примечаниях ничего не говорится о том, что в таком случае индексы просто игнорируются. Может, имеет смысл явно это отметить в примечаниях?
                В самом верху страницы вроде бы написано:
                note that the numbered macro syntax of {macro<1-9>} is used to reference hosts in the order in which they appear in a trigger expression...
                И даны какие-то примеры. Либо этого недостаточно, либо всех сбивает с толку "<1-9>".

                Согласен, что документация по макросам сложная и непонятная. Но и с точки зрения разработчика дело обстоит не лучше

                Comment

                • Kos
                  Senior Member
                  Zabbix Certified SpecialistZabbix Certified Professional
                  • Aug 2015
                  • 3404

                  #9
                  Originally posted by glebs.ivanovskis
                  В самом верху страницы вроде бы написано: И даны какие-то примеры. Либо этого недостаточно, либо всех сбивает с толку "<1-9>".
                  Да, именно что сбивает. Если про триггеры более-менее понятно, то что должны означать эти индексы в именах макро при их применении в ключах элементов данных - совершенно неочевидно. Интуитивно кажется (т.е. так было бы логично), что в этом случае индексы относились бы к соответствующему интерфейсу.

                  Я зарегистировал баг-репорт на эту тему - надеюсь, что подправить документацию парой уточняющих фраз будет не очень сложно.

                  Comment

                  Working...