Ad Widget

Collapse

Элемент данных с UserParameter в шаблоне.

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Denis
    Junior Member
    • Mar 2013
    • 5

    #1

    Элемент данных с UserParameter в шаблоне.

    Есть UserParamater вида:UserParameter=rx_cnmarg[*],snmpget -v 1 -c public -Ov $1 '.1.3.6.1.4.1.1773.1.3.208.2.2.5.0' | sed -ne 's/^STRING: "\(.*\) dB"$/\1/' -eT -ep Который выполняется агентом на zabbix сервере. Вместо * ставится IP адрес узла сети. При ручном создание элемента данных с ключом rx_cnmargin[192.168.78.56] данные собираются. Возникла проблема с написанием ключа для элемента данных шаблона. При создании ключа вида rx_cnmargin[{HOST.IP1}] появляется ошибка:Received value [Error in packetReason: (noSuchName) There is no such variable name in this MIB.Failed object: SNMPv2-SMI::enterprises.1773.1.3.208.2.2.5.0] is not suitable for value type [Numeric (float)] Как можно решить эту проблему?
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by Denis
    Есть UserParamater вида:UserParameter=rx_cnmarg[*],snmpget -v 1 -c public -Ov $1 '.1.3.6.1.4.1.1773.1.3.208.2.2.5.0' | sed -ne 's/^STRING: "\(.*\) dB"$/\1/' -eT -ep Который выполняется агентом на zabbix сервере. Вместо * ставится IP адрес узла сети. При ручном создание элемента данных с ключом rx_cnmargin[192.168.78.56] данные собираются. Возникла проблема с написанием ключа для элемента данных шаблона. При создании ключа вида rx_cnmargin[{HOST.IP1}] появляется ошибка:Received value [Error in packetReason: (noSuchName) There is no such variable name in this MIB.Failed object: SNMPv2-SMI::enterprises.1773.1.3.208.2.2.5.0] is not suitable for value type [Numeric (float)] Как можно решить эту проблему?
    1) Замените прямой вызов комманд на обертку типа такой
    Code:
    #!/bin/bash
    
    LOG=/tmp/test.log
    
    echo ================`date`================= >> $LOG
    echo script run as: $0 $* >> $LOG
    COMMAND="snmpget -v 1 -c public -Ov $1 '.1.3.6.1.4.1.1773.1.3.208.2.2.5.0' | sed -ne 's/^STRING: \"\(.*\) dB\"$/\1/' -eT -ep"
    echo "Run command: $COMMAND" >> $LOG
    $COMMAND
    echo "Command exit code: $?"
    поправив UserParameter соответствующим образом

    2) Замените вызов sed на опцию "-Oqv" у snmpget
    Code:
    [root@zabbix ~]# snmpget -v 2c 192.168.33.13 IF-MIB::ifName.1007 
    IF-MIB::ifName.1007 = STRING: ch8
    [root@zabbix ~]# snmpget -v 2c 192.168.33.13 IF-MIB::ifName.1007 -Oqv
    ch8
    [root@zabbix ~]#

    Comment

    Working...