2

我正在尝试为 Telegraf 创建一个新的 UPS.conf 文件,以通过 SNMP 从一批 ups 设备中收集数据。当通过 SNMPGet 查询 OID 时,主机名和 upsType 等输入返回一个字符串,但是当使用 Telegraf 运行时,我只得到整数结果。

我的 UPS.conf 文件

 [[inputs.snmp]]
      agents = [ "192.168.15.60", "192.168.15.64" , "192.168.15.65","192.168.15.66","192.168.15.67" ]
       ## Timeout for each SNMP query.
       timeout = "10s"
       ## Number of retries to attempt within timeout.
       retries = 3
       ## SNMP version, values can be 1, 2, or 3
       version = 3

       ## SNMP community string.
       community = "heabc"
    #
    #   ## The GETBULK max-repetitions parameter
    #   max_repetitions = 10
    #
    #   ## SNMPv3 auth parameters
        sec_name = "grafana"
        auth_protocol = "SHA"      # Values: "MD5", "SHA", ""
        auth_password = "redacted"
        sec_level = "authPriv"   # Values: "noAuthNoPriv", "authNoPriv", "authPriv"
    #   #context_name = ""
        priv_protocol = "AES"         # Values: "DES", "AES", ""
        priv_password = "redacted"
    #
    #   ## measurement name

     [[inputs.snmp.field]]
        name = "hostname"
        oid = "iso.1.3.6.1.2.1.1.6.0"
        conversion = ""
        is_tag = true
     [[inputs.snmp.field]]
        name = "upsType"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.1.1.1.0"
        is_tag = true
        conversion = ""

     [[inputs.snmp.field]]
        name = "batteryCapacityPercent"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.2.2.1.0"

     [[inputs.snmp.field]]
        name = "batteryTemp"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.2.2.2.0"
     [[inputs.snmp.field]]
        name = "batteryRuntimeRemain"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.2.2.3.0"
     [[inputs.snmp.field]]
        name = "batteryReplace"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.2.2.4.0"
     [[inputs.snmp.field]]
        name = "inputVoltage"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.3.2.1.0"
     [[inputs.snmp.field]]
        name = "inputFreq"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.3.2.4.0"
     [[inputs.snmp.field]]
        name = "lastTransferReason"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.3.2.5.0"
     [[inputs.snmp.field]]
        name = "outputVoltage"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.4.2.1.0"
     [[inputs.snmp.field]]
        name = "outputFreq"
        oid = "iso.1.3.6.1.4.1.318.1.1.1.4.2.2.0"
     [[inputs.snmp.field]]
 name = "outputLoad"
    oid = "iso.1.3.6.1.4.1.318.1.1.1.4.2.3.0"
 [[inputs.snmp.field]]
    name = "ouputCurrent"
    oid = "iso.1.3.6.1.4.1.318.1.1.1.4.2.4.0"
 [[inputs.snmp.field]]
    name = "lastSelfTestResult"
    oid = "iso.1.3.6.1.4.1.318.1.1.1.7.2.3.0"
 [[inputs.snmp.field]]
    name = "lastSelfTestDate"
    oid = "iso.1.3.6.1.4.1.318.1.1.1.7.2.4.0"

telegraf --test --config UPS.conf 的输出- 注意每个主机名,一个是 121,一个是 91、82 等。 upsType 字段也以字符串形式出现,但正在转换为数字。

* Plugin: inputs.snmp, Collection 1
> snmp,hostname=121,upsType=122,agent_host=192.168.15.60,host=HEAGrafana batteryTemp=124i,inputVoltage=127i,outputFreq=131i,outputLoad=132i,lastSelfTestDate=135i,outputVoltage=130i,ouputCurrent=133i,lastSelfTestResult=134i,batteryCapacityPercent=123i,batteryRuntimeRemain=125i,batteryReplace=126i,inputFreq=128i,lastTransferReason=129i 1527721763000000000
> snmp,host=HEAGrafana,hostname=103,upsType=104,agent_host=192.168.15.64 batteryCapacityPercent=105i,batteryReplace=108i,inputFreq=110i,lastTransferReason=111i,lastSelfTestResult=116i,ouputCurrent=115i,lastSelfTestDate=117i,batteryTemp=106i,batteryRuntimeRemain=107i,inputVoltage=109i,outputVoltage=112i,outputFreq=113i,outputLoad=114i 1527721764000000000
> snmp,hostname=91,upsType=92,agent_host=192.168.15.65,host=HEAGrafana lastSelfTestDate=105i,batteryTemp=94i,inputVoltage=97i,inputFreq=98i,outputFreq=101i,outputLoad=102i,ouputCurrent=103i,lastSelfTestResult=104i,batteryCapacityPercent=93i,batteryRuntimeRemain=95i,batteryReplace=96i,lastTransferReason=99i,outputVoltage=100i 1527721766000000000
> snmp,hostname=82,upsType=83,agent_host=192.168.15.66,host=HEAGrafana batteryReplace=87i,inputVoltage=88i,inputFreq=89i,lastTransferReason=90i,outputLoad=93i,batteryCapacityPercent=84i,batteryTemp=85i,batteryRuntimeRemain=86i,lastSelfTestResult=95i,lastSelfTestDate=96i,outputVoltage=91i,outputFreq=92i,ouputCurrent=94i 1527721768000000000
> snmp,hostname=61,upsType=62,agent_host=192.168.15.67,host=HEAGrafana lastTransferReason=69i,outputVoltage=70i,outputFreq=71i,outputLoad=72i,batteryTemp=64i,batteryReplace=66i,inputVoltage=67i,inputFreq=68i,lastSelfTestDate=75i,batteryCapacityPercent=63i,batteryRuntimeRemain=65i,ouputCurrent=73i,lastSelfTestResult=74i 1527721769000000000

snmpget -v2c -c heabc 192.168.15.60 .1.3.6.1.4.1.318.1.1.1.1.1.1.0 的输出 - 它返回一个字符串。

iso.3.6.1.4.1.318.1.1.1.1.1.1.0 = STRING: "Smart-UPS X 3000"
4

0 回答 0