Ad Widget

Collapse

Cisco Multiple OID Indexes in LLD's

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • josoko
    Junior Member
    • Feb 2021
    • 25

    #1

    Cisco Multiple OID Indexes in LLD's

    Hello

    We have problems to create LLD's due to multiple OID indexes.
    The goal is to bring this values together in a screen:
    - {#IFDESCR} => vaslieft4 as a titel for the screen e.g "Violated Packets for vasileft4"
    - OID 1.3.6.1.4.1.9.9.166.1.17.1.1.16{#SNMPINDEX} for the error counters in the Screen

    The MIB's are:
    - CISCO-CLASS-BASED-QOS-MIB.my (Can be downloaded from ftp://ftp.cisco.com/pub/mibs/v2)
    - IF-MIB => Common Interface MIB

    This are the discovered information's:
    # from "cbQosIfIndex" "1.3.6.1.4.1.9.9.166.1.1.1.1.4"
    # from "cbQosObjectsType" "1.3.6.1.4.1.9.9.166.1.5.1.1.3"
    # from "cbQosConfigIndex" "1.3.6.1.4.1.9.9.166.1.5.1.1.2"
    # from "cbQosPolicyMapName" "1.3.6.1.4.1.9.9.166.1.6.1.1.1"
    # from "cbQosPoliceViolatedPkt" "1.3.6.1.4.1.9.9.166.1.17.1.1.16"
    # from "ifIndex" "1.3.6.1.2.1.2.2.1.1" (need to indexing the interfaces in the discovery rule)
    # from "ifDescr" "1.3.6.1.2.1.2.2.1.2" (Other OID Tree => IF-MIB)

    SNMPv2-SMI::enterprises.9.9.166.1.1.1.1.4.402 = INTEGER: 25 => {#SNMPINDEX} == 402 AND {#QOSIFINDEX}
    SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.3.402.131074 = INTEGER: 7 => Police {#SNMPINDEX} == 402.131074 AND {#QOSOBJECTSTYPE} == 7
    SNMPv2-SMI::enterprises.9.9.166.1.5.1.1.2.402.1 = Gauge32: 119848371 => "Police POLICE:100-Mbps" which is assigned to "vaslieft 4", {#SNMPINDEX} == 402.1 AND {#QOSCONFIGINDEX} == 119848371
    SNMPv2-SMI::enterprises.9.9.166.1.6.1.1.1.119848371 = STRING: "POLICE:100-Mbps" {#SNMPINDEX} == 119848371 AND {#QOSPOLICYMAPNAME} == POLICE:100-Mbps
    SNMPv2-SMI::enterprises.9.9.166.1.17.1.1.16.402.131074 = Counter32: 0 = Counter32: 0 => Error Value we want to monitor, no Index Discovery, used in Item Prototypes
    IF-MIB::ifIndex.25 = INTEGER: 25 {#SNMPINDEX} == 25 AND {#IFINDEX} == 25
    IF-MIB::ifDescr.25 = STRING: vasileft4 => Interface Description we want to show in the graphs {#SNMPINDEX} == 25 AND {#IFDESCR} == vasileft4

    Translation from IfIndex 25 to 402

    The LLD has been configured:
    Name: QoS Item Discovery
    Type: SNMP Agent
    Key: lld.qosdrops.tenant
    Update Interval: 2h
    Keep Lost Resources Period: 2h
    SNMP OID: discovery[{#QOSOBJECTSTYPE},1.3.6.1.4.1.9.9.166.1.5.1.1.3]
    Filter: {#QOSOBJECTSTYPE} == 7 => we want only discover cbQosObjectsType "Police" which has the Integer 7

    The Item Prototype:
    Name: QoS Violated Packets
    Type: SNMP Agent
    Key: lld.qosdrops.tenant.violatedpkt.[{#SNMPINDEX}]
    SNMP OID: 1.3.6.1.4.1.9.9.166.1.17.1.1.16.{#SNMPINDEX}

    So far so good, that is working.
    But I don't know how I can add another Item Prototye to make the IFINDEX (25) to IFDESCR (vasileft4) from cbQosIfIndex (402) translation, because the Index (402) is different as for cbQosObjectsType (402.131074) and cbQosPoliceViolatedPkt (402.131074).

    That's why i cannot do that:
    SNMP OID: discovery[{#QOSOBJECTSTYPE},1.3.6.1.4.1.9.9.166.1.5.1.1.3,{# QOSIFINDEX},1.3.6.1.4.1.9.9.166.1.1.1.1.4]

    I can just do that:
    SNMP OID: discovery[{#QOSOBJECTSTYPE},1.3.6.1.4.1.9.9.166.1.5.1.1.3]

    I think multiple indexes are not new, but i don't know how to overcome this problem in LLD's.
    And before we start to code some "hacky" Python scripts, i would want to know, whether there is a way of we can bring these item's together in a single graph.
    Last edited by josoko; 21-03-2022, 15:50.
Working...