Thank you for the assistance. Looks like it's still returning uninteresting labels/descriptions (and some of those should be strings):

# HELP lgpEnvTemperatureDescrDegC A reference to a temperature description object - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.2
# TYPE lgpEnvTemperatureDescrDegC gauge
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.1",lgpEnvTemperatureIdDegC="1"} 1 lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.1",lgpEnvTemperatureIdDegC="7"} 1 lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.2",lgpEnvTemperatureIdDegC="8"} 1 lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.13",lgpEnvTemperatureIdDegC="10"} 1 lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.2",lgpEnvTemperatureIdDegC="3"} 1 lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.3",lgpEnvTemperatureIdDegC="2"} 1 # HELP lgpEnvTemperatureHighThresholdTenthsDegC The high temperature notification threshold - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.51
# TYPE lgpEnvTemperatureHighThresholdTenthsDegC gauge
lgpEnvTemperatureHighThresholdTenthsDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.2",lgpEnvTemperatureIdDegC="3"} 394 # HELP lgpEnvTemperatureLowThresholdTenthsDegC The low temperature notification threshold - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.52
# TYPE lgpEnvTemperatureLowThresholdTenthsDegC gauge
lgpEnvTemperatureLowThresholdTenthsDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.2",lgpEnvTemperatureIdDegC="3"} 156 # HELP lgpEnvTemperatureMeasurementDegC The measured temperature value. - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.3
# TYPE lgpEnvTemperatureMeasurementDegC gauge
lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.1",lgpEnvTemperatureIdDegC="7"} 34 lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.2",lgpEnvTemperatureIdDegC="8"} 38 lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.13",lgpEnvTemperatureIdDegC="10"} 2.147483647e+09 lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.2",lgpEnvTemperatureIdDegC="3"} 23 lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.3",lgpEnvTemperatureIdDegC="2"} 22


SNMP walks of *lgpEnvTemperatureMeasurementDegC* & *lgpEnvTemperatureTableDegC *The *lgpEnvTemperatureMeasurementDegC.3* (value of 27) should be linked to *lgpEnvReturnAirTemperature* or "*Temperature measurement of return air.*"

snmpwalk -m /usr/share/snmp/mibs/LIEBERT_GP_ENV.MIB -v2c x.x.x.x lgpEnvTemperatureMeasurementDegC LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.2 = INTEGER: 20 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.3 = INTEGER: 27 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.7 = INTEGER: 31 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.8 = INTEGER: 29 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.10 = INTEGER: 2147483647 degrees Celsius

snmpwalk -m /usr/share/snmp/mibs/LIEBERT_GP_ENV.MIB -v2c x.x.x.x lgpEnvTemperatureTableDegC LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.1 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvControlTemperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.2 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvSupplyAirTemperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.3 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvReturnAirTemperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.7 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpDigitalScrollCompressor1Temperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.8 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpDigitalScrollCompressor2Temperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDescrDegC.10 = OID: LIEBERT-GP-ENVIRONMENTAL-MIB::lgpCoolantTemperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.2 = INTEGER: 19 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.3 = INTEGER: 27 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.7 = INTEGER: 31 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.8 = INTEGER: 29 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementDegC.10 = INTEGER: 2147483647 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDailyHighDegC.1 = INTEGER: 220 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDailyLowDegC.1 = INTEGER: 158 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyHighTimeHourDegC.1 = INTEGER: 58493 hours LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyHighTimeMinuteDegC.1 = INTEGER: 58493 minutes LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyHighTimeSecondDegC.1 = INTEGER: 58493 seconds LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyLowTimeHourDegC.1 = INTEGER: 32691 hours LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyLowTimeMinuteDegC.1 = INTEGER: 32691 minutes LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTempDailyLowTimeSecondDegC.1 = INTEGER: 32691 seconds LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementTenthsDegC.2 = INTEGER: 194 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementTenthsDegC.3 = INTEGER: 269 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementTenthsDegC.7 = INTEGER: 310 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementTenthsDegC.8 = INTEGER: 290 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureMeasurementTenthsDegC.10 = INTEGER: 2147483647 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureHighThresholdTenthsDegC.3 = INTEGER: 394 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureLowThresholdTenthsDegC.3 = INTEGER: 156 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureSetPointTenthsDegC.1 = INTEGER: 190 .1 degrees Celsius LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvTemperatureDeadBandTenthsDegC.1 = INTEGER: 5 .1 degrees Celsius


