APC UPS Error: "was collected before with the same name and label values"

230 views
Skip to first unread message

Neil Stottler

unread,
Nov 22, 2023, 5:06:38 PM11/22/23
to Prometheus Users
Hello! I am trying to scrap multiple APC UPS's on my network via snmpv1, one works great, one does not work at all with this error.
107 error(s) occurred: * collected metric "upsHighPrecBatteryPackCartridgeReplaceDate" { label:{name:"upsHighPrecBatteryCartridgeIndex" value:"1"} label:{name:"upsHighPrecBatteryPackCartridgeReplaceDate" value:"01/01/2000"} label:{name:"upsHighPrecBatteryPackIndex" value:"9"} gauge:{value:1}} was collected before with the same name and label values

here is my generator.yml config
---
auths:
  public_v1:
    version: 1
  public_v2:
    version: 2

modules:
  # Default IF-MIB interfaces table with ifIndex.
  if_mib:
    walk: [sysUpTime, interfaces, ifXTable]
    lookups:
      - source_indexes: [ifIndex]
        lookup: ifAlias
      - source_indexes: [ifIndex]
        # Uis OID to avoid conflict with PaloAlto PAN-COMMON-MIB.
        lookup: 1.3.6.1.2.1.2.2.1.2 # ifDescr
      - source_indexes: [ifIndex]
        # Use OID to avoid conflict with Netscaler NS-ROOT-MIB.
        lookup: 1.3.6.1.2.1.31.1.1.1.1 # ifName
    overrides:
      ifAlias:
        ignore: true # Lookup metric
      ifDescr:
        ignore: true # Lookup metric
      ifName:
        ignore: true # Lookup metric
      ifType:
        type: EnumAsInfo
  # Default IP-MIB with ipv4InterfaceTable for example.
  ip_mib:
    walk: [ipv4InterfaceTable]

  #snmpv2 mib
  #hostresoruces mib

# APC/Schneider UPS Network Management Cards
#
# Note: older management cards only support SNMP v1 (AP9606 and
# AP9607, possibly others). Older versions of the firmware may only
# support v1 as well. If you only have newer cards you can switch to
# version v2c or v3.
#
# The management cards have relatively slow processors so don't poll
# very often and give a generous timeout to prevent spurious
# errors. Alternatively you can eliminate the interface polling (OIDs
# beginning with 1.3.6.1.2.1) to reduce the time taken for polling.
#
  apcups:
    walk:
      - 1.3.6.1.4.1.318.1.1.1.2       # upsBattery
      - 1.3.6.1.4.1.318.1.1.1.3       # upsInput
      - 1.3.6.1.4.1.318.1.1.1.4       # upsOutput
      - 1.3.6.1.4.1.318.1.1.1.7.2     # upsAdvTest
      - 1.3.6.1.4.1.318.1.1.1.8.1     # upsCommStatus
      - 1.3.6.1.4.1.318.1.1.1.12      # upsOutletGroups
      - 1.3.6.1.4.1.318.1.1.10.2.3.2  # iemStatusProbesTable
      - 1.3.6.1.4.1.318.1.1.26.4.3    # rPDU2DeviceStatusTable
      - 1.3.6.1.4.1.318.1.1.26.6.3    # rPDU2PhaseStatusTable
      - 1.3.6.1.4.1.318.1.1.26.8.3    # rPDU2BankStatusTable
      - 1.3.6.1.4.1.318.1.1.26.10.2.2 # rPDU2SensorTempHumidityStatusTable
    lookups:
      - source_indexes: [upsOutletGroupStatusIndex]
        lookup: upsOutletGroupStatusName
        drop_source_indexes: true
      - source_indexes: [iemStatusProbeIndex]
        lookup: iemStatusProbeName
        drop_source_indexes: true
    overrides:
      rPDU2BankStatusLoadState:
        type: EnumAsStateSet
      upsAdvBatteryCondition:
        type: EnumAsStateSet
      upsAdvBatteryChargingCurrentRestricted:
        type: EnumAsStateSet
      upsAdvBatteryChargerStatus:
        type: EnumAsStateSet  

