Ad Widget

Collapse

Как в в ключе элемента данных прописать имя узла сети

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • nom77
    Member
    • Mar 2017
    • 34

    #1

    Как в в ключе элемента данных прописать имя узла сети

    Получаю кучу одинаковых параметров по комнатам типо тепрература, влажность итд, тип в элементе данных Zabbix траппер
    они посылаются активным агентом заббикс по ключам вида Bedroom.Temperature
    где сначала идет имя узла сети добавленного в заббикс, потом точка, потом имя передаваемого параметра

    Я хочу создать шаблон, чтобы можно было добавлять новую комнату, к ней шаблон и в имени ключа просто подменялось название комнаты, которое соответствует имени узла сети
    При создании элемента данных если в ключе написать {HOST.NAME}.Temperature
    выдает ошибку
    • Ошибочный ключ "{HOST.NAME}.Temperature" для элемента данных "Temperature" у "Sensor": некорректный синтаксис около "{HOST.NAME}.Temperature".
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    А для чего, если не секрет, вам понадобилось добавлять имя хоста (узла сети) как часть ключа? По-моему, Вы этим только усложняете себе жизнь.

    Comment

    • nom77
      Member
      • Mar 2017
      • 34

      #3
      ну я же вроде все расписал для чего
      от активного забикс агента с сервера мне идут данные с такими именами


      Bedroom.Temperature
      Cabinet.Temperature
      Bedroom.Humidity
      Cabinet.Humidity

      9 разных метрик для каждой комнаты​
      забикс читает данные только если в имени ключа будет написано например Bedroom.Temperature

      То есть первая часть имени это имя комнаты, вторая имя параметра, если сделать шаблон на элемент данных с именем ключа
      {HOST.NAME}.Temperature
      то можно добавлять только название комнаты например Cabinet, и для нее будут запрашиватся нужные элементы данных с нужными ключамит
      Если Zabbix не может почему то в ключе прописать имя узла, то надо будет создавать для каждой комнаты отдельно элемент данных с уникальным ключом
      то есть все шаблоны просто бесполезны и надо все вбивать руками каждую метрику

      как по другому это решить, если заббикс не может в имени ключа подставить имя узла ?
      сервер который отдает параметры может задать любое имя для любого параметра например пусть будет Cabinet-Temperature но суть это не изменит, имя отдельного параметра всегда будет уникальным для каждой комнаты
      Last edited by nom77; 21-03-2023, 13:29.

      Comment

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

        #4
        Кажется, Вы начали с того, что у вас используются элементы данных Zabbix траппер.
        То есть, данные в них, вероятно, отсылаются каким-то скриптом при помощи вызова утилиты zabbix_sender (или какого-то другого механизма, реализующего тот же функционал).
        При вызове zabbix_sender-а для каждого отсылаемого элемента данных указывается как имя хоста, так и ключ. Поэтому для меня неясно, зачем это имя хоста дублировать ещё и в ключе.

        В любом случае, чтобы использовать шаблон, нужно иметь несколько хостов с одинаковым набором элементов данных. То есть, по отдельному хосту для каждой комнаты, где в шаблоне перечислены ваши "9 разных метрик для каждой комнаты​". Если вы пытаетесь дополнительно к этому на каждом хосте иметь ещё и разные ключи, то не получаете от этого никакой выгоды, а только дополнительную головную боль - как это обеспечить.

        Comment

        • nom77
          Member
          • Mar 2017
          • 34

          #5
          вот так сервер посылает данные в забикс
          pushToZabbix("Cabinet","Cabinet.Temperature",IR.Ge tVariable("Server.Tags.KNX IP Router.Температура_Кабинет"));

          IR.GetVariable("Server.Tags.KNX IP Router.Температура_Кабинет") это показатель температуры с датчика

          к забиксу относиться только вот эта часть
          pushToZabbix("Cabinet","Cabinet.Temperature"

          то есть предлагаете слать вот так
          pushToZabbix("Cabinet","Temperature"

          или я что не так понял ?

          Comment

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

            #6
            Originally posted by nom77
            pushToZabbix("Cabinet","Temperature"

            или я что не так понял ?
            Да, совершенно верно.
            Набор ключей на разных хостах (по хосту для каждой комнаты) будет идентичным, и его можно без проблем вынести в шаблон.

            Comment

            • nom77
              Member
              • Mar 2017
              • 34

              #7
              сделал как вы сказали все работает! Но только теперь элементы данных для комнаты имеют такой вид

              то есть непонятно что это за показатель, в названии элемента данных {HOST.NAME}
              это никак не обойти ?
              если зайти в настройки элемента данных то там понятно сразу видно по ключу к чему относиться этот показатель
              Last edited by nom77; 21-03-2023, 19:04.

              Comment

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

                #8
                Originally posted by nom77
                Но только теперь элементы данных для комнаты имеют такой вид
                А зачем у вас в названиях (т.е. не в ключе, а в имени) всех элементов данных прописано одно и то же (макрос {HOST.NAME}​​)?
                Этому макросу там вообще делать нечего. Пропишите туда разумные имена: температура, влажность и т.д., - и будет вам счастье. Можно даже по-русски писать, прекрасно отображается.

                Comment

                • nom77
                  Member
                  • Mar 2017
                  • 34

                  #9
                  Все работает спасибо! я почему то думал что имя элемента данных имеет значение при получении данных.

                  Comment

                  Working...