Ad Widget

Collapse

Calculated items для внешнего скрипта

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • rogger
    Junior Member
    • May 2015
    • 21

    #1

    Calculated items для внешнего скрипта

    Коллеги, добрый день.

    Возникла необходимость сделать расчитываеме элементы (calculated items) на основе данных, которые получаются внешним скриптом.
    Мне надо получить процент успешных сообщений, поделив один элемент на другой. Причем для snmp данных это не проблема, а вот с внешним скриптом не завелось...
    Ни один из способов, которыми я пробовал это сделать достичь цели не получилось.
    Может кто-нибудь сталкивался и подскажет куда копать? Нашел один тред, где указывалось, что все макросы надо указать явно (типа логинов\паролей). Но явное указание тоже не помогло.
  • rough-84
    Senior Member
    • Oct 2014
    • 198

    #2
    Как вариант, если в айтеме в квадратных скобках присутствует знак(и) ", в calculated он должен быть всегда идти за знаком \

    Comment

    • sadman
      Senior Member
      • Dec 2010
      • 1611

      #3
      Originally posted by rogger
      Коллеги, добрый день.
      Мне надо получить процент успешных сообщений, поделив один элемент на другой. Причем для snmp данных это не проблема, а вот с внешним скриптом не завелось...
      Ни один из способов, которыми я пробовал это сделать достичь цели не получилось.
      Может кто-нибудь сталкивался и подскажет куда копать? Нашел один тред, где указывалось, что все макросы надо указать явно (типа логинов\паролей). Но явное указание тоже не помогло.
      "Мне нужно из двух чисел сделать третье, но ничего не получается, хотя одним способом вроде бы не проблема, да и где-то в интернете я прочел, что нужно окропить солёненьким только все без толку. Как сделать мне хорошо?" - примерно вот так я вижу ваше сообщение.

      Хотите какого-то ответа? Не заставляйте гадать - просто пишите: такой вот скрипт, выдает так и так, забираю в айтем так-то, делю на вот это, в итоге получается -0. Неужели сложно?

      Comment

      • rogger
        Junior Member
        • May 2015
        • 21

        #4
        Originally posted by rough-84
        Как вариант, если в айтеме в квадратных скобках присутствует знак(и) ", в calculated он должен быть всегда идти за знаком \
        Спасибо. Пробовал, не помогает

        Comment

        • rough-84
          Senior Member
          • Oct 2014
          • 198

          #5
          Ну напишите сюда полностью ваш calculated item. Посмотрим, и интересно что пишет в ошибке.

          Comment

          • rogger
            Junior Member
            • May 2015
            • 21

            #6
            Originally posted by sadman
            "Мне нужно из двух чисел сделать третье, но ничего не получается, хотя одним способом вроде бы не проблема, да и где-то в интернете я прочел, что нужно окропить солёненьким только все без толку. Как сделать мне хорошо?" - примерно вот так я вижу ваше сообщение.

            Хотите какого-то ответа? Не заставляйте гадать - просто пишите: такой вот скрипт, выдает так и так, забираю в айтем так-то, делю на вот это, в итоге получается -0. Неужели сложно?
            Так я осознано не писал, как делал, хотел чтобы кто-то новое что подсказал

            В общем пробовал так - такой Item по внешнему скрипту
            ssh["-u","{$LOGIN}","-p","{$PASS}","-c","show int eth1/1","-f","10"]

            Пробовал сделать calculated в таких вариантах:
            ssh["-u","{$LOGIN}","-p","{$PASS}","-c","show int eth1/1","-f","10"]
            ssh["-u","user","-p","password","-c","show int eth1/1","-f","10"]
            ssh["-u","{$LOGIN}","-p","{$PASS}","-c","show int eth1/1","-f","10"].last()
            ssh["-u","user","-p","password","-c","show int eth1/1","-f","10"].last()
            last(ssh["-u","{$LOGIN}","-p","{$PASS}","-c","show int eth1/1","-f","10"])
            last(ssh["-u","user","-p","password","-c","show int eth1/1","-f","10"])

            Пробовал экранировать кавычки для каждого варианта, но тоже не работает.

            Но каждый из них выдает ошибку
            Cannot evaluate function "last()": item "msk-12-501[\"-i\"" does not exist.
            или
            Cannot evaluate expression: expected numeric token at "ssh["-u","user","-p","password","-c","show int eth1/1","-f","10"]"
            Last edited by rogger; 05-06-2015, 13:53.

            Comment

            • rough-84
              Senior Member
              • Oct 2014
              • 198

              #7
              Ну ок
              пробуйте для начала создать просто

              last("ssh[\"-u\",\"{$LOGIN}\",\"-p\",\"{$PASS}\",\"-c\",\"show int eth1/1\",\"-f\",\"10\"]")

              туплю

              last("host:ssh[\"-u\",\"{$LOGIN}\",\"-p\",\"{$PASS}\",\"-c\",\"show int eth1/1\",\"-f\",\"10\"]")
              Last edited by rough-84; 05-06-2015, 14:26.

              Comment

              • rogger
                Junior Member
                • May 2015
                • 21

                #8
                Originally posted by rough-84
                Ну ок
                ssh - это имя компа, да ?
                пробуйте для начала создать просто

                last("ssh[\"-u\",\"{$LOGIN}\",\"-p\",\"{$PASS}\",\"-c\",\"show int eth1/1\",\"-f\",\"10\"]")
                ssh - имя внешнего скрипта

                Большое спасибо за ответ, помогло убрать команду в кавычки внтури last().
                Заработало

                Comment

                • WarBull
                  Junior Member
                  • Feb 2012
                  • 26

                  #9
                  Подсчет напечатенных ситраниц с принтер&

                  Добрый день, Уважаемые коллеги!

                  Подскажи плиз - нужно подсчитать сколько страиц принтер печатает за месяц.

                  last(".1.3.6.1.2.1.43.10.2.1.4.1.1")-prev(".1.3.6.1.2.1.43.10.2.1.4.1.1") - Это сколько за день, где
                  .1.3.6.1.2.1.43.10.2.1.4.1.1 - количество отпечатков.
                  Раз в день я могу снимать значение, а раз в месяц как сделать? Там максимальное значение - 1 сутки (86400 с)?

                  Comment

                  • sadman
                    Senior Member
                    • Dec 2010
                    • 1611

                    #10
                    Давайте начнем с философских аспектов: в какой момент времени начинается ваш месяц и сколько в нем условных единиц (дней, часов, секунд, просто отсчетов)?

                    Как только вы для себя ответите на эти вопросы, посмотрите на функцию sum().

                    Comment

                    Working...