Ad Widget

Collapse

Создание триггеров из json данных

Collapse
This topic has been answered.
X
X
 
  • Time
  • Show
Clear All
new posts
  • SaVa_20
    Junior Member
    • Nov 2024
    • 8

    #1

    Создание триггеров из json данных

    Привет!
    Есть переменная ray[DiscoveredLED], которая содержит данные в формате json
    {
    "CV_His": 2,
    "ALS": 10,
    "OCV": 0
    }
    Пытаюсь создать триггера, которые зависят от значения данных переменных.
    Создаю выражение jsonpath(last(/MUX1 by SNMP/ray[DiscoveredLED],"$'{CV_His}'")<>0, но ругается "Cannot evaluate expression: invalid object format, expected opening character "
    Явно что-то не так с синтаксисом, но не могу понять что.
  • Answer selected by SaVa_20 at 06-11-2024, 18:46.
    SaVa_20
    Junior Member
    • Nov 2024
    • 8

    Originally posted by Kos
    С этого момента подробнее, пожалуйста. Каким образом вы тестируете триггер?
    Я тормоз. По привычки значение указывал уже как значение переменной. Всё равботает.
    Click image for larger version

Name:	image.png
Views:	63
Size:	20.4 KB
ID:	493892

    Comment

    • Hamardaban
      Senior Member
      Zabbix Certified SpecialistZabbix Certified Professional
      • May 2019
      • 2713

      #2
      jsonpath(last(/MUX1 by SNMP/ray[DiscoveredLED],"$.CV_His")<>0

      Comment

      • SaVa_20
        Junior Member
        • Nov 2024
        • 8

        #3
        Originally posted by Hamardaban
        jsonpath(last(/MUX1 by SNMP/ray[DiscoveredLED],"$.CV_His")<>0
        К сожалению, результат тот же "Cannot evaluate expression: invalid object format, expected opening character '{' or '[' at: '0'"

        Comment

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

          #4
          Я один вижу в вашем выражении две открывающих круглых скобки и только одну закрывающую?

          Comment

          • SaVa_20
            Junior Member
            • Nov 2024
            • 8

            #5
            Originally posted by Kos
            Я один вижу в вашем выражении две открывающих круглых скобки и только одну закрывающую?
            Вы правы, скобка потерялась при копированиях, но изначально она есть и проблема с ней.
            jsonpath(last(/MUX1 by SNMP/ray[DiscoveredLED]),"$.CV_His")<>0

            Comment

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

              #6
              Покажите, пожалуйста, скриншот того, как выглядят приходящие данные на экране "Последние данные" (Monitoring -> Latest data).

              Comment

              • SaVa_20
                Junior Member
                • Nov 2024
                • 8

                #7
                Originally posted by Kos
                Покажите, пожалуйста, скриншот того, как выглядят приходящие данные на экране "Последние данные" (Monitoring -> Latest data).
                {"CV_His":2,"ALS":10,"OCV":0,"RUN":0,"E_6_A":0,"LO F_A":0,"RPD_A":0,"NOP_A":0,"E_6_B":0,"LOF_B":0,"RP D_B":0,"NOP_B":0,"E1_LOS_13":0,"E1_LOS_9":0,"E1_LO S_5":0,"E1_LOS_1":0,"E1_LOS_14":0,"E1_LOS_10":1,"E 1_LOS_6":0,"E1_LOS_2":0,"E1_LOS_15":0,"E1_LOS_11": 2,"E1_LOS_7":0,"E1_LOS_3":0,"E1_LOS_16":0,"E1_LOS_ 12":0,"E1_LOS_8":0,"E1_LOS_4":0}

                Comment

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

                  #8
                  Спасибо, конечно, только это не скриншот.
                  В сообщении об ошибке идёт ругань на то, что значение начинается не с символа открывающей скобки (фигурной или квадратной); хотелось бы убедиться в том, как реально сервер Zabbix видит это значение и что за символы находятся в его начале. Возможно, там есть что-то ещё (кавычки, пробелы и т.п.), а "замыленный" глаз просто не обращает на них внимание.

                  Comment

                  • SaVa_20
                    Junior Member
                    • Nov 2024
                    • 8

                    #9
                    Originally posted by Kos
                    Спасибо, конечно, только это не скриншот.
                    В сообщении об ошибке идёт ругань на то, что значение начинается не с символа открывающей скобки (фигурной или квадратной); хотелось бы убедиться в том, как реально сервер Zabbix видит это значение и что за символы находятся в его начале. Возможно, там есть что-то ещё (кавычки, пробелы и т.п.), а "замыленный" глаз просто не обращает на них внимание.
                    Просто не понял зачем именно скрин, но вот так

                    Click image for larger version

Name:	image.png
Views:	66
Size:	6.0 KB
ID:	493830

                    Comment

                    • Hamardaban
                      Senior Member
                      Zabbix Certified SpecialistZabbix Certified Professional
                      • May 2019
                      • 2713

                      #10
                      В порядке бреда :

                      А в последних данных нет случайно пустых строк или сообщений каких нибудь? Данные всегда json? В логах сервера есть сообщения относящиеся к этому элементу данных?

                      Сообщение об ошибке возникает при создании триггера в процессе LLD ? Попробуйте окружить json квадратными скобками сделав из него массив из одного элемента.
                      Last edited by Hamardaban; 06-11-2024, 07:30.

                      Comment

                      • SaVa_20
                        Junior Member
                        • Nov 2024
                        • 8

                        #11
                        Originally posted by Hamardaban
                        В порядке бреда :

                        А в последних данных нет случайно пустых строк или сообщений каких нибудь? Данные всегда json? В логах сервера есть сообщения относящиеся к этому элементу данных?

                        Сообщение об ошибке возникает при создании триггера в процессе LLD ? Попробуйте окружить json квадратными скобками сделав из него массив из одного элемента.
                        1. Случайных нет, всё стабильно и без косяков.
                        2. Данные всегда json, т.к. формируются скриптом js.
                        3. В логах чисто.
                        4.Сообщение возникает при тестировании триггера.
                        Попробую сделать массив, хотя по доке и так должно работать.

                        Comment

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

                          #12
                          Originally posted by SaVa_20
                          Сообщение возникает при тестировании триггера.
                          С этого момента подробнее, пожалуйста. Каким образом вы тестируете триггер?

                          Comment

                          • Alex_UUU
                            Senior Member
                            • Dec 2018
                            • 541

                            #13
                            Кстати, я не заметил главного вопрос: А версия какая? вроде бы jsonpath только в семерке появился.

                            Comment

                            • SaVa_20
                              Junior Member
                              • Nov 2024
                              • 8

                              #14
                              Originally posted by Kos
                              С этого момента подробнее, пожалуйста. Каким образом вы тестируете триггер?
                              Я тормоз. По привычки значение указывал уже как значение переменной. Всё равботает.
                              Click image for larger version

Name:	image.png
Views:	63
Size:	20.4 KB
ID:	493892

                              Comment

                              Working...