my snmp.yml is rather long so I can post that later on if someone has an idea.

Ben Kochie

unread,
Nov 22, 2023, 5:15:34 PM11/22/23
to Neil Stottler, Prometheus Users
Can you find upsHighPrecBatteryPackCartridgeReplaceDate in your snmp.yml? What version of PowerNet-MIB do you have?

This is what I get when I generate your config:
    - name: upsHighPrecBatteryPackCartridgeReplaceDate
      oid: 1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8
      type: DisplayString
      help: The battery cartridge estimated battery replace date. - 1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8
      indexes:
      - labelname: upsHighPrecBatteryPackIndex
        type: gauge
      - labelname: upsHighPrecBatteryCartridgeIndex
        type: gauge

Can you provide a manual snmpwalk output of that OID (1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8`)?

Since you're not dropping the source index on this, that should not produce duplicates.

--
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 prometheus-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/prometheus-users/1cd90fac-c4c2-413b-9509-278385346f51n%40googlegroups.com.

Neil Stottler

unread,
Nov 27, 2023, 8:56:03 AM11/27/23
to Prometheus Users
According to the MIB in the snmp_exporter generator folder, 4.5.1.

It's also worth noting, this isn't just upsHighPrecBatteryPackCartridgeReplaceDate, it's 106 others as well.
I was cautious posting the whole thing here at once cause I didn't want to post a wall of text as my first post. Here's the pastebin https://pastebin.com/9trFyUG6

Here's the pastebin for the entire generated snmp.yml https://pastebin.com/grCs0Kgx

Here's the manual walk:
root@server:# snmpwalk -v1 -c public <IP> 1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.1.1.1 = STRING: "11/05/2025"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.1.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.2 = STRING: "01/01/2000"

thanks for the help so far.

Neil Stottler

unread,
Nov 27, 2023, 9:00:48 AM11/27/23
to Prometheus Users

Also it's good for me to tell you what UPS's I am trying to read.

The working one: 
  • Smart-UPS 2200
The non-working ones:
  • Smart-UPS SRT 5000
  • Smart-UPS SRT 5000
  • Smart-UPS SRT 5000
  • Smart-UPS SRT 5000
yes there are 4 of them lol.
Thinking about it, am I suppose ot be using a specific MIB for the 5000's vs the 2200?

Ben Kochie

unread,
Nov 27, 2023, 10:34:38 AM11/27/23
to Neil Stottler, Prometheus Users
Do you have a walk for the working one as well?

It looks like the device is returning more indexes than are valid for the MIB. The MIB declares two index values, but the snmpwalk is returning three.

Compare the OIDs:

1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8
1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8.1.1.1

You can see there are three index values before the string.

Confirming with the MIB, there are only two entries in the INDEX.

   upsHighPrecBatteryPackEntry OBJECT-TYPE
       SYNTAX     UPSHighPrecBatteryPackEntry
       ACCESS     not-accessible
       STATUS     mandatory
       DESCRIPTION^M
               "An entry containing information applicable to a
               particular battery pack."
       INDEX { upsHighPrecBatteryPackIndex, upsHighPrecBatteryCartridgeIndex }
       ::= { upsHighPrecBatteryPackTable 1 }

Sounds like you will need to complain to APC that their firmware is buggy, or the MIB is invalid. They made a breaking change to the data definition or data. Can't tell which without asking them.

Neil Stottler

unread,
Nov 27, 2023, 1:08:18 PM11/27/23
to Prometheus Users
So the walk for the working one, Smart-UPS 2200, with that same OID does not return anything. That might be why that one is working. So now the question on the newer models is how to get it so they can be working? Remove that OID?

root@server# snmpwalk -v1 -c public <ip> 1.3.6.1.4.1.318.1.1.1.2.3.10.2.1.8
root@server:#

Neil Stottler

unread,
Nov 27, 2023, 1:15:17 PM11/27/23
to Prometheus Users
Here's the full output of both units under the OID 1.3.6.1.4.1.318.1.1.1.2. A lot more duplicates on the non-working one.

Smart-UPS 2200
SNMPv2-SMI::enterprises.318.1.1.1.2.1.1.0 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.1.2.0 = Timeticks: (0) 0:00:00.00
SNMPv2-SMI::enterprises.318.1.1.1.2.1.3.0 = STRING: "04/15/2018"
SNMPv2-SMI::enterprises.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI::enterprises.318.1.1.1.2.2.2.0 = Gauge32: 20
SNMPv2-SMI::enterprises.318.1.1.1.2.2.3.0 = Timeticks: (1698000) 4:43:00.00
SNMPv2-SMI::enterprises.318.1.1.1.2.2.4.0 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.2.8.0 = INTEGER: 55
SNMPv2-SMI::enterprises.318.1.1.1.2.2.19.0 = STRING: "RBC43"
SNMPv2-SMI::enterprises.318.1.1.1.2.2.21.0 = STRING: "09/14/20:7"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.1.0 = Gauge32: 1000
SNMPv2-SMI::enterprises.318.1.1.1.2.3.2.0 = Gauge32: 201
SNMPv2-SMI::enterprises.318.1.1.1.2.3.4.0 = INTEGER: 547

Smart-UPS SRT 5000
SNMPv2-SMI::enterprises.318.1.1.1.2.1.1.0 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.1.2.0 = Timeticks: (0) 0:00:00.00
SNMPv2-SMI::enterprises.318.1.1.1.2.1.3.0 = STRING: "05/18/2021"
SNMPv2-SMI::enterprises.318.1.1.1.2.2.1.0 = Gauge32: 100
SNMPv2-SMI::enterprises.318.1.1.1.2.2.2.0 = Gauge32: 21
SNMPv2-SMI::enterprises.318.1.1.1.2.2.3.0 = Timeticks: (132500) 0:22:05.00
SNMPv2-SMI::enterprises.318.1.1.1.2.2.4.0 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.2.8.0 = INTEGER: 218
SNMPv2-SMI::enterprises.318.1.1.1.2.2.19.0 = STRING: "APCRBC140"
SNMPv2-SMI::enterprises.318.1.1.1.2.2.20.0 = STRING: "APCRBC140"
SNMPv2-SMI::enterprises.318.1.1.1.2.2.21.0 = STRING: "11/04/2025"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.1.0 = Gauge32: 1000
SNMPv2-SMI::enterprises.318.1.1.1.2.3.2.0 = Gauge32: 210
SNMPv2-SMI::enterprises.318.1.1.1.2.3.4.0 = INTEGER: 2182
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.1.0 = INTEGER: 11
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.1.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.1.1.2 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.2.1.1 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.2.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.3.1.1 = INTEGER: 3
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.3.1.2 = INTEGER: 3
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.4.1.1 = INTEGER: 4
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.4.1.2 = INTEGER: 4
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.5.1.1 = INTEGER: 5
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.5.1.2 = INTEGER: 5
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.6.1.1 = INTEGER: 6
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.6.1.2 = INTEGER: 6
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.7.1.1 = INTEGER: 7
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.7.1.2 = INTEGER: 7
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.8.1.1 = INTEGER: 8
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.8.1.2 = INTEGER: 8
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.9.1.1 = INTEGER: 9
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.9.1.2 = INTEGER: 9
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.10.1.1 = INTEGER: 10
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.10.1.2 = INTEGER: 10
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.11.1.1 = INTEGER: 11
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.1.11.1.2 = INTEGER: 11
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.1.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.1.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.2.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.2.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.3.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.3.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.4.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.4.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.5.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.5.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.6.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.6.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.7.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.7.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.8.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.8.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.9.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.9.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.10.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.10.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.11.1.1 = INTEGER: 1
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.2.11.1.2 = INTEGER: 2
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.1.1.1 = STRING: "BMC 12.5"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.1.1.2 = STRING: "BMC 12.5"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.2.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.2.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.3.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.3.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.4.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.4.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.5.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.5.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.6.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.6.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.7.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.7.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.8.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.8.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.9.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.9.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.10.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.10.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.11.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.3.11.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.1.1.1 = STRING: "                "
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.1.1.2 = STRING: "                "
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.2.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.2.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.3.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.3.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.4.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.4.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.5.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.5.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.6.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.6.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.7.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.7.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.8.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.8.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.9.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.9.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.10.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.10.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.11.1.1 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.4.11.1.2 = ""
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.1.1.1 = INTEGER: 200
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.1.1.2 = INTEGER: 200
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.2.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.2.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.3.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.3.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.4.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.4.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.5.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.5.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.6.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.6.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.7.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.7.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.8.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.8.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.9.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.9.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.10.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.10.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.11.1.1 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.5.11.1.2 = INTEGER: 0
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.1.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.1.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.2.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.2.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.3.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.3.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.4.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.4.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.5.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.5.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.6.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.6.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.7.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.7.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.8.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.8.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.9.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.9.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.10.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.10.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.11.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.6.11.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.1.1.1 = STRING: "1000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.1.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.2.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.2.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.3.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.3.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.4.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.4.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.5.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.5.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.6.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.6.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.7.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.7.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.8.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.8.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.9.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.9.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.10.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.10.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.11.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.7.11.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.1.1.1 = STRING: "11/04/2025"

SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.1.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.1.1.1 = STRING: "05/18/2021"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.1.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.2.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.2.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.3.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.3.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.4.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.4.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.5.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.5.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.6.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.6.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.7.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.7.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.8.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.8.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.9.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.9.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.10.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.10.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.11.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.9.11.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.1.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.1.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.2.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.2.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.3.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.3.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.4.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.4.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.5.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.5.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.6.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.6.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.7.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.7.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.8.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.8.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.9.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.9.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.10.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.10.1.2 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.11.1.1 = STRING: "0000000000000000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.10.11.1.2 = STRING: "0000000000000000"

Brian Candler

unread,
Nov 27, 2023, 1:47:36 PM11/27/23
to Prometheus Users
> Sounds like you will need to complain to APC that their firmware is buggy, or the MIB is invalid. They made a breaking change to the data definition or data. Can't tell which without asking them.

Seconded.

The whole point of OIDs is that they are supposed to be globally unique; however, I've seen cases where two different devices from the same vendor are using the same OIDs in different ways (Netgear switches come to mind). Sometimes even two different firmware versions for the same model.

This means you'll end up with multiple, conflicting MIBs for the same part of the OID tree. You then have to obtain the correct MIB file for each different type of device, and the hard part is ensuring that your software uses the correct subset of MIB files when talking to a particular device.

In the case of snmp_exporter, this means you'll need to build one snmp.yml with one set of MIB files present, and another snmp.yml with a different set of MIB files present.  You can then combine them as modules with different names (or recent versions of snmp_exporter let you drop multiple files into a directory)

Ben Kochie

unread,
Nov 27, 2023, 3:39:48 PM11/27/23
to Neil Stottler, Prometheus Users
I knew I had seen this before:

https://github.com/prometheus/snmp_exporter/issues/632

Is there anything in the web UI of the device that would indicate what a third column would be?

Also, if you could pastebin a raw snmpwalk of the upper level battery packs OID: 1.3.6.1.4.1.318.1.1.1.2.3.10

That might give me a clue as to what the index should be.

Otherwise, the only thing I can figure is the device output is broken in a weird way.

Neil Stottler

unread,
Nov 27, 2023, 4:01:01 PM11/27/23
to Prometheus Users
Ben,

Here is the paste for the UPS's

Smart-UPS SRT 5000:
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.1.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.2.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.3.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.4.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.5.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.6.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.7.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.8.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.9.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.10.1.2 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.1 = STRING: "01/01/2000"
SNMPv2-SMI::enterprises.318.1.1.1.2.3.10.2.1.8.11.1.2 = STRING: "01/01/2000"

Smart-UPS 2200
Nothing returned.

Neil Stottler

unread,
Nov 27, 2023, 4:01:57 PM11/27/23
to Prometheus Users

Paste got borked. https://pastebin.com/kHW8vXsg
Reply all
Reply to author
Forward
0 new messages