*lgpEnvReturnAirTemperature* does exist in the MIB, but can't be walked (I guessing object-identity?) :

snmpwalk -m /usr/share/snmp/mibs/LIEBERT_GP_ENV.MIB -v2c x.x.x.x lgpEnvReturnAirTemperature LIEBERT-GP-ENVIRONMENTAL-MIB::lgpEnvReturnAirTemperature = No Such Object available on this agent at this OID


   -- =============================================================================     -- lgpEnvTemperatureMeasurements - Liebert "well-known" temperature objects     -- =============================================================================

    lgpEnvControlTemperature      OBJECT-IDENTITY
        STATUS      current
        DESCRIPTION
            "Temperature measurement used as control feedback."
        ::= { lgpEnvTemperatureWellKnown 1 }

*lgpEnvReturnAirTemperature*    OBJECT-IDENTITY
        STATUS      current
        DESCRIPTION
        "Temperature measurement of return air."
    ::= { lgpEnvTemperatureWellKnown 2 }


I've a feeling a lot of this is very obvious to those who know their MIBs. My only thought at this point is some overrides?

I do wish I didn't get back *lgpEnvTemperatureMeasurementDegC* multiple times, and instead had *lgpEnvReturnAirTemperature* etc. but that's the fault of the mibs?


On 2024-03-16 1:48 a.m., Ben Kochie wrote:
This is a pretty standard lookup. But the MIB entry for lgpEnvTemperatureDescrDegC is a bit strange. You can override the type easily to make it a DisplayString. But, based on your output, I'm guessing the device doesn't return a useful description. Can you provide an SNMP walk comparison?

Here's what I came up with:

modules:
  liebert:
    walk:
      - lgpEnvTemperatureTableDegC
    lookups:
      - source_indexes: [lgpEnvTemperatureIdDegC]
        lookup: lgpEnvTemperatureDescrDegC
    overrides:
      lgpEnvTemperatureDescrDegC:
        type: DisplayString
      lgpEnvTemperatureMeasurementTenthsDegC:
        scale: 0.1



On Sat, Mar 16, 2024 at 6:32 AM Jonathan Davis <[email protected]> wrote:

    Using vendor supplied mibs, added a module, generated my snmp.yml,
    and snmp_exporter is giving me some unexpected results such as:

    # HELP lgpEnvTemperatureMeasurementDegC The measured temperature
    value. - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.3
    # TYPE lgpEnvTemperatureMeasurementDegC gauge
    lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureIdDegC="10"}
    2.147483647e+09
    lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureIdDegC="2"} 20
    lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureIdDegC="3"} 23
    lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureIdDegC="7"} 33
    lgpEnvTemperatureMeasurementDegC{lgpEnvTemperatureIdDegC="8"} 32

    and

     HELP lgpEnvTemperatureDescrDegC A reference to a temperature
    description object - 1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.2
    # TYPE lgpEnvTemperatureDescrDegC gauge
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.1",lgpEnvTemperatureIdDegC="1"}
    1
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.1",lgpEnvTemperatureIdDegC="7"}
    1
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.11.2",lgpEnvTemperatureIdDegC="8"}
    1
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.13",lgpEnvTemperatureIdDegC="10"}
    1
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.2",lgpEnvTemperatureIdDegC="3"}
    1
    
