All Downloads are FREE. Search and download functionalities are using the official Maven repository.

hardware.MIB2Switch.MIB2Switch.yaml Maven / Gradle / Ivy

The newest version!
---
extends:
- ../Hardware/Hardware
- ../MIB2-header/MIB2-header
- ../MIB2EntitySensor-header/MIB2EntitySensor-header
constants:
  _ENCLOSURE_TYPE: Switch
  _DETECTION_INDEX: 2
  _DEVICE_ID: EthernetSwitch
connector:
  displayName: Ethernet Switch with Sensors (SNMP)
  platforms: MIB-2 and Entity-Sensor-MIB Supported Switch
  reliesOn: MIB-2, Entity-Sensor-MIB, SNMP
  version: 1.0
  information: This connector discovers the enclosure and Ethernet ports of a system equipped with an MIB-2 standard SNMP Agent.
  detection:
    connectionTypes:
    - remote
    - local
    appliesTo:
    - Network
    supersedes:
    - GenericSwitchEnclosure
    tags: [ hardware, network ]
monitors:
  network:
    discovery:
      sources:
        source(4):
          # Source(4) = ifTable SNMP Table
          # PortID;OperationalStatus
          type: snmpTable
          oid: 1.3.6.1.2.1.2.2.1
          selectColumns: ID,8
          computes:
          # Exclude OperationalStatus 6 = Component Not Present
          - type: excludeMatchingLines
            column: 2
            valueList: 6
        source(5):
          # PortID;OperationalStatus;PortID;Description;TypeCode;MacAddress;AdminStatus;ID;Name;Alias;
          type: tableJoin
          leftTable: ${source::monitors.network.discovery.sources.source(4)}
          rightTable: ${source::monitors.network.discovery.sources.source(3)}
          leftKeyColumn: 1
          rightKeyColumn: 1
      mapping:
        # PortID;OperationalStatus;PortID;Description;TypeCode;MacAddress;AdminStatus;bandwidth;ID;Name;Alias;
        source: ${source::monitors.network.discovery.sources.source(5)}
        attributes:
          id: $1
          __display_id: $10
          physical_address: $6
          physical_address_type: MAC
          device_type: $5
          hw.parent.type: enclosure
          hw.parent.id: ${constant::_DEVICE_ID}
          name: ${awk::sprintf("%s (%s)", $9, $5)}
        conditionalCollection:
          hw.network.bandwidth.limit: $8




© 2015 - 2024 Weber Informatics LLC | Privacy Policy