Ad Widget

Collapse

Когда\как парсить трапы

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • prostrelov
    Senior Member
    • May 2012
    • 115

    #1

    Когда\как парсить трапы

    Настроен snmptt.

    Item: uploadspeedstand01
    Type of information: Log

    В него валится трап со значением скорости:
    11:38:34 2013/02/27 .1.3.6.1.4.1.777.1.1 Normal "General event" 127.0.0.1 - uploadspeedstand01 .1.3.6.1.4.1.777.1.1:значение скорости
    Из этого трапа нужно как-то выдёргивать "значение скорости" чтобы в дальнейшем иметь возможность строить график. То-есть Item с конечным значением должен быть НЕ текстовым.

    Сам Item uploadspeedstand01 никаких регулярных выражений содержать не может а значит возможности парсить текст полученного трапа на этом уровне нет.

    Тут предложили интересный вариант:
    каждому трапу прописать в snmptt.conf EXEC который будет вызывать zabbix_sender и складывать некое значение в Item-дублёр.
    Но возникает сложность. Ведь нам нужно выдернуть "значение скорости" из трапа и передать его както в EXEC.

    Если кто сталкивался подскажите как это реализовать или если есть - альтернативный способ.
  • dima_dm
    Senior Member
    • Dec 2009
    • 2697

    #2
    А в чем проблема в EXEC вставить скрипт, в скрипте распарсить строку, а потом вызвать zabbix_sender?

    Comment

    • prostrelov
      Senior Member
      • May 2012
      • 115

      #3
      а есть возможность как-то сразу передать трап в скрипт который будет парсить этот трап ? или придётся парсить весь snmptt.log

      Comment

      • dima_dm
        Senior Member
        • Dec 2009
        • 2697

        #4
        Читайте описание Format
        http://snmptt.sourceforge.net/docs/s...PTT.CONF-EVENT
        Там указаны все переменные, которые можно передать в скрипт.

        Comment

        • prostrelov
          Senior Member
          • May 2012
          • 115

          #5
          Я правельно понимаю речь идёт о
          Variable substitution is performed on this string using the following variables:

          $A - Trap agent host name (see Note 1)
          $aA - Trap agent IP address
          $Be - securityEngineID (snmpEngineID) (see Note 7)
          $Bu - securityName (snmpCommunitySecurityName) (see Note 7)
          $BE - contextEngineID (snmpCommunityContextEngineID) (see Note 7)
          $Bn - contextName (snmpCommunityContextName) (see Note 7)
          $c - Category
          $C - Trap community string
          $D - Description text from SNMPTT.CONF or MIB file (see Note 6)
          $E - Enterprise trap OID in symbolic format
          $e - Enterprise trap OID in number format
          $Fa - alarm (bell) (BEL)
          $Ff - form feed (FF)
          $Fn - newline (LF, NL)
          $Fr - return (CR)
          $Ft - tab (HT, TAB)
          $Fz - Translated FORMAT line (EXEC only)
          $G - Generic trap number (0 if enterprise trap)
          $H - Host name of the system running SNMPTT
          $S - Specific trap number (0 if generic trap)
          $N - Event name defined in .conf file of matched entry
          $i - Event OID defined in .conf file of matched entry (could be a wildcard OID)
          $O - Trap OID in symbolic format (see Note 4)
          $o - Trap OID in numerical format (see Note 4)
          $R, $r - Trap hostname (see Note 1)
          $aR, $ar - IP address
          $s - Severity
          $T - Uptime: Time since network entity was initialized
          $X - Time trap was spooled (daemon mode) or current time (standalone mode)
          $x - Date trap was spooled (daemon mode) or current date (standalone mode)
          $# - Number of (how many) variable-bindings in the trap
          $$ - Print a $
          $@ - Number of seconds since the epoch of when the trap was spooled (daemon mode) or the current time (standalone mode)
          $n - Expand variable-binding n (1-n) (see Note 2,5)
          $+n - Expand variable-binding n (1-n) in the format of variable name:value (see Note 2,3,5)
          $-n - Expand variable-binding n (1-n) in the format of variable name (variable type):value (see Note 2,3,5)
          $vn - Expand variable name of the variable-binding n (1-n)(see Note 3)
          $* - Expand all variable-bindings (see Note 5)
          $+* - Expand all variable-bindings in the format of variable name:value (see Note 2,3,5)
          $-* - Expand all variable-bindings in the format of variable name (variable type):value (see Note 2,3,5)
          вы предлагаете передать их как параметр к .sh скрипту ?

          Comment

          • dima_dm
            Senior Member
            • Dec 2009
            • 2697

            #6
            Originally posted by prostrelov
            Я правельно понимаю речь идёт о

            вы предлагаете передать их как параметр к .sh скрипту ?
            Да. Если найдете нужную переменную, её можно сразу zabbix_sender передать без промежуточного скрипта.

            Comment

            • prostrelov
              Senior Member
              • May 2012
              • 115

              #7
              Спасибо Дмитрий. Пока задачу отложили но рано или поздно попробуем.

              Comment

              Working...