lgpEnvTemperatureDescrDegC{lgpEnvTemperatureDescrDegC="1.3.6.1.4.1.476.1.42.3.4.1.1.3",lgpEnvTemperatureIdDegC="2"}
    1
    # HELP lgpEnvTemperatureDescrDegF A reference to a temperature
    description object - 1.3.6.1.4.1.476.1.42.3.4.1.2.3.1.2

    I am trying to sort out the lookups, source indexes, and lookup to
    use to retrieve a more descriptive result.


    relevant snippit from the mib:
    lgpEnvTemperatureEntryDegC OBJECT-TYPE
        SYNTAX      LgpEnvTemperatureEntryDegC
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This entry defines the contents of the rows for the table
            'lgpEnvTemperatureTableDegC'."
        INDEX       { lgpEnvTemperatureIdDegC }
        ::= { lgpEnvTemperatureTableDegC 1 }

    LgpEnvTemperatureEntryDegC ::= SEQUENCE
    {
        lgpEnvTemperatureIdDegC Unsigned32,
        lgpEnvTemperatureDescrDegC                  OBJECT IDENTIFIER,
        lgpEnvTemperatureMeasurementDegC  Integer32,
        lgpEnvTemperatureHighThresholdDegC  Integer32,
        lgpEnvTemperatureLowThresholdDegC Integer32,
        lgpEnvTemperatureSetPointDegC Integer32,
        lgpEnvTemperatureDailyHighDegC  Integer32,
        lgpEnvTemperatureDailyLowDegC Integer32,
        lgpEnvTempDailyHighTimeHourDegC Integer32,
        lgpEnvTempDailyHighTimeMinuteDegC Integer32,
        lgpEnvTempDailyHighTimeSecondDegC Integer32,
        lgpEnvTempDailyLowTimeHourDegC  Integer32,
        lgpEnvTempDailyLowTimeMinuteDegC  Integer32,
        lgpEnvTempDailyLowTimeSecondDegC  Integer32,
        lgpEnvTemperatureMeasurementTenthsDegC  Integer32,
        lgpEnvTemperatureHighThresholdTenthsDegC  Integer32,
        lgpEnvTemperatureLowThresholdTenthsDegC Integer32,
        lgpEnvTemperatureSetPointTenthsDegC Integer32,
        lgpEnvTemperatureDeadBandTenthsDegC Integer32,
        lgpEnvTempHeatingPropBandTenthsDegC Integer32,
        lgpEnvTempCoolingPropBandTenthsDegC Integer32

    }

    lgpEnvTemperatureIdDegC OBJECT-TYPE
        SYNTAX      Unsigned32
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "This OID is used as an index to identify a row in the table
            'lgpEnvTemperatureTableDegC'."
        ::= { lgpEnvTemperatureEntryDegC 1 }

    lgpEnvTemperatureDescrDegC OBJECT-TYPE
        SYNTAX      OBJECT IDENTIFIER
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "A reference to a temperature description object. The object
            referenced should not be accessible, but rather be used to
    provide
            a unique description of the temperature."
        ::= { lgpEnvTemperatureEntryDegC 2 }

    lgpEnvTemperatureMeasurementDegC OBJECT-TYPE
        SYNTAX      Integer32
        UNITS       "degrees Celsius"
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION
            "The measured temperature value."
        ::= { lgpEnvTemperatureEntryDegC 3 }


    Any help to understand how I should be configuring the module in
    the generator would be much appreciated.
-- You received this message because you are subscribed to the Google
    Groups "Prometheus Users" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to [email protected].
    To view this discussion on the web visit
    
https://groups.google.com/d/msgid/prometheus-users/01c04d69-aadb-4be0-ae5d-9344d848556cn%40googlegroups.com
    
<https://groups.google.com/d/msgid/prometheus-users/01c04d69-aadb-4be0-ae5d-9344d848556cn%40googlegroups.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to a topic in the Google Groups "Prometheus Users" group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/prometheus-users/M4u50WIeawQ/unsubscribe. To unsubscribe from this group and all its topics, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-users/CABbyFmq6yH4FJivgsauJXYgtUpWkqCRC3HR6BtB9fzu2wUT14w%40mail.gmail.com <https://groups.google.com/d/msgid/prometheus-users/CABbyFmq6yH4FJivgsauJXYgtUpWkqCRC3HR6BtB9fzu2wUT14w%40mail.gmail.com?utm_medium=email&utm_source=footer>.

--
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/7dc840da-f0a1-4d44-818b-08139afe7305%40prioritycolo.com.

Reply via email to