Ad Widget

Collapse

Lld + json + предобработка.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • itf1
    Junior Member
    • Sep 2018
    • 7

    #1

    Lld + json + предобработка.

    Добрый день.
    Прошу помощи разобраться с настройкой обнаружения LLD по JSON и последующего получения данных.
    Имеем JSON файл со следующим содержимым: {"data":[{"{#BUCKETNAME}":srv1","STATUS":1,"SIZE":1 000}]}
    Этот файл формирует утилита и отправляет на Zabbix сервер.

    В Zabbix в рамках тестирования для узла настроено обнаружение:
    Click image for larger version  Name:	2018-09-03_16-30-38.png Views:	1 Size:	15.5 KB ID:	365300
    Настроен прототип элемента данных со следующими параметрами:

    Click image for larger version  Name:	2018-09-03_16-35-14.png Views:	1 Size:	124.1 KB ID:	365301
    Click image for larger version  Name:	2018-09-03_16-35-33.png Views:	1 Size:	11.8 KB ID:	365302
    При отправке данных на сервер для узла создается item, но его значение пустое.

    Подскажите что сделано не так?
    Last edited by itf1; 03-09-2018, 15:57.
  • sadman
    Senior Member
    • Dec 2010
    • 1611

    #2
    Какое поведение Zabbix вы ожидаете?

    Comment

    • itf1
      Junior Member
      • Sep 2018
      • 7

      #3
      Originally posted by sadman
      Какое поведение Zabbix вы ожидаете?
      В значении item "Status" получить "1".

      Comment

      • sadman
        Senior Member
        • Dec 2010
        • 1611

        #4
        В таком случае необходимо создать некий корневой item с типом Trapper, в который будет периодически закидываться JSON с метриками и их значениями. Прототипы сделать зависимыми (depended) от корневого Item. Препроцессинг применен правильно.

        Операция Discovery и передача данных в item-ы - это разные задачи и они не решаются в рамках единого "броска" JSON-пакета в Zabbix.




        Last edited by sadman; 04-09-2018, 08:25. Reason: Битва с картинками

        Comment

        • itf1
          Junior Member
          • Sep 2018
          • 7

          #5
          Originally posted by sadman
          в таком случае необходимо создать некий корневой item с типом trapper, в который будет периодически закидываться json с метриками и их значениями. прототипы сделать зависимыми (depended) от корневого item. препроцессинг применен правильно.
          операция discovery и передача данных в item-ы - это разные задачи и они не решаются в рамках единого "броска" json-пакета в zabbix.
          правильно ли я вас понимаю, что в данном случае нам необходимо отправлять два раза json. в первом случае мы отправляем json для создания итемов (lld), а второй json в котором в качестве ключа уже будет указан ключ созданного ранее итема?

          Comment

          • sadman
            Senior Member
            • Dec 2010
            • 1611

            #6
            Да, это так. Во всяком случае - такой алгоритм существовал во всех версиях Zabbix, с которыми я работал.

            Comment

            • itf1
              Junior Member
              • Sep 2018
              • 7

              #7
              Спасибо за помощь, вроде разобрались.
              Создали root item и посылаем для него {"data":[{"{#BUCKETNAME}":"x-s8"}]}
              Создали подитемы и посылаем на них bucket.discovery[x-s8] {"data":[{"STATUS":"Success","SIZE":1000}]}
              В предпроцессинге сделали так $.data[0].STATUS

              Вдруг кому пригодиться.

              Comment

              Working...