Ad Widget

Collapse

Api получение активных тригеров

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • AlexSt
    Member
    • Aug 2012
    • 43

    #1

    Api получение активных тригеров

    Здравствуйте, подскажите пожалуйста как с помощью zabbix API получить список активных тригеров.

    мой код
    PHP Code:
    <?php
    require '/var/www/zabbix/include/ZabbixApiAbstract.class.php';
    require 
    '/var/www/zabbix/include/ZabbixApi.class.php';
    $api = new ZabbixApi('http://localhost/api_jsonrpc.php''admin''zabbix');
    $triggers $api->triggerGet(array('active'=> 1));
    print_r($triggers);
    ?>
    но получаю полный список тригеров. что не так?
    Last edited by AlexSt; 11-07-2014, 08:31.
  • Jimson
    Senior Member
    • Jan 2008
    • 1327

    #2
    active это флаг обозначающий что триггер "включен", что он обсчитывается.
    То что вы хотите видимо называется only_true в API.

    Comment

    • AlexSt
      Member
      • Aug 2012
      • 43

      #3
      Originally posted by Jimson
      active это флаг обозначающий что триггер "включен", что он обсчитывается.
      То что вы хотите видимо называется only_true в API.
      вы хотите сказать что вместо 1 нужно only_true ?
      Немогли бы вы привести конкретный пример, именно php
      Last edited by AlexSt; 11-07-2014, 09:36.

      Comment

      • AlexSt
        Member
        • Aug 2012
        • 43

        #4
        я в json немного нешарю, можете подсказать как быть, я понимаю как передаются данные по средствам массивов в json и объектов, но мне нужен код. чтобы до конца понять, скажем так, я вижу массив в документации, но не вижу как его собрать в php

        Comment

        • Jimson
          Senior Member
          • Jan 2008
          • 1327

          #5
          Originally posted by AlexSt
          вы хотите сказать что вместо 1 нужно only_true ?
          Немогли бы вы привести конкретный пример, именно php
          Нет, "немогли бы". Я открыл документацию

          и прочитал
          Parameter Type Description
          active flag Return only enabled triggers that belong to monitored hosts.
          Вы хотели получить список "включенных" триггеров или триггеров в состоянии "проблема"?

          P.S. Массив это просто список, через запятую, значений заключенный в квадратные кавычки.
          Last edited by Jimson; 11-07-2014, 11:07.

          Comment

          • AlexSt
            Member
            • Aug 2012
            • 43

            #6
            Да именно так, хотел получить список активных тригеров
            Ну с массивами я с вами не согласен, например массив array('bla','bla',1,array('bbb'=>1,'bb3'=>'1'));
            вложенный массив, приведите пример по данному вопросу, я вижу что вы профи
            Last edited by AlexSt; 11-07-2014, 11:14.

            Comment

            • Jimson
              Senior Member
              • Jan 2008
              • 1327

              #7
              Originally posted by alexst
              Да именно так, хотел получить список активных тригеров
              А в чем тогда проблема? В результате присутсвуют деактивированные триггеры или триггеры на деактивированных хостах?
              Originally posted by AlexSt
              приведите пример по данному вопросу, я вижу что вы профи
              В чем? В php? В классе ZabbixApi написанного кем то из community?
              Вы ошибаетесь, я не знаю php.

              P.S. zabbix api это JSON PRC, вы можете просто задампить (tcpdump/wireshark) трафик между вашей рабочей машиной, на которой запускается скрипт, и сервером и вы должны увидеть JSON запросы в том виде в котором описанно в документации. Если формат JSON будет отличаться, то разбирайтесь что вы не так делаете с классом ZabbixApi.
              Last edited by Jimson; 11-07-2014, 11:19.

              Comment

              • AlexSt
                Member
                • Aug 2012
                • 43

                #8
                Originally posted by jimson
                А в чем тогда проблема? В результате присутсвуют деактивированные триггеры или триггеры на деактивированных хостах?
                я конкретный вопрос задал в посте, если вы можете ответить, то пожалуйста, нет , не разводите тролинг

                Comment

                • AlexSt
                  Member
                  • Aug 2012
                  • 43

                  #9
                  Originally posted by jimson
                  А в чем тогда проблема? В результате присутсвуют деактивированные триггеры или триггеры на деактивированных хостах?

                  В чем? В php? В классе zabbixapi написанного кем то из community?
                  Вы ошибаетесь, я не знаю php.

                  P.s. Zabbix api это json prc, вы можете просто задампить (tcpdump/wireshark) трафик между вашей рабочей машиной, на которой запускается скрипт, и сервером и вы должны увидеть json запросы в том виде в котором описанно в документации. Если формат json будет отличаться, то разбирайтесь что вы не так делаете с классом zabbixapi.
                  я вот тоже не разбираюсь, у вас хотел спросить

                  Comment

                  • Zentarim
                    Senior Member
                    • Mar 2012
                    • 526

                    #10
                    Originally posted by alexst
                    я конкретный вопрос задал в посте, если вы можете ответить, то пожалуйста, нет , не разводите тролинг
                    То что вы хотите видимо называется only_true в api.
                    Вам уже ответили. Причем первым же постом.

                    На всякий случай дока:


                    там по-моему четко поясняется, за что отвечает active, а за что only_true
                    Last edited by Zentarim; 11-07-2014, 11:31.

                    Comment

                    • AlexSt
                      Member
                      • Aug 2012
                      • 43

                      #11
                      Originally posted by Zentarim
                      Вам уже ответили. Причем первым же постом.

                      На всякий случай дока:


                      там по-моему четко поясняется, за что отвечает active, а за что only_true
                      Я задал конкретный вопрос. то что ты мне скинул я перечитал, я понимаю как это работает. как сделать на php? пример мне нужен, ещё один троливали. чтобы небыло тролинга, дайте ответ php кодом
                      Last edited by AlexSt; 11-07-2014, 11:37.

                      Comment

                      • AlexSt
                        Member
                        • Aug 2012
                        • 43

                        #12
                        Originally posted by jimson
                        А в чем тогда проблема? В результате присутсвуют деактивированные триггеры или триггеры на деактивированных хостах?

                        В чем? В php? В классе zabbixapi написанного кем то из community?
                        Вы ошибаетесь, я не знаю php.

                        P.s. Zabbix api это json prc, вы можете просто задампить (tcpdump/wireshark) трафик между вашей рабочей машиной, на которой запускается скрипт, и сервером и вы должны увидеть json запросы в том виде в котором описанно в документации. Если формат json будет отличаться, то разбирайтесь что вы не так делаете с классом zabbixapi.
                        Придется дампить, пасибо

                        Comment

                        • Zentarim
                          Senior Member
                          • Mar 2012
                          • 526

                          #13
                          Originally posted by AlexSt
                          Здравствуйте, подскажите пожалуйста как с помощью zabbix API получить список активных тригеров.

                          мой код
                          PHP Code:
                          <?php
                          require '/var/www/zabbix/include/ZabbixApiAbstract.class.php';
                          require 
                          '/var/www/zabbix/include/ZabbixApi.class.php';
                          $api = new ZabbixApi('http://localhost/api_jsonrpc.php''admin''zabbix');
                          $triggers $api->triggerGet(array('active'=> 1));
                          print_r($triggers);
                          ?>
                          но получаю полный список тригеров. что не так?
                          Код вы написали. И сами указали, что список триггеров вы получаете. Только попутали active и only_true. Что непонятно? Или вы хотите получить в ответ полностью рабочее приложение? Если да, то хамить в ответ - не самая лучшая идея.

                          Comment

                          • AlexSt
                            Member
                            • Aug 2012
                            • 43

                            #14
                            я не в коем случае не хамил, я понял что нужно сделать, ну как вариант вы бы могли дать мой поравленый код, а не гребаные намеки

                            Comment

                            • AlexSt
                              Member
                              • Aug 2012
                              • 43

                              #15
                              Спасибо! извините если вы поняли мои слова как хамство

                              Comment

                              Working...