Ad Widget

Collapse

создание прототипов эл. данных по условию

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • undisSss
    Junior Member
    • Apr 2014
    • 26

    #1

    создание прототипов эл. данных по условию

    Такая проблема: обнаружение возвращающее 2 значения, одно это название устройства, а второе, это список эллементов данных, которые можно к этому устройству присвоить. Так же в обнаружении есть прототипы эллементов данных, которые по своему числу будет больше или равен списку эллементов данных, полученных от обнаружения.
    Мне надо, чтобы к устройству были добавлены только те прототипы эллементов данных, которые выдаются в списке, а которых там нет - не добавлялись.
    Как можно такой сценарий обыграть?
    Понимаю что можно без всяких списков долбавлять все возможные, но тогда часть будет с ошибками, а мне бы этого не хотелось. И в ручную отключать или включать нужные это будет практически невозможно
  • Jimson
    Senior Member
    • Jan 2008
    • 1327

    #2
    LLD? Или я не так понял вопрос?

    Comment

    • undisSss
      Junior Member
      • Apr 2014
      • 26

      #3
      Lld я и использую. Только получается не все прототипы эллементов данных я к каждому обнаруженному устройству смогу добавить, т.е добавить смогу все, но работать будет из них только часть, а остальные будут ошибку возвращать.
      При выполнении обнаружения я могу вернуть еще список необходимых ему эллементов данных, но возможности добавить только эти эллементы данных я не нашел сам, по этому и прошу помощи

      Comment

      • Jimson
        Senior Member
        • Jan 2008
        • 1327

        #4
        Сделайте не одно правило, а несколько. В шаблоне соответственно у вас будет 2 или более правил, каждое со своим набором прототипов.

        Comment

        • undisSss
          Junior Member
          • Apr 2014
          • 26

          #5
          Отличная мысль! Спасибо товарищ Jimson!
          Маленько не оптимизированно получается, но для моего случая самое подходящее решение

          Comment

          • undisSss
            Junior Member
            • Apr 2014
            • 26

            #6
            Еще такой вопрос:
            если LLD ничего не найдет, то в каком формате корректнее всего надо возвращать запрос? В документации ничего не нашел по этому вопросу, а на встроеных LLD (vfs.fs.discovery, net.if.discovery) я не смог придумать как это протестировать (т.е какие условия создать чтобы они ничего не вернули).

            Сейчас мои обнаружения, в случае если по указаным параметра ничего не находят, возвращают:
            {
            "data":]}

            Zabbix в ответ ругается:
            "Value should be a JSON object"

            Comment

            • undisSss
              Junior Member
              • Apr 2014
              • 26

              #7
              Разобрался, привел вывод при пустом возврате к виду:
              {
              "data":[]}

              Comment

              Working...