From 7656ac7212763ca109b5ee12b11ba72a0b127023 Mon Sep 17 00:00:00 2001 From: Graham McIntire Date: Wed, 21 Jan 2026 14:30:04 -0600 Subject: [PATCH] import yamls --- Dockerfile | 2 +- lib/mix/tasks/import_profiles.ex | 73 +- lib/towerops/application.ex | 6 +- lib/towerops/profiles/yaml_profiles.ex | 286 ++ lib/towerops/snmp/discovery.ex | 70 +- lib/towerops/snmp/mib_translator.ex | 11 +- lib/towerops/snmp/profiles/base.ex | 99 +- lib/towerops/snmp/profiles/cisco.ex | 379 --- lib/towerops/snmp/profiles/dynamic.ex | 101 +- lib/towerops/snmp/profiles/mikrotik.ex | 725 ----- lib/towerops/snmp/profiles/net_snmp.ex | 342 --- lib/towerops/snmp/profiles/ubiquiti.ex | 262 -- priv/profiles/os_detection/3com.yaml | 10 + priv/profiles/os_detection/aaron.yaml | 11 + priv/profiles/os_detection/abbups.yaml | 19 + priv/profiles/os_detection/acano.yaml | 26 + priv/profiles/os_detection/acos.yaml | 13 + priv/profiles/os_detection/acs.yaml | 35 + priv/profiles/os_detection/acsw.yaml | 35 + priv/profiles/os_detection/adtran-aos.yaml | 16 + priv/profiles/os_detection/adva-alm.yaml | 11 + priv/profiles/os_detection/adva-aos.yaml | 12 + priv/profiles/os_detection/adva-fsp150cp.yaml | 19 + priv/profiles/os_detection/adva-osa.yaml | 14 + priv/profiles/os_detection/adva_fsp150.yaml | 15 + priv/profiles/os_detection/adva_fsp3kr7.yaml | 13 + priv/profiles/os_detection/adva_xg300.yaml | 15 + priv/profiles/os_detection/advantech.yaml | 12 + priv/profiles/os_detection/aen.yaml | 16 + priv/profiles/os_detection/airconsole.yaml | 9 + priv/profiles/os_detection/airos-af-ltu.yaml | 18 + priv/profiles/os_detection/airos-af.yaml | 18 + priv/profiles/os_detection/airos-af60.yaml | 20 + priv/profiles/os_detection/airos.yaml | 20 + priv/profiles/os_detection/airport.yaml | 13 + priv/profiles/os_detection/aix.yaml | 27 + priv/profiles/os_detection/akcp.yaml | 10 + priv/profiles/os_detection/alcoma-almp.yaml | 11 + priv/profiles/os_detection/alfo80hd.yaml | 10 + priv/profiles/os_detection/algcom-dc-ups.yaml | 17 + priv/profiles/os_detection/algcom-sm.yaml | 13 + priv/profiles/os_detection/allied-tq.yaml | 13 + priv/profiles/os_detection/allied.yaml | 21 + priv/profiles/os_detection/allworx_voip.yaml | 11 + priv/profiles/os_detection/aloha.yaml | 15 + .../os_detection/alpineoe-tdcmedfa.yaml | 13 + priv/profiles/os_detection/altalabs-ap.yaml | 12 + priv/profiles/os_detection/altalabs.yaml | 12 + priv/profiles/os_detection/alteonos.yaml | 14 + priv/profiles/os_detection/anue.yaml | 13 + priv/profiles/os_detection/anyos.yaml | 18 + priv/profiles/os_detection/aos-emu2.yaml | 51 + priv/profiles/os_detection/aos.yaml | 16 + priv/profiles/os_detection/aos6.yaml | 16 + priv/profiles/os_detection/aos7.yaml | 20 + priv/profiles/os_detection/apc-cpdu.yaml | 12 + priv/profiles/os_detection/apc-epdu.yaml | 18 + priv/profiles/os_detection/apc-mgeups.yaml | 20 + priv/profiles/os_detection/apc-netbotz.yaml | 12 + priv/profiles/os_detection/apc.yaml | 25 + priv/profiles/os_detection/apex-lynx.yaml | 10 + priv/profiles/os_detection/apex-plus.yaml | 10 + priv/profiles/os_detection/apic.yaml | 29 + .../os_detection/applicationsware.yaml | 10 + priv/profiles/os_detection/aprisa.yaml | 14 + priv/profiles/os_detection/apsoluteos.yaml | 14 + priv/profiles/os_detection/arbos.yaml | 21 + .../os_detection/ardmore-encoder.yaml | 10 + priv/profiles/os_detection/areca.yaml | 11 + priv/profiles/os_detection/arista-mos.yaml | 22 + priv/profiles/os_detection/arista_eos.yaml | 23 + priv/profiles/os_detection/arrayos.yaml | 9 + priv/profiles/os_detection/arris-apex.yaml | 11 + priv/profiles/os_detection/arris-c3.yaml | 11 + priv/profiles/os_detection/arris-c4.yaml | 13 + priv/profiles/os_detection/arris-cm.yaml | 11 + priv/profiles/os_detection/arris-d5.yaml | 12 + .../os_detection/arris-dsr4410md.yaml | 30 + priv/profiles/os_detection/aruba-instant.yaml | 15 + priv/profiles/os_detection/arubaos-cx.yaml | 13 + priv/profiles/os_detection/arubaos.yaml | 24 + priv/profiles/os_detection/asa.yaml | 35 + priv/profiles/os_detection/ascom.yaml | 29 + .../profiles/os_detection/asuswrt-merlin.yaml | 15 + priv/profiles/os_detection/asyncos.yaml | 26 + priv/profiles/os_detection/atenpdu.yaml | 15 + priv/profiles/os_detection/ats.yaml | 14 + priv/profiles/os_detection/audiocodes.yaml | 12 + priv/profiles/os_detection/avaya-ipo.yaml | 9 + priv/profiles/os_detection/aviat-wtm.yaml | 41 + priv/profiles/os_detection/avocent-mp.yaml | 10 + priv/profiles/os_detection/avocent.yaml | 13 + priv/profiles/os_detection/avr-hd.yaml | 10 + priv/profiles/os_detection/avtech.yaml | 11 + priv/profiles/os_detection/awplus.yaml | 13 + priv/profiles/os_detection/axisaudio.yaml | 7 + priv/profiles/os_detection/axiscam.yaml | 12 + priv/profiles/os_detection/axisdocserver.yaml | 7 + priv/profiles/os_detection/axos.yaml | 13 + priv/profiles/os_detection/baicells-od04.yaml | 12 + .../os_detection/barracudaloadbalancer.yaml | 9 + .../os_detection/barracudangfirewall.yaml | 17 + .../os_detection/barracudaspamfirewall.yaml | 11 + .../os_detection/barracudawafirewall.yaml | 33 + priv/profiles/os_detection/bats.yaml | 11 + priv/profiles/os_detection/bcm963.yaml | 10 + priv/profiles/os_detection/bdcom.yaml | 12 + priv/profiles/os_detection/beagleboard.yaml | 27 + priv/profiles/os_detection/benuos.yaml | 13 + priv/profiles/os_detection/binos.yaml | 13 + priv/profiles/os_detection/binox.yaml | 13 + .../os_detection/bintec-beip-plus.yaml | 16 + priv/profiles/os_detection/bintec-smart.yaml | 13 + priv/profiles/os_detection/bison.yaml | 13 + priv/profiles/os_detection/bke.yaml | 8 + priv/profiles/os_detection/bktel-oa.yaml | 9 + .../os_detection/bluecatnetworks.yaml | 14 + priv/profiles/os_detection/bnt.yaml | 9 + priv/profiles/os_detection/boss.yaml | 21 + priv/profiles/os_detection/breeze.yaml | 11 + priv/profiles/os_detection/broadworks.yaml | 13 + priv/profiles/os_detection/brother.yaml | 14 + priv/profiles/os_detection/bti800.yaml | 13 + priv/profiles/os_detection/buffalo.yaml | 10 + priv/profiles/os_detection/calix.yaml | 13 + priv/profiles/os_detection/canonprinter.yaml | 24 + priv/profiles/os_detection/cat1900.yaml | 34 + priv/profiles/os_detection/catos.yaml | 35 + priv/profiles/os_detection/cdata.yaml | 16 + priv/profiles/os_detection/celvin.yaml | 12 + priv/profiles/os_detection/ceraos.yaml | 41 + priv/profiles/os_detection/cetpower.yaml | 16 + .../profiles/os_detection/chatsworth-pdu.yaml | 11 + .../os_detection/christie-projector.yaml | 8 + priv/profiles/os_detection/ciena-rls.yaml | 11 + priv/profiles/os_detection/ciena-saos.yaml | 15 + priv/profiles/os_detection/ciena-sds.yaml | 18 + .../os_detection/ciena-waveserver.yaml | 12 + priv/profiles/os_detection/cimc.yaml | 29 + priv/profiles/os_detection/cips.yaml | 29 + priv/profiles/os_detection/cirpack.yaml | 17 + priv/profiles/os_detection/ciscoepc.yaml | 25 + priv/profiles/os_detection/ciscome1200.yaml | 39 + priv/profiles/os_detection/ciscosat.yaml | 11 + priv/profiles/os_detection/ciscosb.yaml | 53 + priv/profiles/os_detection/ciscosce.yaml | 34 + priv/profiles/os_detection/ciscospa.yaml | 14 + priv/profiles/os_detection/ciscosrp.yaml | 14 + priv/profiles/os_detection/ciscowap.yaml | 39 + priv/profiles/os_detection/ciscowlc.yaml | 33 + priv/profiles/os_detection/clearpass.yaml | 18 + priv/profiles/os_detection/clickshare.yaml | 12 + priv/profiles/os_detection/cmm.yaml | 24 + priv/profiles/os_detection/cmm4.yaml | 20 + priv/profiles/os_detection/cms.yaml | 13 + priv/profiles/os_detection/cnmatrix.yaml | 15 + priv/profiles/os_detection/cnos.yaml | 13 + priv/profiles/os_detection/cnpilote.yaml | 13 + priv/profiles/os_detection/cnpilotr.yaml | 12 + priv/profiles/os_detection/cnwave60.yaml | 13 + .../profiles/os_detection/commander-plus.yaml | 10 + priv/profiles/os_detection/compas.yaml | 9 + priv/profiles/os_detection/comtrol.yaml | 16 + priv/profiles/os_detection/comware.yaml | 10 + priv/profiles/os_detection/controlbox.yaml | 13 + priv/profiles/os_detection/coreos.yaml | 12 + priv/profiles/os_detection/coriant.yaml | 37 + priv/profiles/os_detection/ctcu.yaml | 12 + priv/profiles/os_detection/ctm.yaml | 12 + priv/profiles/os_detection/cts.yaml | 15 + priv/profiles/os_detection/cumulus.yaml | 17 + priv/profiles/os_detection/cxc.yaml | 15 + priv/profiles/os_detection/cxr-ts.yaml | 10 + priv/profiles/os_detection/cxrc.yaml | 13 + priv/profiles/os_detection/cyan.yaml | 10 + priv/profiles/os_detection/cyberoam-utm.yaml | 13 + priv/profiles/os_detection/cyberpower.yaml | 18 + priv/profiles/os_detection/dahua-nvr.yaml | 11 + priv/profiles/os_detection/dantherm-os.yaml | 13 + priv/profiles/os_detection/dasan-nos.yaml | 14 + priv/profiles/os_detection/datacom-dmos.yaml | 13 + priv/profiles/os_detection/datacom.yaml | 11 + priv/profiles/os_detection/datadomain.yaml | 13 + priv/profiles/os_detection/dcn-software.yaml | 14 + priv/profiles/os_detection/dd-wrt.yaml | 15 + priv/profiles/os_detection/ddnos.yaml | 16 + priv/profiles/os_detection/default.yaml | 6 + priv/profiles/os_detection/deliberant.yaml | 10 + .../os_detection/dell-compellent.yaml | 35 + priv/profiles/os_detection/dell-laser.yaml | 22 + priv/profiles/os_detection/dell-ome-m.yaml | 14 + priv/profiles/os_detection/dell-os10.yaml | 15 + .../os_detection/dell-powervault.yaml | 12 + priv/profiles/os_detection/dell-rcs.yaml | 10 + priv/profiles/os_detection/dell-rpdu.yaml | 13 + priv/profiles/os_detection/dell-sonic.yaml | 15 + priv/profiles/os_detection/dell-ups.yaml | 13 + priv/profiles/os_detection/deltaorion.yaml | 12 + priv/profiles/os_detection/deltaups.yaml | 14 + priv/profiles/os_detection/deva-db7001.yaml | 11 + .../profiles/os_detection/developprinter.yaml | 15 + priv/profiles/os_detection/dhcpatriot.yaml | 15 + priv/profiles/os_detection/digipower.yaml | 9 + priv/profiles/os_detection/dkt.yaml | 11 + priv/profiles/os_detection/dlink-dgs1250.yaml | 15 + priv/profiles/os_detection/dlink.yaml | 15 + priv/profiles/os_detection/dlinkap.yaml | 8 + priv/profiles/os_detection/dnos.yaml | 16 + priv/profiles/os_detection/dpi.yaml | 34 + priv/profiles/os_detection/drac.yaml | 12 + priv/profiles/os_detection/dragonfly.yaml | 11 + priv/profiles/os_detection/draytek.yaml | 19 + priv/profiles/os_detection/dsm.yaml | 27 + priv/profiles/os_detection/e3meter.yaml | 14 + priv/profiles/os_detection/e3meterdc.yaml | 12 + priv/profiles/os_detection/eaton-ats.yaml | 12 + priv/profiles/os_detection/eaton-matrix.yaml | 13 + priv/profiles/os_detection/eaton-mgeups.yaml | 20 + priv/profiles/os_detection/eaton-sc200.yaml | 12 + priv/profiles/os_detection/eaton-sc300.yaml | 11 + priv/profiles/os_detection/eatonpdu.yaml | 11 + priv/profiles/os_detection/eatonups.yaml | 16 + priv/profiles/os_detection/eatonupsm2.yaml | 15 + priv/profiles/os_detection/ecresofm-os.yaml | 16 + priv/profiles/os_detection/edfa.yaml | 14 + priv/profiles/os_detection/edfamux.yaml | 13 + priv/profiles/os_detection/edgecos.yaml | 34 + priv/profiles/os_detection/edgeos-ep.yaml | 19 + priv/profiles/os_detection/edgeos.yaml | 25 + priv/profiles/os_detection/edgeosolt.yaml | 21 + priv/profiles/os_detection/edgeswitch.yaml | 31 + priv/profiles/os_detection/eds.yaml | 19 + priv/profiles/os_detection/ees.yaml | 14 + priv/profiles/os_detection/ekinops.yaml | 9 + priv/profiles/os_detection/elg-ipecs-es.yaml | 13 + priv/profiles/os_detection/elg-ipecs-ucp.yaml | 10 + .../profiles/os_detection/eltek-webpower.yaml | 14 + priv/profiles/os_detection/eltex-mes21xx.yaml | 26 + priv/profiles/os_detection/eltex-mes23xx.yaml | 55 + priv/profiles/os_detection/eltex-mes24xx.yaml | 32 + priv/profiles/os_detection/eltex-olt.yaml | 17 + priv/profiles/os_detection/endian.yaml | 13 + priv/profiles/os_detection/endrun.yaml | 28 + priv/profiles/os_detection/enexus.yaml | 48 + priv/profiles/os_detection/engenius.yaml | 19 + priv/profiles/os_detection/enlogic-pdu.yaml | 13 + priv/profiles/os_detection/enterasys.yaml | 16 + priv/profiles/os_detection/epmp.yaml | 11 + .../os_detection/epson-projector.yaml | 8 + priv/profiles/os_detection/epson-scanner.yaml | 11 + priv/profiles/os_detection/epson.yaml | 15 + priv/profiles/os_detection/equallogic.yaml | 13 + priv/profiles/os_detection/ericsson-6600.yaml | 11 + priv/profiles/os_detection/ericsson-ipos.yaml | 26 + priv/profiles/os_detection/ericsson-ml.yaml | 13 + priv/profiles/os_detection/ericsson-tn.yaml | 9 + priv/profiles/os_detection/esphome.yaml | 11 + priv/profiles/os_detection/etherwan.yaml | 11 + priv/profiles/os_detection/ets.yaml | 13 + priv/profiles/os_detection/eurostor.yaml | 8 + priv/profiles/os_detection/ewc.yaml | 15 + priv/profiles/os_detection/exa.yaml | 14 + priv/profiles/os_detection/exagridos.yaml | 14 + .../profiles/os_detection/exalink-fusion.yaml | 26 + priv/profiles/os_detection/exinda.yaml | 12 + priv/profiles/os_detection/exos.yaml | 12 + priv/profiles/os_detection/extendair.yaml | 13 + priv/profiles/os_detection/extrahop.yaml | 19 + priv/profiles/os_detection/extremeware.yaml | 15 + priv/profiles/os_detection/f5.yaml | 16 + priv/profiles/os_detection/f5os.yaml | 13 + priv/profiles/os_detection/fabos.yaml | 11 + priv/profiles/os_detection/feos.yaml | 13 + .../os_detection/fiberhome-switch.yaml | 12 + priv/profiles/os_detection/fiberhome.yaml | 34 + .../os_detection/fibernet-xmux4-plus.yaml | 12 + .../os_detection/fibrolan-falcon.yaml | 13 + .../os_detection/fibrolan-metrostar.yaml | 13 + priv/profiles/os_detection/firebrick.yaml | 14 + priv/profiles/os_detection/fireware.yaml | 13 + priv/profiles/os_detection/flareos.yaml | 10 + priv/profiles/os_detection/flexbng.yaml | 13 + priv/profiles/os_detection/forcepoint-fe.yaml | 13 + priv/profiles/os_detection/forcepoint.yaml | 13 + priv/profiles/os_detection/fortiadc.yaml | 13 + priv/profiles/os_detection/fortiap.yaml | 10 + .../os_detection/fortiauthenticator.yaml | 19 + priv/profiles/os_detection/fortiextender.yaml | 14 + priv/profiles/os_detection/fortigate.yaml | 16 + priv/profiles/os_detection/fortimail.yaml | 13 + priv/profiles/os_detection/fortios.yaml | 13 + priv/profiles/os_detection/fortisandbox.yaml | 14 + priv/profiles/os_detection/fortiswitch.yaml | 13 + priv/profiles/os_detection/fortivoice.yaml | 13 + priv/profiles/os_detection/fortiweb.yaml | 13 + priv/profiles/os_detection/fortiwlc.yaml | 13 + priv/profiles/os_detection/foundryos.yaml | 13 + priv/profiles/os_detection/freebsd.yaml | 16 + priv/profiles/os_detection/freshtomato.yaml | 15 + priv/profiles/os_detection/fs-bdcom.yaml | 17 + priv/profiles/os_detection/fs-centec.yaml | 19 + priv/profiles/os_detection/fs-gbn.yaml | 14 + priv/profiles/os_detection/fs-net-pdu.yaml | 15 + priv/profiles/os_detection/fs-nmu.yaml | 10 + priv/profiles/os_detection/fs-switch-dc.yaml | 21 + priv/profiles/os_detection/fs-switch.yaml | 27 + priv/profiles/os_detection/ftd.yaml | 50 + priv/profiles/os_detection/ftos.yaml | 14 + .../os_detection/fujifilmprinter.yaml | 13 + .../os_detection/fujitsueternusos.yaml | 13 + priv/profiles/os_detection/fujitsuiRMC.yaml | 13 + priv/profiles/os_detection/fujitsupyos.yaml | 12 + priv/profiles/os_detection/fusion.yaml | 13 + priv/profiles/os_detection/fusionhub.yaml | 9 + priv/profiles/os_detection/fxm.yaml | 14 + priv/profiles/os_detection/fxos.yaml | 29 + priv/profiles/os_detection/gaia.yaml | 26 + priv/profiles/os_detection/gam.yaml | 13 + priv/profiles/os_detection/gamatronicups.yaml | 8 + priv/profiles/os_detection/ge-ups.yaml | 14 + priv/profiles/os_detection/geist-pdu.yaml | 14 + .../profiles/os_detection/geist-watchdog.yaml | 19 + priv/profiles/os_detection/gemds.yaml | 10 + priv/profiles/os_detection/generex-ups.yaml | 38 + priv/profiles/os_detection/generic.yaml | 3 + priv/profiles/os_detection/gepulsar.yaml | 40 + priv/profiles/os_detection/gestetner.yaml | 17 + priv/profiles/os_detection/gigavue.yaml | 14 + priv/profiles/os_detection/gos.yaml | 28 + .../profiles/os_detection/grandstream-ap.yaml | 21 + .../os_detection/grandstream-gxw.yaml | 14 + .../profiles/os_detection/grandstream-ht.yaml | 14 + .../profiles/os_detection/grandstream-sw.yaml | 16 + priv/profiles/os_detection/gude-esb.yaml | 14 + priv/profiles/os_detection/gw-eydfa.yaml | 48 + priv/profiles/os_detection/gwd.yaml | 14 + priv/profiles/os_detection/halon.yaml | 10 + .../os_detection/harmony-enhanced.yaml | 13 + priv/profiles/os_detection/hatteras.yaml | 18 + priv/profiles/os_detection/helios.yaml | 18 + priv/profiles/os_detection/heliosip.yaml | 11 + priv/profiles/os_detection/hikvision-cam.yaml | 14 + priv/profiles/os_detection/hikvision-nvr.yaml | 15 + .../os_detection/himoinsa-gensets.yaml | 12 + priv/profiles/os_detection/hirschmann.yaml | 12 + .../profiles/os_detection/hiveos-network.yaml | 14 + .../os_detection/hiveos-wireless.yaml | 13 + .../os_detection/horizon-compact.yaml | 13 + .../os_detection/horizon-compactplus.yaml | 13 + priv/profiles/os_detection/horizon-duo.yaml | 12 + .../os_detection/horizon-quantum.yaml | 12 + priv/profiles/os_detection/hpblmos.yaml | 13 + priv/profiles/os_detection/hpe-ilo.yaml | 16 + priv/profiles/os_detection/hpe-ipdu.yaml | 11 + priv/profiles/os_detection/hpe-mapdu.yaml | 21 + priv/profiles/os_detection/hpe-msa.yaml | 11 + priv/profiles/os_detection/hpe-msl.yaml | 11 + priv/profiles/os_detection/hpe-pdumm.yaml | 12 + priv/profiles/os_detection/hpe-rtups.yaml | 15 + priv/profiles/os_detection/hpmsm.yaml | 31 + priv/profiles/os_detection/hpvc.yaml | 10 + .../os_detection/huawei-optixrtn.yaml | 12 + priv/profiles/os_detection/huawei-smu.yaml | 21 + priv/profiles/os_detection/huaweiups.yaml | 18 + priv/profiles/os_detection/hwg-perseus.yaml | 13 + priv/profiles/os_detection/hwg-poseidon.yaml | 11 + priv/profiles/os_detection/hwg-ste.yaml | 42 + priv/profiles/os_detection/hwg-ste2.yaml | 14 + priv/profiles/os_detection/hwg-wld.yaml | 22 + priv/profiles/os_detection/hyperion.yaml | 10 + priv/profiles/os_detection/hytera.yaml | 8 + priv/profiles/os_detection/ibm-amm.yaml | 9 + priv/profiles/os_detection/ibm-i.yaml | 12 + priv/profiles/os_detection/ibm-imm.yaml | 19 + priv/profiles/os_detection/ibmc.yaml | 24 + priv/profiles/os_detection/ibmnos.yaml | 12 + priv/profiles/os_detection/ibmtl.yaml | 16 + priv/profiles/os_detection/iboot.yaml | 15 + priv/profiles/os_detection/ibos.yaml | 21 + priv/profiles/os_detection/icotera.yaml | 24 + priv/profiles/os_detection/icr-os.yaml | 15 + priv/profiles/os_detection/ict-mps.yaml | 14 + priv/profiles/os_detection/ict-pdu.yaml | 13 + priv/profiles/os_detection/ict-psu.yaml | 13 + priv/profiles/os_detection/ict-swi.yaml | 14 + priv/profiles/os_detection/ies.yaml | 17 + priv/profiles/os_detection/ies5000.yaml | 14 + priv/profiles/os_detection/ies52xxM.yaml | 20 + priv/profiles/os_detection/ifotec.yaml | 10 + priv/profiles/os_detection/illustra.yaml | 9 + priv/profiles/os_detection/imcopower-big.yaml | 11 + .../os_detection/imcopower-ls110.yaml | 10 + .../os_detection/infinera-groove.yaml | 58 + priv/profiles/os_detection/infinera-pon.yaml | 11 + priv/profiles/os_detection/infinera-xtm.yaml | 8 + priv/profiles/os_detection/infinity.yaml | 13 + priv/profiles/os_detection/informos.yaml | 10 + priv/profiles/os_detection/infortrend.yaml | 13 + priv/profiles/os_detection/innovaphone.yaml | 8 + priv/profiles/os_detection/intelliflash.yaml | 11 + priv/profiles/os_detection/inteno.yaml | 17 + priv/profiles/os_detection/interseptor.yaml | 15 + priv/profiles/os_detection/ionodes.yaml | 13 + priv/profiles/os_detection/ionos.yaml | 29 + priv/profiles/os_detection/ios.yaml | 56 + priv/profiles/os_detection/iosxe.yaml | 53 + priv/profiles/os_detection/iosxr.yaml | 35 + priv/profiles/os_detection/ipolis.yaml | 10 + priv/profiles/os_detection/ipoman.yaml | 12 + priv/profiles/os_detection/iqnos.yaml | 10 + priv/profiles/os_detection/ird.yaml | 18 + priv/profiles/os_detection/ironware.yaml | 16 + priv/profiles/os_detection/ise.yaml | 33 + priv/profiles/os_detection/istars.yaml | 14 + priv/profiles/os_detection/janitza-umg96.yaml | 17 + priv/profiles/os_detection/janitza.yaml | 18 + priv/profiles/os_detection/jetdirect.yaml | 23 + priv/profiles/os_detection/jetstream.yaml | 39 + priv/profiles/os_detection/juniper-mss.yaml | 9 + .../os_detection/juniperex2500os.yaml | 10 + priv/profiles/os_detection/junos.yaml | 19 + priv/profiles/os_detection/junose.yaml | 16 + priv/profiles/os_detection/jwos.yaml | 8 + priv/profiles/os_detection/keeneticos.yaml | 11 + priv/profiles/os_detection/kemp.yaml | 11 + priv/profiles/os_detection/konica.yaml | 18 + priv/profiles/os_detection/kti.yaml | 11 + priv/profiles/os_detection/kyocera.yaml | 15 + priv/profiles/os_detection/lambdatrail.yaml | 13 + priv/profiles/os_detection/lanier.yaml | 15 + priv/profiles/os_detection/lantronix-slc.yaml | 13 + priv/profiles/os_detection/lantronix-uds.yaml | 12 + priv/profiles/os_detection/lcos.yaml | 14 + priv/profiles/os_detection/lcoslx.yaml | 14 + priv/profiles/os_detection/lcossx.yaml | 16 + priv/profiles/os_detection/lenovoemc.yaml | 14 + .../profiles/os_detection/lexmarkprinter.yaml | 15 + priv/profiles/os_detection/liebert.yaml | 15 + priv/profiles/os_detection/ligoos.yaml | 12 + priv/profiles/os_detection/linksys-ss.yaml | 13 + priv/profiles/os_detection/linux.yaml | 31 + priv/profiles/os_detection/loadbalancer.yaml | 19 + priv/profiles/os_detection/logmaster.yaml | 38 + priv/profiles/os_detection/loop-telecom.yaml | 11 + priv/profiles/os_detection/luminato.yaml | 29 + priv/profiles/os_detection/macosx.yaml | 14 + priv/profiles/os_detection/magnum.yaml | 10 + priv/profiles/os_detection/marathonups.yaml | 10 + priv/profiles/os_detection/mbg-ltos6.yaml | 9 + .../profiles/os_detection/mbg-meinbergos.yaml | 9 + .../os_detection/mcafeewebgateway.yaml | 17 + priv/profiles/os_detection/mellanox.yaml | 12 + priv/profiles/os_detection/merakimr.yaml | 13 + priv/profiles/os_detection/merakims.yaml | 14 + priv/profiles/os_detection/merakimx.yaml | 11 + priv/profiles/os_detection/mgepdu.yaml | 11 + .../os_detection/microsemipdsine.yaml | 12 + priv/profiles/os_detection/microsemitime.yaml | 13 + priv/profiles/os_detection/mimosa.yaml | 12 + priv/profiles/os_detection/minkelsrms.yaml | 9 + priv/profiles/os_detection/mirth.yaml | 11 + priv/profiles/os_detection/mlos-atd.yaml | 13 + priv/profiles/os_detection/mlos-nsp.yaml | 19 + priv/profiles/os_detection/mni.yaml | 12 + priv/profiles/os_detection/mobileiron.yaml | 19 + priv/profiles/os_detection/monowall.yaml | 12 + .../profiles/os_detection/montclair-edfa.yaml | 15 + .../os_detection/morningstar-mppt.yaml | 40 + .../os_detection/morningstar-pwm.yaml | 22 + priv/profiles/os_detection/motorola-cm.yaml | 10 + priv/profiles/os_detection/moxa-awk.yaml | 13 + .../os_detection/moxa-eds-4000-series.yaml | 11 + .../os_detection/moxa-etherdevice.yaml | 13 + priv/profiles/os_detection/moxa-nport.yaml | 12 + priv/profiles/os_detection/mpb-srp.yaml | 15 + priv/profiles/os_detection/mrv-od.yaml | 13 + priv/profiles/os_detection/mrvld.yaml | 9 + priv/profiles/os_detection/msl.yaml | 20 + priv/profiles/os_detection/mts-com.yaml | 13 + priv/profiles/os_detection/mypoweros.yaml | 17 + priv/profiles/os_detection/neptune.yaml | 13 + priv/profiles/os_detection/netagent2.yaml | 12 + priv/profiles/os_detection/netapp.yaml | 10 + priv/profiles/os_detection/netbotz.yaml | 11 + priv/profiles/os_detection/netbsd.yaml | 12 + priv/profiles/os_detection/netgear.yaml | 16 + priv/profiles/os_detection/netguardian.yaml | 13 + priv/profiles/os_detection/netmanplus.yaml | 15 + priv/profiles/os_detection/netmodule.yaml | 10 + priv/profiles/os_detection/netonix.yaml | 12 + priv/profiles/os_detection/netopia.yaml | 7 + .../os_detection/netscaler-sdwan.yaml | 12 + priv/profiles/os_detection/netscaler.yaml | 15 + priv/profiles/os_detection/netspire.yaml | 9 + priv/profiles/os_detection/netsure.yaml | 40 + priv/profiles/os_detection/netvision-rfc.yaml | 16 + priv/profiles/os_detection/netware.yaml | 8 + priv/profiles/os_detection/nexans.yaml | 11 + priv/profiles/os_detection/nimbleos.yaml | 12 + priv/profiles/os_detection/nios.yaml | 9 + priv/profiles/os_detection/nitro.yaml | 15 + priv/profiles/os_detection/nokia-1830.yaml | 21 + priv/profiles/os_detection/nokia-isam.yaml | 26 + priv/profiles/os_detection/nos.yaml | 17 + priv/profiles/os_detection/nrg.yaml | 15 + priv/profiles/os_detection/ns-bsd.yaml | 17 + priv/profiles/os_detection/nti.yaml | 12 + priv/profiles/os_detection/ntron.yaml | 13 + priv/profiles/os_detection/nutanix-aos.yaml | 13 + priv/profiles/os_detection/nxos.yaml | 38 + priv/profiles/os_detection/occamos.yaml | 16 + priv/profiles/os_detection/oceanstor.yaml | 12 + priv/profiles/os_detection/ocnos.yaml | 13 + priv/profiles/os_detection/okilan.yaml | 15 + priv/profiles/os_detection/omnipcx.yaml | 13 + .../os_detection/omnitron-iconverter.yaml | 9 + priv/profiles/os_detection/oneaccess.yaml | 16 + priv/profiles/os_detection/onefs.yaml | 17 + priv/profiles/os_detection/ons.yaml | 30 + priv/profiles/os_detection/open-e.yaml | 16 + priv/profiles/os_detection/openbsd.yaml | 14 + priv/profiles/os_detection/opengear.yaml | 13 + priv/profiles/os_detection/openindiana.yaml | 12 + priv/profiles/os_detection/opensolaris.yaml | 12 + priv/profiles/os_detection/openvms.yaml | 7 + priv/profiles/os_detection/openwrt.yaml | 15 + priv/profiles/os_detection/opnsense.yaml | 19 + priv/profiles/os_detection/oracle-ilom.yaml | 12 + .../os_detection/orolia-securesync.yaml | 9 + priv/profiles/os_detection/orvaldi-ups.yaml | 19 + priv/profiles/os_detection/osag.yaml | 14 + priv/profiles/os_detection/osm.yaml | 15 + priv/profiles/os_detection/packetlight.yaml | 12 + priv/profiles/os_detection/packetshaper.yaml | 13 + priv/profiles/os_detection/panasonic-ns.yaml | 11 + priv/profiles/os_detection/pandacom.yaml | 11 + priv/profiles/os_detection/panduit-eagle.yaml | 11 + priv/profiles/os_detection/panduit.yaml | 12 + priv/profiles/os_detection/panos.yaml | 13 + priv/profiles/os_detection/papouch-quido.yaml | 11 + priv/profiles/os_detection/papouch-tme.yaml | 9 + priv/profiles/os_detection/paradyne.yaml | 13 + priv/profiles/os_detection/parks-switch.yaml | 9 + priv/profiles/os_detection/patton-sn.yaml | 14 + priv/profiles/os_detection/pbn-cp.yaml | 20 + priv/profiles/os_detection/pbn.yaml | 15 + .../os_detection/pcoweb-rittal-lcp-3311.yaml | 12 + .../os_detection/pcoweb-rittalchiller.yaml | 13 + priv/profiles/os_detection/pcoweb.yaml | 21 + priv/profiles/os_detection/pegasus.yaml | 16 + priv/profiles/os_detection/pepwave.yaml | 12 + priv/profiles/os_detection/perle.yaml | 13 + priv/profiles/os_detection/pfsense.yaml | 13 + .../profiles/os_detection/phybridge-flex.yaml | 18 + priv/profiles/os_detection/picos.yaml | 11 + priv/profiles/os_detection/ping.yaml | 5 + priv/profiles/os_detection/pixos.yaml | 44 + priv/profiles/os_detection/pktj.yaml | 18 + priv/profiles/os_detection/planet-pdu.yaml | 15 + priv/profiles/os_detection/planetos.yaml | 14 + priv/profiles/os_detection/pmp.yaml | 13 + priv/profiles/os_detection/polycomLens.yaml | 10 + priv/profiles/os_detection/poweralert.yaml | 20 + priv/profiles/os_detection/powercode.yaml | 14 + priv/profiles/os_detection/powerconnect.yaml | 14 + priv/profiles/os_detection/powerlogic.yaml | 14 + priv/profiles/os_detection/powervault.yaml | 9 + .../os_detection/powerwalker-vfi.yaml | 21 + priv/profiles/os_detection/powerwalker.yaml | 11 + priv/profiles/os_detection/prestige.yaml | 10 + .../os_detection/primeinfrastructure.yaml | 30 + priv/profiles/os_detection/primekey-sw.yaml | 18 + priv/profiles/os_detection/primekey.yaml | 27 + priv/profiles/os_detection/procera.yaml | 15 + priv/profiles/os_detection/procurve.yaml | 14 + priv/profiles/os_detection/profline-sfd.yaml | 11 + .../os_detection/protelevision-t1.yaml | 13 + priv/profiles/os_detection/proxim.yaml | 10 + priv/profiles/os_detection/proxmox.yaml | 26 + priv/profiles/os_detection/ptp250.yaml | 13 + priv/profiles/os_detection/ptp500.yaml | 14 + priv/profiles/os_detection/ptp600.yaml | 14 + priv/profiles/os_detection/ptp650.yaml | 13 + priv/profiles/os_detection/ptp670.yaml | 13 + priv/profiles/os_detection/ptp800.yaml | 13 + priv/profiles/os_detection/pulse.yaml | 12 + priv/profiles/os_detection/purestorage.yaml | 100 + priv/profiles/os_detection/qnap.yaml | 20 + priv/profiles/os_detection/qtech.yaml | 13 + priv/profiles/os_detection/quanta.yaml | 20 + priv/profiles/os_detection/quantastor.yaml | 24 + priv/profiles/os_detection/quantum.yaml | 9 + priv/profiles/os_detection/rad-rici.yaml | 12 + priv/profiles/os_detection/radlan.yaml | 23 + priv/profiles/os_detection/radwin.yaml | 13 + priv/profiles/os_detection/raisecom-ros.yaml | 33 + priv/profiles/os_detection/raisecom.yaml | 33 + priv/profiles/os_detection/rajant.yaml | 13 + priv/profiles/os_detection/raritan-emx.yaml | 10 + priv/profiles/os_detection/raritan-kvm.yaml | 10 + priv/profiles/os_detection/raritan-pdu.yaml | 12 + priv/profiles/os_detection/ray.yaml | 12 + priv/profiles/os_detection/ray3.yaml | 13 + priv/profiles/os_detection/recoveryos.yaml | 13 + priv/profiles/os_detection/remoteye4.yaml | 11 + priv/profiles/os_detection/ricoh.yaml | 16 + .../os_detection/rittal-cmc-iii-pu.yaml | 20 + priv/profiles/os_detection/rittal-cmc.yaml | 16 + priv/profiles/os_detection/rittal-lcp.yaml | 20 + priv/profiles/os_detection/riverbed.yaml | 11 + priv/profiles/os_detection/rnx-updu.yaml | 15 + priv/profiles/os_detection/ros.yaml | 11 + priv/profiles/os_detection/routeros.yaml | 20 + priv/profiles/os_detection/rs.yaml | 10 + priv/profiles/os_detection/rubrik.yaml | 15 + .../os_detection/ruckuswireless-hotzone.yaml | 16 + .../os_detection/ruckuswireless-sz.yaml | 32 + .../ruckuswireless-unleashed.yaml | 22 + .../profiles/os_detection/ruckuswireless.yaml | 20 + priv/profiles/os_detection/ruijie.yaml | 13 + priv/profiles/os_detection/rutos-2xx.yaml | 20 + priv/profiles/os_detection/rutos-rutm.yaml | 20 + priv/profiles/os_detection/rutos-rutx.yaml | 27 + priv/profiles/os_detection/rutos.yaml | 28 + priv/profiles/os_detection/saf-cfm.yaml | 13 + priv/profiles/os_detection/saf-integra-b.yaml | 15 + priv/profiles/os_detection/saf-integra-e.yaml | 12 + priv/profiles/os_detection/saf-integra-w.yaml | 13 + priv/profiles/os_detection/saf-integra-x.yaml | 15 + priv/profiles/os_detection/saf.yaml | 12 + priv/profiles/os_detection/samlex.yaml | 13 + .../profiles/os_detection/samsungprinter.yaml | 18 + priv/profiles/os_detection/sanos.yaml | 31 + priv/profiles/os_detection/savin.yaml | 15 + priv/profiles/os_detection/scalance.yaml | 14 + .../profiles/os_detection/schleifenbauer.yaml | 15 + priv/profiles/os_detection/scopia.yaml | 12 + priv/profiles/os_detection/screenos.yaml | 11 + priv/profiles/os_detection/scs-ks.yaml | 42 + .../profiles/os_detection/secureplatform.yaml | 30 + priv/profiles/os_detection/seh-uds.yaml | 8 + .../os_detection/sensatronics-em1.yaml | 11 + .../os_detection/sensatronics-ittm.yaml | 11 + priv/profiles/os_detection/sentry3.yaml | 26 + priv/profiles/os_detection/sentry4.yaml | 26 + priv/profiles/os_detection/seos.yaml | 9 + priv/profiles/os_detection/serveriron.yaml | 14 + priv/profiles/os_detection/serverscheck.yaml | 9 + priv/profiles/os_detection/sgos.yaml | 14 + priv/profiles/os_detection/sharp.yaml | 14 + priv/profiles/os_detection/siklu.yaml | 12 + priv/profiles/os_detection/sinetica.yaml | 12 + priv/profiles/os_detection/siteboss.yaml | 14 + priv/profiles/os_detection/siteboss360.yaml | 14 + priv/profiles/os_detection/siteboss550.yaml | 14 + priv/profiles/os_detection/siteboss571.yaml | 12 + priv/profiles/os_detection/siteboss572.yaml | 12 + priv/profiles/os_detection/sitemonitor.yaml | 12 + priv/profiles/os_detection/sixnet.yaml | 14 + .../os_detection/skyhighwebprotect.yaml | 19 + priv/profiles/os_detection/slms.yaml | 17 + priv/profiles/os_detection/slxos.yaml | 16 + priv/profiles/os_detection/sm-os.yaml | 13 + priv/profiles/os_detection/smartax-mdu.yaml | 15 + priv/profiles/os_detection/smartax.yaml | 19 + priv/profiles/os_detection/smartbyte.yaml | 13 + priv/profiles/os_detection/smartos-dcp-m.yaml | 12 + priv/profiles/os_detection/smartos-t.yaml | 14 + priv/profiles/os_detection/smartos.yaml | 14 + priv/profiles/os_detection/snr-erd.yaml | 12 + priv/profiles/os_detection/snr.yaml | 15 + priv/profiles/os_detection/socomec-ups.yaml | 14 + priv/profiles/os_detection/socomec.yaml | 11 + priv/profiles/os_detection/solaris.yaml | 17 + priv/profiles/os_detection/solidserver.yaml | 13 + priv/profiles/os_detection/sonicwall.yaml | 12 + priv/profiles/os_detection/sonus-gsx.yaml | 8 + priv/profiles/os_detection/sonus-sbc.yaml | 9 + priv/profiles/os_detection/sophos-xg.yaml | 13 + priv/profiles/os_detection/sophos.yaml | 13 + priv/profiles/os_detection/speedtouch.yaml | 14 + priv/profiles/os_detection/srlinux.yaml | 22 + priv/profiles/os_detection/sslvis.yaml | 14 + priv/profiles/os_detection/ssu2000.yaml | 49 + priv/profiles/os_detection/stellar.yaml | 23 + priv/profiles/os_detection/stoneos.yaml | 12 + priv/profiles/os_detection/stulz.yaml | 23 + priv/profiles/os_detection/sub10.yaml | 10 + priv/profiles/os_detection/supercap.yaml | 15 + .../profiles/os_detection/supermicro-bmc.yaml | 17 + .../os_detection/supermicro-switch.yaml | 14 + .../os_detection/supervyse-openbmc.yaml | 16 + priv/profiles/os_detection/svos.yaml | 9 + priv/profiles/os_detection/swos.yaml | 12 + priv/profiles/os_detection/symbol.yaml | 8 + priv/profiles/os_detection/tachyon.yaml | 12 + priv/profiles/os_detection/tailyn.yaml | 11 + priv/profiles/os_detection/tait-infra93.yaml | 11 + priv/profiles/os_detection/tait-tnadmin.yaml | 13 + priv/profiles/os_detection/teldat.yaml | 17 + priv/profiles/os_detection/televes-fs.yaml | 11 + priv/profiles/os_detection/teracom.yaml | 8 + .../profiles/os_detection/teradici-pcoip.yaml | 11 + priv/profiles/os_detection/terra-sdi410c.yaml | 12 + priv/profiles/os_detection/terra-sdi480.yaml | 12 + priv/profiles/os_detection/terra.yaml | 11 + priv/profiles/os_detection/tgos.yaml | 12 + priv/profiles/os_detection/thomson-cm.yaml | 10 + priv/profiles/os_detection/timos.yaml | 19 + priv/profiles/os_detection/tomato.yaml | 16 + priv/profiles/os_detection/topvision.yaml | 10 + priv/profiles/os_detection/toshiba-tec.yaml | 19 + priv/profiles/os_detection/tpconductor.yaml | 25 + priv/profiles/os_detection/tpdin.yaml | 13 + priv/profiles/os_detection/tpdin3.yaml | 14 + priv/profiles/os_detection/tplink.yaml | 13 + priv/profiles/os_detection/transition.yaml | 12 + priv/profiles/os_detection/tranzeo.yaml | 9 + priv/profiles/os_detection/trendnet.yaml | 16 + .../os_detection/trippliteconsole.yaml | 17 + priv/profiles/os_detection/truenas-scale.yaml | 26 + priv/profiles/os_detection/truenas.yaml | 29 + priv/profiles/os_detection/ts-bspdu.yaml | 11 + priv/profiles/os_detection/tsc.yaml | 10 + priv/profiles/os_detection/ubiquoss-pon.yaml | 12 + priv/profiles/os_detection/ucopia.yaml | 12 + priv/profiles/os_detection/ucos.yaml | 34 + priv/profiles/os_detection/uhp.yaml | 11 + priv/profiles/os_detection/ulaf.yaml | 10 + priv/profiles/os_detection/unifi-usp.yaml | 11 + priv/profiles/os_detection/unifi.yaml | 28 + priv/profiles/os_detection/uniping.yaml | 14 + priv/profiles/os_detection/univerge.yaml | 10 + priv/profiles/os_detection/utax.yaml | 16 + priv/profiles/os_detection/valere.yaml | 11 + priv/profiles/os_detection/vccodec.yaml | 25 + priv/profiles/os_detection/vcs.yaml | 25 + priv/profiles/os_detection/vega.yaml | 8 + priv/profiles/os_detection/velocloud.yaml | 16 + priv/profiles/os_detection/venturi.yaml | 12 + priv/profiles/os_detection/vertiv-dcs.yaml | 16 + priv/profiles/os_detection/vertiv-ita2.yaml | 12 + priv/profiles/os_detection/vertiv-pdu.yaml | 13 + priv/profiles/os_detection/vigintos.yaml | 13 + priv/profiles/os_detection/viprinux.yaml | 13 + priv/profiles/os_detection/viptela.yaml | 14 + priv/profiles/os_detection/vivotek.yaml | 8 + priv/profiles/os_detection/vmware-esxi.yaml | 15 + priv/profiles/os_detection/vmware-vcsa.yaml | 18 + priv/profiles/os_detection/volius.yaml | 12 + priv/profiles/os_detection/voss.yaml | 24 + priv/profiles/os_detection/voswall.yaml | 12 + priv/profiles/os_detection/vrp.yaml | 23 + priv/profiles/os_detection/vsolution.yaml | 14 + priv/profiles/os_detection/vubiq.yaml | 10 + priv/profiles/os_detection/vutlan.yaml | 12 + priv/profiles/os_detection/vxoa.yaml | 14 + priv/profiles/os_detection/vyatta.yaml | 14 + priv/profiles/os_detection/vyos.yaml | 17 + priv/profiles/os_detection/waas.yaml | 40 + priv/profiles/os_detection/webmon.yaml | 12 + .../os_detection/webpower-smart2.yaml | 18 + priv/profiles/os_detection/webpower.yaml | 12 + priv/profiles/os_detection/websensor.yaml | 10 + priv/profiles/os_detection/weos.yaml | 13 + .../os_detection/westmountainradio.yaml | 16 + priv/profiles/os_detection/windows.yaml | 17 + priv/profiles/os_detection/wipipe.yaml | 9 + priv/profiles/os_detection/wis-bridge.yaml | 14 + priv/profiles/os_detection/wisi-tangram.yaml | 12 + priv/profiles/os_detection/witchos.yaml | 12 + priv/profiles/os_detection/wti-console.yaml | 9 + priv/profiles/os_detection/wti-mpc.yaml | 26 + priv/profiles/os_detection/wti-power.yaml | 12 + priv/profiles/os_detection/wut.yaml | 11 + priv/profiles/os_detection/wxgoos.yaml | 10 + priv/profiles/os_detection/xclarity.yaml | 21 + priv/profiles/os_detection/xerox.yaml | 16 + priv/profiles/os_detection/xirrus_aos.yaml | 13 + priv/profiles/os_detection/xos.yaml | 14 + priv/profiles/os_detection/yunshan.yaml | 13 + priv/profiles/os_detection/zebra.yaml | 12 + .../os_detection/zenitel-alphacom.yaml | 15 + .../os_detection/zenitel-ipstation.yaml | 13 + .../os_detection/zenitel-vsdevice.yaml | 15 + priv/profiles/os_detection/zmtel.yaml | 9 + priv/profiles/os_detection/zxa10.yaml | 15 + priv/profiles/os_detection/zxdsl.yaml | 15 + priv/profiles/os_detection/zxr10.yaml | 15 + priv/profiles/os_detection/zynos.yaml | 25 + priv/profiles/os_detection/zywall.yaml | 18 + priv/profiles/os_detection/zyxelac.yaml | 15 + priv/profiles/os_detection/zyxelnwa.yaml | 11 + priv/profiles/os_detection/zyxelusg.yaml | 16 + priv/profiles/os_detection/zyxelwlc.yaml | 20 + priv/profiles/os_discovery/3com.yaml | 14 + priv/profiles/os_discovery/aaron.yaml | 106 + priv/profiles/os_discovery/abbups.yaml | 5 + priv/profiles/os_discovery/acano.yaml | 3 + priv/profiles/os_discovery/acos.yaml | 145 + priv/profiles/os_discovery/acs.yaml | 4 + priv/profiles/os_discovery/adtran-aos.yaml | 16 + priv/profiles/os_discovery/adva-alm.yaml | 21 + priv/profiles/os_discovery/adva-aos.yaml | 462 +++ priv/profiles/os_discovery/adva-osa.yaml | 260 ++ priv/profiles/os_discovery/adva_fsp150.yaml | 89 + priv/profiles/os_discovery/adva_fsp3kr7.yaml | 8 + priv/profiles/os_discovery/adva_xg300.yaml | 96 + priv/profiles/os_discovery/advantech.yaml | 127 + priv/profiles/os_discovery/aen.yaml | 5 + priv/profiles/os_discovery/airos-af-ltu.yaml | 55 + priv/profiles/os_discovery/airos-af.yaml | 56 + priv/profiles/os_discovery/airos-af60.yaml | 58 + priv/profiles/os_discovery/airos.yaml | 48 + priv/profiles/os_discovery/airport.yaml | 3 + priv/profiles/os_discovery/aix.yaml | 23 + priv/profiles/os_discovery/akcp.yaml | 91 + priv/profiles/os_discovery/alcoma-almp.yaml | 15 + priv/profiles/os_discovery/algcom-dc-ups.yaml | 169 ++ priv/profiles/os_discovery/algcom-sm.yaml | 66 + priv/profiles/os_discovery/allied-tq.yaml | 3 + priv/profiles/os_discovery/aloha.yaml | 48 + .../os_discovery/alpineoe-tdcmedfa.yaml | 420 +++ priv/profiles/os_discovery/altalabs-ap.yaml | 3 + priv/profiles/os_discovery/altalabs.yaml | 3 + priv/profiles/os_discovery/alteonos.yaml | 21 + priv/profiles/os_discovery/anyos.yaml | 4 + priv/profiles/os_discovery/aos-emu2.yaml | 8 + priv/profiles/os_discovery/aos.yaml | 51 + priv/profiles/os_discovery/aos6.yaml | 175 ++ priv/profiles/os_discovery/aos7.yaml | 271 ++ priv/profiles/os_discovery/apc-cpdu.yaml | 120 + priv/profiles/os_discovery/apc-epdu.yaml | 38 + priv/profiles/os_discovery/apc-mgeups.yaml | 241 ++ priv/profiles/os_discovery/apc-netbotz.yaml | 34 + priv/profiles/os_discovery/apc.yaml | 1383 +++++++++ priv/profiles/os_discovery/apex-lynx.yaml | 4 + priv/profiles/os_discovery/apex-plus.yaml | 4 + priv/profiles/os_discovery/apic.yaml | 3 + priv/profiles/os_discovery/apsoluteos.yaml | 16 + priv/profiles/os_discovery/arbos.yaml | 48 + priv/profiles/os_discovery/areca.yaml | 7 + priv/profiles/os_discovery/arista-mos.yaml | 4 + priv/profiles/os_discovery/arista_eos.yaml | 4 + priv/profiles/os_discovery/arrayos.yaml | 4 + priv/profiles/os_discovery/arris-apex.yaml | 283 ++ priv/profiles/os_discovery/arris-c3.yaml | 122 + .../os_discovery/arris-dsr4410md.yaml | 19 + priv/profiles/os_discovery/aruba-instant.yaml | 42 + priv/profiles/os_discovery/arubaos-cx.yaml | 189 ++ priv/profiles/os_discovery/arubaos.yaml | 35 + priv/profiles/os_discovery/asa.yaml | 85 + priv/profiles/os_discovery/ascom.yaml | 3 + priv/profiles/os_discovery/asyncos.yaml | 3 + priv/profiles/os_discovery/atenpdu.yaml | 40 + priv/profiles/os_discovery/ats.yaml | 108 + priv/profiles/os_discovery/audiocodes.yaml | 221 ++ priv/profiles/os_discovery/avaya-ipo.yaml | 4 + priv/profiles/os_discovery/aviat-wtm.yaml | 30 + priv/profiles/os_discovery/avocent-mp.yaml | 3 + priv/profiles/os_discovery/avocent.yaml | 248 ++ priv/profiles/os_discovery/avr-hd.yaml | 4 + priv/profiles/os_discovery/avtech.yaml | 333 +++ priv/profiles/os_discovery/awplus.yaml | 171 ++ priv/profiles/os_discovery/axisaudio.yaml | 3 + priv/profiles/os_discovery/axiscam.yaml | 5 + priv/profiles/os_discovery/axos.yaml | 182 ++ priv/profiles/os_discovery/baicells-od04.yaml | 152 + .../os_discovery/barracudaspamfirewall.yaml | 16 + .../os_discovery/barracudawafirewall.yaml | 5 + priv/profiles/os_discovery/bats.yaml | 155 + priv/profiles/os_discovery/bdcom.yaml | 366 +++ priv/profiles/os_discovery/benuos.yaml | 17 + priv/profiles/os_discovery/binos.yaml | 16 + priv/profiles/os_discovery/binox.yaml | 18 + .../os_discovery/bintec-beip-plus.yaml | 29 + priv/profiles/os_discovery/bintec-smart.yaml | 3 + priv/profiles/os_discovery/bison.yaml | 16 + priv/profiles/os_discovery/bke.yaml | 97 + priv/profiles/os_discovery/bktel-oa.yaml | 86 + .../os_discovery/bluecatnetworks.yaml | 82 + priv/profiles/os_discovery/bnt.yaml | 3 + priv/profiles/os_discovery/boss.yaml | 10 + priv/profiles/os_discovery/breeze.yaml | 4 + priv/profiles/os_discovery/broadworks.yaml | 125 + priv/profiles/os_discovery/bti800.yaml | 44 + priv/profiles/os_discovery/buffalo.yaml | 3 + priv/profiles/os_discovery/calix.yaml | 20 + priv/profiles/os_discovery/canonprinter.yaml | 5 + priv/profiles/os_discovery/cat1900.yaml | 4 + priv/profiles/os_discovery/catos.yaml | 4 + priv/profiles/os_discovery/cdata.yaml | 44 + priv/profiles/os_discovery/ceraos.yaml | 55 + priv/profiles/os_discovery/cetpower.yaml | 64 + .../profiles/os_discovery/chatsworth-pdu.yaml | 94 + .../os_discovery/christie-projector.yaml | 5 + priv/profiles/os_discovery/ciena-rls.yaml | 127 + priv/profiles/os_discovery/ciena-saos.yaml | 282 ++ priv/profiles/os_discovery/ciena-sds.yaml | 970 +++++++ .../os_discovery/ciena-waveserver.yaml | 129 + priv/profiles/os_discovery/cimc.yaml | 287 ++ priv/profiles/os_discovery/cips.yaml | 3 + priv/profiles/os_discovery/cirpack.yaml | 21 + priv/profiles/os_discovery/ciscoepc.yaml | 4 + priv/profiles/os_discovery/ciscosat.yaml | 32 + priv/profiles/os_discovery/ciscosb.yaml | 103 + priv/profiles/os_discovery/ciscosce.yaml | 3 + priv/profiles/os_discovery/ciscosrp.yaml | 9 + priv/profiles/os_discovery/ciscowap.yaml | 3 + priv/profiles/os_discovery/ciscowlc.yaml | 20 + priv/profiles/os_discovery/clearpass.yaml | 5 + priv/profiles/os_discovery/clickshare.yaml | 30 + priv/profiles/os_discovery/cmm.yaml | 12 + priv/profiles/os_discovery/cmm4.yaml | 14 + priv/profiles/os_discovery/cms.yaml | 90 + priv/profiles/os_discovery/cnmatrix.yaml | 50 + priv/profiles/os_discovery/cnos.yaml | 55 + priv/profiles/os_discovery/cnpilote.yaml | 4 + priv/profiles/os_discovery/cnpilotr.yaml | 5 + priv/profiles/os_discovery/cnwave60.yaml | 45 + priv/profiles/os_discovery/compas.yaml | 92 + priv/profiles/os_discovery/comware.yaml | 44 + priv/profiles/os_discovery/controlbox.yaml | 40 + priv/profiles/os_discovery/ctcu.yaml | 3 + priv/profiles/os_discovery/ctm.yaml | 152 + priv/profiles/os_discovery/cts.yaml | 55 + priv/profiles/os_discovery/cxc.yaml | 99 + priv/profiles/os_discovery/cxr-ts.yaml | 36 + priv/profiles/os_discovery/cxrc.yaml | 113 + priv/profiles/os_discovery/cyberoam-utm.yaml | 25 + priv/profiles/os_discovery/cyberpower.yaml | 177 ++ priv/profiles/os_discovery/dahua-nvr.yaml | 23 + priv/profiles/os_discovery/dantherm-os.yaml | 146 + priv/profiles/os_discovery/dasan-nos.yaml | 18 + priv/profiles/os_discovery/datacom-dmos.yaml | 23 + priv/profiles/os_discovery/datacom.yaml | 52 + priv/profiles/os_discovery/datadomain.yaml | 20 + priv/profiles/os_discovery/dcn-software.yaml | 22 + priv/profiles/os_discovery/ddnos.yaml | 44 + priv/profiles/os_discovery/deliberant.yaml | 4 + .../os_discovery/dell-compellent.yaml | 257 ++ priv/profiles/os_discovery/dell-laser.yaml | 7 + priv/profiles/os_discovery/dell-ome-m.yaml | 171 ++ priv/profiles/os_discovery/dell-os10.yaml | 55 + .../os_discovery/dell-powervault.yaml | 6 + priv/profiles/os_discovery/dell-rcs.yaml | 3 + priv/profiles/os_discovery/dell-rpdu.yaml | 100 + priv/profiles/os_discovery/dell-ups.yaml | 37 + priv/profiles/os_discovery/deltaorion.yaml | 79 + priv/profiles/os_discovery/deltaups.yaml | 7 + priv/profiles/os_discovery/deva-db7001.yaml | 98 + priv/profiles/os_discovery/develop.yaml | 3 + priv/profiles/os_discovery/dhcpatriot.yaml | 5 + priv/profiles/os_discovery/digipower.yaml | 40 + priv/profiles/os_discovery/dkt.yaml | 26 + priv/profiles/os_discovery/dlink-dgs1250.yaml | 177 ++ priv/profiles/os_discovery/dlink.yaml | 81 + priv/profiles/os_discovery/dnos.yaml | 239 ++ priv/profiles/os_discovery/dpi.yaml | 3 + priv/profiles/os_discovery/drac.yaml | 514 ++++ priv/profiles/os_discovery/dragonfly.yaml | 3 + priv/profiles/os_discovery/draytek.yaml | 7 + priv/profiles/os_discovery/dsm.yaml | 144 + priv/profiles/os_discovery/e3meter.yaml | 84 + priv/profiles/os_discovery/e3meterdc.yaml | 86 + priv/profiles/os_discovery/eaton-ats.yaml | 44 + priv/profiles/os_discovery/eaton-matrix.yaml | 161 ++ priv/profiles/os_discovery/eaton-mgeups.yaml | 195 ++ priv/profiles/os_discovery/eaton-sc200.yaml | 174 ++ priv/profiles/os_discovery/eaton-sc300.yaml | 148 + priv/profiles/os_discovery/eatonpdu.yaml | 59 + priv/profiles/os_discovery/eatonups.yaml | 159 + priv/profiles/os_discovery/eatonupsm2.yaml | 62 + priv/profiles/os_discovery/ecresofm-os.yaml | 220 ++ priv/profiles/os_discovery/edfa.yaml | 131 + priv/profiles/os_discovery/edfamux.yaml | 62 + priv/profiles/os_discovery/edgeos-ep.yaml | 128 + priv/profiles/os_discovery/edgeos.yaml | 5 + priv/profiles/os_discovery/edgeosolt.yaml | 73 + priv/profiles/os_discovery/edgeswitch.yaml | 75 + priv/profiles/os_discovery/eds.yaml | 80 + priv/profiles/os_discovery/ees.yaml | 207 ++ priv/profiles/os_discovery/ekinops.yaml | 20 + priv/profiles/os_discovery/elg-ipecs-es.yaml | 3 + priv/profiles/os_discovery/elg-ipecs-ucp.yaml | 3 + .../profiles/os_discovery/eltek-webpower.yaml | 272 ++ priv/profiles/os_discovery/eltex-mes21xx.yaml | 71 + priv/profiles/os_discovery/eltex-mes23xx.yaml | 157 + priv/profiles/os_discovery/eltex-mes24xx.yaml | 83 + priv/profiles/os_discovery/eltex-olt.yaml | 13 + priv/profiles/os_discovery/endrun.yaml | 12 + priv/profiles/os_discovery/enexus.yaml | 678 +++++ priv/profiles/os_discovery/enlogic-pdu.yaml | 111 + priv/profiles/os_discovery/enterasys.yaml | 11 + priv/profiles/os_discovery/epmp.yaml | 54 + priv/profiles/os_discovery/epson-scanner.yaml | 5 + priv/profiles/os_discovery/epson.yaml | 3 + priv/profiles/os_discovery/ericsson-6600.yaml | 52 + priv/profiles/os_discovery/ericsson-ipos.yaml | 146 + priv/profiles/os_discovery/ericsson-ml.yaml | 48 + priv/profiles/os_discovery/ericsson-tn.yaml | 83 + priv/profiles/os_discovery/esphome.yaml | 74 + priv/profiles/os_discovery/etherwan.yaml | 5 + priv/profiles/os_discovery/ets.yaml | 21 + priv/profiles/os_discovery/eurostor.yaml | 132 + priv/profiles/os_discovery/ewc.yaml | 9 + priv/profiles/os_discovery/exagridos.yaml | 3 + .../profiles/os_discovery/exalink-fusion.yaml | 60 + priv/profiles/os_discovery/exos.yaml | 61 + priv/profiles/os_discovery/extendair.yaml | 4 + priv/profiles/os_discovery/extrahop.yaml | 3 + priv/profiles/os_discovery/extremeware.yaml | 3 + priv/profiles/os_discovery/f5.yaml | 114 + priv/profiles/os_discovery/f5os.yaml | 192 ++ priv/profiles/os_discovery/fabos.yaml | 102 + priv/profiles/os_discovery/feos.yaml | 116 + .../os_discovery/fiberhome-switch.yaml | 72 + priv/profiles/os_discovery/fiberhome.yaml | 61 + .../os_discovery/fibernet-xmux4-plus.yaml | 163 ++ .../os_discovery/fibrolan-falcon.yaml | 60 + .../os_discovery/fibrolan-metrostar.yaml | 43 + priv/profiles/os_discovery/firebox.yaml | 3 + priv/profiles/os_discovery/firebrick.yaml | 930 ++++++ priv/profiles/os_discovery/fireware.yaml | 3 + priv/profiles/os_discovery/flareos.yaml | 3 + priv/profiles/os_discovery/flexbng.yaml | 121 + priv/profiles/os_discovery/forcepoint-fe.yaml | 19 + priv/profiles/os_discovery/forcepoint.yaml | 28 + priv/profiles/os_discovery/fortiadc.yaml | 51 + priv/profiles/os_discovery/fortiap.yaml | 54 + .../os_discovery/fortiauthenticator.yaml | 12 + priv/profiles/os_discovery/fortiextender.yaml | 42 + priv/profiles/os_discovery/fortigate.yaml | 383 +++ priv/profiles/os_discovery/fortimail.yaml | 26 + priv/profiles/os_discovery/fortios.yaml | 21 + priv/profiles/os_discovery/fortisandbox.yaml | 21 + priv/profiles/os_discovery/fortiswitch.yaml | 46 + priv/profiles/os_discovery/fortivoice.yaml | 12 + priv/profiles/os_discovery/fortiweb.yaml | 23 + priv/profiles/os_discovery/fortiwlc.yaml | 11 + priv/profiles/os_discovery/foundryos.yaml | 3 + priv/profiles/os_discovery/freebsd.yaml | 5 + priv/profiles/os_discovery/freshtomato.yaml | 5 + priv/profiles/os_discovery/fs-bdcom.yaml | 369 +++ priv/profiles/os_discovery/fs-centec.yaml | 72 + priv/profiles/os_discovery/fs-gbn.yaml | 15 + priv/profiles/os_discovery/fs-nmu.yaml | 6 + priv/profiles/os_discovery/fs-switch-dc.yaml | 171 ++ priv/profiles/os_discovery/fs-switch.yaml | 181 ++ priv/profiles/os_discovery/ftd.yaml | 90 + priv/profiles/os_discovery/ftos.yaml | 20 + .../os_discovery/fujifilmprinter.yaml | 4 + priv/profiles/os_discovery/fujitsuiRMC.yaml | 104 + priv/profiles/os_discovery/fujitsupyos.yaml | 3 + priv/profiles/os_discovery/fusion.yaml | 123 + priv/profiles/os_discovery/fusionhub.yaml | 27 + priv/profiles/os_discovery/fxm.yaml | 119 + priv/profiles/os_discovery/fxos.yaml | 5 + priv/profiles/os_discovery/gaia.yaml | 449 +++ priv/profiles/os_discovery/gam.yaml | 42 + priv/profiles/os_discovery/geist-pdu.yaml | 74 + .../profiles/os_discovery/geist-watchdog.yaml | 428 +++ priv/profiles/os_discovery/gemds.yaml | 170 ++ priv/profiles/os_discovery/generex-ups.yaml | 8 + priv/profiles/os_discovery/gepulsar.yaml | 61 + priv/profiles/os_discovery/gestetner.yaml | 5 + priv/profiles/os_discovery/gigavue.yaml | 6 + .../os_discovery/grandstream-gxw.yaml | 8 + .../profiles/os_discovery/grandstream-sw.yaml | 15 + priv/profiles/os_discovery/gude-esb.yaml | 148 + priv/profiles/os_discovery/gw-eydfa.yaml | 5 + priv/profiles/os_discovery/gwd.yaml | 46 + priv/profiles/os_discovery/halon.yaml | 4 + .../os_discovery/harmony-enhanced.yaml | 27 + priv/profiles/os_discovery/helios.yaml | 4 + priv/profiles/os_discovery/heliosip.yaml | 5 + priv/profiles/os_discovery/hikvision-cam.yaml | 28 + priv/profiles/os_discovery/hikvision-nvr.yaml | 18 + .../os_discovery/himoinsa-gensets.yaml | 254 ++ priv/profiles/os_discovery/hirschmann.yaml | 130 + .../os_discovery/hiveos-wireless.yaml | 21 + .../os_discovery/horizon-compact.yaml | 105 + .../os_discovery/horizon-compactplus.yaml | 73 + priv/profiles/os_discovery/horizon-duo.yaml | 84 + .../os_discovery/horizon-quantum.yaml | 52 + priv/profiles/os_discovery/hpblmos.yaml | 4 + priv/profiles/os_discovery/hpe-ilo.yaml | 227 ++ priv/profiles/os_discovery/hpe-ipdu.yaml | 49 + priv/profiles/os_discovery/hpe-mapdu.yaml | 418 +++ priv/profiles/os_discovery/hpe-msa.yaml | 45 + priv/profiles/os_discovery/hpe-msl.yaml | 21 + priv/profiles/os_discovery/hpe-pdumm.yaml | 61 + priv/profiles/os_discovery/hpe-rtups.yaml | 4 + priv/profiles/os_discovery/hpmsm.yaml | 16 + priv/profiles/os_discovery/hpvc.yaml | 3 + .../os_discovery/huawei-optixrtn.yaml | 127 + priv/profiles/os_discovery/huawei-smu.yaml | 191 ++ priv/profiles/os_discovery/huaweiups.yaml | 4 + priv/profiles/os_discovery/hwg-perseus.yaml | 86 + priv/profiles/os_discovery/hwg-poseidon.yaml | 67 + priv/profiles/os_discovery/hwg-ste.yaml | 67 + priv/profiles/os_discovery/hwg-ste2.yaml | 62 + priv/profiles/os_discovery/hwg-wld.yaml | 36 + priv/profiles/os_discovery/hyperion.yaml | 13 + priv/profiles/os_discovery/ibm-amm.yaml | 142 + priv/profiles/os_discovery/ibm-i.yaml | 3 + priv/profiles/os_discovery/ibm-imm.yaml | 46 + priv/profiles/os_discovery/ibmc.yaml | 126 + priv/profiles/os_discovery/ibmnos.yaml | 11 + priv/profiles/os_discovery/ibmtl.yaml | 35 + priv/profiles/os_discovery/iboot.yaml | 70 + priv/profiles/os_discovery/ibos.yaml | 58 + priv/profiles/os_discovery/icotera.yaml | 40 + priv/profiles/os_discovery/icr-os.yaml | 70 + priv/profiles/os_discovery/ict-mps.yaml | 80 + priv/profiles/os_discovery/ict-pdu.yaml | 5 + priv/profiles/os_discovery/ict-psu.yaml | 5 + priv/profiles/os_discovery/ict-swi.yaml | 54 + priv/profiles/os_discovery/ies.yaml | 4 + priv/profiles/os_discovery/ies5000.yaml | 110 + priv/profiles/os_discovery/ies52xxM.yaml | 116 + priv/profiles/os_discovery/illustra.yaml | 3 + priv/profiles/os_discovery/imcopower-big.yaml | 469 +++ .../os_discovery/imcopower-ls110.yaml | 80 + .../os_discovery/infinera-groove.yaml | 33 + priv/profiles/os_discovery/infinera-pon.yaml | 3 + priv/profiles/os_discovery/infinera-xtm.yaml | 590 ++++ priv/profiles/os_discovery/infinity.yaml | 9 + priv/profiles/os_discovery/informos.yaml | 3 + priv/profiles/os_discovery/infortrend.yaml | 36 + priv/profiles/os_discovery/innovaphone.yaml | 68 + priv/profiles/os_discovery/inteno.yaml | 45 + priv/profiles/os_discovery/interseptor.yaml | 22 + priv/profiles/os_discovery/ionodes.yaml | 41 + priv/profiles/os_discovery/ionos.yaml | 21 + priv/profiles/os_discovery/ios.yaml | 86 + priv/profiles/os_discovery/iosxe.yaml | 73 + priv/profiles/os_discovery/iosxr.yaml | 24 + priv/profiles/os_discovery/ipoman.yaml | 6 + priv/profiles/os_discovery/iqnos.yaml | 91 + priv/profiles/os_discovery/ird.yaml | 93 + priv/profiles/os_discovery/ironware.yaml | 244 ++ priv/profiles/os_discovery/ise.yaml | 11 + priv/profiles/os_discovery/istars.yaml | 12 + priv/profiles/os_discovery/janitza-umg96.yaml | 356 +++ priv/profiles/os_discovery/janitza.yaml | 441 +++ priv/profiles/os_discovery/jetdirect.yaml | 77 + priv/profiles/os_discovery/jetstream.yaml | 225 ++ priv/profiles/os_discovery/juniper-mss.yaml | 15 + priv/profiles/os_discovery/junos.yaml | 369 +++ priv/profiles/os_discovery/junose.yaml | 12 + priv/profiles/os_discovery/jwos.yaml | 9 + priv/profiles/os_discovery/keeneticos.yaml | 5 + priv/profiles/os_discovery/kemp.yaml | 3 + priv/profiles/os_discovery/konica.yaml | 5 + priv/profiles/os_discovery/kti.yaml | 4 + priv/profiles/os_discovery/kyocera.yaml | 5 + priv/profiles/os_discovery/lambdatrail.yaml | 299 ++ priv/profiles/os_discovery/lantronix-slc.yaml | 6 + priv/profiles/os_discovery/lcos.yaml | 63 + priv/profiles/os_discovery/lcoslx.yaml | 13 + priv/profiles/os_discovery/lcossx.yaml | 100 + priv/profiles/os_discovery/lenovoemc.yaml | 3 + .../profiles/os_discovery/lexmarkprinter.yaml | 3 + priv/profiles/os_discovery/liebert.yaml | 346 +++ priv/profiles/os_discovery/ligoos.yaml | 3 + priv/profiles/os_discovery/linksys-ss.yaml | 18 + priv/profiles/os_discovery/linux.yaml | 166 ++ priv/profiles/os_discovery/logmaster.yaml | 127 + priv/profiles/os_discovery/loop-telecom.yaml | 148 + priv/profiles/os_discovery/luminato.yaml | 82 + priv/profiles/os_discovery/mbg-ltos6.yaml | 119 + .../profiles/os_discovery/mbg-meinbergos.yaml | 137 + .../os_discovery/mcafeewebgateway.yaml | 91 + priv/profiles/os_discovery/mellanox.yaml | 3 + priv/profiles/os_discovery/merakimr.yaml | 3 + priv/profiles/os_discovery/merakims.yaml | 4 + priv/profiles/os_discovery/merakimx.yaml | 3 + .../os_discovery/microsemipdsine.yaml | 26 + priv/profiles/os_discovery/microsemitime.yaml | 77 + priv/profiles/os_discovery/mimosa.yaml | 18 + priv/profiles/os_discovery/minkelsrms.yaml | 3 + priv/profiles/os_discovery/mlos-atd.yaml | 155 + priv/profiles/os_discovery/mlos-nsp.yaml | 39 + priv/profiles/os_discovery/mni.yaml | 102 + priv/profiles/os_discovery/monowall.yaml | 3 + .../profiles/os_discovery/montclair-edfa.yaml | 207 ++ .../os_discovery/morningstar-mppt.yaml | 631 ++++ .../os_discovery/morningstar-pwm.yaml | 194 ++ priv/profiles/os_discovery/motorola-cm.yaml | 30 + priv/profiles/os_discovery/moxa-awk.yaml | 18 + .../os_discovery/moxa-eds-4000-series.yaml | 9 + .../os_discovery/moxa-etherdevice.yaml | 322 +++ priv/profiles/os_discovery/moxa-nport.yaml | 3 + priv/profiles/os_discovery/mpb-srp.yaml | 45 + priv/profiles/os_discovery/mrv-od.yaml | 299 ++ priv/profiles/os_discovery/msl.yaml | 7 + priv/profiles/os_discovery/mts-com.yaml | 253 ++ priv/profiles/os_discovery/mypoweros.yaml | 17 + priv/profiles/os_discovery/neptune.yaml | 150 + priv/profiles/os_discovery/netagent2.yaml | 47 + priv/profiles/os_discovery/netapp.yaml | 16 + priv/profiles/os_discovery/netbotz.yaml | 92 + priv/profiles/os_discovery/netbsd.yaml | 3 + priv/profiles/os_discovery/netgear.yaml | 61 + priv/profiles/os_discovery/netguardian.yaml | 48 + priv/profiles/os_discovery/netmanplus.yaml | 4 + priv/profiles/os_discovery/netonix.yaml | 68 + .../os_discovery/netscaler-sdwan.yaml | 33 + priv/profiles/os_discovery/netscaler.yaml | 96 + priv/profiles/os_discovery/netspire.yaml | 24 + priv/profiles/os_discovery/netsure.yaml | 64 + priv/profiles/os_discovery/netvision-rfc.yaml | 15 + priv/profiles/os_discovery/nexans.yaml | 37 + priv/profiles/os_discovery/nimbleos.yaml | 3 + priv/profiles/os_discovery/nios.yaml | 43 + priv/profiles/os_discovery/nitro.yaml | 3 + priv/profiles/os_discovery/nokia-1830.yaml | 282 ++ priv/profiles/os_discovery/nokia-isam.yaml | 65 + priv/profiles/os_discovery/nos.yaml | 16 + priv/profiles/os_discovery/nrg.yaml | 4 + priv/profiles/os_discovery/ns-bsd.yaml | 6 + priv/profiles/os_discovery/nti.yaml | 90 + priv/profiles/os_discovery/nutanix-aos.yaml | 40 + priv/profiles/os_discovery/nxos.yaml | 7 + priv/profiles/os_discovery/occamos.yaml | 45 + priv/profiles/os_discovery/oceanstor.yaml | 133 + priv/profiles/os_discovery/ocnos.yaml | 96 + priv/profiles/os_discovery/okilan.yaml | 3 + priv/profiles/os_discovery/omnipcx.yaml | 53 + .../os_discovery/omnitron-iconverter.yaml | 151 + priv/profiles/os_discovery/oneaccess.yaml | 155 + priv/profiles/os_discovery/onefs.yaml | 14 + priv/profiles/os_discovery/ons.yaml | 30 + priv/profiles/os_discovery/openbsd.yaml | 15 + priv/profiles/os_discovery/opengear.yaml | 149 + priv/profiles/os_discovery/opensolaris.yaml | 3 + priv/profiles/os_discovery/opnsense.yaml | 7 + priv/profiles/os_discovery/oracle-ilom.yaml | 3 + .../os_discovery/orolia-securesync.yaml | 255 ++ priv/profiles/os_discovery/orvaldi-ups.yaml | 33 + priv/profiles/os_discovery/osm.yaml | 125 + priv/profiles/os_discovery/packetlight.yaml | 197 ++ priv/profiles/os_discovery/panasonic-ns.yaml | 3 + priv/profiles/os_discovery/pandacom.yaml | 440 +++ priv/profiles/os_discovery/panduit-eagle.yaml | 29 + priv/profiles/os_discovery/panduit.yaml | 209 ++ priv/profiles/os_discovery/panos.yaml | 180 ++ priv/profiles/os_discovery/papouch-quido.yaml | 10 + priv/profiles/os_discovery/paradyne.yaml | 19 + priv/profiles/os_discovery/parks-switch.yaml | 65 + priv/profiles/os_discovery/patton-sn.yaml | 52 + priv/profiles/os_discovery/pbn-cp.yaml | 6 + priv/profiles/os_discovery/pbn.yaml | 10 + .../os_discovery/pcoweb-rittal-lcp-3311.yaml | 526 ++++ .../os_discovery/pcoweb-rittalchiller.yaml | 130 + priv/profiles/os_discovery/pegasus.yaml | 95 + priv/profiles/os_discovery/pepwave.yaml | 131 + priv/profiles/os_discovery/perle.yaml | 3 + priv/profiles/os_discovery/pfsense.yaml | 5 + priv/profiles/os_discovery/picos.yaml | 23 + priv/profiles/os_discovery/planet-pdu.yaml | 69 + priv/profiles/os_discovery/planetos.yaml | 4 + priv/profiles/os_discovery/pmp.yaml | 22 + priv/profiles/os_discovery/polycomLens.yaml | 218 ++ priv/profiles/os_discovery/poweralert.yaml | 338 +++ priv/profiles/os_discovery/powercode.yaml | 3 + priv/profiles/os_discovery/powerconnect.yaml | 14 + priv/profiles/os_discovery/powerlogic.yaml | 81 + priv/profiles/os_discovery/powervault.yaml | 3 + .../os_discovery/powerwalker-vfi.yaml | 156 + priv/profiles/os_discovery/powerwalker.yaml | 248 ++ .../os_discovery/primeinfrastructure.yaml | 6 + priv/profiles/os_discovery/primekey-sw.yaml | 283 ++ priv/profiles/os_discovery/primekey.yaml | 271 ++ priv/profiles/os_discovery/procera.yaml | 6 + priv/profiles/os_discovery/procurve.yaml | 170 ++ priv/profiles/os_discovery/profline-sfd.yaml | 112 + .../os_discovery/protelevision-t1.yaml | 262 ++ priv/profiles/os_discovery/ptp250.yaml | 5 + priv/profiles/os_discovery/ptp500.yaml | 51 + priv/profiles/os_discovery/ptp600.yaml | 71 + priv/profiles/os_discovery/ptp650.yaml | 25 + priv/profiles/os_discovery/ptp670.yaml | 27 + priv/profiles/os_discovery/ptp800.yaml | 33 + priv/profiles/os_discovery/pulse.yaml | 19 + priv/profiles/os_discovery/purestorage.yaml | 5 + priv/profiles/os_discovery/qnap.yaml | 126 + priv/profiles/os_discovery/qtech.yaml | 9 + priv/profiles/os_discovery/quanta.yaml | 10 + priv/profiles/os_discovery/quantastor.yaml | 131 + priv/profiles/os_discovery/quantum.yaml | 138 + priv/profiles/os_discovery/radlan.yaml | 7 + priv/profiles/os_discovery/radwin.yaml | 7 + priv/profiles/os_discovery/raisecom-ros.yaml | 43 + priv/profiles/os_discovery/raisecom.yaml | 68 + priv/profiles/os_discovery/rajant.yaml | 12 + priv/profiles/os_discovery/raritan-pdu.yaml | 326 +++ priv/profiles/os_discovery/ray.yaml | 115 + priv/profiles/os_discovery/ray3.yaml | 93 + priv/profiles/os_discovery/recoveryos.yaml | 22 + priv/profiles/os_discovery/remoteye4.yaml | 140 + priv/profiles/os_discovery/ricoh.yaml | 5 + .../os_discovery/rittal-cmc-iii-pu.yaml | 20 + priv/profiles/os_discovery/rittal-cmc.yaml | 307 ++ priv/profiles/os_discovery/rittal-lcp.yaml | 20 + priv/profiles/os_discovery/riverbed.yaml | 56 + priv/profiles/os_discovery/rnx-updu.yaml | 47 + priv/profiles/os_discovery/ros.yaml | 67 + priv/profiles/os_discovery/routeros.yaml | 262 ++ priv/profiles/os_discovery/rs.yaml | 113 + .../os_discovery/ruckuswireless-hotzone.yaml | 20 + .../ruckuswireless-unleashed.yaml | 20 + .../profiles/os_discovery/ruckuswireless.yaml | 24 + priv/profiles/os_discovery/ruijie.yaml | 160 ++ priv/profiles/os_discovery/rutos-2xx.yaml | 107 + priv/profiles/os_discovery/rutos-rutm.yaml | 267 ++ priv/profiles/os_discovery/rutos-rutx.yaml | 267 ++ priv/profiles/os_discovery/rutos.yaml | 66 + priv/profiles/os_discovery/saf-cfm.yaml | 239 ++ priv/profiles/os_discovery/saf-integra-b.yaml | 66 + priv/profiles/os_discovery/saf-integra-e.yaml | 66 + priv/profiles/os_discovery/saf-integra-w.yaml | 66 + priv/profiles/os_discovery/saf-integra-x.yaml | 66 + priv/profiles/os_discovery/saf.yaml | 16 + priv/profiles/os_discovery/samlex.yaml | 224 ++ .../profiles/os_discovery/samsungprinter.yaml | 3 + priv/profiles/os_discovery/savin.yaml | 5 + priv/profiles/os_discovery/scalance.yaml | 169 ++ .../profiles/os_discovery/schleifenbauer.yaml | 32 + priv/profiles/os_discovery/screenos.yaml | 15 + priv/profiles/os_discovery/scs-ks.yaml | 226 ++ .../profiles/os_discovery/secureplatform.yaml | 63 + priv/profiles/os_discovery/seh-uds.yaml | 30 + .../os_discovery/sensatronics-em1.yaml | 63 + .../os_discovery/sensatronics-ittm.yaml | 117 + priv/profiles/os_discovery/sentry3.yaml | 111 + priv/profiles/os_discovery/sentry4.yaml | 502 ++++ priv/profiles/os_discovery/seos.yaml | 8 + priv/profiles/os_discovery/serveriron.yaml | 11 + priv/profiles/os_discovery/serverscheck.yaml | 6 + priv/profiles/os_discovery/sgos.yaml | 10 + priv/profiles/os_discovery/sharp.yaml | 6 + priv/profiles/os_discovery/siklu.yaml | 16 + priv/profiles/os_discovery/sinetica.yaml | 119 + priv/profiles/os_discovery/siteboss.yaml | 128 + priv/profiles/os_discovery/siteboss360.yaml | 127 + priv/profiles/os_discovery/siteboss550.yaml | 128 + priv/profiles/os_discovery/siteboss571.yaml | 171 ++ priv/profiles/os_discovery/siteboss572.yaml | 171 ++ priv/profiles/os_discovery/sixnet.yaml | 48 + .../os_discovery/skyhighwebprotect.yaml | 91 + priv/profiles/os_discovery/slms.yaml | 22 + priv/profiles/os_discovery/slxos.yaml | 58 + priv/profiles/os_discovery/sm-os.yaml | 145 + priv/profiles/os_discovery/smartax.yaml | 190 ++ priv/profiles/os_discovery/smartbyte.yaml | 155 + priv/profiles/os_discovery/smartos-dcp-m.yaml | 69 + priv/profiles/os_discovery/smartos.yaml | 41 + priv/profiles/os_discovery/snr-erd.yaml | 54 + priv/profiles/os_discovery/snr.yaml | 94 + priv/profiles/os_discovery/socomec-ups.yaml | 265 ++ priv/profiles/os_discovery/socomec.yaml | 66 + priv/profiles/os_discovery/solaris.yaml | 3 + priv/profiles/os_discovery/solidserver.yaml | 249 ++ priv/profiles/os_discovery/sonicwall.yaml | 31 + priv/profiles/os_discovery/sophos-xg.yaml | 177 ++ priv/profiles/os_discovery/speedtouch.yaml | 3 + priv/profiles/os_discovery/srlinux.yaml | 111 + priv/profiles/os_discovery/ssu2000.yaml | 90 + priv/profiles/os_discovery/stellar.yaml | 38 + priv/profiles/os_discovery/stoneos.yaml | 42 + priv/profiles/os_discovery/stulz.yaml | 290 ++ priv/profiles/os_discovery/sub10.yaml | 5 + priv/profiles/os_discovery/supercap.yaml | 2560 +++++++++++++++++ .../profiles/os_discovery/supermicro-bmc.yaml | 228 ++ .../os_discovery/supervyse-openbmc.yaml | 19 + priv/profiles/os_discovery/swos.yaml | 321 +++ priv/profiles/os_discovery/symbol.yaml | 5 + priv/profiles/os_discovery/tachyon.yaml | 167 ++ priv/profiles/os_discovery/tailyn.yaml | 109 + priv/profiles/os_discovery/tait-infra93.yaml | 1135 ++++++++ priv/profiles/os_discovery/tait-tnadmin.yaml | 420 +++ priv/profiles/os_discovery/teldat.yaml | 48 + priv/profiles/os_discovery/televes-fs.yaml | 69 + priv/profiles/os_discovery/teracom.yaml | 531 ++++ .../profiles/os_discovery/teradici-pcoip.yaml | 5 + priv/profiles/os_discovery/terra-sdi410c.yaml | 99 + priv/profiles/os_discovery/terra-sdi480.yaml | 98 + priv/profiles/os_discovery/tgos.yaml | 3 + priv/profiles/os_discovery/thomson-cm.yaml | 30 + priv/profiles/os_discovery/timos.yaml | 918 ++++++ priv/profiles/os_discovery/tomato.yaml | 4 + priv/profiles/os_discovery/topvision.yaml | 28 + priv/profiles/os_discovery/tpdin.yaml | 4 + priv/profiles/os_discovery/tpdin3.yaml | 82 + priv/profiles/os_discovery/tplink.yaml | 4 + priv/profiles/os_discovery/transition.yaml | 3 + priv/profiles/os_discovery/tranzeo.yaml | 3 + priv/profiles/os_discovery/trendnet.yaml | 3 + .../os_discovery/trippliteconsole.yaml | 3 + priv/profiles/os_discovery/truenas-scale.yaml | 151 + priv/profiles/os_discovery/truenas.yaml | 156 + priv/profiles/os_discovery/ts-bspdu.yaml | 37 + priv/profiles/os_discovery/ubiquoss-pon.yaml | 4 + priv/profiles/os_discovery/ucopia.yaml | 291 ++ priv/profiles/os_discovery/ucos.yaml | 92 + priv/profiles/os_discovery/uhp.yaml | 717 +++++ priv/profiles/os_discovery/ulaf.yaml | 21 + priv/profiles/os_discovery/unifi-usp.yaml | 3 + priv/profiles/os_discovery/unifi.yaml | 7 + priv/profiles/os_discovery/uniping.yaml | 108 + priv/profiles/os_discovery/utax.yaml | 6 + priv/profiles/os_discovery/valere.yaml | 87 + priv/profiles/os_discovery/vccodec.yaml | 3 + priv/profiles/os_discovery/velocloud.yaml | 91 + priv/profiles/os_discovery/venturi.yaml | 82 + priv/profiles/os_discovery/vertiv-dcs.yaml | 1106 +++++++ priv/profiles/os_discovery/vertiv-ita2.yaml | 414 +++ priv/profiles/os_discovery/vertiv-pdu.yaml | 54 + priv/profiles/os_discovery/vigintos.yaml | 79 + priv/profiles/os_discovery/viprinux.yaml | 12 + priv/profiles/os_discovery/viptela.yaml | 14 + priv/profiles/os_discovery/vmware-esxi.yaml | 7 + priv/profiles/os_discovery/vmware-vcsa.yaml | 5 + priv/profiles/os_discovery/volius.yaml | 151 + priv/profiles/os_discovery/voss.yaml | 47 + priv/profiles/os_discovery/voswall.yaml | 3 + priv/profiles/os_discovery/vrp.yaml | 730 +++++ priv/profiles/os_discovery/vsolution.yaml | 75 + priv/profiles/os_discovery/vutlan.yaml | 47 + priv/profiles/os_discovery/vxoa.yaml | 5 + priv/profiles/os_discovery/vyatta.yaml | 3 + priv/profiles/os_discovery/vyos.yaml | 3 + priv/profiles/os_discovery/waas.yaml | 20 + priv/profiles/os_discovery/webmon.yaml | 3 + .../os_discovery/webpower-smart2.yaml | 172 ++ priv/profiles/os_discovery/webpower.yaml | 8 + priv/profiles/os_discovery/websensor.yaml | 4 + priv/profiles/os_discovery/weos.yaml | 28 + .../os_discovery/westmountainradio.yaml | 84 + priv/profiles/os_discovery/windows.yaml | 28 + priv/profiles/os_discovery/wipipe.yaml | 3 + priv/profiles/os_discovery/wisi-tangram.yaml | 59 + priv/profiles/os_discovery/witchos.yaml | 12 + priv/profiles/os_discovery/wti-console.yaml | 17 + priv/profiles/os_discovery/wti-power.yaml | 189 ++ priv/profiles/os_discovery/wut.yaml | 94 + priv/profiles/os_discovery/xclarity.yaml | 93 + priv/profiles/os_discovery/xerox.yaml | 5 + priv/profiles/os_discovery/xirrus_aos.yaml | 10 + priv/profiles/os_discovery/xos.yaml | 48 + priv/profiles/os_discovery/yunshan.yaml | 588 ++++ priv/profiles/os_discovery/zebra.yaml | 16 + .../os_discovery/zenitel-alphacom.yaml | 80 + .../os_discovery/zenitel-vsdevice.yaml | 251 ++ priv/profiles/os_discovery/zmtel.yaml | 194 ++ priv/profiles/os_discovery/zxa10.yaml | 119 + priv/profiles/os_discovery/zxdsl.yaml | 3 + priv/profiles/os_discovery/zxr10.yaml | 17 + priv/profiles/os_discovery/zynos.yaml | 231 ++ priv/profiles/os_discovery/zywall.yaml | 40 + priv/profiles/os_discovery/zyxelac.yaml | 7 + priv/profiles/os_discovery/zyxelnwa.yaml | 17 + priv/profiles/os_discovery/zyxelusg.yaml | 30 + priv/profiles/os_discovery/zyxelwlc.yaml | 30 + scripts/sync-librenms.sh | 104 + test/integration/snmp_integration_test.exs | 25 +- test/towerops/snmp/discovery_test.exs | 117 +- test/towerops/snmp/profile_behaviour_test.exs | 349 --- test/towerops/snmp/profiles/base_test.exs | 116 +- test/towerops/snmp/profiles/cisco_test.exs | 578 ---- test/towerops/snmp/profiles/mikrotik_test.exs | 583 ---- test/towerops/snmp/profiles/net_snmp_test.exs | 306 -- 1474 files changed, 77977 insertions(+), 3744 deletions(-) create mode 100644 lib/towerops/profiles/yaml_profiles.ex delete mode 100644 lib/towerops/snmp/profiles/cisco.ex delete mode 100644 lib/towerops/snmp/profiles/mikrotik.ex delete mode 100644 lib/towerops/snmp/profiles/net_snmp.ex delete mode 100644 lib/towerops/snmp/profiles/ubiquiti.ex create mode 100644 priv/profiles/os_detection/3com.yaml create mode 100644 priv/profiles/os_detection/aaron.yaml create mode 100644 priv/profiles/os_detection/abbups.yaml create mode 100644 priv/profiles/os_detection/acano.yaml create mode 100644 priv/profiles/os_detection/acos.yaml create mode 100644 priv/profiles/os_detection/acs.yaml create mode 100644 priv/profiles/os_detection/acsw.yaml create mode 100644 priv/profiles/os_detection/adtran-aos.yaml create mode 100644 priv/profiles/os_detection/adva-alm.yaml create mode 100644 priv/profiles/os_detection/adva-aos.yaml create mode 100644 priv/profiles/os_detection/adva-fsp150cp.yaml create mode 100644 priv/profiles/os_detection/adva-osa.yaml create mode 100644 priv/profiles/os_detection/adva_fsp150.yaml create mode 100644 priv/profiles/os_detection/adva_fsp3kr7.yaml create mode 100644 priv/profiles/os_detection/adva_xg300.yaml create mode 100644 priv/profiles/os_detection/advantech.yaml create mode 100644 priv/profiles/os_detection/aen.yaml create mode 100644 priv/profiles/os_detection/airconsole.yaml create mode 100644 priv/profiles/os_detection/airos-af-ltu.yaml create mode 100644 priv/profiles/os_detection/airos-af.yaml create mode 100644 priv/profiles/os_detection/airos-af60.yaml create mode 100644 priv/profiles/os_detection/airos.yaml create mode 100644 priv/profiles/os_detection/airport.yaml create mode 100644 priv/profiles/os_detection/aix.yaml create mode 100644 priv/profiles/os_detection/akcp.yaml create mode 100644 priv/profiles/os_detection/alcoma-almp.yaml create mode 100644 priv/profiles/os_detection/alfo80hd.yaml create mode 100644 priv/profiles/os_detection/algcom-dc-ups.yaml create mode 100644 priv/profiles/os_detection/algcom-sm.yaml create mode 100755 priv/profiles/os_detection/allied-tq.yaml create mode 100644 priv/profiles/os_detection/allied.yaml create mode 100644 priv/profiles/os_detection/allworx_voip.yaml create mode 100644 priv/profiles/os_detection/aloha.yaml create mode 100644 priv/profiles/os_detection/alpineoe-tdcmedfa.yaml create mode 100644 priv/profiles/os_detection/altalabs-ap.yaml create mode 100644 priv/profiles/os_detection/altalabs.yaml create mode 100644 priv/profiles/os_detection/alteonos.yaml create mode 100644 priv/profiles/os_detection/anue.yaml create mode 100644 priv/profiles/os_detection/anyos.yaml create mode 100644 priv/profiles/os_detection/aos-emu2.yaml create mode 100644 priv/profiles/os_detection/aos.yaml create mode 100755 priv/profiles/os_detection/aos6.yaml create mode 100644 priv/profiles/os_detection/aos7.yaml create mode 100644 priv/profiles/os_detection/apc-cpdu.yaml create mode 100644 priv/profiles/os_detection/apc-epdu.yaml create mode 100644 priv/profiles/os_detection/apc-mgeups.yaml create mode 100644 priv/profiles/os_detection/apc-netbotz.yaml create mode 100644 priv/profiles/os_detection/apc.yaml create mode 100644 priv/profiles/os_detection/apex-lynx.yaml create mode 100644 priv/profiles/os_detection/apex-plus.yaml create mode 100644 priv/profiles/os_detection/apic.yaml create mode 100644 priv/profiles/os_detection/applicationsware.yaml create mode 100644 priv/profiles/os_detection/aprisa.yaml create mode 100644 priv/profiles/os_detection/apsoluteos.yaml create mode 100644 priv/profiles/os_detection/arbos.yaml create mode 100644 priv/profiles/os_detection/ardmore-encoder.yaml create mode 100644 priv/profiles/os_detection/areca.yaml create mode 100644 priv/profiles/os_detection/arista-mos.yaml create mode 100644 priv/profiles/os_detection/arista_eos.yaml create mode 100644 priv/profiles/os_detection/arrayos.yaml create mode 100644 priv/profiles/os_detection/arris-apex.yaml create mode 100644 priv/profiles/os_detection/arris-c3.yaml create mode 100644 priv/profiles/os_detection/arris-c4.yaml create mode 100644 priv/profiles/os_detection/arris-cm.yaml create mode 100644 priv/profiles/os_detection/arris-d5.yaml create mode 100644 priv/profiles/os_detection/arris-dsr4410md.yaml create mode 100644 priv/profiles/os_detection/aruba-instant.yaml create mode 100644 priv/profiles/os_detection/arubaos-cx.yaml create mode 100644 priv/profiles/os_detection/arubaos.yaml create mode 100644 priv/profiles/os_detection/asa.yaml create mode 100644 priv/profiles/os_detection/ascom.yaml create mode 100644 priv/profiles/os_detection/asuswrt-merlin.yaml create mode 100644 priv/profiles/os_detection/asyncos.yaml create mode 100755 priv/profiles/os_detection/atenpdu.yaml create mode 100755 priv/profiles/os_detection/ats.yaml create mode 100644 priv/profiles/os_detection/audiocodes.yaml create mode 100644 priv/profiles/os_detection/avaya-ipo.yaml create mode 100644 priv/profiles/os_detection/aviat-wtm.yaml create mode 100644 priv/profiles/os_detection/avocent-mp.yaml create mode 100644 priv/profiles/os_detection/avocent.yaml create mode 100644 priv/profiles/os_detection/avr-hd.yaml create mode 100644 priv/profiles/os_detection/avtech.yaml create mode 100644 priv/profiles/os_detection/awplus.yaml create mode 100644 priv/profiles/os_detection/axisaudio.yaml create mode 100644 priv/profiles/os_detection/axiscam.yaml create mode 100644 priv/profiles/os_detection/axisdocserver.yaml create mode 100644 priv/profiles/os_detection/axos.yaml create mode 100644 priv/profiles/os_detection/baicells-od04.yaml create mode 100644 priv/profiles/os_detection/barracudaloadbalancer.yaml create mode 100644 priv/profiles/os_detection/barracudangfirewall.yaml create mode 100644 priv/profiles/os_detection/barracudaspamfirewall.yaml create mode 100644 priv/profiles/os_detection/barracudawafirewall.yaml create mode 100644 priv/profiles/os_detection/bats.yaml create mode 100644 priv/profiles/os_detection/bcm963.yaml create mode 100644 priv/profiles/os_detection/bdcom.yaml create mode 100644 priv/profiles/os_detection/beagleboard.yaml create mode 100644 priv/profiles/os_detection/benuos.yaml create mode 100644 priv/profiles/os_detection/binos.yaml create mode 100644 priv/profiles/os_detection/binox.yaml create mode 100644 priv/profiles/os_detection/bintec-beip-plus.yaml create mode 100644 priv/profiles/os_detection/bintec-smart.yaml create mode 100644 priv/profiles/os_detection/bison.yaml create mode 100644 priv/profiles/os_detection/bke.yaml create mode 100644 priv/profiles/os_detection/bktel-oa.yaml create mode 100644 priv/profiles/os_detection/bluecatnetworks.yaml create mode 100644 priv/profiles/os_detection/bnt.yaml create mode 100644 priv/profiles/os_detection/boss.yaml create mode 100644 priv/profiles/os_detection/breeze.yaml create mode 100644 priv/profiles/os_detection/broadworks.yaml create mode 100644 priv/profiles/os_detection/brother.yaml create mode 100644 priv/profiles/os_detection/bti800.yaml create mode 100644 priv/profiles/os_detection/buffalo.yaml create mode 100644 priv/profiles/os_detection/calix.yaml create mode 100644 priv/profiles/os_detection/canonprinter.yaml create mode 100644 priv/profiles/os_detection/cat1900.yaml create mode 100644 priv/profiles/os_detection/catos.yaml create mode 100644 priv/profiles/os_detection/cdata.yaml create mode 100644 priv/profiles/os_detection/celvin.yaml create mode 100644 priv/profiles/os_detection/ceraos.yaml create mode 100644 priv/profiles/os_detection/cetpower.yaml create mode 100644 priv/profiles/os_detection/chatsworth-pdu.yaml create mode 100644 priv/profiles/os_detection/christie-projector.yaml create mode 100644 priv/profiles/os_detection/ciena-rls.yaml create mode 100644 priv/profiles/os_detection/ciena-saos.yaml create mode 100644 priv/profiles/os_detection/ciena-sds.yaml create mode 100644 priv/profiles/os_detection/ciena-waveserver.yaml create mode 100644 priv/profiles/os_detection/cimc.yaml create mode 100644 priv/profiles/os_detection/cips.yaml create mode 100644 priv/profiles/os_detection/cirpack.yaml create mode 100644 priv/profiles/os_detection/ciscoepc.yaml create mode 100644 priv/profiles/os_detection/ciscome1200.yaml create mode 100644 priv/profiles/os_detection/ciscosat.yaml create mode 100644 priv/profiles/os_detection/ciscosb.yaml create mode 100644 priv/profiles/os_detection/ciscosce.yaml create mode 100644 priv/profiles/os_detection/ciscospa.yaml create mode 100644 priv/profiles/os_detection/ciscosrp.yaml create mode 100644 priv/profiles/os_detection/ciscowap.yaml create mode 100644 priv/profiles/os_detection/ciscowlc.yaml create mode 100644 priv/profiles/os_detection/clearpass.yaml create mode 100644 priv/profiles/os_detection/clickshare.yaml create mode 100644 priv/profiles/os_detection/cmm.yaml create mode 100644 priv/profiles/os_detection/cmm4.yaml create mode 100644 priv/profiles/os_detection/cms.yaml create mode 100644 priv/profiles/os_detection/cnmatrix.yaml create mode 100644 priv/profiles/os_detection/cnos.yaml create mode 100644 priv/profiles/os_detection/cnpilote.yaml create mode 100644 priv/profiles/os_detection/cnpilotr.yaml create mode 100644 priv/profiles/os_detection/cnwave60.yaml create mode 100644 priv/profiles/os_detection/commander-plus.yaml create mode 100644 priv/profiles/os_detection/compas.yaml create mode 100644 priv/profiles/os_detection/comtrol.yaml create mode 100644 priv/profiles/os_detection/comware.yaml create mode 100644 priv/profiles/os_detection/controlbox.yaml create mode 100644 priv/profiles/os_detection/coreos.yaml create mode 100644 priv/profiles/os_detection/coriant.yaml create mode 100644 priv/profiles/os_detection/ctcu.yaml create mode 100644 priv/profiles/os_detection/ctm.yaml create mode 100644 priv/profiles/os_detection/cts.yaml create mode 100644 priv/profiles/os_detection/cumulus.yaml create mode 100644 priv/profiles/os_detection/cxc.yaml create mode 100644 priv/profiles/os_detection/cxr-ts.yaml create mode 100644 priv/profiles/os_detection/cxrc.yaml create mode 100644 priv/profiles/os_detection/cyan.yaml create mode 100644 priv/profiles/os_detection/cyberoam-utm.yaml create mode 100644 priv/profiles/os_detection/cyberpower.yaml create mode 100644 priv/profiles/os_detection/dahua-nvr.yaml create mode 100644 priv/profiles/os_detection/dantherm-os.yaml create mode 100644 priv/profiles/os_detection/dasan-nos.yaml create mode 100644 priv/profiles/os_detection/datacom-dmos.yaml create mode 100644 priv/profiles/os_detection/datacom.yaml create mode 100644 priv/profiles/os_detection/datadomain.yaml create mode 100644 priv/profiles/os_detection/dcn-software.yaml create mode 100644 priv/profiles/os_detection/dd-wrt.yaml create mode 100644 priv/profiles/os_detection/ddnos.yaml create mode 100644 priv/profiles/os_detection/default.yaml create mode 100644 priv/profiles/os_detection/deliberant.yaml create mode 100644 priv/profiles/os_detection/dell-compellent.yaml create mode 100644 priv/profiles/os_detection/dell-laser.yaml create mode 100644 priv/profiles/os_detection/dell-ome-m.yaml create mode 100644 priv/profiles/os_detection/dell-os10.yaml create mode 100644 priv/profiles/os_detection/dell-powervault.yaml create mode 100644 priv/profiles/os_detection/dell-rcs.yaml create mode 100644 priv/profiles/os_detection/dell-rpdu.yaml create mode 100644 priv/profiles/os_detection/dell-sonic.yaml create mode 100644 priv/profiles/os_detection/dell-ups.yaml create mode 100644 priv/profiles/os_detection/deltaorion.yaml create mode 100644 priv/profiles/os_detection/deltaups.yaml create mode 100644 priv/profiles/os_detection/deva-db7001.yaml create mode 100644 priv/profiles/os_detection/developprinter.yaml create mode 100644 priv/profiles/os_detection/dhcpatriot.yaml create mode 100644 priv/profiles/os_detection/digipower.yaml create mode 100644 priv/profiles/os_detection/dkt.yaml create mode 100644 priv/profiles/os_detection/dlink-dgs1250.yaml create mode 100644 priv/profiles/os_detection/dlink.yaml create mode 100644 priv/profiles/os_detection/dlinkap.yaml create mode 100644 priv/profiles/os_detection/dnos.yaml create mode 100644 priv/profiles/os_detection/dpi.yaml create mode 100644 priv/profiles/os_detection/drac.yaml create mode 100644 priv/profiles/os_detection/dragonfly.yaml create mode 100644 priv/profiles/os_detection/draytek.yaml create mode 100644 priv/profiles/os_detection/dsm.yaml create mode 100644 priv/profiles/os_detection/e3meter.yaml create mode 100644 priv/profiles/os_detection/e3meterdc.yaml create mode 100644 priv/profiles/os_detection/eaton-ats.yaml create mode 100644 priv/profiles/os_detection/eaton-matrix.yaml create mode 100644 priv/profiles/os_detection/eaton-mgeups.yaml create mode 100644 priv/profiles/os_detection/eaton-sc200.yaml create mode 100644 priv/profiles/os_detection/eaton-sc300.yaml create mode 100644 priv/profiles/os_detection/eatonpdu.yaml create mode 100644 priv/profiles/os_detection/eatonups.yaml create mode 100644 priv/profiles/os_detection/eatonupsm2.yaml create mode 100644 priv/profiles/os_detection/ecresofm-os.yaml create mode 100644 priv/profiles/os_detection/edfa.yaml create mode 100644 priv/profiles/os_detection/edfamux.yaml create mode 100644 priv/profiles/os_detection/edgecos.yaml create mode 100644 priv/profiles/os_detection/edgeos-ep.yaml create mode 100644 priv/profiles/os_detection/edgeos.yaml create mode 100644 priv/profiles/os_detection/edgeosolt.yaml create mode 100644 priv/profiles/os_detection/edgeswitch.yaml create mode 100644 priv/profiles/os_detection/eds.yaml create mode 100644 priv/profiles/os_detection/ees.yaml create mode 100644 priv/profiles/os_detection/ekinops.yaml create mode 100644 priv/profiles/os_detection/elg-ipecs-es.yaml create mode 100644 priv/profiles/os_detection/elg-ipecs-ucp.yaml create mode 100644 priv/profiles/os_detection/eltek-webpower.yaml create mode 100644 priv/profiles/os_detection/eltex-mes21xx.yaml create mode 100644 priv/profiles/os_detection/eltex-mes23xx.yaml create mode 100644 priv/profiles/os_detection/eltex-mes24xx.yaml create mode 100644 priv/profiles/os_detection/eltex-olt.yaml create mode 100644 priv/profiles/os_detection/endian.yaml create mode 100644 priv/profiles/os_detection/endrun.yaml create mode 100644 priv/profiles/os_detection/enexus.yaml create mode 100644 priv/profiles/os_detection/engenius.yaml create mode 100644 priv/profiles/os_detection/enlogic-pdu.yaml create mode 100644 priv/profiles/os_detection/enterasys.yaml create mode 100644 priv/profiles/os_detection/epmp.yaml create mode 100644 priv/profiles/os_detection/epson-projector.yaml create mode 100644 priv/profiles/os_detection/epson-scanner.yaml create mode 100644 priv/profiles/os_detection/epson.yaml create mode 100644 priv/profiles/os_detection/equallogic.yaml create mode 100644 priv/profiles/os_detection/ericsson-6600.yaml create mode 100644 priv/profiles/os_detection/ericsson-ipos.yaml create mode 100644 priv/profiles/os_detection/ericsson-ml.yaml create mode 100644 priv/profiles/os_detection/ericsson-tn.yaml create mode 100644 priv/profiles/os_detection/esphome.yaml create mode 100644 priv/profiles/os_detection/etherwan.yaml create mode 100644 priv/profiles/os_detection/ets.yaml create mode 100644 priv/profiles/os_detection/eurostor.yaml create mode 100644 priv/profiles/os_detection/ewc.yaml create mode 100644 priv/profiles/os_detection/exa.yaml create mode 100644 priv/profiles/os_detection/exagridos.yaml create mode 100644 priv/profiles/os_detection/exalink-fusion.yaml create mode 100644 priv/profiles/os_detection/exinda.yaml create mode 100644 priv/profiles/os_detection/exos.yaml create mode 100644 priv/profiles/os_detection/extendair.yaml create mode 100644 priv/profiles/os_detection/extrahop.yaml create mode 100644 priv/profiles/os_detection/extremeware.yaml create mode 100644 priv/profiles/os_detection/f5.yaml create mode 100644 priv/profiles/os_detection/f5os.yaml create mode 100644 priv/profiles/os_detection/fabos.yaml create mode 100644 priv/profiles/os_detection/feos.yaml create mode 100644 priv/profiles/os_detection/fiberhome-switch.yaml create mode 100644 priv/profiles/os_detection/fiberhome.yaml create mode 100755 priv/profiles/os_detection/fibernet-xmux4-plus.yaml create mode 100644 priv/profiles/os_detection/fibrolan-falcon.yaml create mode 100644 priv/profiles/os_detection/fibrolan-metrostar.yaml create mode 100644 priv/profiles/os_detection/firebrick.yaml create mode 100644 priv/profiles/os_detection/fireware.yaml create mode 100644 priv/profiles/os_detection/flareos.yaml create mode 100644 priv/profiles/os_detection/flexbng.yaml create mode 100644 priv/profiles/os_detection/forcepoint-fe.yaml create mode 100644 priv/profiles/os_detection/forcepoint.yaml create mode 100644 priv/profiles/os_detection/fortiadc.yaml create mode 100644 priv/profiles/os_detection/fortiap.yaml create mode 100644 priv/profiles/os_detection/fortiauthenticator.yaml create mode 100644 priv/profiles/os_detection/fortiextender.yaml create mode 100644 priv/profiles/os_detection/fortigate.yaml create mode 100644 priv/profiles/os_detection/fortimail.yaml create mode 100644 priv/profiles/os_detection/fortios.yaml create mode 100644 priv/profiles/os_detection/fortisandbox.yaml create mode 100644 priv/profiles/os_detection/fortiswitch.yaml create mode 100644 priv/profiles/os_detection/fortivoice.yaml create mode 100644 priv/profiles/os_detection/fortiweb.yaml create mode 100644 priv/profiles/os_detection/fortiwlc.yaml create mode 100644 priv/profiles/os_detection/foundryos.yaml create mode 100644 priv/profiles/os_detection/freebsd.yaml create mode 100644 priv/profiles/os_detection/freshtomato.yaml create mode 100644 priv/profiles/os_detection/fs-bdcom.yaml create mode 100644 priv/profiles/os_detection/fs-centec.yaml create mode 100644 priv/profiles/os_detection/fs-gbn.yaml create mode 100644 priv/profiles/os_detection/fs-net-pdu.yaml create mode 100644 priv/profiles/os_detection/fs-nmu.yaml create mode 100644 priv/profiles/os_detection/fs-switch-dc.yaml create mode 100644 priv/profiles/os_detection/fs-switch.yaml create mode 100644 priv/profiles/os_detection/ftd.yaml create mode 100644 priv/profiles/os_detection/ftos.yaml create mode 100644 priv/profiles/os_detection/fujifilmprinter.yaml create mode 100644 priv/profiles/os_detection/fujitsueternusos.yaml create mode 100644 priv/profiles/os_detection/fujitsuiRMC.yaml create mode 100644 priv/profiles/os_detection/fujitsupyos.yaml create mode 100644 priv/profiles/os_detection/fusion.yaml create mode 100644 priv/profiles/os_detection/fusionhub.yaml create mode 100644 priv/profiles/os_detection/fxm.yaml create mode 100644 priv/profiles/os_detection/fxos.yaml create mode 100644 priv/profiles/os_detection/gaia.yaml create mode 100644 priv/profiles/os_detection/gam.yaml create mode 100644 priv/profiles/os_detection/gamatronicups.yaml create mode 100644 priv/profiles/os_detection/ge-ups.yaml create mode 100644 priv/profiles/os_detection/geist-pdu.yaml create mode 100644 priv/profiles/os_detection/geist-watchdog.yaml create mode 100644 priv/profiles/os_detection/gemds.yaml create mode 100644 priv/profiles/os_detection/generex-ups.yaml create mode 100644 priv/profiles/os_detection/generic.yaml create mode 100644 priv/profiles/os_detection/gepulsar.yaml create mode 100644 priv/profiles/os_detection/gestetner.yaml create mode 100644 priv/profiles/os_detection/gigavue.yaml create mode 100644 priv/profiles/os_detection/gos.yaml create mode 100644 priv/profiles/os_detection/grandstream-ap.yaml create mode 100644 priv/profiles/os_detection/grandstream-gxw.yaml create mode 100644 priv/profiles/os_detection/grandstream-ht.yaml create mode 100644 priv/profiles/os_detection/grandstream-sw.yaml create mode 100644 priv/profiles/os_detection/gude-esb.yaml create mode 100644 priv/profiles/os_detection/gw-eydfa.yaml create mode 100644 priv/profiles/os_detection/gwd.yaml create mode 100644 priv/profiles/os_detection/halon.yaml create mode 100644 priv/profiles/os_detection/harmony-enhanced.yaml create mode 100644 priv/profiles/os_detection/hatteras.yaml create mode 100644 priv/profiles/os_detection/helios.yaml create mode 100644 priv/profiles/os_detection/heliosip.yaml create mode 100644 priv/profiles/os_detection/hikvision-cam.yaml create mode 100644 priv/profiles/os_detection/hikvision-nvr.yaml create mode 100644 priv/profiles/os_detection/himoinsa-gensets.yaml create mode 100644 priv/profiles/os_detection/hirschmann.yaml create mode 100644 priv/profiles/os_detection/hiveos-network.yaml create mode 100644 priv/profiles/os_detection/hiveos-wireless.yaml create mode 100644 priv/profiles/os_detection/horizon-compact.yaml create mode 100644 priv/profiles/os_detection/horizon-compactplus.yaml create mode 100644 priv/profiles/os_detection/horizon-duo.yaml create mode 100644 priv/profiles/os_detection/horizon-quantum.yaml create mode 100644 priv/profiles/os_detection/hpblmos.yaml create mode 100644 priv/profiles/os_detection/hpe-ilo.yaml create mode 100644 priv/profiles/os_detection/hpe-ipdu.yaml create mode 100644 priv/profiles/os_detection/hpe-mapdu.yaml create mode 100644 priv/profiles/os_detection/hpe-msa.yaml create mode 100644 priv/profiles/os_detection/hpe-msl.yaml create mode 100644 priv/profiles/os_detection/hpe-pdumm.yaml create mode 100644 priv/profiles/os_detection/hpe-rtups.yaml create mode 100644 priv/profiles/os_detection/hpmsm.yaml create mode 100644 priv/profiles/os_detection/hpvc.yaml create mode 100644 priv/profiles/os_detection/huawei-optixrtn.yaml create mode 100644 priv/profiles/os_detection/huawei-smu.yaml create mode 100644 priv/profiles/os_detection/huaweiups.yaml create mode 100644 priv/profiles/os_detection/hwg-perseus.yaml create mode 100644 priv/profiles/os_detection/hwg-poseidon.yaml create mode 100644 priv/profiles/os_detection/hwg-ste.yaml create mode 100644 priv/profiles/os_detection/hwg-ste2.yaml create mode 100644 priv/profiles/os_detection/hwg-wld.yaml create mode 100644 priv/profiles/os_detection/hyperion.yaml create mode 100644 priv/profiles/os_detection/hytera.yaml create mode 100644 priv/profiles/os_detection/ibm-amm.yaml create mode 100644 priv/profiles/os_detection/ibm-i.yaml create mode 100644 priv/profiles/os_detection/ibm-imm.yaml create mode 100644 priv/profiles/os_detection/ibmc.yaml create mode 100644 priv/profiles/os_detection/ibmnos.yaml create mode 100644 priv/profiles/os_detection/ibmtl.yaml create mode 100644 priv/profiles/os_detection/iboot.yaml create mode 100644 priv/profiles/os_detection/ibos.yaml create mode 100644 priv/profiles/os_detection/icotera.yaml create mode 100644 priv/profiles/os_detection/icr-os.yaml create mode 100644 priv/profiles/os_detection/ict-mps.yaml create mode 100644 priv/profiles/os_detection/ict-pdu.yaml create mode 100644 priv/profiles/os_detection/ict-psu.yaml create mode 100644 priv/profiles/os_detection/ict-swi.yaml create mode 100644 priv/profiles/os_detection/ies.yaml create mode 100644 priv/profiles/os_detection/ies5000.yaml create mode 100644 priv/profiles/os_detection/ies52xxM.yaml create mode 100644 priv/profiles/os_detection/ifotec.yaml create mode 100644 priv/profiles/os_detection/illustra.yaml create mode 100644 priv/profiles/os_detection/imcopower-big.yaml create mode 100644 priv/profiles/os_detection/imcopower-ls110.yaml create mode 100644 priv/profiles/os_detection/infinera-groove.yaml create mode 100644 priv/profiles/os_detection/infinera-pon.yaml create mode 100644 priv/profiles/os_detection/infinera-xtm.yaml create mode 100644 priv/profiles/os_detection/infinity.yaml create mode 100644 priv/profiles/os_detection/informos.yaml create mode 100644 priv/profiles/os_detection/infortrend.yaml create mode 100644 priv/profiles/os_detection/innovaphone.yaml create mode 100644 priv/profiles/os_detection/intelliflash.yaml create mode 100644 priv/profiles/os_detection/inteno.yaml create mode 100644 priv/profiles/os_detection/interseptor.yaml create mode 100644 priv/profiles/os_detection/ionodes.yaml create mode 100644 priv/profiles/os_detection/ionos.yaml create mode 100644 priv/profiles/os_detection/ios.yaml create mode 100644 priv/profiles/os_detection/iosxe.yaml create mode 100644 priv/profiles/os_detection/iosxr.yaml create mode 100644 priv/profiles/os_detection/ipolis.yaml create mode 100644 priv/profiles/os_detection/ipoman.yaml create mode 100644 priv/profiles/os_detection/iqnos.yaml create mode 100644 priv/profiles/os_detection/ird.yaml create mode 100644 priv/profiles/os_detection/ironware.yaml create mode 100644 priv/profiles/os_detection/ise.yaml create mode 100644 priv/profiles/os_detection/istars.yaml create mode 100644 priv/profiles/os_detection/janitza-umg96.yaml create mode 100644 priv/profiles/os_detection/janitza.yaml create mode 100644 priv/profiles/os_detection/jetdirect.yaml create mode 100644 priv/profiles/os_detection/jetstream.yaml create mode 100644 priv/profiles/os_detection/juniper-mss.yaml create mode 100644 priv/profiles/os_detection/juniperex2500os.yaml create mode 100644 priv/profiles/os_detection/junos.yaml create mode 100644 priv/profiles/os_detection/junose.yaml create mode 100644 priv/profiles/os_detection/jwos.yaml create mode 100644 priv/profiles/os_detection/keeneticos.yaml create mode 100644 priv/profiles/os_detection/kemp.yaml create mode 100644 priv/profiles/os_detection/konica.yaml create mode 100644 priv/profiles/os_detection/kti.yaml create mode 100644 priv/profiles/os_detection/kyocera.yaml create mode 100644 priv/profiles/os_detection/lambdatrail.yaml create mode 100644 priv/profiles/os_detection/lanier.yaml create mode 100644 priv/profiles/os_detection/lantronix-slc.yaml create mode 100644 priv/profiles/os_detection/lantronix-uds.yaml create mode 100644 priv/profiles/os_detection/lcos.yaml create mode 100644 priv/profiles/os_detection/lcoslx.yaml create mode 100644 priv/profiles/os_detection/lcossx.yaml create mode 100644 priv/profiles/os_detection/lenovoemc.yaml create mode 100644 priv/profiles/os_detection/lexmarkprinter.yaml create mode 100644 priv/profiles/os_detection/liebert.yaml create mode 100644 priv/profiles/os_detection/ligoos.yaml create mode 100644 priv/profiles/os_detection/linksys-ss.yaml create mode 100644 priv/profiles/os_detection/linux.yaml create mode 100644 priv/profiles/os_detection/loadbalancer.yaml create mode 100644 priv/profiles/os_detection/logmaster.yaml create mode 100644 priv/profiles/os_detection/loop-telecom.yaml create mode 100644 priv/profiles/os_detection/luminato.yaml create mode 100644 priv/profiles/os_detection/macosx.yaml create mode 100644 priv/profiles/os_detection/magnum.yaml create mode 100644 priv/profiles/os_detection/marathonups.yaml create mode 100644 priv/profiles/os_detection/mbg-ltos6.yaml create mode 100644 priv/profiles/os_detection/mbg-meinbergos.yaml create mode 100644 priv/profiles/os_detection/mcafeewebgateway.yaml create mode 100644 priv/profiles/os_detection/mellanox.yaml create mode 100644 priv/profiles/os_detection/merakimr.yaml create mode 100644 priv/profiles/os_detection/merakims.yaml create mode 100644 priv/profiles/os_detection/merakimx.yaml create mode 100644 priv/profiles/os_detection/mgepdu.yaml create mode 100644 priv/profiles/os_detection/microsemipdsine.yaml create mode 100644 priv/profiles/os_detection/microsemitime.yaml create mode 100644 priv/profiles/os_detection/mimosa.yaml create mode 100644 priv/profiles/os_detection/minkelsrms.yaml create mode 100644 priv/profiles/os_detection/mirth.yaml create mode 100644 priv/profiles/os_detection/mlos-atd.yaml create mode 100644 priv/profiles/os_detection/mlos-nsp.yaml create mode 100644 priv/profiles/os_detection/mni.yaml create mode 100644 priv/profiles/os_detection/mobileiron.yaml create mode 100644 priv/profiles/os_detection/monowall.yaml create mode 100644 priv/profiles/os_detection/montclair-edfa.yaml create mode 100644 priv/profiles/os_detection/morningstar-mppt.yaml create mode 100644 priv/profiles/os_detection/morningstar-pwm.yaml create mode 100644 priv/profiles/os_detection/motorola-cm.yaml create mode 100644 priv/profiles/os_detection/moxa-awk.yaml create mode 100644 priv/profiles/os_detection/moxa-eds-4000-series.yaml create mode 100644 priv/profiles/os_detection/moxa-etherdevice.yaml create mode 100644 priv/profiles/os_detection/moxa-nport.yaml create mode 100644 priv/profiles/os_detection/mpb-srp.yaml create mode 100644 priv/profiles/os_detection/mrv-od.yaml create mode 100644 priv/profiles/os_detection/mrvld.yaml create mode 100644 priv/profiles/os_detection/msl.yaml create mode 100644 priv/profiles/os_detection/mts-com.yaml create mode 100644 priv/profiles/os_detection/mypoweros.yaml create mode 100644 priv/profiles/os_detection/neptune.yaml create mode 100644 priv/profiles/os_detection/netagent2.yaml create mode 100644 priv/profiles/os_detection/netapp.yaml create mode 100644 priv/profiles/os_detection/netbotz.yaml create mode 100644 priv/profiles/os_detection/netbsd.yaml create mode 100644 priv/profiles/os_detection/netgear.yaml create mode 100644 priv/profiles/os_detection/netguardian.yaml create mode 100644 priv/profiles/os_detection/netmanplus.yaml create mode 100644 priv/profiles/os_detection/netmodule.yaml create mode 100644 priv/profiles/os_detection/netonix.yaml create mode 100644 priv/profiles/os_detection/netopia.yaml create mode 100644 priv/profiles/os_detection/netscaler-sdwan.yaml create mode 100644 priv/profiles/os_detection/netscaler.yaml create mode 100644 priv/profiles/os_detection/netspire.yaml create mode 100644 priv/profiles/os_detection/netsure.yaml create mode 100644 priv/profiles/os_detection/netvision-rfc.yaml create mode 100644 priv/profiles/os_detection/netware.yaml create mode 100644 priv/profiles/os_detection/nexans.yaml create mode 100644 priv/profiles/os_detection/nimbleos.yaml create mode 100644 priv/profiles/os_detection/nios.yaml create mode 100644 priv/profiles/os_detection/nitro.yaml create mode 100644 priv/profiles/os_detection/nokia-1830.yaml create mode 100644 priv/profiles/os_detection/nokia-isam.yaml create mode 100644 priv/profiles/os_detection/nos.yaml create mode 100644 priv/profiles/os_detection/nrg.yaml create mode 100644 priv/profiles/os_detection/ns-bsd.yaml create mode 100644 priv/profiles/os_detection/nti.yaml create mode 100644 priv/profiles/os_detection/ntron.yaml create mode 100644 priv/profiles/os_detection/nutanix-aos.yaml create mode 100644 priv/profiles/os_detection/nxos.yaml create mode 100644 priv/profiles/os_detection/occamos.yaml create mode 100644 priv/profiles/os_detection/oceanstor.yaml create mode 100644 priv/profiles/os_detection/ocnos.yaml create mode 100644 priv/profiles/os_detection/okilan.yaml create mode 100644 priv/profiles/os_detection/omnipcx.yaml create mode 100644 priv/profiles/os_detection/omnitron-iconverter.yaml create mode 100644 priv/profiles/os_detection/oneaccess.yaml create mode 100644 priv/profiles/os_detection/onefs.yaml create mode 100644 priv/profiles/os_detection/ons.yaml create mode 100644 priv/profiles/os_detection/open-e.yaml create mode 100644 priv/profiles/os_detection/openbsd.yaml create mode 100644 priv/profiles/os_detection/opengear.yaml create mode 100644 priv/profiles/os_detection/openindiana.yaml create mode 100644 priv/profiles/os_detection/opensolaris.yaml create mode 100644 priv/profiles/os_detection/openvms.yaml create mode 100644 priv/profiles/os_detection/openwrt.yaml create mode 100644 priv/profiles/os_detection/opnsense.yaml create mode 100644 priv/profiles/os_detection/oracle-ilom.yaml create mode 100644 priv/profiles/os_detection/orolia-securesync.yaml create mode 100644 priv/profiles/os_detection/orvaldi-ups.yaml create mode 100644 priv/profiles/os_detection/osag.yaml create mode 100644 priv/profiles/os_detection/osm.yaml create mode 100644 priv/profiles/os_detection/packetlight.yaml create mode 100644 priv/profiles/os_detection/packetshaper.yaml create mode 100644 priv/profiles/os_detection/panasonic-ns.yaml create mode 100644 priv/profiles/os_detection/pandacom.yaml create mode 100644 priv/profiles/os_detection/panduit-eagle.yaml create mode 100644 priv/profiles/os_detection/panduit.yaml create mode 100644 priv/profiles/os_detection/panos.yaml create mode 100644 priv/profiles/os_detection/papouch-quido.yaml create mode 100644 priv/profiles/os_detection/papouch-tme.yaml create mode 100644 priv/profiles/os_detection/paradyne.yaml create mode 100644 priv/profiles/os_detection/parks-switch.yaml create mode 100644 priv/profiles/os_detection/patton-sn.yaml create mode 100644 priv/profiles/os_detection/pbn-cp.yaml create mode 100644 priv/profiles/os_detection/pbn.yaml create mode 100644 priv/profiles/os_detection/pcoweb-rittal-lcp-3311.yaml create mode 100644 priv/profiles/os_detection/pcoweb-rittalchiller.yaml create mode 100644 priv/profiles/os_detection/pcoweb.yaml create mode 100644 priv/profiles/os_detection/pegasus.yaml create mode 100644 priv/profiles/os_detection/pepwave.yaml create mode 100644 priv/profiles/os_detection/perle.yaml create mode 100644 priv/profiles/os_detection/pfsense.yaml create mode 100644 priv/profiles/os_detection/phybridge-flex.yaml create mode 100644 priv/profiles/os_detection/picos.yaml create mode 100644 priv/profiles/os_detection/ping.yaml create mode 100644 priv/profiles/os_detection/pixos.yaml create mode 100644 priv/profiles/os_detection/pktj.yaml create mode 100644 priv/profiles/os_detection/planet-pdu.yaml create mode 100644 priv/profiles/os_detection/planetos.yaml create mode 100644 priv/profiles/os_detection/pmp.yaml create mode 100644 priv/profiles/os_detection/polycomLens.yaml create mode 100644 priv/profiles/os_detection/poweralert.yaml create mode 100644 priv/profiles/os_detection/powercode.yaml create mode 100644 priv/profiles/os_detection/powerconnect.yaml create mode 100644 priv/profiles/os_detection/powerlogic.yaml create mode 100644 priv/profiles/os_detection/powervault.yaml create mode 100644 priv/profiles/os_detection/powerwalker-vfi.yaml create mode 100644 priv/profiles/os_detection/powerwalker.yaml create mode 100644 priv/profiles/os_detection/prestige.yaml create mode 100644 priv/profiles/os_detection/primeinfrastructure.yaml create mode 100644 priv/profiles/os_detection/primekey-sw.yaml create mode 100644 priv/profiles/os_detection/primekey.yaml create mode 100644 priv/profiles/os_detection/procera.yaml create mode 100644 priv/profiles/os_detection/procurve.yaml create mode 100755 priv/profiles/os_detection/profline-sfd.yaml create mode 100644 priv/profiles/os_detection/protelevision-t1.yaml create mode 100644 priv/profiles/os_detection/proxim.yaml create mode 100644 priv/profiles/os_detection/proxmox.yaml create mode 100644 priv/profiles/os_detection/ptp250.yaml create mode 100644 priv/profiles/os_detection/ptp500.yaml create mode 100644 priv/profiles/os_detection/ptp600.yaml create mode 100644 priv/profiles/os_detection/ptp650.yaml create mode 100644 priv/profiles/os_detection/ptp670.yaml create mode 100644 priv/profiles/os_detection/ptp800.yaml create mode 100644 priv/profiles/os_detection/pulse.yaml create mode 100644 priv/profiles/os_detection/purestorage.yaml create mode 100644 priv/profiles/os_detection/qnap.yaml create mode 100644 priv/profiles/os_detection/qtech.yaml create mode 100644 priv/profiles/os_detection/quanta.yaml create mode 100644 priv/profiles/os_detection/quantastor.yaml create mode 100644 priv/profiles/os_detection/quantum.yaml create mode 100644 priv/profiles/os_detection/rad-rici.yaml create mode 100644 priv/profiles/os_detection/radlan.yaml create mode 100644 priv/profiles/os_detection/radwin.yaml create mode 100644 priv/profiles/os_detection/raisecom-ros.yaml create mode 100644 priv/profiles/os_detection/raisecom.yaml create mode 100644 priv/profiles/os_detection/rajant.yaml create mode 100644 priv/profiles/os_detection/raritan-emx.yaml create mode 100644 priv/profiles/os_detection/raritan-kvm.yaml create mode 100644 priv/profiles/os_detection/raritan-pdu.yaml create mode 100644 priv/profiles/os_detection/ray.yaml create mode 100644 priv/profiles/os_detection/ray3.yaml create mode 100644 priv/profiles/os_detection/recoveryos.yaml create mode 100644 priv/profiles/os_detection/remoteye4.yaml create mode 100644 priv/profiles/os_detection/ricoh.yaml create mode 100644 priv/profiles/os_detection/rittal-cmc-iii-pu.yaml create mode 100644 priv/profiles/os_detection/rittal-cmc.yaml create mode 100644 priv/profiles/os_detection/rittal-lcp.yaml create mode 100644 priv/profiles/os_detection/riverbed.yaml create mode 100644 priv/profiles/os_detection/rnx-updu.yaml create mode 100644 priv/profiles/os_detection/ros.yaml create mode 100644 priv/profiles/os_detection/routeros.yaml create mode 100644 priv/profiles/os_detection/rs.yaml create mode 100644 priv/profiles/os_detection/rubrik.yaml create mode 100644 priv/profiles/os_detection/ruckuswireless-hotzone.yaml create mode 100644 priv/profiles/os_detection/ruckuswireless-sz.yaml create mode 100644 priv/profiles/os_detection/ruckuswireless-unleashed.yaml create mode 100644 priv/profiles/os_detection/ruckuswireless.yaml create mode 100644 priv/profiles/os_detection/ruijie.yaml create mode 100644 priv/profiles/os_detection/rutos-2xx.yaml create mode 100644 priv/profiles/os_detection/rutos-rutm.yaml create mode 100644 priv/profiles/os_detection/rutos-rutx.yaml create mode 100644 priv/profiles/os_detection/rutos.yaml create mode 100644 priv/profiles/os_detection/saf-cfm.yaml create mode 100644 priv/profiles/os_detection/saf-integra-b.yaml create mode 100644 priv/profiles/os_detection/saf-integra-e.yaml create mode 100644 priv/profiles/os_detection/saf-integra-w.yaml create mode 100644 priv/profiles/os_detection/saf-integra-x.yaml create mode 100644 priv/profiles/os_detection/saf.yaml create mode 100755 priv/profiles/os_detection/samlex.yaml create mode 100644 priv/profiles/os_detection/samsungprinter.yaml create mode 100644 priv/profiles/os_detection/sanos.yaml create mode 100644 priv/profiles/os_detection/savin.yaml create mode 100644 priv/profiles/os_detection/scalance.yaml create mode 100644 priv/profiles/os_detection/schleifenbauer.yaml create mode 100644 priv/profiles/os_detection/scopia.yaml create mode 100644 priv/profiles/os_detection/screenos.yaml create mode 100644 priv/profiles/os_detection/scs-ks.yaml create mode 100644 priv/profiles/os_detection/secureplatform.yaml create mode 100644 priv/profiles/os_detection/seh-uds.yaml create mode 100644 priv/profiles/os_detection/sensatronics-em1.yaml create mode 100644 priv/profiles/os_detection/sensatronics-ittm.yaml create mode 100644 priv/profiles/os_detection/sentry3.yaml create mode 100644 priv/profiles/os_detection/sentry4.yaml create mode 100644 priv/profiles/os_detection/seos.yaml create mode 100644 priv/profiles/os_detection/serveriron.yaml create mode 100644 priv/profiles/os_detection/serverscheck.yaml create mode 100644 priv/profiles/os_detection/sgos.yaml create mode 100644 priv/profiles/os_detection/sharp.yaml create mode 100644 priv/profiles/os_detection/siklu.yaml create mode 100644 priv/profiles/os_detection/sinetica.yaml create mode 100644 priv/profiles/os_detection/siteboss.yaml create mode 100644 priv/profiles/os_detection/siteboss360.yaml create mode 100644 priv/profiles/os_detection/siteboss550.yaml create mode 100644 priv/profiles/os_detection/siteboss571.yaml create mode 100644 priv/profiles/os_detection/siteboss572.yaml create mode 100644 priv/profiles/os_detection/sitemonitor.yaml create mode 100644 priv/profiles/os_detection/sixnet.yaml create mode 100644 priv/profiles/os_detection/skyhighwebprotect.yaml create mode 100644 priv/profiles/os_detection/slms.yaml create mode 100644 priv/profiles/os_detection/slxos.yaml create mode 100644 priv/profiles/os_detection/sm-os.yaml create mode 100644 priv/profiles/os_detection/smartax-mdu.yaml create mode 100644 priv/profiles/os_detection/smartax.yaml create mode 100644 priv/profiles/os_detection/smartbyte.yaml create mode 100644 priv/profiles/os_detection/smartos-dcp-m.yaml create mode 100644 priv/profiles/os_detection/smartos-t.yaml create mode 100644 priv/profiles/os_detection/smartos.yaml create mode 100644 priv/profiles/os_detection/snr-erd.yaml create mode 100644 priv/profiles/os_detection/snr.yaml create mode 100644 priv/profiles/os_detection/socomec-ups.yaml create mode 100644 priv/profiles/os_detection/socomec.yaml create mode 100644 priv/profiles/os_detection/solaris.yaml create mode 100644 priv/profiles/os_detection/solidserver.yaml create mode 100644 priv/profiles/os_detection/sonicwall.yaml create mode 100644 priv/profiles/os_detection/sonus-gsx.yaml create mode 100644 priv/profiles/os_detection/sonus-sbc.yaml create mode 100644 priv/profiles/os_detection/sophos-xg.yaml create mode 100644 priv/profiles/os_detection/sophos.yaml create mode 100644 priv/profiles/os_detection/speedtouch.yaml create mode 100644 priv/profiles/os_detection/srlinux.yaml create mode 100644 priv/profiles/os_detection/sslvis.yaml create mode 100644 priv/profiles/os_detection/ssu2000.yaml create mode 100644 priv/profiles/os_detection/stellar.yaml create mode 100644 priv/profiles/os_detection/stoneos.yaml create mode 100644 priv/profiles/os_detection/stulz.yaml create mode 100644 priv/profiles/os_detection/sub10.yaml create mode 100644 priv/profiles/os_detection/supercap.yaml create mode 100644 priv/profiles/os_detection/supermicro-bmc.yaml create mode 100644 priv/profiles/os_detection/supermicro-switch.yaml create mode 100644 priv/profiles/os_detection/supervyse-openbmc.yaml create mode 100644 priv/profiles/os_detection/svos.yaml create mode 100644 priv/profiles/os_detection/swos.yaml create mode 100644 priv/profiles/os_detection/symbol.yaml create mode 100644 priv/profiles/os_detection/tachyon.yaml create mode 100644 priv/profiles/os_detection/tailyn.yaml create mode 100644 priv/profiles/os_detection/tait-infra93.yaml create mode 100644 priv/profiles/os_detection/tait-tnadmin.yaml create mode 100644 priv/profiles/os_detection/teldat.yaml create mode 100644 priv/profiles/os_detection/televes-fs.yaml create mode 100644 priv/profiles/os_detection/teracom.yaml create mode 100644 priv/profiles/os_detection/teradici-pcoip.yaml create mode 100644 priv/profiles/os_detection/terra-sdi410c.yaml create mode 100644 priv/profiles/os_detection/terra-sdi480.yaml create mode 100644 priv/profiles/os_detection/terra.yaml create mode 100644 priv/profiles/os_detection/tgos.yaml create mode 100644 priv/profiles/os_detection/thomson-cm.yaml create mode 100644 priv/profiles/os_detection/timos.yaml create mode 100644 priv/profiles/os_detection/tomato.yaml create mode 100644 priv/profiles/os_detection/topvision.yaml create mode 100644 priv/profiles/os_detection/toshiba-tec.yaml create mode 100644 priv/profiles/os_detection/tpconductor.yaml create mode 100644 priv/profiles/os_detection/tpdin.yaml create mode 100644 priv/profiles/os_detection/tpdin3.yaml create mode 100644 priv/profiles/os_detection/tplink.yaml create mode 100644 priv/profiles/os_detection/transition.yaml create mode 100644 priv/profiles/os_detection/tranzeo.yaml create mode 100644 priv/profiles/os_detection/trendnet.yaml create mode 100644 priv/profiles/os_detection/trippliteconsole.yaml create mode 100644 priv/profiles/os_detection/truenas-scale.yaml create mode 100644 priv/profiles/os_detection/truenas.yaml create mode 100644 priv/profiles/os_detection/ts-bspdu.yaml create mode 100644 priv/profiles/os_detection/tsc.yaml create mode 100644 priv/profiles/os_detection/ubiquoss-pon.yaml create mode 100644 priv/profiles/os_detection/ucopia.yaml create mode 100644 priv/profiles/os_detection/ucos.yaml create mode 100644 priv/profiles/os_detection/uhp.yaml create mode 100644 priv/profiles/os_detection/ulaf.yaml create mode 100644 priv/profiles/os_detection/unifi-usp.yaml create mode 100644 priv/profiles/os_detection/unifi.yaml create mode 100644 priv/profiles/os_detection/uniping.yaml create mode 100644 priv/profiles/os_detection/univerge.yaml create mode 100644 priv/profiles/os_detection/utax.yaml create mode 100644 priv/profiles/os_detection/valere.yaml create mode 100644 priv/profiles/os_detection/vccodec.yaml create mode 100644 priv/profiles/os_detection/vcs.yaml create mode 100644 priv/profiles/os_detection/vega.yaml create mode 100644 priv/profiles/os_detection/velocloud.yaml create mode 100644 priv/profiles/os_detection/venturi.yaml create mode 100644 priv/profiles/os_detection/vertiv-dcs.yaml create mode 100644 priv/profiles/os_detection/vertiv-ita2.yaml create mode 100644 priv/profiles/os_detection/vertiv-pdu.yaml create mode 100644 priv/profiles/os_detection/vigintos.yaml create mode 100644 priv/profiles/os_detection/viprinux.yaml create mode 100644 priv/profiles/os_detection/viptela.yaml create mode 100644 priv/profiles/os_detection/vivotek.yaml create mode 100644 priv/profiles/os_detection/vmware-esxi.yaml create mode 100644 priv/profiles/os_detection/vmware-vcsa.yaml create mode 100644 priv/profiles/os_detection/volius.yaml create mode 100644 priv/profiles/os_detection/voss.yaml create mode 100644 priv/profiles/os_detection/voswall.yaml create mode 100644 priv/profiles/os_detection/vrp.yaml create mode 100644 priv/profiles/os_detection/vsolution.yaml create mode 100644 priv/profiles/os_detection/vubiq.yaml create mode 100644 priv/profiles/os_detection/vutlan.yaml create mode 100644 priv/profiles/os_detection/vxoa.yaml create mode 100644 priv/profiles/os_detection/vyatta.yaml create mode 100644 priv/profiles/os_detection/vyos.yaml create mode 100644 priv/profiles/os_detection/waas.yaml create mode 100644 priv/profiles/os_detection/webmon.yaml create mode 100644 priv/profiles/os_detection/webpower-smart2.yaml create mode 100644 priv/profiles/os_detection/webpower.yaml create mode 100644 priv/profiles/os_detection/websensor.yaml create mode 100644 priv/profiles/os_detection/weos.yaml create mode 100644 priv/profiles/os_detection/westmountainradio.yaml create mode 100644 priv/profiles/os_detection/windows.yaml create mode 100644 priv/profiles/os_detection/wipipe.yaml create mode 100755 priv/profiles/os_detection/wis-bridge.yaml create mode 100644 priv/profiles/os_detection/wisi-tangram.yaml create mode 100644 priv/profiles/os_detection/witchos.yaml create mode 100644 priv/profiles/os_detection/wti-console.yaml create mode 100644 priv/profiles/os_detection/wti-mpc.yaml create mode 100644 priv/profiles/os_detection/wti-power.yaml create mode 100644 priv/profiles/os_detection/wut.yaml create mode 100644 priv/profiles/os_detection/wxgoos.yaml create mode 100644 priv/profiles/os_detection/xclarity.yaml create mode 100644 priv/profiles/os_detection/xerox.yaml create mode 100644 priv/profiles/os_detection/xirrus_aos.yaml create mode 100644 priv/profiles/os_detection/xos.yaml create mode 100644 priv/profiles/os_detection/yunshan.yaml create mode 100644 priv/profiles/os_detection/zebra.yaml create mode 100644 priv/profiles/os_detection/zenitel-alphacom.yaml create mode 100644 priv/profiles/os_detection/zenitel-ipstation.yaml create mode 100644 priv/profiles/os_detection/zenitel-vsdevice.yaml create mode 100644 priv/profiles/os_detection/zmtel.yaml create mode 100644 priv/profiles/os_detection/zxa10.yaml create mode 100644 priv/profiles/os_detection/zxdsl.yaml create mode 100644 priv/profiles/os_detection/zxr10.yaml create mode 100644 priv/profiles/os_detection/zynos.yaml create mode 100644 priv/profiles/os_detection/zywall.yaml create mode 100644 priv/profiles/os_detection/zyxelac.yaml create mode 100644 priv/profiles/os_detection/zyxelnwa.yaml create mode 100644 priv/profiles/os_detection/zyxelusg.yaml create mode 100644 priv/profiles/os_detection/zyxelwlc.yaml create mode 100644 priv/profiles/os_discovery/3com.yaml create mode 100644 priv/profiles/os_discovery/aaron.yaml create mode 100644 priv/profiles/os_discovery/abbups.yaml create mode 100644 priv/profiles/os_discovery/acano.yaml create mode 100644 priv/profiles/os_discovery/acos.yaml create mode 100644 priv/profiles/os_discovery/acs.yaml create mode 100644 priv/profiles/os_discovery/adtran-aos.yaml create mode 100644 priv/profiles/os_discovery/adva-alm.yaml create mode 100644 priv/profiles/os_discovery/adva-aos.yaml create mode 100644 priv/profiles/os_discovery/adva-osa.yaml create mode 100644 priv/profiles/os_discovery/adva_fsp150.yaml create mode 100644 priv/profiles/os_discovery/adva_fsp3kr7.yaml create mode 100644 priv/profiles/os_discovery/adva_xg300.yaml create mode 100644 priv/profiles/os_discovery/advantech.yaml create mode 100644 priv/profiles/os_discovery/aen.yaml create mode 100644 priv/profiles/os_discovery/airos-af-ltu.yaml create mode 100644 priv/profiles/os_discovery/airos-af.yaml create mode 100644 priv/profiles/os_discovery/airos-af60.yaml create mode 100644 priv/profiles/os_discovery/airos.yaml create mode 100644 priv/profiles/os_discovery/airport.yaml create mode 100644 priv/profiles/os_discovery/aix.yaml create mode 100644 priv/profiles/os_discovery/akcp.yaml create mode 100644 priv/profiles/os_discovery/alcoma-almp.yaml create mode 100644 priv/profiles/os_discovery/algcom-dc-ups.yaml create mode 100644 priv/profiles/os_discovery/algcom-sm.yaml create mode 100644 priv/profiles/os_discovery/allied-tq.yaml create mode 100644 priv/profiles/os_discovery/aloha.yaml create mode 100644 priv/profiles/os_discovery/alpineoe-tdcmedfa.yaml create mode 100644 priv/profiles/os_discovery/altalabs-ap.yaml create mode 100644 priv/profiles/os_discovery/altalabs.yaml create mode 100644 priv/profiles/os_discovery/alteonos.yaml create mode 100644 priv/profiles/os_discovery/anyos.yaml create mode 100644 priv/profiles/os_discovery/aos-emu2.yaml create mode 100644 priv/profiles/os_discovery/aos.yaml create mode 100755 priv/profiles/os_discovery/aos6.yaml create mode 100755 priv/profiles/os_discovery/aos7.yaml create mode 100644 priv/profiles/os_discovery/apc-cpdu.yaml create mode 100644 priv/profiles/os_discovery/apc-epdu.yaml create mode 100644 priv/profiles/os_discovery/apc-mgeups.yaml create mode 100644 priv/profiles/os_discovery/apc-netbotz.yaml create mode 100644 priv/profiles/os_discovery/apc.yaml create mode 100644 priv/profiles/os_discovery/apex-lynx.yaml create mode 100644 priv/profiles/os_discovery/apex-plus.yaml create mode 100644 priv/profiles/os_discovery/apic.yaml create mode 100644 priv/profiles/os_discovery/apsoluteos.yaml create mode 100644 priv/profiles/os_discovery/arbos.yaml create mode 100644 priv/profiles/os_discovery/areca.yaml create mode 100644 priv/profiles/os_discovery/arista-mos.yaml create mode 100644 priv/profiles/os_discovery/arista_eos.yaml create mode 100644 priv/profiles/os_discovery/arrayos.yaml create mode 100644 priv/profiles/os_discovery/arris-apex.yaml create mode 100644 priv/profiles/os_discovery/arris-c3.yaml create mode 100644 priv/profiles/os_discovery/arris-dsr4410md.yaml create mode 100644 priv/profiles/os_discovery/aruba-instant.yaml create mode 100644 priv/profiles/os_discovery/arubaos-cx.yaml create mode 100644 priv/profiles/os_discovery/arubaos.yaml create mode 100644 priv/profiles/os_discovery/asa.yaml create mode 100644 priv/profiles/os_discovery/ascom.yaml create mode 100644 priv/profiles/os_discovery/asyncos.yaml create mode 100644 priv/profiles/os_discovery/atenpdu.yaml create mode 100755 priv/profiles/os_discovery/ats.yaml create mode 100644 priv/profiles/os_discovery/audiocodes.yaml create mode 100644 priv/profiles/os_discovery/avaya-ipo.yaml create mode 100644 priv/profiles/os_discovery/aviat-wtm.yaml create mode 100644 priv/profiles/os_discovery/avocent-mp.yaml create mode 100644 priv/profiles/os_discovery/avocent.yaml create mode 100644 priv/profiles/os_discovery/avr-hd.yaml create mode 100644 priv/profiles/os_discovery/avtech.yaml create mode 100644 priv/profiles/os_discovery/awplus.yaml create mode 100644 priv/profiles/os_discovery/axisaudio.yaml create mode 100644 priv/profiles/os_discovery/axiscam.yaml create mode 100644 priv/profiles/os_discovery/axos.yaml create mode 100644 priv/profiles/os_discovery/baicells-od04.yaml create mode 100644 priv/profiles/os_discovery/barracudaspamfirewall.yaml create mode 100644 priv/profiles/os_discovery/barracudawafirewall.yaml create mode 100644 priv/profiles/os_discovery/bats.yaml create mode 100644 priv/profiles/os_discovery/bdcom.yaml create mode 100644 priv/profiles/os_discovery/benuos.yaml create mode 100644 priv/profiles/os_discovery/binos.yaml create mode 100644 priv/profiles/os_discovery/binox.yaml create mode 100644 priv/profiles/os_discovery/bintec-beip-plus.yaml create mode 100644 priv/profiles/os_discovery/bintec-smart.yaml create mode 100644 priv/profiles/os_discovery/bison.yaml create mode 100644 priv/profiles/os_discovery/bke.yaml create mode 100644 priv/profiles/os_discovery/bktel-oa.yaml create mode 100755 priv/profiles/os_discovery/bluecatnetworks.yaml create mode 100644 priv/profiles/os_discovery/bnt.yaml create mode 100644 priv/profiles/os_discovery/boss.yaml create mode 100644 priv/profiles/os_discovery/breeze.yaml create mode 100755 priv/profiles/os_discovery/broadworks.yaml create mode 100644 priv/profiles/os_discovery/bti800.yaml create mode 100644 priv/profiles/os_discovery/buffalo.yaml create mode 100644 priv/profiles/os_discovery/calix.yaml create mode 100644 priv/profiles/os_discovery/canonprinter.yaml create mode 100644 priv/profiles/os_discovery/cat1900.yaml create mode 100644 priv/profiles/os_discovery/catos.yaml create mode 100644 priv/profiles/os_discovery/cdata.yaml create mode 100644 priv/profiles/os_discovery/ceraos.yaml create mode 100644 priv/profiles/os_discovery/cetpower.yaml create mode 100644 priv/profiles/os_discovery/chatsworth-pdu.yaml create mode 100644 priv/profiles/os_discovery/christie-projector.yaml create mode 100644 priv/profiles/os_discovery/ciena-rls.yaml create mode 100644 priv/profiles/os_discovery/ciena-saos.yaml create mode 100644 priv/profiles/os_discovery/ciena-sds.yaml create mode 100644 priv/profiles/os_discovery/ciena-waveserver.yaml create mode 100644 priv/profiles/os_discovery/cimc.yaml create mode 100644 priv/profiles/os_discovery/cips.yaml create mode 100644 priv/profiles/os_discovery/cirpack.yaml create mode 100644 priv/profiles/os_discovery/ciscoepc.yaml create mode 100644 priv/profiles/os_discovery/ciscosat.yaml create mode 100644 priv/profiles/os_discovery/ciscosb.yaml create mode 100644 priv/profiles/os_discovery/ciscosce.yaml create mode 100644 priv/profiles/os_discovery/ciscosrp.yaml create mode 100644 priv/profiles/os_discovery/ciscowap.yaml create mode 100644 priv/profiles/os_discovery/ciscowlc.yaml create mode 100644 priv/profiles/os_discovery/clearpass.yaml create mode 100644 priv/profiles/os_discovery/clickshare.yaml create mode 100644 priv/profiles/os_discovery/cmm.yaml create mode 100644 priv/profiles/os_discovery/cmm4.yaml create mode 100644 priv/profiles/os_discovery/cms.yaml create mode 100644 priv/profiles/os_discovery/cnmatrix.yaml create mode 100644 priv/profiles/os_discovery/cnos.yaml create mode 100644 priv/profiles/os_discovery/cnpilote.yaml create mode 100644 priv/profiles/os_discovery/cnpilotr.yaml create mode 100644 priv/profiles/os_discovery/cnwave60.yaml create mode 100644 priv/profiles/os_discovery/compas.yaml create mode 100644 priv/profiles/os_discovery/comware.yaml create mode 100644 priv/profiles/os_discovery/controlbox.yaml create mode 100644 priv/profiles/os_discovery/ctcu.yaml create mode 100644 priv/profiles/os_discovery/ctm.yaml create mode 100644 priv/profiles/os_discovery/cts.yaml create mode 100644 priv/profiles/os_discovery/cxc.yaml create mode 100644 priv/profiles/os_discovery/cxr-ts.yaml create mode 100644 priv/profiles/os_discovery/cxrc.yaml create mode 100644 priv/profiles/os_discovery/cyberoam-utm.yaml create mode 100644 priv/profiles/os_discovery/cyberpower.yaml create mode 100644 priv/profiles/os_discovery/dahua-nvr.yaml create mode 100644 priv/profiles/os_discovery/dantherm-os.yaml create mode 100644 priv/profiles/os_discovery/dasan-nos.yaml create mode 100644 priv/profiles/os_discovery/datacom-dmos.yaml create mode 100644 priv/profiles/os_discovery/datacom.yaml create mode 100644 priv/profiles/os_discovery/datadomain.yaml create mode 100644 priv/profiles/os_discovery/dcn-software.yaml create mode 100644 priv/profiles/os_discovery/ddnos.yaml create mode 100644 priv/profiles/os_discovery/deliberant.yaml create mode 100644 priv/profiles/os_discovery/dell-compellent.yaml create mode 100644 priv/profiles/os_discovery/dell-laser.yaml create mode 100644 priv/profiles/os_discovery/dell-ome-m.yaml create mode 100644 priv/profiles/os_discovery/dell-os10.yaml create mode 100644 priv/profiles/os_discovery/dell-powervault.yaml create mode 100644 priv/profiles/os_discovery/dell-rcs.yaml create mode 100644 priv/profiles/os_discovery/dell-rpdu.yaml create mode 100644 priv/profiles/os_discovery/dell-ups.yaml create mode 100644 priv/profiles/os_discovery/deltaorion.yaml create mode 100644 priv/profiles/os_discovery/deltaups.yaml create mode 100644 priv/profiles/os_discovery/deva-db7001.yaml create mode 100644 priv/profiles/os_discovery/develop.yaml create mode 100644 priv/profiles/os_discovery/dhcpatriot.yaml create mode 100644 priv/profiles/os_discovery/digipower.yaml create mode 100644 priv/profiles/os_discovery/dkt.yaml create mode 100644 priv/profiles/os_discovery/dlink-dgs1250.yaml create mode 100644 priv/profiles/os_discovery/dlink.yaml create mode 100644 priv/profiles/os_discovery/dnos.yaml create mode 100644 priv/profiles/os_discovery/dpi.yaml create mode 100644 priv/profiles/os_discovery/drac.yaml create mode 100644 priv/profiles/os_discovery/dragonfly.yaml create mode 100644 priv/profiles/os_discovery/draytek.yaml create mode 100644 priv/profiles/os_discovery/dsm.yaml create mode 100644 priv/profiles/os_discovery/e3meter.yaml create mode 100644 priv/profiles/os_discovery/e3meterdc.yaml create mode 100644 priv/profiles/os_discovery/eaton-ats.yaml create mode 100644 priv/profiles/os_discovery/eaton-matrix.yaml create mode 100644 priv/profiles/os_discovery/eaton-mgeups.yaml create mode 100644 priv/profiles/os_discovery/eaton-sc200.yaml create mode 100644 priv/profiles/os_discovery/eaton-sc300.yaml create mode 100644 priv/profiles/os_discovery/eatonpdu.yaml create mode 100644 priv/profiles/os_discovery/eatonups.yaml create mode 100644 priv/profiles/os_discovery/eatonupsm2.yaml create mode 100644 priv/profiles/os_discovery/ecresofm-os.yaml create mode 100644 priv/profiles/os_discovery/edfa.yaml create mode 100644 priv/profiles/os_discovery/edfamux.yaml create mode 100644 priv/profiles/os_discovery/edgeos-ep.yaml create mode 100644 priv/profiles/os_discovery/edgeos.yaml create mode 100644 priv/profiles/os_discovery/edgeosolt.yaml create mode 100644 priv/profiles/os_discovery/edgeswitch.yaml create mode 100644 priv/profiles/os_discovery/eds.yaml create mode 100644 priv/profiles/os_discovery/ees.yaml create mode 100644 priv/profiles/os_discovery/ekinops.yaml create mode 100644 priv/profiles/os_discovery/elg-ipecs-es.yaml create mode 100644 priv/profiles/os_discovery/elg-ipecs-ucp.yaml create mode 100644 priv/profiles/os_discovery/eltek-webpower.yaml create mode 100644 priv/profiles/os_discovery/eltex-mes21xx.yaml create mode 100644 priv/profiles/os_discovery/eltex-mes23xx.yaml create mode 100644 priv/profiles/os_discovery/eltex-mes24xx.yaml create mode 100644 priv/profiles/os_discovery/eltex-olt.yaml create mode 100644 priv/profiles/os_discovery/endrun.yaml create mode 100644 priv/profiles/os_discovery/enexus.yaml create mode 100644 priv/profiles/os_discovery/enlogic-pdu.yaml create mode 100644 priv/profiles/os_discovery/enterasys.yaml create mode 100644 priv/profiles/os_discovery/epmp.yaml create mode 100644 priv/profiles/os_discovery/epson-scanner.yaml create mode 100644 priv/profiles/os_discovery/epson.yaml create mode 100644 priv/profiles/os_discovery/ericsson-6600.yaml create mode 100644 priv/profiles/os_discovery/ericsson-ipos.yaml create mode 100644 priv/profiles/os_discovery/ericsson-ml.yaml create mode 100644 priv/profiles/os_discovery/ericsson-tn.yaml create mode 100644 priv/profiles/os_discovery/esphome.yaml create mode 100644 priv/profiles/os_discovery/etherwan.yaml create mode 100644 priv/profiles/os_discovery/ets.yaml create mode 100644 priv/profiles/os_discovery/eurostor.yaml create mode 100644 priv/profiles/os_discovery/ewc.yaml create mode 100644 priv/profiles/os_discovery/exagridos.yaml create mode 100644 priv/profiles/os_discovery/exalink-fusion.yaml create mode 100644 priv/profiles/os_discovery/exos.yaml create mode 100644 priv/profiles/os_discovery/extendair.yaml create mode 100644 priv/profiles/os_discovery/extrahop.yaml create mode 100644 priv/profiles/os_discovery/extremeware.yaml create mode 100644 priv/profiles/os_discovery/f5.yaml create mode 100644 priv/profiles/os_discovery/f5os.yaml create mode 100644 priv/profiles/os_discovery/fabos.yaml create mode 100644 priv/profiles/os_discovery/feos.yaml create mode 100644 priv/profiles/os_discovery/fiberhome-switch.yaml create mode 100644 priv/profiles/os_discovery/fiberhome.yaml create mode 100755 priv/profiles/os_discovery/fibernet-xmux4-plus.yaml create mode 100644 priv/profiles/os_discovery/fibrolan-falcon.yaml create mode 100644 priv/profiles/os_discovery/fibrolan-metrostar.yaml create mode 100644 priv/profiles/os_discovery/firebox.yaml create mode 100644 priv/profiles/os_discovery/firebrick.yaml create mode 100644 priv/profiles/os_discovery/fireware.yaml create mode 100644 priv/profiles/os_discovery/flareos.yaml create mode 100644 priv/profiles/os_discovery/flexbng.yaml create mode 100644 priv/profiles/os_discovery/forcepoint-fe.yaml create mode 100644 priv/profiles/os_discovery/forcepoint.yaml create mode 100644 priv/profiles/os_discovery/fortiadc.yaml create mode 100644 priv/profiles/os_discovery/fortiap.yaml create mode 100644 priv/profiles/os_discovery/fortiauthenticator.yaml create mode 100644 priv/profiles/os_discovery/fortiextender.yaml create mode 100644 priv/profiles/os_discovery/fortigate.yaml create mode 100644 priv/profiles/os_discovery/fortimail.yaml create mode 100644 priv/profiles/os_discovery/fortios.yaml create mode 100644 priv/profiles/os_discovery/fortisandbox.yaml create mode 100644 priv/profiles/os_discovery/fortiswitch.yaml create mode 100644 priv/profiles/os_discovery/fortivoice.yaml create mode 100644 priv/profiles/os_discovery/fortiweb.yaml create mode 100644 priv/profiles/os_discovery/fortiwlc.yaml create mode 100644 priv/profiles/os_discovery/foundryos.yaml create mode 100644 priv/profiles/os_discovery/freebsd.yaml create mode 100644 priv/profiles/os_discovery/freshtomato.yaml create mode 100644 priv/profiles/os_discovery/fs-bdcom.yaml create mode 100644 priv/profiles/os_discovery/fs-centec.yaml create mode 100644 priv/profiles/os_discovery/fs-gbn.yaml create mode 100644 priv/profiles/os_discovery/fs-nmu.yaml create mode 100644 priv/profiles/os_discovery/fs-switch-dc.yaml create mode 100644 priv/profiles/os_discovery/fs-switch.yaml create mode 100644 priv/profiles/os_discovery/ftd.yaml create mode 100644 priv/profiles/os_discovery/ftos.yaml create mode 100644 priv/profiles/os_discovery/fujifilmprinter.yaml create mode 100644 priv/profiles/os_discovery/fujitsuiRMC.yaml create mode 100644 priv/profiles/os_discovery/fujitsupyos.yaml create mode 100644 priv/profiles/os_discovery/fusion.yaml create mode 100644 priv/profiles/os_discovery/fusionhub.yaml create mode 100644 priv/profiles/os_discovery/fxm.yaml create mode 100644 priv/profiles/os_discovery/fxos.yaml create mode 100644 priv/profiles/os_discovery/gaia.yaml create mode 100644 priv/profiles/os_discovery/gam.yaml create mode 100644 priv/profiles/os_discovery/geist-pdu.yaml create mode 100644 priv/profiles/os_discovery/geist-watchdog.yaml create mode 100644 priv/profiles/os_discovery/gemds.yaml create mode 100644 priv/profiles/os_discovery/generex-ups.yaml create mode 100644 priv/profiles/os_discovery/gepulsar.yaml create mode 100644 priv/profiles/os_discovery/gestetner.yaml create mode 100644 priv/profiles/os_discovery/gigavue.yaml create mode 100644 priv/profiles/os_discovery/grandstream-gxw.yaml create mode 100644 priv/profiles/os_discovery/grandstream-sw.yaml create mode 100644 priv/profiles/os_discovery/gude-esb.yaml create mode 100644 priv/profiles/os_discovery/gw-eydfa.yaml create mode 100644 priv/profiles/os_discovery/gwd.yaml create mode 100644 priv/profiles/os_discovery/halon.yaml create mode 100644 priv/profiles/os_discovery/harmony-enhanced.yaml create mode 100644 priv/profiles/os_discovery/helios.yaml create mode 100644 priv/profiles/os_discovery/heliosip.yaml create mode 100644 priv/profiles/os_discovery/hikvision-cam.yaml create mode 100644 priv/profiles/os_discovery/hikvision-nvr.yaml create mode 100644 priv/profiles/os_discovery/himoinsa-gensets.yaml create mode 100644 priv/profiles/os_discovery/hirschmann.yaml create mode 100644 priv/profiles/os_discovery/hiveos-wireless.yaml create mode 100644 priv/profiles/os_discovery/horizon-compact.yaml create mode 100644 priv/profiles/os_discovery/horizon-compactplus.yaml create mode 100644 priv/profiles/os_discovery/horizon-duo.yaml create mode 100644 priv/profiles/os_discovery/horizon-quantum.yaml create mode 100644 priv/profiles/os_discovery/hpblmos.yaml create mode 100644 priv/profiles/os_discovery/hpe-ilo.yaml create mode 100644 priv/profiles/os_discovery/hpe-ipdu.yaml create mode 100644 priv/profiles/os_discovery/hpe-mapdu.yaml create mode 100644 priv/profiles/os_discovery/hpe-msa.yaml create mode 100644 priv/profiles/os_discovery/hpe-msl.yaml create mode 100644 priv/profiles/os_discovery/hpe-pdumm.yaml create mode 100644 priv/profiles/os_discovery/hpe-rtups.yaml create mode 100644 priv/profiles/os_discovery/hpmsm.yaml create mode 100644 priv/profiles/os_discovery/hpvc.yaml create mode 100644 priv/profiles/os_discovery/huawei-optixrtn.yaml create mode 100644 priv/profiles/os_discovery/huawei-smu.yaml create mode 100644 priv/profiles/os_discovery/huaweiups.yaml create mode 100644 priv/profiles/os_discovery/hwg-perseus.yaml create mode 100644 priv/profiles/os_discovery/hwg-poseidon.yaml create mode 100644 priv/profiles/os_discovery/hwg-ste.yaml create mode 100644 priv/profiles/os_discovery/hwg-ste2.yaml create mode 100644 priv/profiles/os_discovery/hwg-wld.yaml create mode 100644 priv/profiles/os_discovery/hyperion.yaml create mode 100644 priv/profiles/os_discovery/ibm-amm.yaml create mode 100644 priv/profiles/os_discovery/ibm-i.yaml create mode 100644 priv/profiles/os_discovery/ibm-imm.yaml create mode 100644 priv/profiles/os_discovery/ibmc.yaml create mode 100644 priv/profiles/os_discovery/ibmnos.yaml create mode 100644 priv/profiles/os_discovery/ibmtl.yaml create mode 100644 priv/profiles/os_discovery/iboot.yaml create mode 100644 priv/profiles/os_discovery/ibos.yaml create mode 100644 priv/profiles/os_discovery/icotera.yaml create mode 100644 priv/profiles/os_discovery/icr-os.yaml create mode 100644 priv/profiles/os_discovery/ict-mps.yaml create mode 100644 priv/profiles/os_discovery/ict-pdu.yaml create mode 100644 priv/profiles/os_discovery/ict-psu.yaml create mode 100644 priv/profiles/os_discovery/ict-swi.yaml create mode 100644 priv/profiles/os_discovery/ies.yaml create mode 100644 priv/profiles/os_discovery/ies5000.yaml create mode 100644 priv/profiles/os_discovery/ies52xxM.yaml create mode 100644 priv/profiles/os_discovery/illustra.yaml create mode 100644 priv/profiles/os_discovery/imcopower-big.yaml create mode 100644 priv/profiles/os_discovery/imcopower-ls110.yaml create mode 100644 priv/profiles/os_discovery/infinera-groove.yaml create mode 100644 priv/profiles/os_discovery/infinera-pon.yaml create mode 100644 priv/profiles/os_discovery/infinera-xtm.yaml create mode 100644 priv/profiles/os_discovery/infinity.yaml create mode 100644 priv/profiles/os_discovery/informos.yaml create mode 100644 priv/profiles/os_discovery/infortrend.yaml create mode 100644 priv/profiles/os_discovery/innovaphone.yaml create mode 100644 priv/profiles/os_discovery/inteno.yaml create mode 100644 priv/profiles/os_discovery/interseptor.yaml create mode 100644 priv/profiles/os_discovery/ionodes.yaml create mode 100644 priv/profiles/os_discovery/ionos.yaml create mode 100644 priv/profiles/os_discovery/ios.yaml create mode 100644 priv/profiles/os_discovery/iosxe.yaml create mode 100644 priv/profiles/os_discovery/iosxr.yaml create mode 100644 priv/profiles/os_discovery/ipoman.yaml create mode 100644 priv/profiles/os_discovery/iqnos.yaml create mode 100644 priv/profiles/os_discovery/ird.yaml create mode 100644 priv/profiles/os_discovery/ironware.yaml create mode 100644 priv/profiles/os_discovery/ise.yaml create mode 100644 priv/profiles/os_discovery/istars.yaml create mode 100644 priv/profiles/os_discovery/janitza-umg96.yaml create mode 100644 priv/profiles/os_discovery/janitza.yaml create mode 100644 priv/profiles/os_discovery/jetdirect.yaml create mode 100644 priv/profiles/os_discovery/jetstream.yaml create mode 100644 priv/profiles/os_discovery/juniper-mss.yaml create mode 100644 priv/profiles/os_discovery/junos.yaml create mode 100644 priv/profiles/os_discovery/junose.yaml create mode 100644 priv/profiles/os_discovery/jwos.yaml create mode 100644 priv/profiles/os_discovery/keeneticos.yaml create mode 100644 priv/profiles/os_discovery/kemp.yaml create mode 100644 priv/profiles/os_discovery/konica.yaml create mode 100644 priv/profiles/os_discovery/kti.yaml create mode 100644 priv/profiles/os_discovery/kyocera.yaml create mode 100644 priv/profiles/os_discovery/lambdatrail.yaml create mode 100644 priv/profiles/os_discovery/lantronix-slc.yaml create mode 100644 priv/profiles/os_discovery/lcos.yaml create mode 100644 priv/profiles/os_discovery/lcoslx.yaml create mode 100644 priv/profiles/os_discovery/lcossx.yaml create mode 100644 priv/profiles/os_discovery/lenovoemc.yaml create mode 100644 priv/profiles/os_discovery/lexmarkprinter.yaml create mode 100644 priv/profiles/os_discovery/liebert.yaml create mode 100644 priv/profiles/os_discovery/ligoos.yaml create mode 100644 priv/profiles/os_discovery/linksys-ss.yaml create mode 100644 priv/profiles/os_discovery/linux.yaml create mode 100644 priv/profiles/os_discovery/logmaster.yaml create mode 100644 priv/profiles/os_discovery/loop-telecom.yaml create mode 100644 priv/profiles/os_discovery/luminato.yaml create mode 100644 priv/profiles/os_discovery/mbg-ltos6.yaml create mode 100644 priv/profiles/os_discovery/mbg-meinbergos.yaml create mode 100644 priv/profiles/os_discovery/mcafeewebgateway.yaml create mode 100644 priv/profiles/os_discovery/mellanox.yaml create mode 100644 priv/profiles/os_discovery/merakimr.yaml create mode 100644 priv/profiles/os_discovery/merakims.yaml create mode 100644 priv/profiles/os_discovery/merakimx.yaml create mode 100644 priv/profiles/os_discovery/microsemipdsine.yaml create mode 100644 priv/profiles/os_discovery/microsemitime.yaml create mode 100644 priv/profiles/os_discovery/mimosa.yaml create mode 100644 priv/profiles/os_discovery/minkelsrms.yaml create mode 100644 priv/profiles/os_discovery/mlos-atd.yaml create mode 100644 priv/profiles/os_discovery/mlos-nsp.yaml create mode 100644 priv/profiles/os_discovery/mni.yaml create mode 100644 priv/profiles/os_discovery/monowall.yaml create mode 100644 priv/profiles/os_discovery/montclair-edfa.yaml create mode 100644 priv/profiles/os_discovery/morningstar-mppt.yaml create mode 100644 priv/profiles/os_discovery/morningstar-pwm.yaml create mode 100644 priv/profiles/os_discovery/motorola-cm.yaml create mode 100644 priv/profiles/os_discovery/moxa-awk.yaml create mode 100644 priv/profiles/os_discovery/moxa-eds-4000-series.yaml create mode 100644 priv/profiles/os_discovery/moxa-etherdevice.yaml create mode 100644 priv/profiles/os_discovery/moxa-nport.yaml create mode 100644 priv/profiles/os_discovery/mpb-srp.yaml create mode 100644 priv/profiles/os_discovery/mrv-od.yaml create mode 100644 priv/profiles/os_discovery/msl.yaml create mode 100644 priv/profiles/os_discovery/mts-com.yaml create mode 100755 priv/profiles/os_discovery/mypoweros.yaml create mode 100644 priv/profiles/os_discovery/neptune.yaml create mode 100644 priv/profiles/os_discovery/netagent2.yaml create mode 100644 priv/profiles/os_discovery/netapp.yaml create mode 100644 priv/profiles/os_discovery/netbotz.yaml create mode 100644 priv/profiles/os_discovery/netbsd.yaml create mode 100644 priv/profiles/os_discovery/netgear.yaml create mode 100644 priv/profiles/os_discovery/netguardian.yaml create mode 100644 priv/profiles/os_discovery/netmanplus.yaml create mode 100644 priv/profiles/os_discovery/netonix.yaml create mode 100644 priv/profiles/os_discovery/netscaler-sdwan.yaml create mode 100644 priv/profiles/os_discovery/netscaler.yaml create mode 100644 priv/profiles/os_discovery/netspire.yaml create mode 100644 priv/profiles/os_discovery/netsure.yaml create mode 100644 priv/profiles/os_discovery/netvision-rfc.yaml create mode 100644 priv/profiles/os_discovery/nexans.yaml create mode 100644 priv/profiles/os_discovery/nimbleos.yaml create mode 100644 priv/profiles/os_discovery/nios.yaml create mode 100644 priv/profiles/os_discovery/nitro.yaml create mode 100644 priv/profiles/os_discovery/nokia-1830.yaml create mode 100644 priv/profiles/os_discovery/nokia-isam.yaml create mode 100644 priv/profiles/os_discovery/nos.yaml create mode 100644 priv/profiles/os_discovery/nrg.yaml create mode 100644 priv/profiles/os_discovery/ns-bsd.yaml create mode 100644 priv/profiles/os_discovery/nti.yaml create mode 100644 priv/profiles/os_discovery/nutanix-aos.yaml create mode 100644 priv/profiles/os_discovery/nxos.yaml create mode 100644 priv/profiles/os_discovery/occamos.yaml create mode 100644 priv/profiles/os_discovery/oceanstor.yaml create mode 100644 priv/profiles/os_discovery/ocnos.yaml create mode 100644 priv/profiles/os_discovery/okilan.yaml create mode 100644 priv/profiles/os_discovery/omnipcx.yaml create mode 100644 priv/profiles/os_discovery/omnitron-iconverter.yaml create mode 100644 priv/profiles/os_discovery/oneaccess.yaml create mode 100644 priv/profiles/os_discovery/onefs.yaml create mode 100644 priv/profiles/os_discovery/ons.yaml create mode 100644 priv/profiles/os_discovery/openbsd.yaml create mode 100644 priv/profiles/os_discovery/opengear.yaml create mode 100644 priv/profiles/os_discovery/opensolaris.yaml create mode 100644 priv/profiles/os_discovery/opnsense.yaml create mode 100644 priv/profiles/os_discovery/oracle-ilom.yaml create mode 100644 priv/profiles/os_discovery/orolia-securesync.yaml create mode 100644 priv/profiles/os_discovery/orvaldi-ups.yaml create mode 100644 priv/profiles/os_discovery/osm.yaml create mode 100644 priv/profiles/os_discovery/packetlight.yaml create mode 100644 priv/profiles/os_discovery/panasonic-ns.yaml create mode 100644 priv/profiles/os_discovery/pandacom.yaml create mode 100644 priv/profiles/os_discovery/panduit-eagle.yaml create mode 100644 priv/profiles/os_discovery/panduit.yaml create mode 100644 priv/profiles/os_discovery/panos.yaml create mode 100644 priv/profiles/os_discovery/papouch-quido.yaml create mode 100644 priv/profiles/os_discovery/paradyne.yaml create mode 100644 priv/profiles/os_discovery/parks-switch.yaml create mode 100644 priv/profiles/os_discovery/patton-sn.yaml create mode 100644 priv/profiles/os_discovery/pbn-cp.yaml create mode 100644 priv/profiles/os_discovery/pbn.yaml create mode 100644 priv/profiles/os_discovery/pcoweb-rittal-lcp-3311.yaml create mode 100644 priv/profiles/os_discovery/pcoweb-rittalchiller.yaml create mode 100644 priv/profiles/os_discovery/pegasus.yaml create mode 100644 priv/profiles/os_discovery/pepwave.yaml create mode 100644 priv/profiles/os_discovery/perle.yaml create mode 100644 priv/profiles/os_discovery/pfsense.yaml create mode 100644 priv/profiles/os_discovery/picos.yaml create mode 100755 priv/profiles/os_discovery/planet-pdu.yaml create mode 100644 priv/profiles/os_discovery/planetos.yaml create mode 100644 priv/profiles/os_discovery/pmp.yaml create mode 100644 priv/profiles/os_discovery/polycomLens.yaml create mode 100644 priv/profiles/os_discovery/poweralert.yaml create mode 100644 priv/profiles/os_discovery/powercode.yaml create mode 100644 priv/profiles/os_discovery/powerconnect.yaml create mode 100644 priv/profiles/os_discovery/powerlogic.yaml create mode 100644 priv/profiles/os_discovery/powervault.yaml create mode 100644 priv/profiles/os_discovery/powerwalker-vfi.yaml create mode 100644 priv/profiles/os_discovery/powerwalker.yaml create mode 100644 priv/profiles/os_discovery/primeinfrastructure.yaml create mode 100644 priv/profiles/os_discovery/primekey-sw.yaml create mode 100644 priv/profiles/os_discovery/primekey.yaml create mode 100644 priv/profiles/os_discovery/procera.yaml create mode 100644 priv/profiles/os_discovery/procurve.yaml create mode 100755 priv/profiles/os_discovery/profline-sfd.yaml create mode 100644 priv/profiles/os_discovery/protelevision-t1.yaml create mode 100644 priv/profiles/os_discovery/ptp250.yaml create mode 100644 priv/profiles/os_discovery/ptp500.yaml create mode 100644 priv/profiles/os_discovery/ptp600.yaml create mode 100644 priv/profiles/os_discovery/ptp650.yaml create mode 100644 priv/profiles/os_discovery/ptp670.yaml create mode 100644 priv/profiles/os_discovery/ptp800.yaml create mode 100644 priv/profiles/os_discovery/pulse.yaml create mode 100644 priv/profiles/os_discovery/purestorage.yaml create mode 100644 priv/profiles/os_discovery/qnap.yaml create mode 100644 priv/profiles/os_discovery/qtech.yaml create mode 100644 priv/profiles/os_discovery/quanta.yaml create mode 100644 priv/profiles/os_discovery/quantastor.yaml create mode 100644 priv/profiles/os_discovery/quantum.yaml create mode 100644 priv/profiles/os_discovery/radlan.yaml create mode 100644 priv/profiles/os_discovery/radwin.yaml create mode 100644 priv/profiles/os_discovery/raisecom-ros.yaml create mode 100644 priv/profiles/os_discovery/raisecom.yaml create mode 100644 priv/profiles/os_discovery/rajant.yaml create mode 100644 priv/profiles/os_discovery/raritan-pdu.yaml create mode 100644 priv/profiles/os_discovery/ray.yaml create mode 100644 priv/profiles/os_discovery/ray3.yaml create mode 100644 priv/profiles/os_discovery/recoveryos.yaml create mode 100644 priv/profiles/os_discovery/remoteye4.yaml create mode 100644 priv/profiles/os_discovery/ricoh.yaml create mode 100644 priv/profiles/os_discovery/rittal-cmc-iii-pu.yaml create mode 100644 priv/profiles/os_discovery/rittal-cmc.yaml create mode 100644 priv/profiles/os_discovery/rittal-lcp.yaml create mode 100644 priv/profiles/os_discovery/riverbed.yaml create mode 100644 priv/profiles/os_discovery/rnx-updu.yaml create mode 100644 priv/profiles/os_discovery/ros.yaml create mode 100644 priv/profiles/os_discovery/routeros.yaml create mode 100644 priv/profiles/os_discovery/rs.yaml create mode 100644 priv/profiles/os_discovery/ruckuswireless-hotzone.yaml create mode 100644 priv/profiles/os_discovery/ruckuswireless-unleashed.yaml create mode 100644 priv/profiles/os_discovery/ruckuswireless.yaml create mode 100755 priv/profiles/os_discovery/ruijie.yaml create mode 100644 priv/profiles/os_discovery/rutos-2xx.yaml create mode 100644 priv/profiles/os_discovery/rutos-rutm.yaml create mode 100644 priv/profiles/os_discovery/rutos-rutx.yaml create mode 100644 priv/profiles/os_discovery/rutos.yaml create mode 100644 priv/profiles/os_discovery/saf-cfm.yaml create mode 100644 priv/profiles/os_discovery/saf-integra-b.yaml create mode 100644 priv/profiles/os_discovery/saf-integra-e.yaml create mode 100644 priv/profiles/os_discovery/saf-integra-w.yaml create mode 100644 priv/profiles/os_discovery/saf-integra-x.yaml create mode 100644 priv/profiles/os_discovery/saf.yaml create mode 100644 priv/profiles/os_discovery/samlex.yaml create mode 100644 priv/profiles/os_discovery/samsungprinter.yaml create mode 100644 priv/profiles/os_discovery/savin.yaml create mode 100644 priv/profiles/os_discovery/scalance.yaml create mode 100644 priv/profiles/os_discovery/schleifenbauer.yaml create mode 100644 priv/profiles/os_discovery/screenos.yaml create mode 100644 priv/profiles/os_discovery/scs-ks.yaml create mode 100644 priv/profiles/os_discovery/secureplatform.yaml create mode 100644 priv/profiles/os_discovery/seh-uds.yaml create mode 100644 priv/profiles/os_discovery/sensatronics-em1.yaml create mode 100644 priv/profiles/os_discovery/sensatronics-ittm.yaml create mode 100644 priv/profiles/os_discovery/sentry3.yaml create mode 100644 priv/profiles/os_discovery/sentry4.yaml create mode 100644 priv/profiles/os_discovery/seos.yaml create mode 100644 priv/profiles/os_discovery/serveriron.yaml create mode 100644 priv/profiles/os_discovery/serverscheck.yaml create mode 100644 priv/profiles/os_discovery/sgos.yaml create mode 100644 priv/profiles/os_discovery/sharp.yaml create mode 100644 priv/profiles/os_discovery/siklu.yaml create mode 100644 priv/profiles/os_discovery/sinetica.yaml create mode 100644 priv/profiles/os_discovery/siteboss.yaml create mode 100644 priv/profiles/os_discovery/siteboss360.yaml create mode 100644 priv/profiles/os_discovery/siteboss550.yaml create mode 100644 priv/profiles/os_discovery/siteboss571.yaml create mode 100644 priv/profiles/os_discovery/siteboss572.yaml create mode 100644 priv/profiles/os_discovery/sixnet.yaml create mode 100644 priv/profiles/os_discovery/skyhighwebprotect.yaml create mode 100644 priv/profiles/os_discovery/slms.yaml create mode 100644 priv/profiles/os_discovery/slxos.yaml create mode 100644 priv/profiles/os_discovery/sm-os.yaml create mode 100644 priv/profiles/os_discovery/smartax.yaml create mode 100644 priv/profiles/os_discovery/smartbyte.yaml create mode 100644 priv/profiles/os_discovery/smartos-dcp-m.yaml create mode 100644 priv/profiles/os_discovery/smartos.yaml create mode 100644 priv/profiles/os_discovery/snr-erd.yaml create mode 100644 priv/profiles/os_discovery/snr.yaml create mode 100644 priv/profiles/os_discovery/socomec-ups.yaml create mode 100644 priv/profiles/os_discovery/socomec.yaml create mode 100644 priv/profiles/os_discovery/solaris.yaml create mode 100644 priv/profiles/os_discovery/solidserver.yaml create mode 100644 priv/profiles/os_discovery/sonicwall.yaml create mode 100644 priv/profiles/os_discovery/sophos-xg.yaml create mode 100644 priv/profiles/os_discovery/speedtouch.yaml create mode 100644 priv/profiles/os_discovery/srlinux.yaml create mode 100644 priv/profiles/os_discovery/ssu2000.yaml create mode 100644 priv/profiles/os_discovery/stellar.yaml create mode 100644 priv/profiles/os_discovery/stoneos.yaml create mode 100644 priv/profiles/os_discovery/stulz.yaml create mode 100644 priv/profiles/os_discovery/sub10.yaml create mode 100644 priv/profiles/os_discovery/supercap.yaml create mode 100644 priv/profiles/os_discovery/supermicro-bmc.yaml create mode 100644 priv/profiles/os_discovery/supervyse-openbmc.yaml create mode 100644 priv/profiles/os_discovery/swos.yaml create mode 100644 priv/profiles/os_discovery/symbol.yaml create mode 100644 priv/profiles/os_discovery/tachyon.yaml create mode 100644 priv/profiles/os_discovery/tailyn.yaml create mode 100644 priv/profiles/os_discovery/tait-infra93.yaml create mode 100644 priv/profiles/os_discovery/tait-tnadmin.yaml create mode 100644 priv/profiles/os_discovery/teldat.yaml create mode 100644 priv/profiles/os_discovery/televes-fs.yaml create mode 100644 priv/profiles/os_discovery/teracom.yaml create mode 100644 priv/profiles/os_discovery/teradici-pcoip.yaml create mode 100644 priv/profiles/os_discovery/terra-sdi410c.yaml create mode 100644 priv/profiles/os_discovery/terra-sdi480.yaml create mode 100644 priv/profiles/os_discovery/tgos.yaml create mode 100644 priv/profiles/os_discovery/thomson-cm.yaml create mode 100644 priv/profiles/os_discovery/timos.yaml create mode 100644 priv/profiles/os_discovery/tomato.yaml create mode 100644 priv/profiles/os_discovery/topvision.yaml create mode 100644 priv/profiles/os_discovery/tpdin.yaml create mode 100644 priv/profiles/os_discovery/tpdin3.yaml create mode 100644 priv/profiles/os_discovery/tplink.yaml create mode 100644 priv/profiles/os_discovery/transition.yaml create mode 100644 priv/profiles/os_discovery/tranzeo.yaml create mode 100644 priv/profiles/os_discovery/trendnet.yaml create mode 100644 priv/profiles/os_discovery/trippliteconsole.yaml create mode 100644 priv/profiles/os_discovery/truenas-scale.yaml create mode 100644 priv/profiles/os_discovery/truenas.yaml create mode 100644 priv/profiles/os_discovery/ts-bspdu.yaml create mode 100644 priv/profiles/os_discovery/ubiquoss-pon.yaml create mode 100644 priv/profiles/os_discovery/ucopia.yaml create mode 100644 priv/profiles/os_discovery/ucos.yaml create mode 100644 priv/profiles/os_discovery/uhp.yaml create mode 100644 priv/profiles/os_discovery/ulaf.yaml create mode 100644 priv/profiles/os_discovery/unifi-usp.yaml create mode 100644 priv/profiles/os_discovery/unifi.yaml create mode 100644 priv/profiles/os_discovery/uniping.yaml create mode 100644 priv/profiles/os_discovery/utax.yaml create mode 100644 priv/profiles/os_discovery/valere.yaml create mode 100644 priv/profiles/os_discovery/vccodec.yaml create mode 100644 priv/profiles/os_discovery/velocloud.yaml create mode 100644 priv/profiles/os_discovery/venturi.yaml create mode 100644 priv/profiles/os_discovery/vertiv-dcs.yaml create mode 100644 priv/profiles/os_discovery/vertiv-ita2.yaml create mode 100644 priv/profiles/os_discovery/vertiv-pdu.yaml create mode 100644 priv/profiles/os_discovery/vigintos.yaml create mode 100644 priv/profiles/os_discovery/viprinux.yaml create mode 100644 priv/profiles/os_discovery/viptela.yaml create mode 100644 priv/profiles/os_discovery/vmware-esxi.yaml create mode 100644 priv/profiles/os_discovery/vmware-vcsa.yaml create mode 100644 priv/profiles/os_discovery/volius.yaml create mode 100644 priv/profiles/os_discovery/voss.yaml create mode 100644 priv/profiles/os_discovery/voswall.yaml create mode 100644 priv/profiles/os_discovery/vrp.yaml create mode 100644 priv/profiles/os_discovery/vsolution.yaml create mode 100644 priv/profiles/os_discovery/vutlan.yaml create mode 100644 priv/profiles/os_discovery/vxoa.yaml create mode 100644 priv/profiles/os_discovery/vyatta.yaml create mode 100644 priv/profiles/os_discovery/vyos.yaml create mode 100644 priv/profiles/os_discovery/waas.yaml create mode 100644 priv/profiles/os_discovery/webmon.yaml create mode 100644 priv/profiles/os_discovery/webpower-smart2.yaml create mode 100644 priv/profiles/os_discovery/webpower.yaml create mode 100644 priv/profiles/os_discovery/websensor.yaml create mode 100644 priv/profiles/os_discovery/weos.yaml create mode 100644 priv/profiles/os_discovery/westmountainradio.yaml create mode 100644 priv/profiles/os_discovery/windows.yaml create mode 100644 priv/profiles/os_discovery/wipipe.yaml create mode 100644 priv/profiles/os_discovery/wisi-tangram.yaml create mode 100644 priv/profiles/os_discovery/witchos.yaml create mode 100644 priv/profiles/os_discovery/wti-console.yaml create mode 100644 priv/profiles/os_discovery/wti-power.yaml create mode 100644 priv/profiles/os_discovery/wut.yaml create mode 100644 priv/profiles/os_discovery/xclarity.yaml create mode 100644 priv/profiles/os_discovery/xerox.yaml create mode 100644 priv/profiles/os_discovery/xirrus_aos.yaml create mode 100644 priv/profiles/os_discovery/xos.yaml create mode 100644 priv/profiles/os_discovery/yunshan.yaml create mode 100644 priv/profiles/os_discovery/zebra.yaml create mode 100644 priv/profiles/os_discovery/zenitel-alphacom.yaml create mode 100644 priv/profiles/os_discovery/zenitel-vsdevice.yaml create mode 100644 priv/profiles/os_discovery/zmtel.yaml create mode 100644 priv/profiles/os_discovery/zxa10.yaml create mode 100644 priv/profiles/os_discovery/zxdsl.yaml create mode 100644 priv/profiles/os_discovery/zxr10.yaml create mode 100644 priv/profiles/os_discovery/zynos.yaml create mode 100644 priv/profiles/os_discovery/zywall.yaml create mode 100644 priv/profiles/os_discovery/zyxelac.yaml create mode 100644 priv/profiles/os_discovery/zyxelnwa.yaml create mode 100644 priv/profiles/os_discovery/zyxelusg.yaml create mode 100644 priv/profiles/os_discovery/zyxelwlc.yaml create mode 100755 scripts/sync-librenms.sh delete mode 100644 test/towerops/snmp/profile_behaviour_test.exs delete mode 100644 test/towerops/snmp/profiles/cisco_test.exs delete mode 100644 test/towerops/snmp/profiles/mikrotik_test.exs delete mode 100644 test/towerops/snmp/profiles/net_snmp_test.exs diff --git a/Dockerfile b/Dockerfile index 57270e3e..84ad6264 100644 --- a/Dockerfile +++ b/Dockerfile @@ -82,7 +82,7 @@ FROM ${RUNNER_IMAGE} AS final RUN apt-get update \ && DEBIAN_FRONTEND=noninteractive apt-get upgrade -y \ - && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libstdc++6 openssl libncurses6 locales ca-certificates iputils-ping \ + && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libstdc++6 openssl libncurses6 locales ca-certificates iputils-ping snmp \ && rm -rf /var/lib/apt/lists/* # Set the locale diff --git a/lib/mix/tasks/import_profiles.ex b/lib/mix/tasks/import_profiles.ex index c5b5c8e7..abadc2b4 100644 --- a/lib/mix/tasks/import_profiles.ex +++ b/lib/mix/tasks/import_profiles.ex @@ -2,27 +2,30 @@ defmodule Mix.Tasks.ImportProfiles do @shortdoc "Import device profiles from LibreNMS YAML definitions" @moduledoc """ - Imports device profiles from LibreNMS YAML definition files. + Imports device profiles from YAML definition files. ## Usage - # Import all profile definitions - mix import_profiles --source-path ~/librenms/includes/definitions + # Import all profiles from priv/profiles (default) + mix import_profiles + + # Import from a custom path + mix import_profiles --source-path ~/librenms/resources/definitions # Import specific profiles - mix import_profiles --source-path ~/librenms/includes/definitions --profiles mikrotik,cisco + mix import_profiles --profiles mikrotik,cisco,epmp ## Options - * `--source-path` - Path to LibreNMS includes/definitions directory (required) + * `--source-path` - Path to definitions directory (default: priv/profiles) * `--profiles` - Comma-separated list of profiles to import (default: all) ## Notes - * Reads YAML files from the definitions directory + * Reads YAML files from os_detection/ and os_discovery/ subdirectories * Creates database profiles with MIB symbolic names * Updates existing profiles if they already exist - * Requires the application to be started to access the database + * Run ./scripts/sync-librenms.sh to sync profiles from LibreNMS """ use Mix.Task @@ -47,7 +50,7 @@ defmodule Mix.Tasks.ImportProfiles do ] ) - source_path = opts[:source_path] || raise "Missing --source-path argument" + source_path = opts[:source_path] || default_source_path() profiles_filter = parse_profiles(opts[:profiles]) if !File.exists?(source_path) do @@ -63,6 +66,10 @@ defmodule Mix.Tasks.ImportProfiles do end end + defp default_source_path do + Path.join(:code.priv_dir(:towerops), "profiles") + end + defp parse_profiles(nil), do: :all defp parse_profiles(""), do: :all @@ -122,7 +129,8 @@ defmodule Mix.Tasks.ImportProfiles do discovery_file = Path.join([source_path, "os_discovery", "#{profile_name}.yaml"]) with {:ok, detection_data} <- read_yaml_file(detection_file), - {:ok, discovery_data} <- read_yaml_file(discovery_file), + # Discovery file is optional - use empty map if not found + discovery_data = read_yaml_file_optional(discovery_file), {:ok, _profile} <- create_or_update_profile(detection_data, discovery_data, profile_name), # Reload profile to get correct binary ID profile when not is_nil(profile) <- Profiles.get_profile(profile_name), @@ -132,6 +140,13 @@ defmodule Mix.Tasks.ImportProfiles do end end + defp read_yaml_file_optional(file_path) do + case read_yaml_file(file_path) do + {:ok, data} -> data + {:error, _} -> %{} + end + end + defp read_yaml_file(file_path) do with {:ok, yaml_content} <- File.read(file_path), {:ok, yaml_data} <- YamlElixir.read_from_string(yaml_content) do @@ -231,33 +246,29 @@ defmodule Mix.Tasks.ImportProfiles do defp extract_device_oids(yaml_data) do # Extract from modules.os section in os_discovery YAML - device_oids = [] - # Get the modules.os section os_module = get_in(yaml_data, ["modules", "os"]) || %{} - # Serial number - device_oids = - case Map.get(os_module, "serial") do - nil -> device_oids - mib_name -> [{"serial_number", mib_name} | device_oids] - end + # Map of YAML field names to our field names + field_mappings = [ + {"serial", "serial_number"}, + {"version", "firmware_version"}, + {"hardware", "hardware"}, + {"lat", "latitude"}, + {"long", "longitude"}, + {"features", "features"}, + {"sysName", "sys_name_oid"} + ] - # Firmware version - device_oids = - case Map.get(os_module, "version") do - nil -> device_oids - mib_name -> [{"firmware_version", mib_name} | device_oids] + Enum.flat_map(field_mappings, fn {yaml_field, db_field} -> + case Map.get(os_module, yaml_field) do + nil -> [] + # Handle list of OIDs (fallback order) + mib_names when is_list(mib_names) -> [{db_field, List.first(mib_names)}] + mib_name when is_binary(mib_name) -> [{db_field, mib_name}] + _ -> [] end - - # Hardware/model - device_oids = - case Map.get(os_module, "hardware") do - nil -> device_oids - mib_name -> [{"hardware", mib_name} | device_oids] - end - - device_oids + end) end defp import_sensor_oids(profile, yaml_data) do diff --git a/lib/towerops/application.ex b/lib/towerops/application.ex index 4b656fe0..b4385be9 100644 --- a/lib/towerops/application.ex +++ b/lib/towerops/application.ex @@ -26,9 +26,9 @@ defmodule Towerops.Application do ToweropsWeb.Telemetry, Towerops.Repo, {DNSCluster, query: Application.get_env(:towerops, :dns_cluster_query) || :ignore}, - pubsub_spec() - # Start a worker by calling: Towerops.Worker.start_link(arg) - # {Towerops.Worker, arg}, + pubsub_spec(), + # Load YAML profiles into ETS cache + Towerops.Profiles.YamlProfiles ] ++ background_workers() ++ exq_workers() ++ diff --git a/lib/towerops/profiles/yaml_profiles.ex b/lib/towerops/profiles/yaml_profiles.ex new file mode 100644 index 00000000..e43a3a17 --- /dev/null +++ b/lib/towerops/profiles/yaml_profiles.ex @@ -0,0 +1,286 @@ +defmodule Towerops.Profiles.YamlProfiles do + @moduledoc """ + Loads and caches device profiles directly from YAML files. + + Profiles are stored in priv/profiles/ and loaded into an ETS table on startup. + This avoids database storage and keeps YAML files as the source of truth. + """ + + use GenServer + + require Logger + + @table :yaml_profiles + @profiles_dir "profiles" + + def start_link(opts \\ []) do + GenServer.start_link(__MODULE__, opts, name: __MODULE__) + end + + @doc """ + Gets a profile by name from the cache. + """ + def get_profile(name) when is_binary(name) do + case :ets.lookup(@table, {:profile, name}) do + [{_, profile}] -> profile + [] -> nil + end + end + + @doc """ + Lists all cached profiles. + """ + def list_profiles do + @table + |> :ets.match_object({{:profile, :_}, :_}) + |> Enum.map(fn {_, profile} -> profile end) + end + + @doc """ + Matches a profile based on system info (sysObjectID or sysDescr). + Returns the best matching profile or nil. + """ + def match_profile(system_info) do + sys_object_id = Map.get(system_info, :sys_object_id, "") + sys_descr = Map.get(system_info, :sys_descr, "") + + # First try to match by sysObjectID (more specific) + case match_by_oid(sys_object_id) do + nil -> match_by_descr(sys_descr) + profile -> profile + end + end + + @doc """ + Reloads all profiles from YAML files. + """ + def reload do + GenServer.call(__MODULE__, :reload) + end + + # GenServer callbacks + + @impl true + def init(_opts) do + # Create ETS table + :ets.new(@table, [:named_table, :set, :public, read_concurrency: true]) + + # Load profiles + load_all_profiles() + + {:ok, %{}} + end + + @impl true + def handle_call(:reload, _from, state) do + :ets.delete_all_objects(@table) + count = load_all_profiles() + {:reply, {:ok, count}, state} + end + + # Private functions + + defp load_all_profiles do + profiles_path = Path.join(:code.priv_dir(:towerops), @profiles_dir) + detection_path = Path.join(profiles_path, "os_detection") + + if File.exists?(detection_path) do + yaml_files = + detection_path + |> Path.join("*.yaml") + |> Path.wildcard() + + Enum.each(yaml_files, fn file -> + name = Path.basename(file, ".yaml") + load_profile(profiles_path, name) + end) + + count = length(yaml_files) + Logger.info("Loaded #{count} device profiles from YAML files") + count + else + Logger.debug("No profiles directory found at #{detection_path}") + 0 + end + end + + defp load_profile(profiles_path, name) do + detection_file = Path.join([profiles_path, "os_detection", "#{name}.yaml"]) + discovery_file = Path.join([profiles_path, "os_discovery", "#{name}.yaml"]) + + with {:ok, detection} <- read_yaml(detection_file) do + discovery = read_yaml_optional(discovery_file) + + profile = build_profile(name, detection, discovery) + :ets.insert(@table, {{:profile, name}, profile}) + + # Index by detection OID for fast lookups + if profile.detection_oid do + :ets.insert(@table, {{:oid, profile.detection_oid}, name}) + end + + # Index by detection patterns + Enum.each(profile.detection_patterns, fn pattern -> + :ets.insert(@table, {{:pattern, pattern}, name}) + end) + end + end + + defp build_profile(name, detection, discovery) do + %{ + name: name, + vendor: Map.get(detection, "text") || String.capitalize(name), + detection_oid: extract_detection_oid(detection), + detection_patterns: extract_detection_patterns(detection), + device_oids: extract_device_oids(discovery), + sensor_oids: extract_sensor_oids(discovery) + } + end + + defp extract_detection_oid(yaml) do + case get_in(yaml, ["discovery"]) do + discovery when is_list(discovery) -> + discovery + |> Enum.flat_map(fn + %{"sysObjectID" => patterns} when is_list(patterns) -> patterns + _ -> [] + end) + |> List.first() + + _ -> + nil + end + end + + defp extract_detection_patterns(yaml) do + case get_in(yaml, ["discovery"]) do + discovery when is_list(discovery) -> + Enum.flat_map(discovery, fn + %{"sysDescr" => patterns} when is_list(patterns) -> patterns + _ -> [] + end) + + _ -> + [] + end + end + + defp extract_device_oids(yaml) do + os_module = get_in(yaml, ["modules", "os"]) || %{} + + field_mappings = [ + {"serial", :serial_number}, + {"version", :firmware_version}, + {"hardware", :hardware}, + {"lat", :latitude}, + {"long", :longitude} + ] + + field_mappings + |> Enum.flat_map(fn {yaml_field, field} -> + case Map.get(os_module, yaml_field) do + nil -> [] + mib_names when is_list(mib_names) -> [{field, List.first(mib_names)}] + mib_name when is_binary(mib_name) -> [{field, mib_name}] + _ -> [] + end + end) + |> Map.new() + end + + defp extract_sensor_oids(yaml) do + sensors_module = get_in(yaml, ["modules", "sensors"]) || %{} + sensor_types = ["temperature", "voltage", "current", "power", "fanspeed"] + + Enum.flat_map(sensor_types, fn sensor_type -> + case get_in(sensors_module, [sensor_type, "data"]) do + data when is_list(data) -> + data + |> Enum.map(&parse_sensor(&1, sensor_type)) + |> Enum.reject(&is_nil/1) + + _ -> + [] + end + end) + end + + defp parse_sensor(sensor_def, sensor_type) do + mib_name = Map.get(sensor_def, "oid") || Map.get(sensor_def, "value") + num_oid = Map.get(sensor_def, "num_oid") + + # Skip table-based sensors (with {{ $index }}) + cond do + is_binary(num_oid) and String.contains?(num_oid, "{{ $index }}") -> + nil + + is_binary(mib_name) and String.ends_with?(mib_name, ".0") -> + %{ + sensor_type: sensor_type, + mib_name: mib_name, + sensor_descr: extract_descr(sensor_def, sensor_type), + sensor_unit: Map.get(sensor_def, "unit"), + sensor_divisor: Map.get(sensor_def, "divisor", 1) + } + + true -> + nil + end + end + + defp extract_descr(sensor_def, default) do + case Map.get(sensor_def, "descr") do + nil -> + default + + descr when is_binary(descr) -> + cleaned = descr |> String.replace(~r/\{\{ [^}]+ \}\}/, "") |> String.trim() + if cleaned == "", do: default, else: cleaned + + _ -> + default + end + end + + defp match_by_oid(sys_object_id) when is_binary(sys_object_id) and sys_object_id != "" do + # Try exact match first, then prefix matches + list_profiles() + |> Enum.filter(fn profile -> + profile.detection_oid && String.contains?(sys_object_id, profile.detection_oid) + end) + |> Enum.max_by(fn profile -> String.length(profile.detection_oid || "") end, fn -> nil end) + end + + defp match_by_oid(_), do: nil + + defp match_by_descr(sys_descr) when is_binary(sys_descr) and sys_descr != "" do + Enum.find(list_profiles(), fn profile -> + Enum.any?(profile.detection_patterns, fn pattern -> + Regex.match?(~r/#{Regex.escape(pattern)}/i, sys_descr) + end) + end) + end + + defp match_by_descr(_), do: nil + + defp read_yaml(file_path) do + with {:ok, content} <- File.read(file_path), + {:ok, data} <- YamlElixir.read_from_string(content) do + data = + case data do + [d] -> d + d when is_map(d) -> d + _ -> data + end + + {:ok, data} + end + end + + defp read_yaml_optional(file_path) do + case read_yaml(file_path) do + {:ok, data} -> data + _ -> %{} + end + end +end diff --git a/lib/towerops/snmp/discovery.ex b/lib/towerops/snmp/discovery.ex index 5312aa67..8061de05 100644 --- a/lib/towerops/snmp/discovery.ex +++ b/lib/towerops/snmp/discovery.ex @@ -16,8 +16,7 @@ defmodule Towerops.Snmp.Discovery do alias Towerops.Devices alias Towerops.Devices.Device, as: DeviceSchema - alias Towerops.Profiles - alias Towerops.Profiles.DeviceProfile + alias Towerops.Profiles.YamlProfiles alias Towerops.Repo alias Towerops.Snmp.Client alias Towerops.Snmp.DeferredDiscovery @@ -25,11 +24,7 @@ defmodule Towerops.Snmp.Discovery do alias Towerops.Snmp.Interface alias Towerops.Snmp.NeighborDiscovery alias Towerops.Snmp.Profiles.Base - alias Towerops.Snmp.Profiles.Cisco alias Towerops.Snmp.Profiles.Dynamic - alias Towerops.Snmp.Profiles.Mikrotik - alias Towerops.Snmp.Profiles.NetSnmp - alias Towerops.Snmp.Profiles.Ubiquiti alias Towerops.Snmp.Sensor alias Towerops.Snmp.Vlan @@ -79,7 +74,7 @@ defmodule Towerops.Snmp.Discovery do optional(atom()) => term() } - @type profile :: module() | {:dynamic, DeviceProfile.t()} + @type profile :: module() | {:yaml, map()} @type discovery_summary :: %{ success: non_neg_integer(), @@ -262,70 +257,39 @@ defmodule Towerops.Snmp.Discovery do @doc """ Selects the appropriate SNMP profile based on system information. - First tries to match against database-stored device profiles. - If no database match is found, falls back to hard-coded profile modules. + First tries to match against database-stored device profiles (imported from LibreNMS). + If no database match is found, falls back to the generic Base profile. ## Examples iex> select_profile(%{sys_descr: "Cisco IOS"}) - Towerops.Snmp.Profiles.Cisco + {:dynamic, %DeviceProfile{name: "ios"}} iex> select_profile(%{sys_object_id: "1.3.6.1.4.1.41112"}) - Towerops.Snmp.Profiles.Ubiquiti + {:dynamic, %DeviceProfile{name: "airos"}} """ @spec select_profile(system_info()) :: profile() def select_profile(system_info) do - # First try database profiles - case Profiles.match_profile(system_info) do - %DeviceProfile{} = profile -> - Logger.debug("Selected database profile: #{profile.name}") - {:dynamic, profile} + case YamlProfiles.match_profile(system_info) do + %{name: name} = profile -> + Logger.debug("Selected YAML profile: #{name}") + {:yaml, profile} nil -> - # Fall back to hardcoded profiles - select_hardcoded_profile(system_info) - end - end - - defp select_hardcoded_profile(system_info) do - sys_descr = Map.get(system_info, :sys_descr, "") - sys_object_id = Map.get(system_info, :sys_object_id, "") - - cond do - String.contains?(sys_descr, "RouterOS") -> - Logger.debug("Selected MikroTik profile") - Mikrotik - - String.contains?(sys_descr, ["Cisco", "IOS"]) -> - Logger.debug("Selected Cisco profile") - Cisco - - # Ubiquiti devices (check before generic Linux since they run Linux) - # OID 10002 = old Ubiquiti/UniFi devices, 41112 = newer airOS devices - String.contains?(sys_object_id, ["10002", "41112"]) or - String.contains?(sys_descr, ["airOS", "AirFiber", "airMAX", "Ubiquiti"]) -> - Logger.debug("Selected Ubiquiti profile") - Ubiquiti - - String.contains?(sys_descr, "Linux") -> - Logger.debug("Selected NetSNMP profile") - NetSnmp - - true -> - Logger.debug("Selected Base profile") + Logger.debug("No YAML profile matched, using Base profile") Base end end @spec build_device_info(Client.connection_opts(), system_info(), profile()) :: {:ok, device_info()} - defp build_device_info(client_opts, system_info, {:dynamic, profile}) do - # Use dynamic profile to identify device + defp build_device_info(client_opts, system_info, {:yaml, profile}) do + # Use YAML profile to identify device identified_info = Dynamic.identify_device(profile, client_opts, system_info) {:ok, identified_info} rescue error -> - Logger.error("Failed to identify device with dynamic profile: #{inspect(error)}") + Logger.error("Failed to identify device with YAML profile: #{inspect(error)}") {:ok, system_info} end @@ -380,7 +344,7 @@ defmodule Towerops.Snmp.Discovery do @spec discover_interfaces(Client.connection_opts(), profile()) :: {:ok, [interface_data()]} - defp discover_interfaces(client_opts, {:dynamic, profile}) do + defp discover_interfaces(client_opts, {:yaml, profile}) do case Dynamic.discover_interfaces(profile, client_opts) do {:ok, interfaces} -> Logger.debug("Discovered #{length(interfaces)} interfaces") @@ -405,7 +369,7 @@ defmodule Towerops.Snmp.Discovery do end @spec discover_sensors(Client.connection_opts(), profile()) :: {:ok, [sensor_data()]} - defp discover_sensors(client_opts, {:dynamic, profile}) do + defp discover_sensors(client_opts, {:yaml, profile}) do {:ok, sensors} = Dynamic.discover_sensors(profile, client_opts) Logger.debug("Discovered #{length(sensors)} sensors") {:ok, sensors} @@ -424,7 +388,7 @@ defmodule Towerops.Snmp.Discovery do end @spec discover_vlans(Client.connection_opts(), profile()) :: {:ok, [map()]} - defp discover_vlans(client_opts, {:dynamic, _profile}) do + defp discover_vlans(client_opts, {:yaml, _profile}) do # Dynamic profiles use Base VLAN discovery {:ok, vlans} = Base.discover_vlans(client_opts) Logger.debug("Discovered #{length(vlans)} VLANs") diff --git a/lib/towerops/snmp/mib_translator.ex b/lib/towerops/snmp/mib_translator.ex index 3ba90d50..4519e922 100644 --- a/lib/towerops/snmp/mib_translator.ex +++ b/lib/towerops/snmp/mib_translator.ex @@ -84,7 +84,12 @@ defmodule Towerops.Snmp.MibTranslator do "UCD-SNMP-MIB::memAvailSwap" => "1.3.6.1.4.1.2021.4.4.0", # Ubiquiti (enterprise 41112) "UBNT-UniFi-MIB::unifiApSystemModel" => "1.3.6.1.4.1.41112.1.6.3.3.0", - "UBNT-UniFi-MIB::unifiApSystemVersion" => "1.3.6.1.4.1.41112.1.6.3.6.0" + "UBNT-UniFi-MIB::unifiApSystemVersion" => "1.3.6.1.4.1.41112.1.6.3.6.0", + # Cambium ePMP (enterprise 17713.21) + "CAMBIUM-PMP80211-MIB::cambiumCurrentuImageVersion.0" => "1.3.6.1.4.1.17713.21.1.1.17.0", + "CAMBIUM-PMP80211-MIB::cambiumEPMPMSN.0" => "1.3.6.1.4.1.17713.21.1.1.31.0", + "CAMBIUM-PMP80211-MIB::cambiumDeviceLatitude.0" => "1.3.6.1.4.1.17713.21.1.1.18.0", + "CAMBIUM-PMP80211-MIB::cambiumDeviceLongitude.0" => "1.3.6.1.4.1.17713.21.1.1.19.0" } @doc """ @@ -146,7 +151,9 @@ defmodule Towerops.Snmp.MibTranslator do defp try_snmptranslate(mib_name) do # Get MIB directories from config or use default - mib_dirs = Application.get_env(:towerops, :mib_dirs, ["/app/priv/mibs", "/usr/share/snmp/mibs"]) + # Use :code.priv_dir to find the actual priv directory location in releases + default_priv_mibs = Path.join(:code.priv_dir(:towerops), "mibs") + mib_dirs = Application.get_env(:towerops, :mib_dirs, [default_priv_mibs, "/usr/share/snmp/mibs"]) # Expand directories to include subdirectories (snmptranslate doesn't search recursively) expanded_dirs = Enum.flat_map(mib_dirs, &expand_mib_directory/1) diff --git a/lib/towerops/snmp/profiles/base.ex b/lib/towerops/snmp/profiles/base.ex index 50d24ded..60fd2600 100644 --- a/lib/towerops/snmp/profiles/base.ex +++ b/lib/towerops/snmp/profiles/base.ex @@ -831,10 +831,11 @@ defmodule Towerops.Snmp.Profiles.Base do # Calculate divisor from scale and precision (like LibreNMS) # Scale: 10^scale exponent, Precision: decimal places + # Always returns an integer for compatibility with Ecto schema defp calculate_divisor(scale, precision) when is_integer(scale) and is_integer(precision) do scale_factor = Map.get(@scale_factors, scale, 1) - precision_factor = :math.pow(10, precision) - scale_factor * precision_factor + precision_factor = Integer.pow(10, precision) + round(scale_factor * precision_factor) end defp calculate_divisor(scale, _) when is_integer(scale), do: scale_to_divisor(scale) @@ -852,19 +853,95 @@ defmodule Towerops.Snmp.Profiles.Base do end) end - defp parse_sys_descr(sys_descr, _sys_object_id) do + # Vendor detection patterns: {descr_patterns, oid_patterns, manufacturer, model_extractor} + @vendor_patterns [ + {["Cisco", "IOS"], [], "Cisco", :cisco}, + {["Cambium", "ePMP", "PMP", "PTP", "cnPilot"], ["17713"], "Cambium Networks", :cambium}, + {["Ubiquiti", "airOS", "AirFiber", "airMAX", "EdgeOS"], ["10002", "41112"], "Ubiquiti", :ubiquiti}, + {["MikroTik", "RouterOS"], ["14988"], "MikroTik", :mikrotik}, + {["Linux"], [], "Linux", :linux}, + {["Windows"], [], "Microsoft", :windows} + ] + + defp parse_sys_descr(sys_descr, sys_object_id) do + case find_vendor_match(sys_descr, sys_object_id) do + {manufacturer, extractor} -> {manufacturer, extract_model(extractor, sys_descr, sys_object_id)} + nil -> {"Unknown", "Generic Device"} + end + end + + defp find_vendor_match(sys_descr, sys_object_id) do + Enum.find_value(@vendor_patterns, fn {descr_patterns, oid_patterns, manufacturer, extractor} -> + descr_match = descr_patterns != [] and String.contains?(sys_descr, descr_patterns) + oid_match = oid_patterns != [] and String.contains?(sys_object_id, oid_patterns) + + if descr_match or oid_match do + {manufacturer, extractor} + end + end) + end + + defp extract_model(:cisco, sys_descr, _sys_object_id), do: extract_cisco_model(sys_descr) + defp extract_model(:cambium, sys_descr, sys_object_id), do: extract_cambium_model(sys_descr, sys_object_id) + defp extract_model(:ubiquiti, sys_descr, _sys_object_id), do: extract_ubiquiti_model(sys_descr) + defp extract_model(:mikrotik, sys_descr, _sys_object_id), do: extract_mikrotik_model(sys_descr) + defp extract_model(:linux, sys_descr, _sys_object_id), do: sys_descr + defp extract_model(:windows, sys_descr, _sys_object_id), do: sys_descr + + # Cambium sysObjectID product line mapping + # Format: .1.3.6.1.4.1.17713.X.Y.Z where X indicates product line + # Order matters - more specific patterns first (21 before 2) + @cambium_product_lines [ + {~r/\.17713\.21\./, "ePMP"}, + {~r/\.17713\.21$/, "ePMP"}, + {~r/\.17713\.[12]\./, "PMP"}, + {~r/\.17713\.[12]$/, "PMP"}, + {~r/\.17713\.[678]\./, "PTP"}, + {~r/\.17713\.[678]$/, "PTP"}, + {~r/\.17713\.9\./, "cnPilot"}, + {~r/\.17713\.9$/, "cnPilot"} + ] + + defp extract_cambium_model(sys_descr, sys_object_id) do + # First try to extract from sysDescr, then fall back to sysObjectID product line + extract_cambium_model_from_descr(sys_descr) || + extract_cambium_product_line(sys_object_id) || + "Wireless" + end + + defp extract_cambium_model_from_descr(sys_descr) do cond do - String.contains?(sys_descr, ["Cisco", "IOS"]) -> - {"Cisco", extract_cisco_model(sys_descr)} + match = Regex.run(~r/ePMP\s*(\d+)/i, sys_descr) -> "ePMP #{Enum.at(match, 1)}" + Regex.match?(~r/ePMP/i, sys_descr) -> "ePMP" + match = Regex.run(~r/PMP\s*(\d+)/i, sys_descr) -> "PMP #{Enum.at(match, 1)}" + match = Regex.run(~r/PTP\s*(\d+)/i, sys_descr) -> "PTP #{Enum.at(match, 1)}" + match = Regex.run(~r/cnPilot\s*(\w+)/i, sys_descr) -> "cnPilot #{Enum.at(match, 1)}" + Regex.match?(~r/cnPilot/i, sys_descr) -> "cnPilot" + true -> nil + end + end - String.contains?(sys_descr, "Linux") -> - {"Linux", "Server"} + defp extract_cambium_product_line(sys_object_id) when is_binary(sys_object_id) do + Enum.find_value(@cambium_product_lines, fn {regex, product} -> + if Regex.match?(regex, sys_object_id), do: product + end) + end - String.contains?(sys_descr, "Windows") -> - {"Microsoft", "Windows Server"} + defp extract_cambium_product_line(_), do: nil - true -> - {"Unknown", "Generic Device"} + defp extract_ubiquiti_model(sys_descr) do + cond do + match = Regex.run(~r/(AF-?\w+)/i, sys_descr) -> hd(match) + match = Regex.run(~r/(LBE-?\w+|NBE-?\w+|NSM\d+|PBE-?\w+)/i, sys_descr) -> hd(match) + Regex.match?(~r/EdgeOS/i, sys_descr) -> "EdgeRouter" + true -> "Wireless" + end + end + + defp extract_mikrotik_model(sys_descr) do + case Regex.run(~r/(RB\w+|CCR\w+|CRS\w+|hAP\w*|hEX\w*)/i, sys_descr) do + [model | _] -> model + _ -> "RouterOS" end end diff --git a/lib/towerops/snmp/profiles/cisco.ex b/lib/towerops/snmp/profiles/cisco.ex deleted file mode 100644 index 677701fa..00000000 --- a/lib/towerops/snmp/profiles/cisco.ex +++ /dev/null @@ -1,379 +0,0 @@ -defmodule Towerops.Snmp.Profiles.Cisco do - @moduledoc """ - Cisco-specific SNMP device profile. - Extends Base profile with Cisco-specific sensor discovery from CISCO-ENTITY-SENSOR-MIB. - - Discovers additional sensors: - - Temperature sensors (chassis, modules, power supplies) - - Power supply sensors - - Fan speed sensors - - Voltage sensors - """ - - alias Towerops.Snmp.Client - alias Towerops.Snmp.Discovery - alias Towerops.Snmp.Profiles.Base - - require Logger - - @cisco_sensor_oids %{ - # CISCO-ENTITY-SENSOR-MIB - ent_sensor_type: "1.3.6.1.4.1.9.9.91.1.1.1.1.1", - ent_sensor_scale: "1.3.6.1.4.1.9.9.91.1.1.1.1.2", - ent_sensor_precision: "1.3.6.1.4.1.9.9.91.1.1.1.1.3", - ent_sensor_value: "1.3.6.1.4.1.9.9.91.1.1.1.1.4", - ent_sensor_status: "1.3.6.1.4.1.9.9.91.1.1.1.1.5", - - # ENTITY-MIB for physical descriptions - ent_phys_descr: "1.3.6.1.2.1.47.1.1.1.1.2", - ent_phys_name: "1.3.6.1.2.1.47.1.1.1.1.7" - } - - @cisco_vtp_oids %{ - # CISCO-VTP-MIB - VTP VLAN discovery - vtp_vlan_state: "1.3.6.1.4.1.9.9.46.1.3.1.1.2", - vtp_vlan_type: "1.3.6.1.4.1.9.9.46.1.3.1.1.3", - vtp_vlan_name: "1.3.6.1.4.1.9.9.46.1.3.1.1.4" - } - - @doc """ - Discovers system information. - Cisco profile doesn't query additional system OIDs beyond Base profile. - """ - @spec discover_system_info(Client.connection_opts()) :: - {:ok, Discovery.system_info()} | {:error, term()} - def discover_system_info(_client_opts) do - # No additional system info beyond Base profile - {:ok, %{}} - end - - @doc """ - Discovers network interfaces using Base profile. - """ - @spec discover_interfaces(Client.connection_opts()) :: - {:ok, [Discovery.interface_data()]} | {:error, term()} - def discover_interfaces(client_opts) do - Base.discover_interfaces(client_opts) - end - - @doc """ - Discovers sensors from both standard ENTITY-SENSOR-MIB and CISCO-ENTITY-SENSOR-MIB. - Cisco-specific sensors provide more detailed temperature, power, and fan monitoring. - """ - @spec discover_sensors(Client.connection_opts()) :: - {:ok, [Discovery.sensor_data()]} | {:error, term()} - def discover_sensors(client_opts) do - # Try Cisco-specific sensors first - case discover_cisco_sensors(client_opts) do - {:ok, [_ | _] = sensors} -> - {:ok, sensors} - - _ -> - # Fall back to standard ENTITY-SENSOR-MIB - Logger.debug("Cisco-specific sensors not available, using standard discovery") - Base.discover_sensors(client_opts) - end - end - - @doc """ - Discovers VLANs from Cisco VTP MIB, falling back to Q-BRIDGE-MIB if VTP not available. - """ - @spec discover_vlans(Client.connection_opts()) :: {:ok, [map()]} - def discover_vlans(client_opts) do - # Try Cisco VTP MIB first - case Client.walk(client_opts, @cisco_vtp_oids.vtp_vlan_name) do - {:ok, name_results} when is_map(name_results) and map_size(name_results) > 0 -> - do_discover_vtp_vlans(client_opts, name_results) - - _ -> - # Fall back to Q-BRIDGE-MIB - Logger.debug("Cisco VTP MIB not available, falling back to Q-BRIDGE-MIB") - Base.discover_vlans(client_opts) - end - end - - defp do_discover_vtp_vlans(client_opts, name_results) do - # Fetch VLAN states - state_map = - case Client.walk(client_opts, @cisco_vtp_oids.vtp_vlan_state) do - {:ok, results} when is_map(results) -> build_vtp_vlan_index_map(results) - _ -> %{} - end - - # Fetch VLAN types - type_map = - case Client.walk(client_opts, @cisco_vtp_oids.vtp_vlan_type) do - {:ok, results} when is_map(results) -> build_vtp_vlan_index_map(results) - _ -> %{} - end - - # Build VLAN list from names (name_results is a map of OID -> name) - vlans = - name_results - |> Enum.map(fn {oid, name} -> - vlan_id = extract_vtp_vlan_id_from_oid(oid) - state = Map.get(state_map, vlan_id, 1) - type = Map.get(type_map, vlan_id, 1) - - if valid_vlan_id?(vlan_id) do - %{ - vlan_id: vlan_id, - vlan_name: name, - vlan_type: vtp_vlan_type_to_string(type), - status: vtp_vlan_state_to_status(state), - last_checked_at: DateTime.utc_now() - } - end - end) - |> Enum.reject(&is_nil/1) - - Logger.debug("Discovered #{length(vlans)} VLANs from Cisco VTP MIB") - {:ok, vlans} - end - - defp build_vtp_vlan_index_map(results) when is_map(results) do - Map.new(results, fn {oid, value} -> - vlan_id = extract_vtp_vlan_id_from_oid(oid) - {vlan_id, value} - end) - end - - # VTP VLAN OIDs are indexed by managementDomainIndex.vlanIndex - # e.g., 1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.100 = domain 1, VLAN 100 - defp extract_vtp_vlan_id_from_oid(oid) when is_binary(oid) do - oid - |> String.split(".") - |> List.last() - |> String.to_integer() - rescue - _ -> 0 - end - - defp extract_vtp_vlan_id_from_oid(_), do: 0 - - defp valid_vlan_id?(vlan_id) when is_integer(vlan_id) do - vlan_id >= 1 and vlan_id <= 4094 - end - - defp valid_vlan_id?(_), do: false - - # CISCO-VTP-MIB vtpVlanState values: - # 1=operational, 2=suspended, 3=mtuTooBigForDevice, 4=mtuTooBigForTrunk - defp vtp_vlan_state_to_status(1), do: "active" - defp vtp_vlan_state_to_status(_), do: "suspended" - - # CISCO-VTP-MIB vtpVlanType values: - # 1=ethernet, 2=fddi, 3=tokenRing, 4=fddiNet, 5=trNet, 6=deprecated - defp vtp_vlan_type_to_string(1), do: "ethernet" - defp vtp_vlan_type_to_string(2), do: "fddi" - defp vtp_vlan_type_to_string(3), do: "tokenRing" - defp vtp_vlan_type_to_string(4), do: "fddiNet" - defp vtp_vlan_type_to_string(5), do: "trNet" - defp vtp_vlan_type_to_string(_), do: "ethernet" - - @doc """ - Identifies Cisco device model more accurately from sysDescr. - """ - @spec identify_device(Discovery.system_info()) :: Discovery.device_info() - def identify_device(system_info) do - sys_descr = Map.get(system_info, :sys_descr, "") - - model = extract_cisco_model_detailed(sys_descr) - - Map.merge(system_info, %{ - manufacturer: "Cisco", - model: model, - firmware_version: extract_firmware_version(sys_descr) - }) - end - - # Private functions - - defp discover_cisco_sensors(client_opts) do - case Client.walk(client_opts, @cisco_sensor_oids.ent_sensor_type) do - {:ok, sensor_types} when map_size(sensor_types) > 0 -> - sensor_indices = extract_indices_from_oids(sensor_types) - - sensors = - sensor_indices - |> Enum.map(fn index -> - build_cisco_sensor(client_opts, index) - end) - |> Enum.reject(&is_nil/1) - - {:ok, sensors} - - _ -> - {:error, :cisco_sensors_not_available} - end - end - - defp build_cisco_sensor(client_opts, index) do - oids = [ - @cisco_sensor_oids.ent_sensor_type <> ".#{index}", - @cisco_sensor_oids.ent_sensor_scale <> ".#{index}", - @cisco_sensor_oids.ent_sensor_precision <> ".#{index}", - @cisco_sensor_oids.ent_sensor_value <> ".#{index}", - @cisco_sensor_oids.ent_sensor_status <> ".#{index}", - @cisco_sensor_oids.ent_phys_descr <> ".#{index}", - @cisco_sensor_oids.ent_phys_name <> ".#{index}" - ] - - case Client.get_multiple(client_opts, oids) do - {:ok, [type, scale, precision, value, status, descr, name]} -> - sensor_type = parse_cisco_sensor_type(type) - divisor = calculate_divisor(scale, precision) - - %{ - sensor_type: sensor_type, - sensor_index: "#{index}", - sensor_oid: @cisco_sensor_oids.ent_sensor_value <> ".#{index}", - sensor_descr: parse_sensor_description(descr, name), - sensor_unit: cisco_sensor_type_to_unit(sensor_type), - sensor_divisor: divisor, - last_value: parse_sensor_value(value, divisor), - status: parse_cisco_sensor_status(status) - } - - {:error, reason} -> - Logger.debug("Failed to fetch Cisco sensor #{index}: #{inspect(reason)}") - nil - end - end - - defp extract_indices_from_oids(oid_map) do - oid_map - |> Map.keys() - |> Enum.map(fn oid_string -> - oid_string - |> String.split(".") - |> List.last() - |> String.to_integer() - end) - end - - defp extract_cisco_model_detailed(sys_descr) do - cond do - # Catalyst switches: "Cisco IOS Software, C2960 Software..." - match = Regex.run(~r/\b(C\d+\w*|WS-C\d+\w*)\b/, sys_descr) -> - [_, model] = match - model - - # ISR routers: "Cisco IOS Software, 1900 Software..." - match = Regex.run(~r/\b(ISR\d+\w*|[0-9]{4})\b/, sys_descr) -> - [_, model] = match - model - - # ASR routers - match = Regex.run(~r/\b(ASR\d+\w*)\b/, sys_descr) -> - [_, model] = match - model - - true -> - "Unknown Cisco Model" - end - end - - defp extract_firmware_version(sys_descr) do - # Try to extract version like "Version 15.2(4)E7" - case Regex.run(~r/Version\s+([\d.()A-Za-z]+)/, sys_descr) do - [_, version] -> version - _ -> nil - end - end - - # CISCO-ENTITY-SENSOR-MIB sensor types - defp parse_cisco_sensor_type(1), do: "other" - defp parse_cisco_sensor_type(2), do: "unknown" - defp parse_cisco_sensor_type(3), do: "volts_ac" - defp parse_cisco_sensor_type(4), do: "volts_dc" - defp parse_cisco_sensor_type(5), do: "amperes" - defp parse_cisco_sensor_type(6), do: "watts" - defp parse_cisco_sensor_type(7), do: "hertz" - defp parse_cisco_sensor_type(8), do: "celsius" - defp parse_cisco_sensor_type(9), do: "percent_rh" - defp parse_cisco_sensor_type(10), do: "rpm" - defp parse_cisco_sensor_type(11), do: "cmm" - defp parse_cisco_sensor_type(12), do: "truthvalue" - defp parse_cisco_sensor_type(13), do: "specialenum" - defp parse_cisco_sensor_type(14), do: "dBm" - defp parse_cisco_sensor_type(_), do: "unknown" - - defp cisco_sensor_type_to_unit("celsius"), do: "°C" - defp cisco_sensor_type_to_unit("volts_ac"), do: "VAC" - defp cisco_sensor_type_to_unit("volts_dc"), do: "VDC" - defp cisco_sensor_type_to_unit("amperes"), do: "A" - defp cisco_sensor_type_to_unit("watts"), do: "W" - defp cisco_sensor_type_to_unit("hertz"), do: "Hz" - defp cisco_sensor_type_to_unit("percent_rh"), do: "%RH" - defp cisco_sensor_type_to_unit("rpm"), do: "RPM" - defp cisco_sensor_type_to_unit("dBm"), do: "dBm" - defp cisco_sensor_type_to_unit(_), do: "" - - # Calculate divisor from scale and precision - # Scale: 10^scale (e.g., -3 = milli, 0 = units) - # Precision: number of decimal places - defp calculate_divisor(scale, _precision) when is_integer(scale) do - case scale do - -24 -> 1_000_000_000_000_000_000_000_000 - -12 -> 1_000_000_000_000 - -9 -> 1_000_000_000 - -6 -> 1_000_000 - -3 -> 1_000 - 0 -> 1 - 3 -> 0.001 - _ -> 1 - end - end - - defp calculate_divisor(_, _), do: 1 - - defp parse_sensor_value(value, divisor) when is_integer(value) and is_number(divisor) do - value / divisor - end - - defp parse_sensor_value(_, _), do: nil - - defp parse_sensor_description(descr, _name) when is_binary(descr) and byte_size(descr) > 0 do - descr - end - - defp parse_sensor_description(_descr, name) when is_binary(name) and byte_size(name) > 0 do - name - end - - defp parse_sensor_description(_, _), do: "Unknown Sensor" - - # CISCO-ENTITY-SENSOR-MIB sensor status - defp parse_cisco_sensor_status(1), do: "ok" - defp parse_cisco_sensor_status(2), do: "unavailable" - defp parse_cisco_sensor_status(3), do: "nonoperational" - defp parse_cisco_sensor_status(_), do: "unknown" - - @doc """ - Collects raw debug data for troubleshooting. - Includes Cisco-specific sensor OIDs and entity tables. - """ - def collect_raw_debug_data(client_opts) do - # Walk Cisco entity sensor table - cisco_sensor_table = - case Client.walk(client_opts, "1.3.6.1.4.1.9.9.91.1.1.1") do - {:ok, results} -> results - {:error, _} -> %{} - end - - # Walk entity physical table for descriptions - entity_phys_table = - case Client.walk(client_opts, "1.3.6.1.2.1.47.1.1.1") do - {:ok, results} -> results - {:error, _} -> %{} - end - - %{ - timestamp: DateTime.utc_now(), - cisco_sensor_oids: @cisco_sensor_oids, - cisco_sensor_table: cisco_sensor_table, - entity_phys_table: entity_phys_table - } - end -end diff --git a/lib/towerops/snmp/profiles/dynamic.ex b/lib/towerops/snmp/profiles/dynamic.ex index a8b790b8..3639b9cf 100644 --- a/lib/towerops/snmp/profiles/dynamic.ex +++ b/lib/towerops/snmp/profiles/dynamic.ex @@ -1,11 +1,9 @@ defmodule Towerops.Snmp.Profiles.Dynamic do @moduledoc """ - Dynamic profile that uses database-stored profiles with MIB name translation. - Allows profiles to be updated without redeployment. + Dynamic profile that uses YAML-loaded profiles with MIB name translation. + Profiles are loaded from priv/profiles/ and cached in ETS. """ - alias Towerops.Profiles - alias Towerops.Profiles.DeviceProfile alias Towerops.Snmp.Client alias Towerops.Snmp.Discovery alias Towerops.Snmp.MibTranslator @@ -16,38 +14,29 @@ defmodule Towerops.Snmp.Profiles.Dynamic do Identifies device using profile's device_oids. Translates MIB names to numeric OIDs and polls the device. """ - @spec identify_device(DeviceProfile.t(), Client.connection_opts(), Discovery.system_info()) :: + @spec identify_device(map(), Client.connection_opts(), Discovery.system_info()) :: Discovery.device_info() def identify_device(profile, client_opts, system_info) do - # Get device OIDs from profile - profile = Profiles.get_profile(profile.name) + device_oids = Map.get(profile, :device_oids, %{}) device_data = - profile.device_oids - |> Enum.map(&fetch_device_oid_value(&1, client_opts)) + device_oids + |> Enum.map(fn {field, mib_name} -> fetch_device_oid_value(field, mib_name, client_opts) end) |> Enum.reject(&is_nil/1) |> Map.new() - # Format firmware version for MikroTik devices - firmware_version = - case {Map.get(device_data, :firmware_version), Map.get(device_data, :license_version)} do - {fw, license} when not is_nil(fw) and not is_nil(license) -> - "#{profile.vendor} RouterOS #{fw} (Level #{license})" - - {fw, _} when not is_nil(fw) -> - "#{profile.vendor} RouterOS #{fw}" - - _ -> - nil - end + # Format firmware version (MikroTik has special formatting with license level) + firmware_version = format_firmware_version(profile, device_data) # Merge with system_info system_info |> Map.merge(%{ manufacturer: profile.vendor, - model: system_info.sys_descr, + model: system_info[:sys_descr], firmware_version: firmware_version, - serial_number: Map.get(device_data, :serial_number) + serial_number: Map.get(device_data, :serial_number), + latitude: Map.get(device_data, :latitude), + longitude: Map.get(device_data, :longitude) }) |> Map.merge(device_data) end @@ -55,24 +44,32 @@ defmodule Towerops.Snmp.Profiles.Dynamic do @doc """ Discovers sensors using profile's sensor_oids. Translates MIB names and polls sensors. + Falls back to Base ENTITY-SENSOR-MIB discovery if profile has no sensor_oids. """ - @spec discover_sensors(DeviceProfile.t(), Client.connection_opts()) :: + @spec discover_sensors(map(), Client.connection_opts()) :: {:ok, [Discovery.sensor_data()]} def discover_sensors(profile, client_opts) do - profile = Profiles.get_profile(profile.name) + alias Towerops.Snmp.Profiles.Base - sensors = - profile.sensor_oids - |> Enum.map(&fetch_sensor_value(&1, client_opts)) - |> Enum.reject(&is_nil/1) + sensor_oids = Map.get(profile, :sensor_oids, []) - {:ok, sensors} + if Enum.empty?(sensor_oids) do + # Fall back to ENTITY-SENSOR-MIB discovery from Base profile + Base.discover_sensors(client_opts) + else + sensors = + sensor_oids + |> Enum.map(&fetch_sensor_value(&1, client_opts)) + |> Enum.reject(&is_nil/1) + + {:ok, sensors} + end end @doc """ Uses Base profile for interface discovery. """ - @spec discover_interfaces(DeviceProfile.t(), Client.connection_opts()) :: + @spec discover_interfaces(map(), Client.connection_opts()) :: {:ok, [Discovery.interface_data()]} def discover_interfaces(_profile, client_opts) do alias Towerops.Snmp.Profiles.Base @@ -82,13 +79,31 @@ defmodule Towerops.Snmp.Profiles.Dynamic do # Private helper functions - defp fetch_device_oid_value(device_oid, client_opts) do - with {:ok, numeric_oid} <- MibTranslator.translate(device_oid.mib_name), + defp format_firmware_version(%{vendor: vendor}, device_data) when vendor in ["MikroTik", "Mikrotik RouterOS"] do + case {Map.get(device_data, :firmware_version), Map.get(device_data, :license_version)} do + {fw, license} when not is_nil(fw) and not is_nil(license) -> + "MikroTik RouterOS #{fw} (Level #{license})" + + {fw, _} when not is_nil(fw) -> + "MikroTik RouterOS #{fw}" + + _ -> + nil + end + end + + defp format_firmware_version(_profile, device_data) do + # For non-MikroTik devices, use raw firmware version + Map.get(device_data, :firmware_version) + end + + defp fetch_device_oid_value(field, mib_name, client_opts) do + with {:ok, numeric_oid} <- MibTranslator.translate(mib_name), {:ok, value} <- Client.get(client_opts, numeric_oid) do - {String.to_atom(device_oid.field), value} + {field, value} else {:error, :translation_failed} -> - Logger.warning("Failed to translate MIB name: #{device_oid.mib_name}") + Logger.warning("Failed to translate MIB name: #{mib_name}") nil {:error, _} -> @@ -97,21 +112,23 @@ defmodule Towerops.Snmp.Profiles.Dynamic do end defp fetch_sensor_value(sensor_oid, client_opts) do - with {:ok, numeric_oid} <- MibTranslator.translate(sensor_oid.mib_name), + mib_name = Map.get(sensor_oid, :mib_name) + + with {:ok, numeric_oid} <- MibTranslator.translate(mib_name), {:ok, value} when is_integer(value) and value > 0 <- Client.get(client_opts, numeric_oid) do %{ - sensor_type: sensor_oid.sensor_type, - sensor_index: sensor_oid.sensor_type, + sensor_type: sensor_oid[:sensor_type], + sensor_index: sensor_oid[:sensor_type], sensor_oid: numeric_oid, - sensor_descr: sensor_oid.sensor_descr || sensor_oid.sensor_type, - sensor_unit: sensor_oid.sensor_unit || "", - sensor_divisor: sensor_oid.sensor_divisor || 1, + sensor_descr: sensor_oid[:sensor_descr] || sensor_oid[:sensor_type], + sensor_unit: sensor_oid[:sensor_unit] || "", + sensor_divisor: sensor_oid[:sensor_divisor] || 1, sensor_value: value } else {:error, :translation_failed} -> - Logger.warning("Failed to translate sensor MIB name: #{sensor_oid.mib_name}") + Logger.warning("Failed to translate sensor MIB name: #{mib_name}") nil _ -> diff --git a/lib/towerops/snmp/profiles/mikrotik.ex b/lib/towerops/snmp/profiles/mikrotik.ex deleted file mode 100644 index 636b6e49..00000000 --- a/lib/towerops/snmp/profiles/mikrotik.ex +++ /dev/null @@ -1,725 +0,0 @@ -defmodule Towerops.Snmp.Profiles.Mikrotik do - @moduledoc """ - MikroTik RouterOS device profile. - Extends Base profile with MikroTik-specific monitoring via MIKROTIK-MIB. - - Discovers and monitors: - - RouterBoard hardware information - - Health sensors (temperature, voltage, current, fan speed) - - CPU and memory usage - - Power supply status - - Wireless interfaces (if present) - """ - - alias Towerops.Snmp.Client - alias Towerops.Snmp.Discovery - alias Towerops.Snmp.Profiles.Base - - require Logger - - # MikroTik enterprise OID: 1.3.6.1.4.1.14988 - @mikrotik_oids %{ - # System Information (mtxrSystem) - serial_number: "1.3.6.1.4.1.14988.1.1.7.3.0", - firmware_version: "1.3.6.1.4.1.14988.1.1.7.4.0", - board_name: "1.3.6.1.4.1.14988.1.1.7.9.0", - display_name: "1.3.6.1.4.1.14988.1.1.7.8.0", - build_time: "1.3.6.1.4.1.14988.1.1.7.6.0", - license_level: "1.3.6.1.4.1.14988.1.1.7.5.0", - - # Health - Voltages (mtxrHealth) - core_voltage: "1.3.6.1.4.1.14988.1.1.3.1.0", - three_volt: "1.3.6.1.4.1.14988.1.1.3.2.0", - five_volt: "1.3.6.1.4.1.14988.1.1.3.3.0", - twelve_volt: "1.3.6.1.4.1.14988.1.1.3.4.0", - voltage: "1.3.6.1.4.1.14988.1.1.3.8.0", - - # Health - Temperatures - sensor_temperature: "1.3.6.1.4.1.14988.1.1.3.5.0", - cpu_temperature: "1.3.6.1.4.1.14988.1.1.3.6.0", - board_temperature: "1.3.6.1.4.1.14988.1.1.3.7.0", - temperature: "1.3.6.1.4.1.14988.1.1.3.10.0", - processor_temperature: "1.3.6.1.4.1.14988.1.1.3.11.0", - - # Health - Power & Current - current: "1.3.6.1.4.1.14988.1.1.3.13.0", - power: "1.3.6.1.4.1.14988.1.1.3.12.0", - - # Health - Fans & Cooling - active_fan: "1.3.6.1.4.1.14988.1.1.3.9.0", - fan_speed_1: "1.3.6.1.4.1.14988.1.1.3.17.0", - fan_speed_2: "1.3.6.1.4.1.14988.1.1.3.18.0", - - # Health - Power Supply - processor_frequency: "1.3.6.1.4.1.14988.1.1.3.14.0", - power_supply_state: "1.3.6.1.4.1.14988.1.1.3.15.0", - backup_psu_state: "1.3.6.1.4.1.14988.1.1.3.16.0", - - # System Resources - cpu_load: "1.3.6.1.2.1.25.3.3.1.2.1", - total_memory: "1.3.6.1.2.1.25.2.2.0", - used_memory: "1.3.6.1.4.1.14988.1.1.1.2.0", - total_hdd: "1.3.6.1.4.1.14988.1.1.1.6.0", - used_hdd: "1.3.6.1.4.1.14988.1.1.1.7.0", - - # Network Services - dhcp_lease_count: "1.3.6.1.4.1.14988.1.1.1.3.0", - - # Connection Tracking (mtxrFWConnection) - fw_connection_count: "1.3.6.1.4.1.14988.1.1.13.1.1.1.0", - fw_connection_max: "1.3.6.1.4.1.14988.1.1.13.1.1.2.0" - } - - # Table OID bases for walking - @health_sensor_table "1.3.6.1.4.1.14988.1.1.3.100.1" - @poe_table "1.3.6.1.4.1.14988.1.1.15.1" - @optical_table "1.3.6.1.4.1.14988.1.1.16.1" - - @doc """ - Discovers system information using Base profile and adds MikroTik-specific details. - """ - @spec discover_system_info(Client.connection_opts()) :: - {:ok, Discovery.system_info()} | {:error, term()} - def discover_system_info(client_opts) do - with {:ok, base_info} <- Base.discover_system_info(client_opts), - {:ok, mikrotik_info} <- discover_mikrotik_system_info(client_opts) do - {:ok, Map.merge(base_info, mikrotik_info)} - end - end - - @doc """ - Discovers network interfaces using Base profile. - """ - @spec discover_interfaces(Client.connection_opts()) :: - {:ok, [Discovery.interface_data()]} | {:error, term()} - def discover_interfaces(client_opts) do - Base.discover_interfaces(client_opts) - end - - @doc """ - Discovers MikroTik health sensors and system resources. - Returns comprehensive sensor list including temperature, voltage, current, fans, CPU, memory, disk. - Also discovers entity sensors from ENTITY-SENSOR-MIB (for additional temperature, voltage, etc.). - """ - @spec discover_sensors(Client.connection_opts()) :: - {:ok, [Discovery.sensor_data()]} | {:error, term()} - def discover_sensors(client_opts) do - Logger.debug("Discovering MikroTik sensors...") - - health_sensors = discover_health_sensors(client_opts) - resource_sensors = discover_resource_sensors(client_opts) - - # Also try to discover entity sensors (for additional temperature, voltage sensors) - {:ok, entity_sensors} = Base.discover_sensors(client_opts) - - all_sensors = health_sensors ++ resource_sensors ++ entity_sensors - - if all_sensors == [] do - Logger.warning("No MikroTik sensors found") - {:ok, []} - else - Logger.debug("Discovered #{length(all_sensors)} MikroTik sensors") - {:ok, all_sensors} - end - end - - @doc """ - Identifies MikroTik device from sysDescr. - """ - @spec identify_device(Discovery.system_info()) :: Discovery.device_info() - def identify_device(system_info) do - sys_descr = Map.get(system_info, :sys_descr, "") - - # Extract model from sysDescr (e.g., "RouterOS RB5009UG+S+") - model = - case Regex.run(~r/RouterOS\s+([A-Z0-9\+\-]+)/, sys_descr) do - [_, model] -> model - _ -> "MikroTik RouterOS" - end - - # Build formatted firmware version - firmware_version = Map.get(system_info, :firmware_version) - license_level = Map.get(system_info, :license_version) - - # Treat empty string as nil for license level - license_level = if license_level == "", do: nil, else: license_level - - formatted_firmware = - cond do - firmware_version && license_level -> - "RouterOS #{firmware_version} (Level #{license_level})" - - firmware_version -> - "RouterOS #{firmware_version}" - - true -> - # Fallback to extracting from sysDescr - extract_firmware_from_sysdescr(sys_descr) - end - - Map.merge(system_info, %{ - manufacturer: "MikroTik", - model: model, - firmware_version: formatted_firmware, - serial_number: Map.get(system_info, :serial_number) - }) - end - - # Private functions - - defp discover_mikrotik_system_info(client_opts) do - alias Towerops.Snmp.MibTranslator - - # Use MIB symbolic names instead of hardcoded OIDs - mib_names = [ - "MIKROTIK-MIB::mtxrSerialNumber.0", - "MIKROTIK-MIB::mtxrFirmwareVersion.0", - "MIKROTIK-MIB::mtxrBoardName.0", - "MIKROTIK-MIB::mtxrSystemDisplayName.0", - "MIKROTIK-MIB::mtxrLicenseVersion.0" - ] - - # Translate MIB names to numeric OIDs - translated = MibTranslator.translate_batch(mib_names) - - oids = - Enum.map(mib_names, fn name -> - case Map.get(translated, name) do - {:ok, oid} -> oid - _ -> nil - end - end) - - # If any translation failed, fall back to hardcoded OIDs - oids = - if Enum.any?(oids, &is_nil/1) do - Logger.warning("MIB translation failed for some MikroTik OIDs, using hardcoded values") - - [ - @mikrotik_oids.serial_number, - @mikrotik_oids.firmware_version, - @mikrotik_oids.board_name, - @mikrotik_oids.display_name, - @mikrotik_oids.license_level - ] - else - oids - end - - case Client.get_multiple(client_opts, oids) do - {:ok, [serial, firmware, board, display, license_level]} -> - {:ok, - %{ - serial_number: serial, - firmware_version: firmware, - board_name: board, - display_name: display, - license_version: license_level - }} - - {:error, reason} -> - # MikroTik-specific OIDs not available or partially available - Logger.warning("Failed to get MikroTik device info: #{inspect(reason)}") - {:ok, %{}} - end - end - - defp discover_health_sensors(client_opts) do - # First try the dynamic health sensor table (available on newer devices like CCR2004) - table_sensors = discover_health_table_sensors(client_opts) - - # Also try individual health OIDs for older devices - oid_sensors = discover_health_oid_sensors(client_opts) - - # Combine both, preferring table sensors (more accurate) - table_sensors ++ oid_sensors - end - - defp discover_health_table_sensors(client_opts) do - # Walk health sensor table: mtxrHealthTable (1.3.6.1.4.1.14988.1.1.3.100.1) - # Column 2: Name, Column 3: Value, Column 4: Type - with {:ok, name_results} <- Client.walk(client_opts, "#{@health_sensor_table}.2"), - {:ok, value_results} <- Client.walk(client_opts, "#{@health_sensor_table}.3"), - {:ok, type_results} <- Client.walk(client_opts, "#{@health_sensor_table}.4") do - indices = - name_results - |> Map.keys() - |> Enum.map(fn oid -> oid |> String.split(".") |> List.last() end) - - indices - |> Enum.map(fn index -> - name_oid = "#{@health_sensor_table}.2.#{index}" - value_oid = "#{@health_sensor_table}.3.#{index}" - type_oid = "#{@health_sensor_table}.4.#{index}" - - name = Map.get(name_results, name_oid, "unknown") - value = Map.get(value_results, value_oid, 0) - type_code = Map.get(type_results, type_oid, 0) - - {sensor_type, unit, divisor} = decode_health_sensor_type(type_code, name) - - # Skip sensors with value 0 (disabled PSUs, etc.) - if value > 0 do - %{ - sensor_type: sensor_type, - sensor_index: "health_#{index}", - sensor_oid: value_oid, - sensor_descr: format_health_sensor_name(name), - sensor_unit: unit, - sensor_divisor: divisor, - last_value: value / divisor, - status: "ok" - } - end - end) - |> Enum.reject(&is_nil/1) - else - _ -> [] - end - end - - defp decode_health_sensor_type(type_code, name) do - cond do - # Type 1 = Temperature (Celsius) - type_code == 1 -> {"temperature", "°C", 1} - # Type 3 = Voltage (V, value in decivolts) - type_code == 3 -> {"voltage", "V", 10} - # Type 2 = Current (mA) - type_code == 2 -> {"current", "mA", 1} - # Fallback: infer from name - String.contains?(name, "temperature") -> {"temperature", "°C", 1} - String.contains?(name, "voltage") -> {"voltage", "V", 10} - String.contains?(name, "current") -> {"current", "mA", 1} - String.contains?(name, "power") -> {"power", "W", 10} - true -> {"unknown", "", 1} - end - end - - defp format_health_sensor_name(name) do - name - |> String.replace("-", " ") - |> String.split() - |> Enum.map_join(" ", &String.capitalize/1) - end - - defp discover_health_oid_sensors(client_opts) do - # Try to get all health OIDs - voltages, temperatures, power, fans - health_oids = [ - # Voltages - {@mikrotik_oids.core_voltage, "core_voltage", "V", 10}, - {@mikrotik_oids.three_volt, "3v3_voltage", "V", 10}, - {@mikrotik_oids.five_volt, "5v_voltage", "V", 10}, - {@mikrotik_oids.twelve_volt, "12v_voltage", "V", 10}, - {@mikrotik_oids.voltage, "input_voltage", "V", 10}, - # Temperatures - {@mikrotik_oids.sensor_temperature, "sensor_temperature", "°C", 10}, - {@mikrotik_oids.cpu_temperature, "cpu_temperature", "°C", 10}, - {@mikrotik_oids.board_temperature, "board_temperature", "°C", 10}, - {@mikrotik_oids.temperature, "temperature", "°C", 10}, - {@mikrotik_oids.processor_temperature, "processor_temperature", "°C", 10}, - # Power & Current - {@mikrotik_oids.current, "current", "mA", 1}, - {@mikrotik_oids.power, "power", "W", 10}, - # Fans - {@mikrotik_oids.fan_speed_1, "fan1", "RPM", 1}, - {@mikrotik_oids.fan_speed_2, "fan2", "RPM", 1}, - # Processor - {@mikrotik_oids.processor_frequency, "processor_frequency", "MHz", 1} - ] - - health_oids - |> Enum.map(fn {oid, type, unit, divisor} -> - case Client.get(client_opts, oid) do - {:ok, value} when is_integer(value) and value > 0 -> - %{ - sensor_type: type, - sensor_index: type, - sensor_oid: oid, - sensor_descr: format_sensor_name(type), - sensor_unit: unit, - sensor_divisor: divisor, - last_value: value / divisor, - status: "ok" - } - - _ -> - nil - end - end) - |> Enum.reject(&is_nil/1) - end - - defp discover_resource_sensors(client_opts) do - cpu_sensors = discover_cpu_sensors(client_opts) - storage_sensors = discover_storage_sensors(client_opts) - network_sensors = discover_network_sensors(client_opts) - poe_sensors = discover_poe_sensors(client_opts) - optical_sensors = discover_optical_sensors(client_opts) - - cpu_sensors ++ storage_sensors ++ network_sensors ++ poe_sensors ++ optical_sensors - end - - defp discover_cpu_sensors(client_opts) do - # Walk hrProcessorLoad (1.3.6.1.2.1.25.3.3.1.2) to get CPU load per core - case Client.walk(client_opts, "1.3.6.1.2.1.25.3.3.1.2") do - {:ok, results} -> - Enum.map(results, fn {oid, load} -> - index = oid |> String.split(".") |> List.last() - - %{ - sensor_type: "cpu_load", - sensor_index: "cpu#{index}", - sensor_oid: oid, - sensor_descr: "CPU #{index} Load", - sensor_unit: "%", - sensor_divisor: 1, - last_value: load / 1.0, - status: cpu_status(load) - } - end) - - _ -> - [] - end - end - - defp discover_network_sensors(client_opts) do - # Get DHCP lease count and connection tracking stats - network_oids = [ - {@mikrotik_oids.dhcp_lease_count, "dhcp_leases", "count", 1}, - {@mikrotik_oids.fw_connection_count, "connection_count", "count", 1} - ] - - network_oids - |> Enum.map(fn {oid, type, unit, divisor} -> - case Client.get(client_opts, oid) do - {:ok, value} when is_integer(value) and value >= 0 -> - %{ - sensor_type: type, - sensor_index: type, - sensor_oid: oid, - sensor_descr: format_network_sensor_name(type), - sensor_unit: unit, - sensor_divisor: divisor, - last_value: value / divisor, - status: "ok" - } - - _ -> - nil - end - end) - |> Enum.reject(&is_nil/1) - end - - defp discover_storage_sensors(client_opts) do - with {:ok, descr_results} <- Client.walk(client_opts, "1.3.6.1.2.1.25.2.3.1.3"), - {:ok, size_results} <- Client.walk(client_opts, "1.3.6.1.2.1.25.2.3.1.5"), - {:ok, used_results} <- Client.walk(client_opts, "1.3.6.1.2.1.25.2.3.1.6") do - indices = extract_storage_indices(descr_results) - build_storage_sensors(indices, descr_results, size_results, used_results) - else - _ -> [] - end - end - - defp extract_storage_indices(descr_results) do - descr_results - |> Map.keys() - |> Enum.map(fn oid -> oid |> String.split(".") |> List.last() end) - end - - defp build_storage_sensors(indices, descr_results, size_results, used_results) do - indices - |> Enum.map(&build_storage_sensor(&1, descr_results, size_results, used_results)) - |> Enum.reject(&is_nil/1) - end - - defp build_storage_sensor(index, descr_results, size_results, used_results) do - descr_oid = "1.3.6.1.2.1.25.2.3.1.3.#{index}" - size_oid = "1.3.6.1.2.1.25.2.3.1.5.#{index}" - used_oid = "1.3.6.1.2.1.25.2.3.1.6.#{index}" - - descr = Map.get(descr_results, descr_oid, "") - size = Map.get(size_results, size_oid, 0) - used = Map.get(used_results, used_oid, 0) - - if size > 0 do - percent = used / size * 100 - type = determine_storage_type(descr) - - # Cap percentage at 100% and log warning if exceeded - # This can happen if the device reports incorrect SNMP values - capped_percent = - if percent > 100 do - Logger.warning( - "Storage sensor #{descr} exceeded 100%: #{Float.round(percent, 2)}% " <> - "(used=#{used} from #{used_oid}, size=#{size} from #{size_oid}). " <> - "Capping at 100%. This may indicate a device firmware bug." - ) - - 100.0 - else - percent - end - - %{ - sensor_type: "#{type}_usage", - sensor_index: index, - sensor_oid: used_oid, - sensor_descr: descr, - sensor_unit: "%", - sensor_divisor: 1, - last_value: capped_percent, - status: storage_status(type, capped_percent), - metadata: %{ - size_oid: size_oid, - calculation: "percentage" - } - } - end - end - - defp determine_storage_type(descr) do - cond do - String.contains?(descr, "memory") -> "memory" - String.contains?(descr, "disk") -> "disk" - true -> "storage" - end - end - - defp discover_poe_sensors(client_opts) do - # Walk POE table to get per-port POE statistics - # Table columns: Name(3), Status(4), Voltage(5), Current(6), Power(7) - with {:ok, name_results} <- Client.walk(client_opts, "#{@poe_table}.1.3"), - {:ok, voltage_results} <- Client.walk(client_opts, "#{@poe_table}.1.5"), - {:ok, current_results} <- Client.walk(client_opts, "#{@poe_table}.1.6"), - {:ok, power_results} <- Client.walk(client_opts, "#{@poe_table}.1.7") do - # Get indices from the name results - indices = - name_results - |> Map.keys() - |> Enum.map(fn oid -> oid |> String.split(".") |> List.last() end) - - # Create sensors for voltage, current, and power per port - Enum.flat_map(indices, fn index -> - name_oid = "#{@poe_table}.1.3.#{index}" - voltage_oid = "#{@poe_table}.1.5.#{index}" - current_oid = "#{@poe_table}.1.6.#{index}" - power_oid = "#{@poe_table}.1.7.#{index}" - - port_name = Map.get(name_results, name_oid, "Port #{index}") - voltage = Map.get(voltage_results, voltage_oid, 0) - current = Map.get(current_results, current_oid, 0) - power = Map.get(power_results, power_oid, 0) - - Enum.reject( - [ - if voltage > 0 do - %{ - sensor_type: "poe_voltage", - sensor_index: "poe_#{index}_voltage", - sensor_oid: voltage_oid, - sensor_descr: "#{port_name} POE Voltage", - sensor_unit: "V", - sensor_divisor: 10, - last_value: voltage / 10.0, - status: "ok" - } - end, - if current > 0 do - %{ - sensor_type: "poe_current", - sensor_index: "poe_#{index}_current", - sensor_oid: current_oid, - sensor_descr: "#{port_name} POE Current", - sensor_unit: "mA", - sensor_divisor: 1, - last_value: current / 1.0, - status: "ok" - } - end, - if power > 0 do - %{ - sensor_type: "poe_power", - sensor_index: "poe_#{index}_power", - sensor_oid: power_oid, - sensor_descr: "#{port_name} POE Power", - sensor_unit: "W", - sensor_divisor: 10, - last_value: power / 10.0, - status: "ok" - } - end - ], - &is_nil/1 - ) - end) - else - _ -> [] - end - end - - defp discover_optical_sensors(client_opts) do - # Walk optical table to get SFP/optical monitoring data - # Table columns: Name(2), Temperature(3), Voltage(5), TxBiasCurrent(6), TxPower(7), RxPower(8) - with {:ok, name_results} <- Client.walk(client_opts, "#{@optical_table}.1.2"), - {:ok, temp_results} <- Client.walk(client_opts, "#{@optical_table}.1.3"), - {:ok, voltage_results} <- Client.walk(client_opts, "#{@optical_table}.1.5"), - {:ok, tx_power_results} <- Client.walk(client_opts, "#{@optical_table}.1.7"), - {:ok, rx_power_results} <- Client.walk(client_opts, "#{@optical_table}.1.8") do - # Get indices from the name results - indices = - name_results - |> Map.keys() - |> Enum.map(fn oid -> oid |> String.split(".") |> List.last() end) - - # Create sensors for each optical metric - Enum.flat_map(indices, fn index -> - name_oid = "#{@optical_table}.1.2.#{index}" - temp_oid = "#{@optical_table}.1.3.#{index}" - voltage_oid = "#{@optical_table}.1.5.#{index}" - tx_power_oid = "#{@optical_table}.1.7.#{index}" - rx_power_oid = "#{@optical_table}.1.8.#{index}" - - sfp_name = Map.get(name_results, name_oid, "SFP #{index}") - temperature = Map.get(temp_results, temp_oid) - voltage = Map.get(voltage_results, voltage_oid) - tx_power = Map.get(tx_power_results, tx_power_oid) - rx_power = Map.get(rx_power_results, rx_power_oid) - - Enum.reject( - [ - if temperature do - %{ - sensor_type: "sfp_temperature", - sensor_index: "sfp_#{index}_temp", - sensor_oid: temp_oid, - sensor_descr: "#{sfp_name} Temperature", - sensor_unit: "°C", - sensor_divisor: 1000, - last_value: temperature / 1000.0, - status: "ok" - } - end, - if voltage do - %{ - sensor_type: "sfp_voltage", - sensor_index: "sfp_#{index}_voltage", - sensor_oid: voltage_oid, - sensor_descr: "#{sfp_name} Voltage", - sensor_unit: "V", - sensor_divisor: 1000, - last_value: voltage / 1000.0, - status: "ok" - } - end, - if tx_power do - %{ - sensor_type: "sfp_tx_power", - sensor_index: "sfp_#{index}_tx", - sensor_oid: tx_power_oid, - sensor_descr: "#{sfp_name} TX Power", - sensor_unit: "dBm", - sensor_divisor: 1000, - last_value: tx_power / 1000.0, - status: "ok" - } - end, - if rx_power do - %{ - sensor_type: "sfp_rx_power", - sensor_index: "sfp_#{index}_rx", - sensor_oid: rx_power_oid, - sensor_descr: "#{sfp_name} RX Power", - sensor_unit: "dBm", - sensor_divisor: 1000, - last_value: rx_power / 1000.0, - status: "ok" - } - end - ], - &is_nil/1 - ) - end) - else - _ -> [] - end - end - - defp format_sensor_name("core_voltage"), do: "Core Voltage" - defp format_sensor_name("3v3_voltage"), do: "3.3V Supply" - defp format_sensor_name("5v_voltage"), do: "5V Supply" - defp format_sensor_name("12v_voltage"), do: "12V Supply" - defp format_sensor_name("input_voltage"), do: "Input Voltage" - defp format_sensor_name("sensor_temperature"), do: "Sensor Chip Temperature" - defp format_sensor_name("cpu_temperature"), do: "CPU Temperature" - defp format_sensor_name("board_temperature"), do: "Board Temperature" - defp format_sensor_name("temperature"), do: "System Temperature" - defp format_sensor_name("processor_temperature"), do: "Processor Temperature" - defp format_sensor_name("current"), do: "Current Draw" - defp format_sensor_name("power"), do: "Power Consumption" - defp format_sensor_name("fan1"), do: "Fan 1 Speed" - defp format_sensor_name("fan2"), do: "Fan 2 Speed" - defp format_sensor_name("processor_frequency"), do: "Processor Frequency" - defp format_sensor_name(other), do: String.capitalize(other) - - defp format_network_sensor_name("dhcp_leases"), do: "DHCP Leases" - defp format_network_sensor_name("connection_count"), do: "Active Connections" - defp format_network_sensor_name(other), do: String.capitalize(other) - - defp cpu_status(load) when load < 70, do: "ok" - defp cpu_status(load) when load < 90, do: "warning" - defp cpu_status(_), do: "critical" - - defp storage_status("memory", percent) when percent < 80, do: "ok" - defp storage_status("memory", percent) when percent < 95, do: "warning" - defp storage_status("memory", _), do: "critical" - - defp storage_status("disk", percent) when percent < 85, do: "ok" - defp storage_status("disk", percent) when percent < 95, do: "warning" - defp storage_status("disk", _), do: "critical" - - defp storage_status(_, percent) when percent < 85, do: "ok" - defp storage_status(_, percent) when percent < 95, do: "warning" - defp storage_status(_, _), do: "critical" - - defp extract_firmware_from_sysdescr(sys_descr) do - # Try to extract version from sysDescr - # Example: "RouterOS RB5009UG+S+ (stable) 7.13.2" - case Regex.run(~r/RouterOS.*?(\d+\.\d+(?:\.\d+)?)/, sys_descr) do - [_, version] -> version - _ -> nil - end - end - - @doc """ - Collects raw SNMP OID data for debugging purposes. - """ - def collect_raw_debug_data(client_opts) do - # Collect raw SNMP data for debugging - system_oids = - Map.new(@mikrotik_oids, fn {key, oid} -> - value = - case Client.get(client_opts, oid) do - {:ok, val} -> val - {:error, reason} -> "ERROR: #{inspect(reason)}" - end - - {key, %{oid: oid, value: value}} - end) - - # Walk health sensor table - health_table = - case Client.walk(client_opts, @health_sensor_table) do - {:ok, results} -> results - {:error, _} -> %{} - end - - %{ - timestamp: DateTime.utc_now(), - system_oids: system_oids, - health_sensor_table: health_table - } - end -end diff --git a/lib/towerops/snmp/profiles/net_snmp.ex b/lib/towerops/snmp/profiles/net_snmp.ex deleted file mode 100644 index 08760c44..00000000 --- a/lib/towerops/snmp/profiles/net_snmp.ex +++ /dev/null @@ -1,342 +0,0 @@ -defmodule Towerops.Snmp.Profiles.NetSnmp do - @moduledoc """ - Net-SNMP device profile for Linux/Unix servers. - Extends Base profile with Net-SNMP specific sensor discovery from: - - LM-SENSORS-MIB (lm-sensors hardware monitoring) - - UCD-SNMP-MIB (system statistics) - - Discovers: - - CPU temperature, fan speed, voltage from lm-sensors - - System load, memory, disk usage from UCD-SNMP-MIB - """ - - alias Towerops.Snmp.Client - alias Towerops.Snmp.Discovery - alias Towerops.Snmp.Profiles.Base - - require Logger - - @lm_sensors_oids %{ - # LM-SENSORS-MIB - lm_temp_sensors_device: "1.3.6.1.4.1.2021.13.16.2.1.2", - lm_temp_sensors_value: "1.3.6.1.4.1.2021.13.16.2.1.3", - lm_fans_device: "1.3.6.1.4.1.2021.13.16.3.1.2", - lm_fans_value: "1.3.6.1.4.1.2021.13.16.3.1.3", - lm_voltage_device: "1.3.6.1.4.1.2021.13.16.4.1.2", - lm_voltage_value: "1.3.6.1.4.1.2021.13.16.4.1.3" - } - - @ucd_snmp_oids %{ - # UCD-SNMP-MIB system statistics - load_average_1: "1.3.6.1.4.1.2021.10.1.3.1", - load_average_5: "1.3.6.1.4.1.2021.10.1.3.2", - load_average_15: "1.3.6.1.4.1.2021.10.1.3.3", - mem_total: "1.3.6.1.4.1.2021.4.5.0", - mem_available: "1.3.6.1.4.1.2021.4.6.0", - mem_buffer: "1.3.6.1.4.1.2021.4.14.0", - mem_cached: "1.3.6.1.4.1.2021.4.15.0" - } - - @doc """ - Discovers system information. - NetSnmp profile doesn't query additional system OIDs beyond Base profile. - """ - @spec discover_system_info(Client.connection_opts()) :: - {:ok, Discovery.system_info()} | {:error, term()} - def discover_system_info(_client_opts) do - # No additional system info beyond Base profile - {:ok, %{}} - end - - @doc """ - Discovers network interfaces using Base profile. - """ - @spec discover_interfaces(Client.connection_opts()) :: - {:ok, [Discovery.interface_data()]} | {:error, term()} - def discover_interfaces(client_opts) do - Base.discover_interfaces(client_opts) - end - - @doc """ - Discovers sensors from LM-SENSORS-MIB and UCD-SNMP-MIB. - Combines hardware sensors (temperature, fans, voltage) with system stats (load, memory). - """ - def discover_sensors(client_opts) do - lm_sensors = discover_lm_sensors(client_opts) - ucd_sensors = discover_ucd_sensors(client_opts) - - all_sensors = lm_sensors ++ ucd_sensors - - if all_sensors == [] do - # Fall back to standard ENTITY-SENSOR-MIB - Logger.debug("Net-SNMP specific sensors not available, using standard discovery") - Base.discover_sensors(client_opts) - else - {:ok, all_sensors} - end - end - - @doc """ - Identifies Linux/Unix device from sysDescr. - """ - def identify_device(system_info) do - sys_descr = Map.get(system_info, :sys_descr, "") - - {os, version} = extract_linux_info(sys_descr) - - Map.merge(system_info, %{ - manufacturer: "Linux", - model: os, - firmware_version: version - }) - end - - # Private functions - - defp discover_lm_sensors(client_opts) do - temp_sensors = discover_temperature_sensors(client_opts) - fan_sensors = discover_fan_sensors(client_opts) - voltage_sensors = discover_voltage_sensors(client_opts) - - temp_sensors ++ fan_sensors ++ voltage_sensors - end - - defp discover_temperature_sensors(client_opts) do - with {:ok, devices} <- Client.walk(client_opts, @lm_sensors_oids.lm_temp_sensors_device), - {:ok, values} <- Client.walk(client_opts, @lm_sensors_oids.lm_temp_sensors_value) do - build_lm_sensors(devices, values, "celsius", "°C") - else - _ -> [] - end - end - - defp discover_fan_sensors(client_opts) do - with {:ok, devices} <- Client.walk(client_opts, @lm_sensors_oids.lm_fans_device), - {:ok, values} <- Client.walk(client_opts, @lm_sensors_oids.lm_fans_value) do - build_lm_sensors(devices, values, "rpm", "RPM") - else - _ -> [] - end - end - - defp discover_voltage_sensors(client_opts) do - with {:ok, devices} <- Client.walk(client_opts, @lm_sensors_oids.lm_voltage_device), - {:ok, values} <- Client.walk(client_opts, @lm_sensors_oids.lm_voltage_value) do - build_lm_sensors(devices, values, "volts", "V") - else - _ -> [] - end - end - - defp build_lm_sensors(devices, values, sensor_type, unit) do - Enum.map(devices, fn {oid, device_name} -> - index = extract_last_oid_part(oid) - value_oid = find_matching_oid(values, index) - - %{ - sensor_type: sensor_type, - sensor_index: index, - sensor_oid: value_oid, - sensor_descr: device_name, - sensor_unit: unit, - sensor_divisor: divisor_for_type(sensor_type), - last_value: get_sensor_value(values, index), - status: "ok" - } - end) - end - - defp discover_ucd_sensors(client_opts) do - load_sensors = discover_load_sensors(client_opts) - memory_sensors = discover_memory_sensors(client_opts) - - load_sensors ++ memory_sensors - end - - defp discover_load_sensors(client_opts) do - case Client.get_multiple(client_opts, [ - @ucd_snmp_oids.load_average_1, - @ucd_snmp_oids.load_average_5, - @ucd_snmp_oids.load_average_15 - ]) do - {:ok, [load1, load5, load15]} -> - [ - %{ - sensor_type: "load", - sensor_index: "1min", - sensor_oid: @ucd_snmp_oids.load_average_1, - sensor_descr: "System Load (1 min)", - sensor_unit: "", - sensor_divisor: 100, - last_value: parse_float(load1), - status: "ok" - }, - %{ - sensor_type: "load", - sensor_index: "5min", - sensor_oid: @ucd_snmp_oids.load_average_5, - sensor_descr: "System Load (5 min)", - sensor_unit: "", - sensor_divisor: 100, - last_value: parse_float(load5), - status: "ok" - }, - %{ - sensor_type: "load", - sensor_index: "15min", - sensor_oid: @ucd_snmp_oids.load_average_15, - sensor_descr: "System Load (15 min)", - sensor_unit: "", - sensor_divisor: 100, - last_value: parse_float(load15), - status: "ok" - } - ] - - _ -> - [] - end - end - - defp discover_memory_sensors(client_opts) do - case Client.get_multiple(client_opts, [ - @ucd_snmp_oids.mem_total, - @ucd_snmp_oids.mem_available - ]) do - {:ok, [total, available]} -> - total_kb = parse_integer(total) - available_kb = parse_integer(available) - used_kb = calculate_used_memory(total_kb, available_kb) - used_percent = calculate_memory_percentage(total_kb, used_kb) - - [ - %{ - sensor_type: "memory", - sensor_index: "usage", - sensor_oid: @ucd_snmp_oids.mem_available, - sensor_descr: "Memory Usage", - sensor_unit: "%", - sensor_divisor: 1, - last_value: used_percent, - status: "ok" - } - ] - - _ -> - [] - end - end - - defp calculate_used_memory(nil, _available_kb), do: nil - defp calculate_used_memory(_total_kb, nil), do: nil - defp calculate_used_memory(total_kb, available_kb), do: total_kb - available_kb - - defp calculate_memory_percentage(total_kb, used_kb) when is_number(total_kb) and total_kb > 0 and is_number(used_kb) do - percent = used_kb / total_kb * 100 - cap_memory_percentage(percent, used_kb, total_kb) - end - - defp calculate_memory_percentage(_total_kb, _used_kb), do: nil - - defp cap_memory_percentage(percent, _used_kb, _total_kb) when percent <= 100, do: percent - - defp cap_memory_percentage(percent, used_kb, total_kb) do - Logger.warning( - "Memory usage exceeded 100%: #{Float.round(percent, 2)}% " <> - "(used=#{used_kb} KB, total=#{total_kb} KB). " <> - "Capping at 100%. This may indicate a device firmware bug." - ) - - 100.0 - end - - defp extract_linux_info(sys_descr) do - cond do - String.contains?(sys_descr, "Ubuntu") -> - version = extract_version(sys_descr, ~r/Ubuntu[\/\s]+([\d.]+)/) - {"Ubuntu", version} - - String.contains?(sys_descr, "Debian") -> - version = extract_version(sys_descr, ~r/Debian[\/\s]+([\d.]+)/) - {"Debian", version} - - String.contains?(sys_descr, "CentOS") -> - version = extract_version(sys_descr, ~r/CentOS[\/\s]+([\d.]+)/) - {"CentOS", version} - - String.contains?(sys_descr, "Red Hat") -> - version = extract_version(sys_descr, ~r/Red Hat[\/\s]+([\d.]+)/) - {"Red Hat Enterprise Linux", version} - - String.contains?(sys_descr, "Linux") -> - version = extract_version(sys_descr, ~r/Linux[\/\s]+([\d.]+)/) - {"Linux", version} - - true -> - {"Unix", nil} - end - end - - defp extract_version(sys_descr, regex) do - case Regex.run(regex, sys_descr) do - [_, version] -> version - _ -> nil - end - end - - defp extract_last_oid_part(oid_string) do - oid_string - |> String.split(".") - |> List.last() - end - - defp find_matching_oid(values, index) do - values - |> Map.keys() - |> Enum.find(fn oid -> String.ends_with?(oid, ".#{index}") end) - end - - defp get_sensor_value(values, index) do - oid = find_matching_oid(values, index) - value = Map.get(values, oid) - parse_float(value) - end - - defp divisor_for_type("celsius"), do: 1000 - defp divisor_for_type("volts"), do: 1000 - defp divisor_for_type("rpm"), do: 1 - defp divisor_for_type(_), do: 1 - - defp parse_integer(value) when is_integer(value), do: value - defp parse_integer(value) when is_binary(value), do: String.to_integer(value) - defp parse_integer(_), do: nil - - defp parse_float(value) when is_float(value), do: value - defp parse_float(value) when is_integer(value), do: value / 1.0 - defp parse_float(value) when is_binary(value), do: String.to_float(value) - defp parse_float(_), do: nil - - @doc """ - Collects raw debug data for troubleshooting. - Includes LM-SENSORS and UCD-SNMP tables. - """ - def collect_raw_debug_data(client_opts) do - %{ - timestamp: DateTime.utc_now(), - lm_sensors_oids: @lm_sensors_oids, - ucd_snmp_oids: @ucd_snmp_oids, - lm_temp_table: safe_walk(client_opts, "1.3.6.1.4.1.2021.13.16.2"), - lm_fan_table: safe_walk(client_opts, "1.3.6.1.4.1.2021.13.16.3"), - lm_voltage_table: safe_walk(client_opts, "1.3.6.1.4.1.2021.13.16.4"), - ucd_load_table: safe_walk(client_opts, "1.3.6.1.4.1.2021.10"), - ucd_memory_table: safe_walk(client_opts, "1.3.6.1.4.1.2021.4") - } - end - - defp safe_walk(client_opts, oid) do - case Client.walk(client_opts, oid) do - {:ok, results} -> results - {:error, _} -> %{} - end - end -end diff --git a/lib/towerops/snmp/profiles/ubiquiti.ex b/lib/towerops/snmp/profiles/ubiquiti.ex deleted file mode 100644 index dddebecc..00000000 --- a/lib/towerops/snmp/profiles/ubiquiti.ex +++ /dev/null @@ -1,262 +0,0 @@ -defmodule Towerops.Snmp.Profiles.Ubiquiti do - @moduledoc """ - SNMP profile for Ubiquiti devices (AirFiber, AirMax, etc.) using Ubiquiti airOS MIB. - - Discovers wireless-specific sensors: - - TX/RX Frequency - - TX/RX Throughput - - TX/RX Capacity - - Signal Strength - - Remote device information - """ - - alias Towerops.Snmp.Client - alias Towerops.Snmp.Profiles.Base - - require Logger - - # Ubiquiti enterprise MIB base: 1.3.6.1.4.1.41112 - @ubnt_base "1.3.6.1.4.1.41112" - - # UniFi specific OIDs (.1.6.3) - @unifi_system_model "#{@ubnt_base}.1.6.3.3.0" - @unifi_system_version "#{@ubnt_base}.1.6.3.6.0" - - # Radio configuration OIDs (.1.3.1.1) - @radio_config_base "#{@ubnt_base}.1.3.1.1" - @radio_tx_freq "#{@radio_config_base}.5" - @radio_rx_freq "#{@radio_config_base}.6" - @radio_tx_power "#{@radio_config_base}.9" - - # Radio statistics OIDs (.1.3.2.1) - @radio_stats_base "#{@ubnt_base}.1.3.2.1" - @radio_tx_throughput "#{@radio_stats_base}.3" - @radio_rx_throughput "#{@radio_stats_base}.4" - @radio_tx_capacity_bps "#{@radio_stats_base}.5" - @radio_rx_capacity_bps "#{@radio_stats_base}.6" - @radio_tx_signal "#{@radio_stats_base}.7" - @radio_rx_signal "#{@radio_stats_base}.8" - @radio_remote_tx_power "#{@radio_stats_base}.11" - @radio_remote_rx_power "#{@radio_stats_base}.14" - - @doc """ - Discovers system information, extending Base with UniFi-specific OIDs. - """ - def discover_system_info(client_opts) do - with {:ok, base_info} <- Base.discover_system_info(client_opts) do - # Try to get UniFi-specific model and version - unifi_info = discover_unifi_system_info(client_opts) - {:ok, Map.merge(base_info, unifi_info)} - end - end - - defp discover_unifi_system_info(client_opts) do - case Client.get_multiple(client_opts, [@unifi_system_model, @unifi_system_version]) do - {:ok, [model, version]} when is_binary(model) or is_binary(version) -> - %{ - unifi_model: model, - unifi_version: version - } - - _ -> - %{} - end - end - - @doc """ - Discovers interfaces using base profile. - """ - def discover_interfaces(client_opts) do - Base.discover_interfaces(client_opts) - end - - @doc """ - Discovers Ubiquiti wireless sensors. - Includes frequency, throughput, capacity, and signal strength metrics. - """ - def discover_sensors(client_opts) do - # Walk the radio config base to see if this is a radio device - case Client.walk(client_opts, @radio_config_base) do - {:ok, config} when map_size(config) > 0 -> - # This is a Ubiquiti radio device, discover wireless sensors - Logger.debug("Discovered Ubiquiti radio device") - sensors = discover_radio_sensors(client_opts) - {:ok, sensors} - - _ -> - # Not a radio device or no radio data, fall back to base - Logger.debug("No Ubiquiti radio sensors found, using base profile") - Base.discover_sensors(client_opts) - end - end - - @doc """ - Identifies Ubiquiti device from sysDescr and UniFi-specific OIDs. - """ - def identify_device(system_info) do - sys_descr = Map.get(system_info, :sys_descr, "") - unifi_model = Map.get(system_info, :unifi_model) - unifi_version = Map.get(system_info, :unifi_version) - - # Prefer UniFi-specific model/version if available, otherwise detect from sysDescr - {model, firmware} = - if unifi_model || unifi_version do - {unifi_model || "UniFi Device", unifi_version} - else - {detect_model(sys_descr), extract_airos_version(sys_descr)} - end - - Map.merge(system_info, %{ - manufacturer: "Ubiquiti", - model: model, - firmware_version: firmware - }) - end - - @doc """ - Collects raw debug data for troubleshooting. - Includes UniFi system OIDs, radio configuration and statistics. - """ - def collect_raw_debug_data(client_opts) do - # UniFi system OIDs - unifi_system_oids = %{ - unifi_model: @unifi_system_model, - unifi_version: @unifi_system_version - } - - # Radio configuration OIDs - radio_config_oids = %{ - radio_tx_freq: @radio_tx_freq, - radio_rx_freq: @radio_rx_freq, - radio_tx_power: @radio_tx_power - } - - # Radio statistics OIDs - radio_stats_oids = %{ - radio_tx_throughput: @radio_tx_throughput, - radio_rx_throughput: @radio_rx_throughput, - radio_tx_capacity: @radio_tx_capacity_bps, - radio_rx_capacity: @radio_rx_capacity_bps, - radio_tx_signal: @radio_tx_signal, - radio_rx_signal: @radio_rx_signal, - radio_remote_tx_power: @radio_remote_tx_power, - radio_remote_rx_power: @radio_remote_rx_power - } - - # Get UniFi system values - unifi_system_values = - Map.new(unifi_system_oids, fn {key, oid} -> - value = - case Client.get(client_opts, oid) do - {:ok, val} -> val - {:error, reason} -> "ERROR: #{inspect(reason)}" - end - - {key, %{oid: oid, value: value}} - end) - - # Walk radio config and stats tables - radio_config_table = - case Client.walk(client_opts, @radio_config_base) do - {:ok, results} -> results - {:error, _} -> %{} - end - - radio_stats_table = - case Client.walk(client_opts, @radio_stats_base) do - {:ok, results} -> results - {:error, _} -> %{} - end - - %{ - timestamp: DateTime.utc_now(), - unifi_system_oids: unifi_system_values, - radio_config_oids: radio_config_oids, - radio_stats_oids: radio_stats_oids, - radio_config_table: radio_config_table, - radio_stats_table: radio_stats_table - } - end - - # Private functions - - defp discover_radio_sensors(client_opts) do - # Discover radio index (usually 1 for most devices) - case Client.walk(client_opts, @radio_config_base) do - {:ok, entries} when map_size(entries) > 0 -> - # Extract radio index from first entry - {first_oid, _} = Enum.at(entries, 0) - index = extract_radio_index(first_oid) - - build_radio_sensors(client_opts, index) - - _ -> - [] - end - end - - defp build_radio_sensors(client_opts, index) do - Enum.reject( - [ - build_sensor(client_opts, "#{@radio_tx_freq}.#{index}", "tx_frequency", "TX Frequency", "MHz", 1), - build_sensor(client_opts, "#{@radio_rx_freq}.#{index}", "rx_frequency", "RX Frequency", "MHz", 1), - build_sensor(client_opts, "#{@radio_tx_throughput}.#{index}", "tx_throughput", "TX Throughput", "kbps", 1), - build_sensor(client_opts, "#{@radio_rx_throughput}.#{index}", "rx_throughput", "RX Throughput", "kbps", 1), - build_sensor(client_opts, "#{@radio_tx_capacity_bps}.#{index}", "tx_capacity", "TX Capacity", "bps", 1), - build_sensor(client_opts, "#{@radio_rx_capacity_bps}.#{index}", "rx_capacity", "RX Capacity", "bps", 1), - build_sensor(client_opts, "#{@radio_tx_signal}.#{index}", "tx_signal", "TX Signal", "dBm", 1), - build_sensor(client_opts, "#{@radio_rx_signal}.#{index}", "rx_signal", "RX Signal", "dBm", 1), - build_sensor(client_opts, "#{@radio_remote_tx_power}.#{index}", "remote_tx_power", "Remote TX Power", "dBm", 1), - build_sensor(client_opts, "#{@radio_remote_rx_power}.#{index}", "remote_rx_power", "Remote RX Power", "dBm", 1), - build_sensor(client_opts, "#{@radio_tx_power}.#{index}", "tx_power", "TX Power", "dBm", 1) - ], - &is_nil/1 - ) - - # Frequency sensors - - # Throughput sensors (kbps) - - # Capacity sensors (bps) - - # Signal strength sensors - - # Remote power sensors - - # TX Power from config - end - - defp build_sensor(_client_opts, oid, type, descr, unit, divisor) do - %{ - sensor_type: type, - sensor_index: oid, - sensor_oid: oid, - sensor_descr: descr, - sensor_unit: unit, - sensor_divisor: divisor - } - end - - defp extract_radio_index(oid) do - # OID format: 1.3.6.1.4.1.41112.1.3.1.1.X.INDEX - parts = String.split(oid, ".") - List.last(parts) - end - - defp extract_airos_version(sys_descr) do - # Extract version from something like "Linux 2.6.33 #1 Wed Mar 18 11:38:22 UTC 2020 armv5tejl" - case Regex.run(~r/Linux (\d+\.\d+\.\d+)/, sys_descr) do - [_, version] -> version - _ -> nil - end - end - - defp detect_model(sys_descr) do - cond do - String.contains?(sys_descr, "AirFiber") -> "AirFiber" - String.contains?(sys_descr, "airMAX") -> "airMAX" - String.contains?(sys_descr, "airOS") -> "airOS Device" - true -> "Ubiquiti Device" - end - end -end diff --git a/priv/profiles/os_detection/3com.yaml b/priv/profiles/os_detection/3com.yaml new file mode 100644 index 00000000..b4ae5497 --- /dev/null +++ b/priv/profiles/os_detection/3com.yaml @@ -0,0 +1,10 @@ +os: 3com +text: 3Com +over: + - { graph: device_bits, text: Traffic } +type: network +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.43.1. + - .1.3.6.1.4.1.43.10. diff --git a/priv/profiles/os_detection/aaron.yaml b/priv/profiles/os_detection/aaron.yaml new file mode 100644 index 00000000..88e5a1df --- /dev/null +++ b/priv/profiles/os_detection/aaron.yaml @@ -0,0 +1,11 @@ +os: aaron +text: 'Aaron FM Rebroadcaster' +type: appliance +icon: inovonics +group: inovonics +over: + - { graph: device_dbm, text: RSSI } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.42111.640 + - .1.3.6.1.4.1.42111.650 diff --git a/priv/profiles/os_detection/abbups.yaml b/priv/profiles/os_detection/abbups.yaml new file mode 100644 index 00000000..b493cc94 --- /dev/null +++ b/priv/profiles/os_detection/abbups.yaml @@ -0,0 +1,19 @@ +os: abbups +text: ABB UPS +group: ups +type: power +icon: abb +mib_dir: abb +rfc1628_compat: true +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } + - { graph: device_frequency, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.53973.1.1.1.1.1.1.0 + op: contains + value: ABB diff --git a/priv/profiles/os_detection/acano.yaml b/priv/profiles/os_detection/acano.yaml new file mode 100644 index 00000000..a7045134 --- /dev/null +++ b/priv/profiles/os_detection/acano.yaml @@ -0,0 +1,26 @@ +os: acano +group: cisco +text: 'Acano OS' +type: collaboration +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +icon: cisco +discovery: + - { sysObjectID: .1.3.6.1.4.1.8072.3.2.10, sysDescr: Acano } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true diff --git a/priv/profiles/os_detection/acos.yaml b/priv/profiles/os_detection/acos.yaml new file mode 100644 index 00000000..0c2363e9 --- /dev/null +++ b/priv/profiles/os_detection/acos.yaml @@ -0,0 +1,13 @@ +os: acos +text: 'A10 Networks' +type: network +icon: a10 +group: a10 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.22610.1.3 diff --git a/priv/profiles/os_detection/acs.yaml b/priv/profiles/os_detection/acs.yaml new file mode 100644 index 00000000..2c12ac67 --- /dev/null +++ b/priv/profiles/os_detection/acs.yaml @@ -0,0 +1,35 @@ +os: acs +group: cisco +text: 'Cisco ACS' +ifname: true +type: server +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.1117 + - + sysDescr: + - 'Cisco Secure Access Control System' diff --git a/priv/profiles/os_detection/acsw.yaml b/priv/profiles/os_detection/acsw.yaml new file mode 100644 index 00000000..ef6c43ac --- /dev/null +++ b/priv/profiles/os_detection/acsw.yaml @@ -0,0 +1,35 @@ +os: acsw +group: cisco +text: 'Cisco ACE' +ifname: true +type: loadbalancer +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.9.1.1291 + - + sysDescr: + - 'Application Control Engine' + - 'Cisco Application Control Software' diff --git a/priv/profiles/os_detection/adtran-aos.yaml b/priv/profiles/os_detection/adtran-aos.yaml new file mode 100644 index 00000000..436a5cda --- /dev/null +++ b/priv/profiles/os_detection/adtran-aos.yaml @@ -0,0 +1,16 @@ +os: adtran-aos +text: 'Adtran AOS' +type: network +icon: adtran +mib_dir: adtran +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.664 + - + sysDescr: 'NetVanta' +good_if: + - EtsecBasedVirtualEthernet1 diff --git a/priv/profiles/os_detection/adva-alm.yaml b/priv/profiles/os_detection/adva-alm.yaml new file mode 100644 index 00000000..af329f18 --- /dev/null +++ b/priv/profiles/os_detection/adva-alm.yaml @@ -0,0 +1,11 @@ +os: adva-alm +text: 'Adtran ALM' +type: network +icon: adtran +mib_dir: adva +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2544.1.14 diff --git a/priv/profiles/os_detection/adva-aos.yaml b/priv/profiles/os_detection/adva-aos.yaml new file mode 100644 index 00000000..fd3e29e3 --- /dev/null +++ b/priv/profiles/os_detection/adva-aos.yaml @@ -0,0 +1,12 @@ +os: adva-aos +text: 'ADVA AOS' +type: network +icon: adva +group: ADVA +over: + - { graph: device_dbm, text: dbm } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2544.1.20.2. +mib_dir: adva diff --git a/priv/profiles/os_detection/adva-fsp150cp.yaml b/priv/profiles/os_detection/adva-fsp150cp.yaml new file mode 100644 index 00000000..07b01260 --- /dev/null +++ b/priv/profiles/os_detection/adva-fsp150cp.yaml @@ -0,0 +1,19 @@ +os: adva-fsp150cp +text: 'ADVA FSP150CP' +type: network +icon: adva +group: ADVA +ifname: true +mib_dir: adva +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2544.1.10.1.1 +discovery_modules: + cisco-vrf-lite: false + storage: false + hr-device: false + arp-table: false + ucd-diskio: false diff --git a/priv/profiles/os_detection/adva-osa.yaml b/priv/profiles/os_detection/adva-osa.yaml new file mode 100644 index 00000000..20095695 --- /dev/null +++ b/priv/profiles/os_detection/adva-osa.yaml @@ -0,0 +1,14 @@ +os: adva-osa +text: 'ADVA OSA' +type: timing +icon: adva +group: ADVA +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5551.3. +mib_dir: adva diff --git a/priv/profiles/os_detection/adva_fsp150.yaml b/priv/profiles/os_detection/adva_fsp150.yaml new file mode 100644 index 00000000..aba7be3b --- /dev/null +++ b/priv/profiles/os_detection/adva_fsp150.yaml @@ -0,0 +1,15 @@ +os: adva_fsp150 +text: 'ADVA FSP150CC' +type: network +icon: adva +group: ADVA +ifname: true +mib_dir: adva +over: + - { graph: device_bits, text: Traffic } + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2544.1.12.1.1. + sysDescr_except: ['FSP150CM-HUB'] #Exclude 150CM nemihubshelf (different OS, and failing to respond to most OID/crashing) diff --git a/priv/profiles/os_detection/adva_fsp3kr7.yaml b/priv/profiles/os_detection/adva_fsp3kr7.yaml new file mode 100644 index 00000000..c54abd00 --- /dev/null +++ b/priv/profiles/os_detection/adva_fsp3kr7.yaml @@ -0,0 +1,13 @@ +os: adva_fsp3kr7 +text: 'ADVA FSP3000 R7' +type: network +icon: adva +group: ADVA +over: + - { graph: device_dbm, text: dbm } + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2544.1.11.1.1 +mib_dir: adva diff --git a/priv/profiles/os_detection/adva_xg300.yaml b/priv/profiles/os_detection/adva_xg300.yaml new file mode 100644 index 00000000..86a59a92 --- /dev/null +++ b/priv/profiles/os_detection/adva_xg300.yaml @@ -0,0 +1,15 @@ +os: adva_xg300 +text: 'ADVA OptiSwitch' +type: network +icon: adva +group: ADVA +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.629.22 +mib_dir: adva diff --git a/priv/profiles/os_detection/advantech.yaml b/priv/profiles/os_detection/advantech.yaml new file mode 100644 index 00000000..49737097 --- /dev/null +++ b/priv/profiles/os_detection/advantech.yaml @@ -0,0 +1,12 @@ +os: advantech +text: 'Advantech' +type: network +icon: advantech +group: advantech +mib_dir: advantech +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10297.202 diff --git a/priv/profiles/os_detection/aen.yaml b/priv/profiles/os_detection/aen.yaml new file mode 100644 index 00000000..5e6f258f --- /dev/null +++ b/priv/profiles/os_detection/aen.yaml @@ -0,0 +1,16 @@ +os: aen +text: 'Accedian AEN' +type: network +icon: accedian +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: accedian +discovery: + - + sysDescr_regex: + - '/^AMN-/' + - '/^AEN-/' + - '/^AMO-/' + diff --git a/priv/profiles/os_detection/airconsole.yaml b/priv/profiles/os_detection/airconsole.yaml new file mode 100644 index 00000000..d3b54c1a --- /dev/null +++ b/priv/profiles/os_detection/airconsole.yaml @@ -0,0 +1,9 @@ +os: airconsole +text: 'Airconsole Server' +type: network +icon: airconsole +group: airconsole +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.14358.1 diff --git a/priv/profiles/os_detection/airos-af-ltu.yaml b/priv/profiles/os_detection/airos-af-ltu.yaml new file mode 100644 index 00000000..a8f536ad --- /dev/null +++ b/priv/profiles/os_detection/airos-af-ltu.yaml @@ -0,0 +1,18 @@ +os: airos-af-ltu +text: 'Ubiquiti AirFiber LTU' +type: wireless +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Wireless Rate' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: Linux + snmpget: + oid: UBNT-AFLTU-MIB::afLTUFirmwareVersion.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/airos-af.yaml b/priv/profiles/os_detection/airos-af.yaml new file mode 100644 index 00000000..f33599a7 --- /dev/null +++ b/priv/profiles/os_detection/airos-af.yaml @@ -0,0 +1,18 @@ +os: airos-af +text: 'Ubiquiti AirFiber' +type: wireless +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Wireless Rate' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.10002.1 + sysDescr: Linux + snmpget: + oid: UBNT-AirFIBER-MIB::fwVersion.1 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/airos-af60.yaml b/priv/profiles/os_detection/airos-af60.yaml new file mode 100644 index 00000000..3093ea08 --- /dev/null +++ b/priv/profiles/os_detection/airos-af60.yaml @@ -0,0 +1,20 @@ +os: airos-af60 +text: 'Ubiquiti AirFiber 60' +type: wireless +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Wireless Rate' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10002.1 + - .1.3.6.1.4.1.41112 + sysDescr: Linux + snmpget: + oid: UI-AF60-MIB::af60FirmwareVersion.1 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/airos.yaml b/priv/profiles/os_detection/airos.yaml new file mode 100644 index 00000000..ae9abe50 --- /dev/null +++ b/priv/profiles/os_detection/airos.yaml @@ -0,0 +1,20 @@ +os: airos +text: 'Ubiquiti AirOS' +type: wireless +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_clients, text: 'Connected Clients' } + - { graph: device_wireless_ccq, text: 'Connection Quality' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10002.1 + - .1.3.6.1.4.1.41112.1.4 + sysDescr: Linux + snmpget: + oid: UI-AF60-MIB::af60Role.1 + op: '=' + value: false diff --git a/priv/profiles/os_detection/airport.yaml b/priv/profiles/os_detection/airport.yaml new file mode 100644 index 00000000..ae9d9847 --- /dev/null +++ b/priv/profiles/os_detection/airport.yaml @@ -0,0 +1,13 @@ +os: airport +type: wireless +text: 'Apple AirPort' +icon: apple +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_clients, text: Clients } +discovery: + - + sysDescr: + - Apple AirPort + - Apple Base Station + - Base Station V3.84 diff --git a/priv/profiles/os_detection/aix.yaml b/priv/profiles/os_detection/aix.yaml new file mode 100644 index 00000000..f57baf94 --- /dev/null +++ b/priv/profiles/os_detection/aix.yaml @@ -0,0 +1,27 @@ +os: aix +text: 'AIX' +type: server +icon: aix +group: unix +mib_dir: ibm +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + applications: false + bgp-peers: false + stp: false + wireless: false +processor_stacked: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.15 + - .1.3.6.1.4.1.2.3.1. +ignore_mount_type: + - procfs diff --git a/priv/profiles/os_detection/akcp.yaml b/priv/profiles/os_detection/akcp.yaml new file mode 100644 index 00000000..dd70d773 --- /dev/null +++ b/priv/profiles/os_detection/akcp.yaml @@ -0,0 +1,10 @@ +os: akcp +text: 'AKCP SensorProbe' +type: environment +mib_dir: akcp +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3854 diff --git a/priv/profiles/os_detection/alcoma-almp.yaml b/priv/profiles/os_detection/alcoma-almp.yaml new file mode 100644 index 00000000..af7987ef --- /dev/null +++ b/priv/profiles/os_detection/alcoma-almp.yaml @@ -0,0 +1,11 @@ +os: alcoma-almp +text: Alcoma +type: wireless +over: + - { graph: device_wireless_rssi, text: 'Wireless rssi' } + - { graph: device_wireless_snr, text: 'Wireles snr' } + - { graph: device_wireless_power, text: 'Wireless power' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.12140.2 +mib_dir: alcoma diff --git a/priv/profiles/os_detection/alfo80hd.yaml b/priv/profiles/os_detection/alfo80hd.yaml new file mode 100644 index 00000000..becc47ed --- /dev/null +++ b/priv/profiles/os_detection/alfo80hd.yaml @@ -0,0 +1,10 @@ +os: alfo80hd +text: 'SIAE Alfoplus 80HD' +type: wireless +icon: siae +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_rssi, text: RSSI } + - { graph: device_wireless_power, text: POWER } +discovery: + - { sysObjectID: .1.3.6.1.4.1.3373.1103, sysDescr: 'ALFOplus80HD - SIAE Microelettronica' } diff --git a/priv/profiles/os_detection/algcom-dc-ups.yaml b/priv/profiles/os_detection/algcom-dc-ups.yaml new file mode 100644 index 00000000..669d55a6 --- /dev/null +++ b/priv/profiles/os_detection/algcom-dc-ups.yaml @@ -0,0 +1,17 @@ +os: algcom-dc-ups +text: 'ALGCOM DC UPS' +type: power +icon: algcom + +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } + - { graph: device_voltage, text: Voltage } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.49136 + sysObjectID_except: + - .1.3.6.1.4.1.49136.100 +mib_dir: algcom diff --git a/priv/profiles/os_detection/algcom-sm.yaml b/priv/profiles/os_detection/algcom-sm.yaml new file mode 100644 index 00000000..2691a5a8 --- /dev/null +++ b/priv/profiles/os_detection/algcom-sm.yaml @@ -0,0 +1,13 @@ +os: algcom-sm +text: 'ALGCOM SM' +type: environment +icon: algcom +mib_dir: algcom +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } + - { graph: device_voltage, text: Voltage } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.49136.100 diff --git a/priv/profiles/os_detection/allied-tq.yaml b/priv/profiles/os_detection/allied-tq.yaml new file mode 100755 index 00000000..125465c1 --- /dev/null +++ b/priv/profiles/os_detection/allied-tq.yaml @@ -0,0 +1,13 @@ +os: allied-tq +text: 'Allied Telesis Wireless (TQ)' +type: wireless +icon: alliedtelesis +group: allied +ifname: true +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: .1.3.6.1.4.1.207.1.13. + sysDescr_except: 'AW+' +mib_dir: awplus diff --git a/priv/profiles/os_detection/allied.yaml b/priv/profiles/os_detection/allied.yaml new file mode 100644 index 00000000..2a0b10b6 --- /dev/null +++ b/priv/profiles/os_detection/allied.yaml @@ -0,0 +1,21 @@ +os: allied +text: Alliedware +type: network +icon: alliedtelesis +group: allied +ifname: true +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: .1.3.6.1.4.1.207. + sysObjectID_except: + - .1.3.6.1.4.1.207.1.4.125 #exclude the following ATI 8000S/8000GS which identify as "radlan" OS. + - .1.3.6.1.4.1.207.1.4.126 + - .1.3.6.1.4.1.207.1.4.127 + - .1.3.6.1.4.1.207.1.4.128 + - .1.3.6.1.4.1.207.1.4.143 + - .1.3.6.1.4.1.207.1.4.144 + - .1.3.6.1.4.1.207.1.4.145 + sysDescr_except: ['AW+', 'Software (AlliedWare Plus)'] +mib_dir: allied diff --git a/priv/profiles/os_detection/allworx_voip.yaml b/priv/profiles/os_detection/allworx_voip.yaml new file mode 100644 index 00000000..96fe0e78 --- /dev/null +++ b/priv/profiles/os_detection/allworx_voip.yaml @@ -0,0 +1,11 @@ +os: allworx_voip +text: 'Allworx VoIP' +type: appliance +icon: allworx +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.38516.2. diff --git a/priv/profiles/os_detection/aloha.yaml b/priv/profiles/os_detection/aloha.yaml new file mode 100644 index 00000000..9197f1ef --- /dev/null +++ b/priv/profiles/os_detection/aloha.yaml @@ -0,0 +1,15 @@ +os: aloha +text: HAProxy ALOHA +over: + - { graph: device_bits, text: Traffic } +type: loadbalancer +group: linux +mib_dir: haproxy +icon: haproxy +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: EXCELIANCE-MIB::alProductName + op: '=' + value: 'aloha' diff --git a/priv/profiles/os_detection/alpineoe-tdcmedfa.yaml b/priv/profiles/os_detection/alpineoe-tdcmedfa.yaml new file mode 100644 index 00000000..4c1c7be4 --- /dev/null +++ b/priv/profiles/os_detection/alpineoe-tdcmedfa.yaml @@ -0,0 +1,13 @@ +os: alpineoe-tdcmedfa +text: 'Alpine OptoElectronics TDCM-EDFA platform' +type: appliance +icon: alpineoe +mib_dir: alpineoe +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.52326 diff --git a/priv/profiles/os_detection/altalabs-ap.yaml b/priv/profiles/os_detection/altalabs-ap.yaml new file mode 100644 index 00000000..05f08f07 --- /dev/null +++ b/priv/profiles/os_detection/altalabs-ap.yaml @@ -0,0 +1,12 @@ +os: altalabs-ap +text: Alta Labs AP +icon: altalabs +type: wireless +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^Alta AP/' diff --git a/priv/profiles/os_detection/altalabs.yaml b/priv/profiles/os_detection/altalabs.yaml new file mode 100644 index 00000000..b1b8d718 --- /dev/null +++ b/priv/profiles/os_detection/altalabs.yaml @@ -0,0 +1,12 @@ +os: altalabs +text: Alta Labs +type: network +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^Alta Route/' + - '/^Alta S/' diff --git a/priv/profiles/os_detection/alteonos.yaml b/priv/profiles/os_detection/alteonos.yaml new file mode 100644 index 00000000..a2452a38 --- /dev/null +++ b/priv/profiles/os_detection/alteonos.yaml @@ -0,0 +1,14 @@ +os: alteonos +group: radware +text: AlteonOS +type: network +icon: radware +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1872.1.13.3.5 + - .1.3.6.1.4.1.1872.2. diff --git a/priv/profiles/os_detection/anue.yaml b/priv/profiles/os_detection/anue.yaml new file mode 100644 index 00000000..01d436a3 --- /dev/null +++ b/priv/profiles/os_detection/anue.yaml @@ -0,0 +1,13 @@ +os: anue +text: 'Anue' +type: network +icon: ixia +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: ixia +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.32620. diff --git a/priv/profiles/os_detection/anyos.yaml b/priv/profiles/os_detection/anyos.yaml new file mode 100644 index 00000000..8b37b7f1 --- /dev/null +++ b/priv/profiles/os_detection/anyos.yaml @@ -0,0 +1,18 @@ +os: anyos +text: AnyOS +type: network +group: zyxel +icon: zyxel +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4413 + sysDescr: + - 'AATO' + - 'AAJZ' +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/aos-emu2.yaml b/priv/profiles/os_detection/aos-emu2.yaml new file mode 100644 index 00000000..57c02695 --- /dev/null +++ b/priv/profiles/os_detection/aos-emu2.yaml @@ -0,0 +1,51 @@ +os: aos-emu2 +text: 'APC Environmental Monitoring Unit' +type: environment +icon: apc +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +mib_dir: apc +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.318.1.3.8.2 + - .1.3.6.1.4.1.318.1.3.8.3 +discovery_modules: + ports: false + ports-stack: false + entity-physical: false + processors: false + mempools: false + cisco-vrf-lite: false + storage: false + hr-device: false + discovery-protocols: false + bgp-peers: false + vlans: false + ucd-diskio: false + services: false + stp: false + ntp: false + wireless: false + fdb-table: false +poller_modules: + ipmi: false + entity-physical: false + processors: false + mempools: false + storage: false + netstats: false + hr-mib: false + ucd-mib: false + ipSystemStats: false + ports: false + bgp-peers: false + ospf: false + ucd-diskio: false + services: false + stp: false + ntp: false + wireless: false + fdb-table: false + applications: false diff --git a/priv/profiles/os_detection/aos.yaml b/priv/profiles/os_detection/aos.yaml new file mode 100644 index 00000000..bc4e3463 --- /dev/null +++ b/priv/profiles/os_detection/aos.yaml @@ -0,0 +1,16 @@ +os: aos +group: nokia +text: 'Alcatel-Lucent OS' +type: network +ifXmcbc: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_temperature, text: 'Temperature' } +icon: alcatellucent +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6486.800.1.1.2.2.4. #OmniStack LS +mib_dir: radlan diff --git a/priv/profiles/os_detection/aos6.yaml b/priv/profiles/os_detection/aos6.yaml new file mode 100755 index 00000000..a4939857 --- /dev/null +++ b/priv/profiles/os_detection/aos6.yaml @@ -0,0 +1,16 @@ +os: aos6 +group: nokia +text: 'Alcatel-Lucent OS' +type: network +ifXmcbc: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_temperature, text: 'Temperature' } +icon: alcatellucent +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6486.800.1.1.2.1. #aos6 +mib_dir: nokia diff --git a/priv/profiles/os_detection/aos7.yaml b/priv/profiles/os_detection/aos7.yaml new file mode 100644 index 00000000..16aef472 --- /dev/null +++ b/priv/profiles/os_detection/aos7.yaml @@ -0,0 +1,20 @@ +os: aos7 +group: nokia +text: 'Alcatel-Lucent OS' +type: network +ifXmcbc: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_temperature, text: 'Temperature' } +icon: alcatellucent +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6486.801. #aos7 +mib_dir: nokia/aos7 +discovery_modules: + bgp-peers: true +poller_modules: + bgp-peers: true diff --git a/priv/profiles/os_detection/apc-cpdu.yaml b/priv/profiles/os_detection/apc-cpdu.yaml new file mode 100644 index 00000000..16b77a5c --- /dev/null +++ b/priv/profiles/os_detection/apc-cpdu.yaml @@ -0,0 +1,12 @@ +os: apc-cpdu +text: 'APC cPDU' +type: power +icon: apc +mib_dir: apc-cpdu +over: + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.318.1.1.32.1 + diff --git a/priv/profiles/os_detection/apc-epdu.yaml b/priv/profiles/os_detection/apc-epdu.yaml new file mode 100644 index 00000000..84e5057c --- /dev/null +++ b/priv/profiles/os_detection/apc-epdu.yaml @@ -0,0 +1,18 @@ +os: apc-epdu +text: 'APC ePDU' +type: power +icon: apc +mib_dir: apc +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.318.1.3.4.9 + - sysObjectID: + - .1.3.6.1.4.1.0 + snmpget: + oid: .1.3.6.1.6.3.10.2.1.1.0 + op: '=' + value: APC diff --git a/priv/profiles/os_detection/apc-mgeups.yaml b/priv/profiles/os_detection/apc-mgeups.yaml new file mode 100644 index 00000000..0d486bf2 --- /dev/null +++ b/priv/profiles/os_detection/apc-mgeups.yaml @@ -0,0 +1,20 @@ +os: apc-mgeups +text: 'APC MGE UPS' +group: ups +type: power +icon: apc +rfc1628_compat: true +mib_dir: eaton +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.705.1 + sysDescr_regex: + - '/^Galaxy/' + - '/^GALAXY/' + - '/^MGE Galaxy/' + # Upsilon too (no data) diff --git a/priv/profiles/os_detection/apc-netbotz.yaml b/priv/profiles/os_detection/apc-netbotz.yaml new file mode 100644 index 00000000..8f58bf0d --- /dev/null +++ b/priv/profiles/os_detection/apc-netbotz.yaml @@ -0,0 +1,12 @@ +os: apc-netbotz +text: 'NetBotz Environment Sensor' +type: environment +icon: apc +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +mib_dir: netbotz +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.52674.500 diff --git a/priv/profiles/os_detection/apc.yaml b/priv/profiles/os_detection/apc.yaml new file mode 100644 index 00000000..9e760117 --- /dev/null +++ b/priv/profiles/os_detection/apc.yaml @@ -0,0 +1,25 @@ +os: apc +text: 'APC Management Module' +type: power +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_runtime, text: Runtime } +discovery: + - + sysDescr: + - APC Web/SNMP Management Card + - APC Switched Rack PDU + - APC MasterSwitch PDU + - APC Metered Rack PDU + - APC Embedded PowerNet + - APC Environmental Manager + - APC InRow DX + - APC Uniflair SP + - APC InfraStruXure ATS + - APC SNMP Agent + - + sysObjectID: + - .1.3.6.1.4.1.318.1 + sysObjectID_except: + - .1.3.6.1.4.1.318.1.3.4.9 diff --git a/priv/profiles/os_detection/apex-lynx.yaml b/priv/profiles/os_detection/apex-lynx.yaml new file mode 100644 index 00000000..788ba026 --- /dev/null +++ b/priv/profiles/os_detection/apex-lynx.yaml @@ -0,0 +1,10 @@ +os: apex-lynx +text: 'Apex Lynx' +type: wireless +icon: trango +mib_dir: trango +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: '/^Apex Lynx/' diff --git a/priv/profiles/os_detection/apex-plus.yaml b/priv/profiles/os_detection/apex-plus.yaml new file mode 100644 index 00000000..fb4c4151 --- /dev/null +++ b/priv/profiles/os_detection/apex-plus.yaml @@ -0,0 +1,10 @@ +os: apex-plus +text: 'Apex Plus' +type: wireless +icon: trango +mib_dir: trango +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: '/^ApexPlus.*/' diff --git a/priv/profiles/os_detection/apic.yaml b/priv/profiles/os_detection/apic.yaml new file mode 100644 index 00000000..c9fcc4cc --- /dev/null +++ b/priv/profiles/os_detection/apic.yaml @@ -0,0 +1,29 @@ +os: apic +group: cisco +text: 'Cisco APIC' +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_temperature, text: Temperature } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.2238 diff --git a/priv/profiles/os_detection/applicationsware.yaml b/priv/profiles/os_detection/applicationsware.yaml new file mode 100644 index 00000000..968ca809 --- /dev/null +++ b/priv/profiles/os_detection/applicationsware.yaml @@ -0,0 +1,10 @@ +os: applicationsware +text: 'Vanguard ApplicationsWare' +type: network +icon: vanguard +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.449.2.1. diff --git a/priv/profiles/os_detection/aprisa.yaml b/priv/profiles/os_detection/aprisa.yaml new file mode 100644 index 00000000..d785224c --- /dev/null +++ b/priv/profiles/os_detection/aprisa.yaml @@ -0,0 +1,14 @@ +os: aprisa +text: 'Aprisa' +type: wireless +icon: 4rf +group: 4rf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.14817.7.3 +mib_dir: 4rf + diff --git a/priv/profiles/os_detection/apsoluteos.yaml b/priv/profiles/os_detection/apsoluteos.yaml new file mode 100644 index 00000000..8fb0ab8e --- /dev/null +++ b/priv/profiles/os_detection/apsoluteos.yaml @@ -0,0 +1,14 @@ +os: apsoluteos +text: ApsoluteOS +type: network +icon: radware +group: radware +mib_dir: radware +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.89.1.1.62 diff --git a/priv/profiles/os_detection/arbos.yaml b/priv/profiles/os_detection/arbos.yaml new file mode 100644 index 00000000..694dcd25 --- /dev/null +++ b/priv/profiles/os_detection/arbos.yaml @@ -0,0 +1,21 @@ +os: arbos +text: ArbOS +type: network +icon: arbor +group: arbor +ifXmcbc: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9694.1 + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr: + - arbux +mib_dir: arbornet diff --git a/priv/profiles/os_detection/ardmore-encoder.yaml b/priv/profiles/os_detection/ardmore-encoder.yaml new file mode 100644 index 00000000..58afee6d --- /dev/null +++ b/priv/profiles/os_detection/ardmore-encoder.yaml @@ -0,0 +1,10 @@ +os: ardmore-encoder +text: 'AvediaStream Encoder' +type: appliance +icon: exterity +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr_regex: + - '/Ardmore-Encoder_VX/' diff --git a/priv/profiles/os_detection/areca.yaml b/priv/profiles/os_detection/areca.yaml new file mode 100644 index 00000000..99fdb80b --- /dev/null +++ b/priv/profiles/os_detection/areca.yaml @@ -0,0 +1,11 @@ +os: areca +text: 'Areca RAID Subsystem' +type: appliance +over: + - { graph: '', text: '' } +discovery: + - + sysDescr: + - Raid Subsystem V + sysObjectID_except: + - .1.3.6.1.4.1.14752.1.3 #Proware/EuroStor diff --git a/priv/profiles/os_detection/arista-mos.yaml b/priv/profiles/os_detection/arista-mos.yaml new file mode 100644 index 00000000..4284f2a1 --- /dev/null +++ b/priv/profiles/os_detection/arista-mos.yaml @@ -0,0 +1,22 @@ +os: arista-mos +text: 'Arista MOS' +type: network +icon: arista +group: arista +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.43191.1.2.5 + - .1.3.6.1.4.1.43191.1.2.7 + - .1.3.6.1.4.1.43191.1.2.8 + - .1.3.6.1.4.1.43191.1.6.6 + - .1.3.6.1.4.1.43191.1.6.7 + - .1.3.6.1.4.1.43191.1.6.9 + - .1.3.6.1.4.1.43191.1.6.10 + - .1.3.6.1.4.1.43191.1.7.5 + - .1.3.6.1.4.1.43191.1.7.6 + - .1.3.6.1.4.1.43191.1.7.7 diff --git a/priv/profiles/os_detection/arista_eos.yaml b/priv/profiles/os_detection/arista_eos.yaml new file mode 100644 index 00000000..5b997b2b --- /dev/null +++ b/priv/profiles/os_detection/arista_eos.yaml @@ -0,0 +1,23 @@ +os: arista_eos +text: 'Arista EOS' +type: network +icon: arista +group: arista +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.30065.1 +poller_modules: + wireless: false + ipmi: false + applications: false + services: false + ntp: false +discovery_modules: + cisco-vrf-lite: false + services: false + ntp: false + wireless: false diff --git a/priv/profiles/os_detection/arrayos.yaml b/priv/profiles/os_detection/arrayos.yaml new file mode 100644 index 00000000..502d58f6 --- /dev/null +++ b/priv/profiles/os_detection/arrayos.yaml @@ -0,0 +1,9 @@ +os: arrayos +text: 'Array Networks' +type: loadbalancer +icon: arraynetworks +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7564 +mib_dir: arraynetworks diff --git a/priv/profiles/os_detection/arris-apex.yaml b/priv/profiles/os_detection/arris-apex.yaml new file mode 100644 index 00000000..b2335568 --- /dev/null +++ b/priv/profiles/os_detection/arris-apex.yaml @@ -0,0 +1,11 @@ +os: arris-apex +text: 'Arris Apex' +type: network +icon: arris +mib_dir: arris +over: + - { graph: '', text: '' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1166.1.31 diff --git a/priv/profiles/os_detection/arris-c3.yaml b/priv/profiles/os_detection/arris-c3.yaml new file mode 100644 index 00000000..7c4859d5 --- /dev/null +++ b/priv/profiles/os_detection/arris-c3.yaml @@ -0,0 +1,11 @@ +os: arris-c3 +text: 'Arris CMTS' +type: network +icon: arris +mib_dir: arris +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4115.1.4.3 diff --git a/priv/profiles/os_detection/arris-c4.yaml b/priv/profiles/os_detection/arris-c4.yaml new file mode 100644 index 00000000..d28afb0c --- /dev/null +++ b/priv/profiles/os_detection/arris-c4.yaml @@ -0,0 +1,13 @@ +os: arris-c4 +text: 'Arris CMTS' +type: network +icon: arris +mib_dir: arris +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4998.2.1 + - .1.3.6.1.4.1.4998.2.2 + - .1.3.6.1.4.1.4115.1.9.1 diff --git a/priv/profiles/os_detection/arris-cm.yaml b/priv/profiles/os_detection/arris-cm.yaml new file mode 100644 index 00000000..9c294d25 --- /dev/null +++ b/priv/profiles/os_detection/arris-cm.yaml @@ -0,0 +1,11 @@ +os: arris-cm +text: 'ARRIS DOCSIS' +type: network +icon: arris +mib_dir: arris +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4115 + sysDescr: + - ARRIS DOCSIS diff --git a/priv/profiles/os_detection/arris-d5.yaml b/priv/profiles/os_detection/arris-d5.yaml new file mode 100644 index 00000000..4941ece0 --- /dev/null +++ b/priv/profiles/os_detection/arris-d5.yaml @@ -0,0 +1,12 @@ +os: arris-d5 +text: 'Arris D5 Universal EdgeQAM' +type: network +icon: arris +group: arris +mib_dir: arris/d5 +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4115.1.8 diff --git a/priv/profiles/os_detection/arris-dsr4410md.yaml b/priv/profiles/os_detection/arris-dsr4410md.yaml new file mode 100644 index 00000000..f410d300 --- /dev/null +++ b/priv/profiles/os_detection/arris-dsr4410md.yaml @@ -0,0 +1,30 @@ +os: arris-dsr4410md +text: 'Arris Satellite Receiver' +type: network +icon: arris +mib_dir: arris +over: + - { graph: device_wireless_rssi, text: Sat Signal Level } + - { graph: device_wireless_quality, text: Sat Signal Quality } +discovery: + - + sysObjectID: .1.3.6.1.4.1.1166.1.621 +discovery_modules: + ports: false + mempools: false + processors: false + fdb-table: false + stp: false + ntp: false + bgp-peers: false + arp-table: false + vlans: false + ucd-diskio: false + cisco-vrf-lite: false + entity-physical: false + ports-stack: false + ipv6-addresses: false + services: false + discovery-protocols: false + hr-device: false + storage: false diff --git a/priv/profiles/os_detection/aruba-instant.yaml b/priv/profiles/os_detection/aruba-instant.yaml new file mode 100644 index 00000000..b9ef1c62 --- /dev/null +++ b/priv/profiles/os_detection/aruba-instant.yaml @@ -0,0 +1,15 @@ +os: aruba-instant +text: 'Aruba Instant' +type: wireless +icon: aruba +mib_dir: arubaos +over: + - { graph: device_wireless_ap-count, text: 'AP Count' } + - { graph: device_wireless_clients, text: 'Client Count' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.14823.1.2. #Aruba apProducts (Aruba Instant) + sysDescr: + - 'ArubaOS' + - 'AOS-10' + - 'AOS-8' diff --git a/priv/profiles/os_detection/arubaos-cx.yaml b/priv/profiles/os_detection/arubaos-cx.yaml new file mode 100644 index 00000000..6009f931 --- /dev/null +++ b/priv/profiles/os_detection/arubaos-cx.yaml @@ -0,0 +1,13 @@ +os: arubaos-cx +text: 'ArubaOS-CX' +type: network +mib_dir: arubaos-cx +icon: aruba +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.47196.4.1.1.1 #ArubaOS-CX diff --git a/priv/profiles/os_detection/arubaos.yaml b/priv/profiles/os_detection/arubaos.yaml new file mode 100644 index 00000000..3d7bc72f --- /dev/null +++ b/priv/profiles/os_detection/arubaos.yaml @@ -0,0 +1,24 @@ +os: arubaos +text: ArubaOS +type: wireless +icon: aruba +over: + - { graph: device_wireless_ap-count, text: 'AP Count' } + - { graph: device_wireless_clients, text: 'Client Count' } + - { graph: device_arubacontroller_numaps, text: 'Number of APs (Legacy)' } + - { graph: device_arubacontroller_numclients, text: 'Number of Clients (Legacy)' } +poller_modules: + aruba-controller: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.14823. #ArubaOS + - .1.3.6.1.4.1.6486.800.1.1.2.2.2. #AOS-W + sysObjectID_except: + - .1.3.6.1.4.1.14823.1.2 #Aruba apProducts (Aruba Instant) + - .1.3.6.1.4.1.14823.1.6 #ClearPass + - + sysDescr: + - ArubaOS + sysObjectID_except: + - .1.3.6.1.4.1.14823.1.2 #Aruba apProducts (Aruba Instant) diff --git a/priv/profiles/os_detection/asa.yaml b/priv/profiles/os_detection/asa.yaml new file mode 100644 index 00000000..aef1fa02 --- /dev/null +++ b/priv/profiles/os_detection/asa.yaml @@ -0,0 +1,35 @@ +os: asa +group: cisco +text: 'Cisco ASA' +ifname: true +type: firewall +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +poller_modules: + applications: false + bgp-peers: false + cipsec-tunnels: true + cisco-ipsec-flow-monitor: true + cisco-remote-access-monitor: true + hr-mib: false + ipSystemStats: false + ipmi: false + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + ntp: false + stp: false + ucd-diskio: false + vlans: false +discovery: + - + sysDescr_regex: + - '/^Cisco (Adaptive|Industrial) Security Appliance/' diff --git a/priv/profiles/os_detection/ascom.yaml b/priv/profiles/os_detection/ascom.yaml new file mode 100644 index 00000000..bbe5c218 --- /dev/null +++ b/priv/profiles/os_detection/ascom.yaml @@ -0,0 +1,29 @@ +os: ascom +text: 'Ascom' +type: network +icon: ascom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: ascom +poller_modules: + storage: false + applications: false + bgp-peers: false + ipmi: false + ospf: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + fdb-table: false + storage: false + bgp-peers: false + ntp: false + stp: false + ucd-diskio: false + vlans: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.27614 diff --git a/priv/profiles/os_detection/asuswrt-merlin.yaml b/priv/profiles/os_detection/asuswrt-merlin.yaml new file mode 100644 index 00000000..7627ada3 --- /dev/null +++ b/priv/profiles/os_detection/asuswrt-merlin.yaml @@ -0,0 +1,15 @@ +os: asuswrt-merlin +text: 'AsusWRT Merlin' +type: network +icon: asuswrt-merlin +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.2021.7890.1.101.1 + op: starts + value: ASUSWRT-Merlin diff --git a/priv/profiles/os_detection/asyncos.yaml b/priv/profiles/os_detection/asyncos.yaml new file mode 100644 index 00000000..ad546157 --- /dev/null +++ b/priv/profiles/os_detection/asyncos.yaml @@ -0,0 +1,26 @@ +os: asyncos +text: 'Cisco AsyncOS' +type: proxy +icon: cisco +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_asyncos_conns, text: 'Current Connections' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.15497.1 +mib_dir: cisco +poller_modules: + ipmi: false + bgp-peers: false + ospf: false + stp: false + ntp: false +discovery_modules: + ports-stack: false + cisco-vrf-lite: false + bgp-peers: false + stp: false + ntp: false diff --git a/priv/profiles/os_detection/atenpdu.yaml b/priv/profiles/os_detection/atenpdu.yaml new file mode 100755 index 00000000..032f64e6 --- /dev/null +++ b/priv/profiles/os_detection/atenpdu.yaml @@ -0,0 +1,15 @@ +os: atenpdu +text: Aten PDU +type: power +icon: aten +mib_dir: aten +snmp_bulk: false +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.21317. + - sysDescr: + - 'Aten' diff --git a/priv/profiles/os_detection/ats.yaml b/priv/profiles/os_detection/ats.yaml new file mode 100755 index 00000000..6e08fdb6 --- /dev/null +++ b/priv/profiles/os_detection/ats.yaml @@ -0,0 +1,14 @@ +os: ats +text: Automatic Transfer Switch +type: power +icon: ats +mib_dir: ats +snmp_bulk: false +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.37662.1.2.2.1 diff --git a/priv/profiles/os_detection/audiocodes.yaml b/priv/profiles/os_detection/audiocodes.yaml new file mode 100644 index 00000000..bde2afb3 --- /dev/null +++ b/priv/profiles/os_detection/audiocodes.yaml @@ -0,0 +1,12 @@ +os: audiocodes +group: audiocodes +text: 'Audiocodes' +type: network +icon: audiocodes +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: audiocodes +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5003.8.1.1 diff --git a/priv/profiles/os_detection/avaya-ipo.yaml b/priv/profiles/os_detection/avaya-ipo.yaml new file mode 100644 index 00000000..8bb3d1fd --- /dev/null +++ b/priv/profiles/os_detection/avaya-ipo.yaml @@ -0,0 +1,9 @@ +os: avaya-ipo +text: 'IP Office Firmware' +type: network +icon: avaya +mib_dir: nortel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6889. diff --git a/priv/profiles/os_detection/aviat-wtm.yaml b/priv/profiles/os_detection/aviat-wtm.yaml new file mode 100644 index 00000000..10a82cc2 --- /dev/null +++ b/priv/profiles/os_detection/aviat-wtm.yaml @@ -0,0 +1,41 @@ +os: aviat-wtm +text: 'Aviat WTM' +type: wireless +icon: aviat +over: + - { graph: device_bits, text: 'Traffic' } + - { graph: device_wireless_rssi, text: 'RSSI' } + - { graph: device_wireless_power, text: 'Power' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2509.11.1.1.7 + - .1.3.6.1.4.1.2509.11.1.1.8 + - .1.3.6.1.4.1.2509.11.1.1.9 + - .1.3.6.1.4.1.2509.11.1.1.10 + - .1.3.6.1.4.1.2509.11.1.1.12 + - .1.3.6.1.4.1.2509.11.1.1.13 + - .1.3.6.1.4.1.2509.11.1.1.14 + - .1.3.6.1.4.1.2509.11.1.1.15 +discovery_modules: + ucd-dsktable: false + ucd-diskio: false + arp-table: false + fdb-table: false + vlans: false + stp: false + processors: false + mempools: false + storage: false + ipv4-addresses: false + ipv6-addresses: false + ports-stack: false + hr-device: false + bgp-peers: false +poller_modules: + netstats: false + route: false + hr-mib: false + ucd-mib: false + ospf: false + ipSystemStats: false diff --git a/priv/profiles/os_detection/avocent-mp.yaml b/priv/profiles/os_detection/avocent-mp.yaml new file mode 100644 index 00000000..342e0a94 --- /dev/null +++ b/priv/profiles/os_detection/avocent-mp.yaml @@ -0,0 +1,10 @@ +os: avocent-mp +text: Vertiv Avocent MergePoint Unity +type: appliance +icon: vertiv +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10418.18.1 diff --git a/priv/profiles/os_detection/avocent.yaml b/priv/profiles/os_detection/avocent.yaml new file mode 100644 index 00000000..5f928528 --- /dev/null +++ b/priv/profiles/os_detection/avocent.yaml @@ -0,0 +1,13 @@ +os: avocent +text: Avocent +type: management +icon: avocent +rfc1628_compat: true +discovery: + - + sysDescr_regex: + - '/^Avocent/' + - '/^AlterPath/' + - + sysObjectID: + - .1.3.6.1.4.1.10418.16 diff --git a/priv/profiles/os_detection/avr-hd.yaml b/priv/profiles/os_detection/avr-hd.yaml new file mode 100644 index 00000000..5dc29962 --- /dev/null +++ b/priv/profiles/os_detection/avr-hd.yaml @@ -0,0 +1,10 @@ +os: avr-hd +text: 'AvediaPlayer Receivers' +type: appliance +icon: exterity +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28194. diff --git a/priv/profiles/os_detection/avtech.yaml b/priv/profiles/os_detection/avtech.yaml new file mode 100644 index 00000000..86c92b3f --- /dev/null +++ b/priv/profiles/os_detection/avtech.yaml @@ -0,0 +1,11 @@ +os: avtech +text: 'Avtech Environment Sensor' +type: environment +icon: avtech +over: + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.20916.1. + - .1.3.6.1.4.1.20916 # RoomAlert 32S diff --git a/priv/profiles/os_detection/awplus.yaml b/priv/profiles/os_detection/awplus.yaml new file mode 100644 index 00000000..7436c18a --- /dev/null +++ b/priv/profiles/os_detection/awplus.yaml @@ -0,0 +1,13 @@ +os: awplus +text: 'Alliedware Plus' +type: network +icon: alliedtelesis +group: alliedtelesis +ifname: true +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: .1.3.6.1.4.1.207. + sysDescr: ['AW+', 'Software (AlliedWare Plus)'] +mib_dir: awplus diff --git a/priv/profiles/os_detection/axisaudio.yaml b/priv/profiles/os_detection/axisaudio.yaml new file mode 100644 index 00000000..607aaf4e --- /dev/null +++ b/priv/profiles/os_detection/axisaudio.yaml @@ -0,0 +1,7 @@ +os: axisaudio +text: 'AXIS Audio Appliances' +type: appliance +icon: axis +discovery: + - + sysDescr_regex: '/AXIS .* (Network IO Audio Module|Network Speaker)/' diff --git a/priv/profiles/os_detection/axiscam.yaml b/priv/profiles/os_detection/axiscam.yaml new file mode 100644 index 00000000..66938960 --- /dev/null +++ b/priv/profiles/os_detection/axiscam.yaml @@ -0,0 +1,12 @@ +os: axiscam +text: 'AXIS Network Camera' +type: appliance +icon: axis +mib_dir: axis +discovery: + - + sysDescr_regex: '/AXIS .* ((Network|Bullet|PTZ|Dome|Panoramic|Box) Camera|Security Radar|Video (Server|Decoder)|Network Video Encoder)/' +over: + - { graph: device_bits, text: Traffic } + - { graph: device_temperature, text: 'Device Temperature' } + - { graph: device_state, text: 'Device State' } diff --git a/priv/profiles/os_detection/axisdocserver.yaml b/priv/profiles/os_detection/axisdocserver.yaml new file mode 100644 index 00000000..f1965ea5 --- /dev/null +++ b/priv/profiles/os_detection/axisdocserver.yaml @@ -0,0 +1,7 @@ +os: axisdocserver +text: 'AXIS Network Document Server' +type: network +icon: axis +discovery: + - + sysDescr_regex: '/^AXIS .* Network Document Server/' diff --git a/priv/profiles/os_detection/axos.yaml b/priv/profiles/os_detection/axos.yaml new file mode 100644 index 00000000..3f185193 --- /dev/null +++ b/priv/profiles/os_detection/axos.yaml @@ -0,0 +1,13 @@ +os: axos +text: Calix AXOS +type: network +ifname: true +empty_ifdescr: true +mib_dir: calix +icon: calix +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6321.1.2.4 diff --git a/priv/profiles/os_detection/baicells-od04.yaml b/priv/profiles/os_detection/baicells-od04.yaml new file mode 100644 index 00000000..c1c40a09 --- /dev/null +++ b/priv/profiles/os_detection/baicells-od04.yaml @@ -0,0 +1,12 @@ +os: baicells-od04 +text: 'Baicells CPE' +type: wireless +icon: baicells +mib_dir: baicells/cpe +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysDescr: + - 'BaiCPE' diff --git a/priv/profiles/os_detection/barracudaloadbalancer.yaml b/priv/profiles/os_detection/barracudaloadbalancer.yaml new file mode 100644 index 00000000..fe3e9767 --- /dev/null +++ b/priv/profiles/os_detection/barracudaloadbalancer.yaml @@ -0,0 +1,9 @@ +os: barracudaloadbalancer +text: 'Barracuda Load Balancer' +type: loadbalancer +icon: barracuda +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr: 'Barracuda Load Balancer' diff --git a/priv/profiles/os_detection/barracudangfirewall.yaml b/priv/profiles/os_detection/barracudangfirewall.yaml new file mode 100644 index 00000000..505dfd6a --- /dev/null +++ b/priv/profiles/os_detection/barracudangfirewall.yaml @@ -0,0 +1,17 @@ +os: barracudangfirewall +text: 'Barracuda NG Firewall' +type: firewall +icon: barracuda +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10704.1 + - + sysDescr: + - Barracuda Firewall + - Barracuda NG Firewall +mib_dir: barracuda diff --git a/priv/profiles/os_detection/barracudaspamfirewall.yaml b/priv/profiles/os_detection/barracudaspamfirewall.yaml new file mode 100644 index 00000000..13f1efa1 --- /dev/null +++ b/priv/profiles/os_detection/barracudaspamfirewall.yaml @@ -0,0 +1,11 @@ +os: barracudaspamfirewall +text: 'Barracuda Email Security Gateway' +type: firewall +icon: barracuda +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr: + - Barracuda Spam Firewall + - Barracuda Email Security Gateway diff --git a/priv/profiles/os_detection/barracudawafirewall.yaml b/priv/profiles/os_detection/barracudawafirewall.yaml new file mode 100644 index 00000000..b80e128b --- /dev/null +++ b/priv/profiles/os_detection/barracudawafirewall.yaml @@ -0,0 +1,33 @@ +os: barracudawafirewall +text: 'Barracuda Web Application Firewall' +type: firewall +icon: barracuda +mib_dir: barracuda +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +poller_modules: + bgp-peers: false + hr-mib: false + ntp: false + ospf: false + storage: false + stp: false + ucd-diskio: false + wireless: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + discovery-protocols: false + entity-physical: false + fdb-table: false + hr-device: false + ntp: false + ports-stack: false + storage: false + stp: false + ucd-diskio: false + wireless: false +discovery: + - + sysDescr: 'Barracuda Web Application Firewall' diff --git a/priv/profiles/os_detection/bats.yaml b/priv/profiles/os_detection/bats.yaml new file mode 100644 index 00000000..0f84efb0 --- /dev/null +++ b/priv/profiles/os_detection/bats.yaml @@ -0,0 +1,11 @@ +os: bats +text: 'BATS AATS' +type: wireless +icon: bats +over: + - { graph: device_ping_perf, text: 'Ping Times' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.37069 +mib_dir: bats diff --git a/priv/profiles/os_detection/bcm963.yaml b/priv/profiles/os_detection/bcm963.yaml new file mode 100644 index 00000000..4a0ade37 --- /dev/null +++ b/priv/profiles/os_detection/bcm963.yaml @@ -0,0 +1,10 @@ +os: bcm963 +text: 'Broadcom BCM963xx' +type: network +icon: broadcom +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr: + - bcm963 diff --git a/priv/profiles/os_detection/bdcom.yaml b/priv/profiles/os_detection/bdcom.yaml new file mode 100644 index 00000000..48b41dde --- /dev/null +++ b/priv/profiles/os_detection/bdcom.yaml @@ -0,0 +1,12 @@ +os: bdcom +text: 'BDCOM(tm) Software' +type: network +icon: bdcom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3320.1 diff --git a/priv/profiles/os_detection/beagleboard.yaml b/priv/profiles/os_detection/beagleboard.yaml new file mode 100644 index 00000000..9462a0b5 --- /dev/null +++ b/priv/profiles/os_detection/beagleboard.yaml @@ -0,0 +1,27 @@ +os: beagleboard +type: server +group: unix +text: BeagleBoard +icon: beagleboard +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + applications: true + bgp-peers: false + stp: false + vminfo: true +processor_stacked: true +discovery: + - sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.6.100.105.115.116.114.111 + op: starts + value: "BeagleBoard.org" diff --git a/priv/profiles/os_detection/benuos.yaml b/priv/profiles/os_detection/benuos.yaml new file mode 100644 index 00000000..e00b6e85 --- /dev/null +++ b/priv/profiles/os_detection/benuos.yaml @@ -0,0 +1,13 @@ +os: benuos +text: Benu +type: network +icon: benuos +mib_dir: benuos +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39406.1 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } diff --git a/priv/profiles/os_detection/binos.yaml b/priv/profiles/os_detection/binos.yaml new file mode 100644 index 00000000..d05ad3a7 --- /dev/null +++ b/priv/profiles/os_detection/binos.yaml @@ -0,0 +1,13 @@ +os: binos +text: 'Telco Systems BiNOS' +type: network +icon: telco-systems +mib_dir: telco-systems/binos +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.738.1.5.100 diff --git a/priv/profiles/os_detection/binox.yaml b/priv/profiles/os_detection/binox.yaml new file mode 100644 index 00000000..9b106dbb --- /dev/null +++ b/priv/profiles/os_detection/binox.yaml @@ -0,0 +1,13 @@ +os: binox +text: 'Telco Systems BiNOX' +type: network +icon: telco-systems +mib_dir: telco-systems/binox +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.738.10.5. diff --git a/priv/profiles/os_detection/bintec-beip-plus.yaml b/priv/profiles/os_detection/bintec-beip-plus.yaml new file mode 100644 index 00000000..dd68edc1 --- /dev/null +++ b/priv/profiles/os_detection/bintec-beip-plus.yaml @@ -0,0 +1,16 @@ +os: bintec-beip-plus +snmp_bulk: false +text: 'Bintec Be.IP Plus' +type: network +icon: bintec +mib_dir: bintec +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.272.4.201.66.69.50.48 +oids: + unordered: + - IP-MIB::ipNetToMediaPhysAddress diff --git a/priv/profiles/os_detection/bintec-smart.yaml b/priv/profiles/os_detection/bintec-smart.yaml new file mode 100644 index 00000000..fe2de3cc --- /dev/null +++ b/priv/profiles/os_detection/bintec-smart.yaml @@ -0,0 +1,13 @@ +os: bintec-smart +text: 'Bintec Smart Router' +type: network +icon: bintec +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_fortigate_cpu, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.272.4.201.82.78.79.48 + - .1.3.6.1.4.1.272.4.201.83.82.49.48 diff --git a/priv/profiles/os_detection/bison.yaml b/priv/profiles/os_detection/bison.yaml new file mode 100644 index 00000000..28320487 --- /dev/null +++ b/priv/profiles/os_detection/bison.yaml @@ -0,0 +1,13 @@ +os: bison +text: Bison Router +type: network +icon: bison +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: bison +discovery: + - + sysDescr_regex: + - '/Linux bison/' diff --git a/priv/profiles/os_detection/bke.yaml b/priv/profiles/os_detection/bke.yaml new file mode 100644 index 00000000..31d5010f --- /dev/null +++ b/priv/profiles/os_detection/bke.yaml @@ -0,0 +1,8 @@ +os: bke +text: 'BKE' +type: power +icon: bke +group: bke +discovery: + - sysObjectID: + - .1.3.6.1.4.1.27533 diff --git a/priv/profiles/os_detection/bktel-oa.yaml b/priv/profiles/os_detection/bktel-oa.yaml new file mode 100644 index 00000000..d3673447 --- /dev/null +++ b/priv/profiles/os_detection/bktel-oa.yaml @@ -0,0 +1,9 @@ +os: bktel-oa +text: 'BKtel' +type: network +icon: bktel +mib_dir: bktel +discovery: + - sysObjectID: + - .1.3.6.1.4.1.7501.1.2.100 + - .1.3.6.1.4.1.7501.1.2.99 diff --git a/priv/profiles/os_detection/bluecatnetworks.yaml b/priv/profiles/os_detection/bluecatnetworks.yaml new file mode 100644 index 00000000..cd5f464b --- /dev/null +++ b/priv/profiles/os_detection/bluecatnetworks.yaml @@ -0,0 +1,14 @@ +os: bluecatnetworks +text: 'Bluecat Networks' +type: appliance +icon: bcn +snmp_bulk: false +mib_dir: bluecatnetworks +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.13315.2. diff --git a/priv/profiles/os_detection/bnt.yaml b/priv/profiles/os_detection/bnt.yaml new file mode 100644 index 00000000..2239b420 --- /dev/null +++ b/priv/profiles/os_detection/bnt.yaml @@ -0,0 +1,9 @@ +os: bnt +text: 'Blade Network Technologies' +type: network +icon: bnt +discovery: + - + sysDescr_regex: + - '/Blade Network Technologies/i' + - '/^BNT /' diff --git a/priv/profiles/os_detection/boss.yaml b/priv/profiles/os_detection/boss.yaml new file mode 100644 index 00000000..eb8b5e40 --- /dev/null +++ b/priv/profiles/os_detection/boss.yaml @@ -0,0 +1,21 @@ +os: boss +text: 'Extreme BOSS' +type: network +icon: extremeboss +ifname: true +mib_dir: nortel +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.45. + - .1.3.6.1.4.1.2272. + sysDescr: + - 'Ethernet Switch' + - 'Ethernet Routing Switch' + - 'ERS' + - 'Virtual Services Platform 7024XLS' + - 'Virtual Services Platform 7024XT' +good_if: + - 'Virtual Services Platform' diff --git a/priv/profiles/os_detection/breeze.yaml b/priv/profiles/os_detection/breeze.yaml new file mode 100644 index 00000000..19c46870 --- /dev/null +++ b/priv/profiles/os_detection/breeze.yaml @@ -0,0 +1,11 @@ +os: breeze +text: 'Alvarion Breeze' +type: wireless +icon: alvarion +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: alvarion +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12394.4. diff --git a/priv/profiles/os_detection/broadworks.yaml b/priv/profiles/os_detection/broadworks.yaml new file mode 100644 index 00000000..0440c907 --- /dev/null +++ b/priv/profiles/os_detection/broadworks.yaml @@ -0,0 +1,13 @@ +os: broadworks +text: 'Cisco BroadWorks' +type: server +group: unix +icon: broadworks +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +processor_stacked: true +discovery: + - sysObjectID: + - .1.3.6.1.4.1.6431. diff --git a/priv/profiles/os_detection/brother.yaml b/priv/profiles/os_detection/brother.yaml new file mode 100644 index 00000000..d4471bc4 --- /dev/null +++ b/priv/profiles/os_detection/brother.yaml @@ -0,0 +1,14 @@ +os: brother +group: printer +text: 'Brother Printer' +type: printer +snmp_bulk: false +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr_regex: '/Brother NC-.*(h|w),/' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/bti800.yaml b/priv/profiles/os_detection/bti800.yaml new file mode 100644 index 00000000..a0778a30 --- /dev/null +++ b/priv/profiles/os_detection/bti800.yaml @@ -0,0 +1,13 @@ +os: bti800 +text: 'BTI SA-800' +type: network +icon: bti +group: bti +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_temperature, text: Temperature (Celcius) } + - { graph: device_voltage, text: Voltage } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.30005.1.7 diff --git a/priv/profiles/os_detection/buffalo.yaml b/priv/profiles/os_detection/buffalo.yaml new file mode 100644 index 00000000..4c88a41e --- /dev/null +++ b/priv/profiles/os_detection/buffalo.yaml @@ -0,0 +1,10 @@ +os: buffalo +text: Buffalo +type: storage +icon: buffalo +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/^BUFFALO /' diff --git a/priv/profiles/os_detection/calix.yaml b/priv/profiles/os_detection/calix.yaml new file mode 100644 index 00000000..38a51c19 --- /dev/null +++ b/priv/profiles/os_detection/calix.yaml @@ -0,0 +1,13 @@ +os: calix +text: Calix Legacy +type: network +ifname: true +empty_ifdescr: true +icon: calix +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6321.1.2.3 + - .1.3.6.1.4.1.6321.2.1.1 diff --git a/priv/profiles/os_detection/canonprinter.yaml b/priv/profiles/os_detection/canonprinter.yaml new file mode 100644 index 00000000..aba9c016 --- /dev/null +++ b/priv/profiles/os_detection/canonprinter.yaml @@ -0,0 +1,24 @@ +os: canonprinter +group: printer +text: 'Canon Printer' +type: printer +icon: canon +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - Canon MF + - Canon iR + - Canon iP + - Canon TM + - Canon TX + - + sysObjectID: + - .1.3.6.1.4.1.1602.4.2 + - .1.3.6.1.4.1.1602.4.3 + - .1.3.6.1.4.1.1602.4.7 +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/cat1900.yaml b/priv/profiles/os_detection/cat1900.yaml new file mode 100644 index 00000000..6b8a3629 --- /dev/null +++ b/priv/profiles/os_detection/cat1900.yaml @@ -0,0 +1,34 @@ +os: cat1900 +group: cisco +text: 'Cisco Catalyst 1900' +type: network +icon: cisco-old +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + ipmi: false + cisco-vpdn: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysDescr: + - 'Cisco Systems Catalyst 1900' diff --git a/priv/profiles/os_detection/catos.yaml b/priv/profiles/os_detection/catos.yaml new file mode 100644 index 00000000..f8e4ad82 --- /dev/null +++ b/priv/profiles/os_detection/catos.yaml @@ -0,0 +1,35 @@ +os: catos +group: cisco +text: 'Cisco CatOS' +ifname: true +type: network +icon: cisco-old +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + ipmi: false +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'Cisco Catalyst Operating System Software' +bad_if: + - vlan diff --git a/priv/profiles/os_detection/cdata.yaml b/priv/profiles/os_detection/cdata.yaml new file mode 100644 index 00000000..28e376cf --- /dev/null +++ b/priv/profiles/os_detection/cdata.yaml @@ -0,0 +1,16 @@ +os: cdata +text: 'cdata' +type: network +icon: cdata +group: cdata +mib_dir: cdata +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17409 + sysObjectID_except: + - .1.3.6.1.4.1.17409.1 diff --git a/priv/profiles/os_detection/celvin.yaml b/priv/profiles/os_detection/celvin.yaml new file mode 100644 index 00000000..d62b24ee --- /dev/null +++ b/priv/profiles/os_detection/celvin.yaml @@ -0,0 +1,12 @@ +os: celvin +text: 'Fujitsu NAS' +type: storage +icon: fujitsu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.6.3.11.2.3.1.1 diff --git a/priv/profiles/os_detection/ceraos.yaml b/priv/profiles/os_detection/ceraos.yaml new file mode 100644 index 00000000..0d19f81e --- /dev/null +++ b/priv/profiles/os_detection/ceraos.yaml @@ -0,0 +1,41 @@ +os: ceraos +text: 'Ceragon CeraOS' +type: wireless +icon: ceragon +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_power, text: 'Wireless Power' } + - { graph: device_ping_perf, text: 'Ping Times' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2281 +poller_modules: + applications: false + bgp-peers: false + entity-physical: false + hr-mib: false + ipSystemStats: false + ipmi: false + netstats: false + ntp: false + ospf: false + processors: false + services: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + ports-stack: false + entity-physical: false + processors: false + cisco-vrf-lite: false + ipv4-addresses: false + ipv6-addresses: false + hr-device: false + discovery-protocols: false + arp-table: false + bgp-peers: false + ucd-diskio: false + services: false + ntp: false + charge: false diff --git a/priv/profiles/os_detection/cetpower.yaml b/priv/profiles/os_detection/cetpower.yaml new file mode 100644 index 00000000..d7bc6c0f --- /dev/null +++ b/priv/profiles/os_detection/cetpower.yaml @@ -0,0 +1,16 @@ +os: cetpower +text: 'CET TSI Controller' +type: power +icon: cet +snmp_bulk: false +over: + - { graph: device_current, text: Load } + - { graph: device_voltage, text: Voltage } + - { graph: device_temperature, text: Temperature } + - { graph: device_power, text: Power } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.12551.4.0 + - sysDescr: + - T2S-ETH supervisor for TSI SNMP V1.0 +mib_dir: cet \ No newline at end of file diff --git a/priv/profiles/os_detection/chatsworth-pdu.yaml b/priv/profiles/os_detection/chatsworth-pdu.yaml new file mode 100644 index 00000000..23ee8420 --- /dev/null +++ b/priv/profiles/os_detection/chatsworth-pdu.yaml @@ -0,0 +1,11 @@ +os: chatsworth-pdu +text: 'Chatsworth PDU' +type: power +icon: chatsworth +snmp_bulk: false +mib_dir: chatsworth +discovery: + - + sysObjectID: + - .0.10.43.6.1.4.1 + - .1.3.6.1.4.1.30932 diff --git a/priv/profiles/os_detection/christie-projector.yaml b/priv/profiles/os_detection/christie-projector.yaml new file mode 100644 index 00000000..81bd61fb --- /dev/null +++ b/priv/profiles/os_detection/christie-projector.yaml @@ -0,0 +1,8 @@ +os: christie-projector +text: 'Christie Projector' +type: collaboration +icon: christie +group: christie +discovery: + - sysObjectID: + - '.1.3.6.1.4.1.25766.' diff --git a/priv/profiles/os_detection/ciena-rls.yaml b/priv/profiles/os_detection/ciena-rls.yaml new file mode 100644 index 00000000..5fca2926 --- /dev/null +++ b/priv/profiles/os_detection/ciena-rls.yaml @@ -0,0 +1,11 @@ +os: ciena-rls +text: 'Ciena Reconfigurable Line System' +icon: ciena +over: + - { graph: device_bits, text: Traffic } +type: network +mib_dir: ciena +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1271.1.2.12 diff --git a/priv/profiles/os_detection/ciena-saos.yaml b/priv/profiles/os_detection/ciena-saos.yaml new file mode 100644 index 00000000..1b898f7d --- /dev/null +++ b/priv/profiles/os_detection/ciena-saos.yaml @@ -0,0 +1,15 @@ +os: ciena-saos +text: 'Ciena SAOS' +type: network +icon: ciena +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.562.68.11 + - sysDescr_regex: + - '/.*Version saos-.*/' +mib_dir: nortel +group: ciena +discovery_modules: + processors: false diff --git a/priv/profiles/os_detection/ciena-sds.yaml b/priv/profiles/os_detection/ciena-sds.yaml new file mode 100644 index 00000000..414f3402 --- /dev/null +++ b/priv/profiles/os_detection/ciena-sds.yaml @@ -0,0 +1,18 @@ +os: ciena-sds +text: 'Ciena Service Delivery Switch' +icon: ciena +bad_hrSystemUptime: true +bad_snmpEngineTime: true +ifname: true +bad_ifname_regexp: # ifName (regex, case insensitive) - ignore interfaces with empty name + - "/^$/" +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } +type: network +mib_dir: ciena +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6141.1. + - .1.3.6.1.4.1.1271.1. diff --git a/priv/profiles/os_detection/ciena-waveserver.yaml b/priv/profiles/os_detection/ciena-waveserver.yaml new file mode 100644 index 00000000..10476958 --- /dev/null +++ b/priv/profiles/os_detection/ciena-waveserver.yaml @@ -0,0 +1,12 @@ +os: ciena-waveserver +text: 'Ciena Waveserver' +icon: ciena +ifname: true +over: + - { graph: device_bits, text: Traffic } +type: network +mib_dir: ciena +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1271.3 diff --git a/priv/profiles/os_detection/cimc.yaml b/priv/profiles/os_detection/cimc.yaml new file mode 100644 index 00000000..44a7921b --- /dev/null +++ b/priv/profiles/os_detection/cimc.yaml @@ -0,0 +1,29 @@ +os: cimc +text: 'Cisco Integrated Management Controller' +type: management +icon: cisco +group: cisco +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_voltage, text: 'Power Voltage' } + - { graph: device_current, text: 'Power Current' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'Cisco Integrated Management Controller' diff --git a/priv/profiles/os_detection/cips.yaml b/priv/profiles/os_detection/cips.yaml new file mode 100644 index 00000000..1cb17c20 --- /dev/null +++ b/priv/profiles/os_detection/cips.yaml @@ -0,0 +1,29 @@ +os: cips +text: 'Cisco Intrusion Prevention System' +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysDescr_regex: + - '/^Cisco Intrusion Prevention System/' diff --git a/priv/profiles/os_detection/cirpack.yaml b/priv/profiles/os_detection/cirpack.yaml new file mode 100644 index 00000000..1e7251a0 --- /dev/null +++ b/priv/profiles/os_detection/cirpack.yaml @@ -0,0 +1,17 @@ +os: cirpack +text: 'cirpack' +type: server +icon: cirpack +group: cirpack +mib_dir: cirpack +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.9193.1.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/ciscoepc.yaml b/priv/profiles/os_detection/ciscoepc.yaml new file mode 100644 index 00000000..127a7a99 --- /dev/null +++ b/priv/profiles/os_detection/ciscoepc.yaml @@ -0,0 +1,25 @@ +os: ciscoepc +group: cisco +text: 'Cisco EPC' +type: network +icon: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + hr-mib: false + ntp: false + ospf: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + ntp: false + ucd-diskio: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1429.3940. diff --git a/priv/profiles/os_detection/ciscome1200.yaml b/priv/profiles/os_detection/ciscome1200.yaml new file mode 100644 index 00000000..a8858010 --- /dev/null +++ b/priv/profiles/os_detection/ciscome1200.yaml @@ -0,0 +1,39 @@ +os: ciscome1200 +text: 'Cisco ME1200' +ifname: true +type: network +icon: cisco +group: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysDescr: + - 'ME1200' + - sysObjectID: + - .1.3.6.1.4.1.9.1.1899 +poller_modules: + bgp-peers: false + hr-mib: false + ntp: false + ospf: false + ucd-diskio: false + ucd-mib: false + cisco-cef: true + cisco-mac-accounting: true + stp: true +discovery_modules: + cisco-cef: true + cisco-mac-accounting: true + wireless: false + mpls: false + services: false + cisco-qfp: false + cisco-otv: false + cisco-pw: false + bgp-peers: false + vrf: false + cisco-vrf-lite: false + ntp: false + ucd-diskio: false + diff --git a/priv/profiles/os_detection/ciscosat.yaml b/priv/profiles/os_detection/ciscosat.yaml new file mode 100644 index 00000000..1a5353aa --- /dev/null +++ b/priv/profiles/os_detection/ciscosat.yaml @@ -0,0 +1,11 @@ +os: ciscosat +text: 'Cisco Satellite Receiver' +type: network +icon: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_rssi, text: Sat Signal Level } +discovery: + - + sysObjectID: .1.3.6.1.4.1.1429.2.2.6.5 diff --git a/priv/profiles/os_detection/ciscosb.yaml b/priv/profiles/os_detection/ciscosb.yaml new file mode 100644 index 00000000..33bd1809 --- /dev/null +++ b/priv/profiles/os_detection/ciscosb.yaml @@ -0,0 +1,53 @@ +os: ciscosb +text: 'Cisco Small Business' +ifname: true +type: network +icon: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +bad_ifXEntry: + - SF300-24 + - SF300-24P + - SF300-48 + - SF302-08 + - SG300-10 + - SG300-10SFP + - SG300-20 + - SG300-28 + - SG300-28MP + - SG350-10 +poller_modules: + bgp-peers: false + hr-mib: false + ntp: false + ospf: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + ntp: false + ucd-diskio: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.6.1. + - .1.3.6.1.4.1.3955.6. + sysObjectID_except: + - .1.3.6.1.4.1.9.6.1.23.1.1.1 # ciscospa + - .1.3.6.1.4.1.9.6.1.31. # ciscowap + - .1.3.6.1.4.1.9.6.1.32. # ciscowap + - .1.3.6.1.4.1.9.6.1.34. # ciscowap + - .1.3.6.1.4.1.9.6.1.37. # ciscowlc + - + sysDescr: + - 'Catalyst 1200 Series' + - 'Catalyst 1300 Series' + - + sysDescr_regex: + - '/^Linksys SLM/' + - + sysObjectID_regex: + - '/^.1.3.6.1.4.1.9.1.(1058|1059|1060|1061|1062|1063|1064|1176|1177)/' diff --git a/priv/profiles/os_detection/ciscosce.yaml b/priv/profiles/os_detection/ciscosce.yaml new file mode 100644 index 00000000..9a903ed2 --- /dev/null +++ b/priv/profiles/os_detection/ciscosce.yaml @@ -0,0 +1,34 @@ +os: ciscosce +group: cisco +text: 'Cisco SCE' +type: network +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: cisco +poller_modules: + bgp-peers: false + cisco-cef: false + cisco-mac-accounting: false + cisco-remote-access-monitor: false + slas: false + cisco-ipsec-flow-monitor: false + cipsec-tunnels: false + cisco-otv: false + ospf: false + wireless: false +discovery_modules: + cisco-cef: false + slas: false + cisco-mac-accounting: false + cisco-otv: false + cisco-pw: false + vrf: false + cisco-vrf-lite: false +mib_dir: cisco +discovery: + - + sysDescr: + - 'Cisco Service Control' diff --git a/priv/profiles/os_detection/ciscospa.yaml b/priv/profiles/os_detection/ciscospa.yaml new file mode 100644 index 00000000..6af81e44 --- /dev/null +++ b/priv/profiles/os_detection/ciscospa.yaml @@ -0,0 +1,14 @@ +os: ciscospa +text: 'Cisco Voice Gateway' +type: appliance +icon: cisco +group: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.6.1.23.1.1.1 diff --git a/priv/profiles/os_detection/ciscosrp.yaml b/priv/profiles/os_detection/ciscosrp.yaml new file mode 100644 index 00000000..5b247e89 --- /dev/null +++ b/priv/profiles/os_detection/ciscosrp.yaml @@ -0,0 +1,14 @@ +os: ciscosrp +group: cisco +text: 'Cisco Services Ready Platform' +type: network +icon: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.1157 diff --git a/priv/profiles/os_detection/ciscowap.yaml b/priv/profiles/os_detection/ciscowap.yaml new file mode 100644 index 00000000..5193f875 --- /dev/null +++ b/priv/profiles/os_detection/ciscowap.yaml @@ -0,0 +1,39 @@ +os: ciscowap +text: 'Cisco Wireless Access Point' +type: wireless +group: unix +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.6.1.31. + - .1.3.6.1.4.1.9.6.1.32. + - .1.3.6.1.4.1.9.6.1.34. + - .1.3.6.1.4.1.9.1.3280 # ciscoIW9165DHURWB + - .1.3.6.1.4.1.9.1.3281 # ciscoIW9165EURWB + - .1.3.6.1.4.1.9.1.3282 # ciscoIW9167EHURWB + - + sysDescr: + - 'Cisco Small Business WAP' +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +processor_stacked: true diff --git a/priv/profiles/os_detection/ciscowlc.yaml b/priv/profiles/os_detection/ciscowlc.yaml new file mode 100644 index 00000000..dab52fa2 --- /dev/null +++ b/priv/profiles/os_detection/ciscowlc.yaml @@ -0,0 +1,33 @@ +os: ciscowlc +text: 'Cisco WLC' +type: wireless +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_wireless_ap-count, text: 'Connected APs' } + - { graph: device_wireless_clients, text: 'Number of Clients' } +icon: cisco +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysDescr: + - 'Cisco Controller' + - 'Cisco Business Wireless' diff --git a/priv/profiles/os_detection/clearpass.yaml b/priv/profiles/os_detection/clearpass.yaml new file mode 100644 index 00000000..d3df7cb9 --- /dev/null +++ b/priv/profiles/os_detection/clearpass.yaml @@ -0,0 +1,18 @@ +os: clearpass +text: 'Aruba Clearpass' +type: appliance +icon: aruba +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: Storage } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^ClearPass Policy Manager/' + - + sysObjectID: + - .1.3.6.1.4.1.14823.1.6. + sysDescr: + - 'ClearPass Policy Manager' diff --git a/priv/profiles/os_detection/clickshare.yaml b/priv/profiles/os_detection/clickshare.yaml new file mode 100644 index 00000000..cb4eaea9 --- /dev/null +++ b/priv/profiles/os_detection/clickshare.yaml @@ -0,0 +1,12 @@ +os: clickshare +text: 'Barco Clickshare' +type: collaboration +icon: barco +group: barco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.7312 diff --git a/priv/profiles/os_detection/cmm.yaml b/priv/profiles/os_detection/cmm.yaml new file mode 100644 index 00000000..6d232bf0 --- /dev/null +++ b/priv/profiles/os_detection/cmm.yaml @@ -0,0 +1,24 @@ +os: cmm +text: 'Cambium CMM' +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_state, text: 'Power Status' } +poller_modules: + processors: false +discovery_modules: + processors: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.161.19 + sysDescr_regex: + - '/CMM/i' + - + sysDescr_regex: + - '/CMM/i' + snmpget: + oid: .1.3.6.1.4.1.161.19.3.4.4.2.0 + value: CMM diff --git a/priv/profiles/os_detection/cmm4.yaml b/priv/profiles/os_detection/cmm4.yaml new file mode 100644 index 00000000..746ec5eb --- /dev/null +++ b/priv/profiles/os_detection/cmm4.yaml @@ -0,0 +1,20 @@ +os: cmm4 +text: Cambium CMM4 +type: wireless +icon: cambium +group: cambium +mib_dir: cambium/cmm4 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_state, text: 'Power Status' } +poller_modules: + processors: false +discovery_modules: + processors: false +discovery: + - + sysDescr_regex: + - '/Cmm4/i' + snmpget: + oid: .1.3.6.1.4.1.161.19.3.6.3.2.0 + value: CMM4 diff --git a/priv/profiles/os_detection/cms.yaml b/priv/profiles/os_detection/cms.yaml new file mode 100644 index 00000000..a2c4311b --- /dev/null +++ b/priv/profiles/os_detection/cms.yaml @@ -0,0 +1,13 @@ +os: cms +text: 'Corero CMS' +type: appliance +icon: corero +mib_dir: corero +group: Corero +over: + - { graph: device_ping_perf, text: 'Ping Repsonse' } + - { graph: device_uptime, text: Uptime } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.41036 diff --git a/priv/profiles/os_detection/cnmatrix.yaml b/priv/profiles/os_detection/cnmatrix.yaml new file mode 100644 index 00000000..41072485 --- /dev/null +++ b/priv/profiles/os_detection/cnmatrix.yaml @@ -0,0 +1,15 @@ +os: cnmatrix +text: 'Cambium cnMatrix' +type: network +icon: cambium +mib_dir: cambium/cnmatrix +ifname: true +over: + - { graph: device_bits, text: 'Overall Traffic' } + - { graph: device_temperature, text: 'Device Temperature' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.24 diff --git a/priv/profiles/os_detection/cnos.yaml b/priv/profiles/os_detection/cnos.yaml new file mode 100644 index 00000000..8deb42f8 --- /dev/null +++ b/priv/profiles/os_detection/cnos.yaml @@ -0,0 +1,13 @@ +os: cnos +text: 'Lenovo Cloud Network Operating System' +type: network +icon: lenovo +group: lenovo +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.19046.1.7 diff --git a/priv/profiles/os_detection/cnpilote.yaml b/priv/profiles/os_detection/cnpilote.yaml new file mode 100644 index 00000000..687ad2b2 --- /dev/null +++ b/priv/profiles/os_detection/cnpilote.yaml @@ -0,0 +1,13 @@ +os: cnpilote +text: 'Cambium cnPilot' +type: wireless +icon: cambium +group: cambium +mib_dir: cambium/cnpilote +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_clients, text: 'Number of Clients' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.22 diff --git a/priv/profiles/os_detection/cnpilotr.yaml b/priv/profiles/os_detection/cnpilotr.yaml new file mode 100644 index 00000000..eb1f7a06 --- /dev/null +++ b/priv/profiles/os_detection/cnpilotr.yaml @@ -0,0 +1,12 @@ +os: cnpilotr +text: 'Cambium cnPilot Router' +type: network +icon: cambium +group: cambium +mib_dir: cambium/cnpilotr +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/(cnPilot R[0-9][0-9][0-9])/i' diff --git a/priv/profiles/os_detection/cnwave60.yaml b/priv/profiles/os_detection/cnwave60.yaml new file mode 100644 index 00000000..0e36faeb --- /dev/null +++ b/priv/profiles/os_detection/cnwave60.yaml @@ -0,0 +1,13 @@ +os: cnwave60 +text: 'Cambium cnWave60' +type: wireless +icon: cambium +mib_dir: cambium +over: + - { graph: device_bits, text: 'Overall Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.60.1 diff --git a/priv/profiles/os_detection/commander-plus.yaml b/priv/profiles/os_detection/commander-plus.yaml new file mode 100644 index 00000000..15830ae5 --- /dev/null +++ b/priv/profiles/os_detection/commander-plus.yaml @@ -0,0 +1,10 @@ +os: commander-plus +text: 'C&C Power Commander plus' +type: power +icon: ccpower +over: + - { graph: device_bits, text: Traffic } +mib_dir: ccpower +discovery: + - + sysObjectID: .1.3.6.1.4.1.18642. diff --git a/priv/profiles/os_detection/compas.yaml b/priv/profiles/os_detection/compas.yaml new file mode 100644 index 00000000..482eae04 --- /dev/null +++ b/priv/profiles/os_detection/compas.yaml @@ -0,0 +1,9 @@ +os: compas +text: Alpha Comp@s +type: power +icon: alpha +group: alpha +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.26854.3.2.1 diff --git a/priv/profiles/os_detection/comtrol.yaml b/priv/profiles/os_detection/comtrol.yaml new file mode 100644 index 00000000..a00fb3ad --- /dev/null +++ b/priv/profiles/os_detection/comtrol.yaml @@ -0,0 +1,16 @@ +os: comtrol +text: 'Comtrol Industrial Switch' +ifname: true +type: network +icon: comtrol +over: + - { graph: device_bits, text: 'Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: comtrol +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2882.2.1.1 + - .1.3.6.1.4.1.2882.2.1.8 + - .1.3.6.1.4.1.2882.2.4.1 diff --git a/priv/profiles/os_detection/comware.yaml b/priv/profiles/os_detection/comware.yaml new file mode 100644 index 00000000..c7eb1408 --- /dev/null +++ b/priv/profiles/os_detection/comware.yaml @@ -0,0 +1,10 @@ +os: comware +text: 'HPE Comware' +type: network +mib_dir: comware +icon: hpe +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: .1.3.6.1.4.1.25506. diff --git a/priv/profiles/os_detection/controlbox.yaml b/priv/profiles/os_detection/controlbox.yaml new file mode 100644 index 00000000..d9b301ab --- /dev/null +++ b/priv/profiles/os_detection/controlbox.yaml @@ -0,0 +1,13 @@ +os: controlbox +text: 'Controlbox TH-332B' +icon: hwg +type: environment +mib_dir: controlbox +over: + - { graph: device_temperature, text: 'Current measured temperature' } + - { graph: device_humidity, text: 'Current measured humidity' } + - { graph: device_pressure, text: 'Calculated dew point' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17095.2 diff --git a/priv/profiles/os_detection/coreos.yaml b/priv/profiles/os_detection/coreos.yaml new file mode 100644 index 00000000..5c6e91de --- /dev/null +++ b/priv/profiles/os_detection/coreos.yaml @@ -0,0 +1,12 @@ +os: coreos +type: server +group: unix +text: CoreOS +icon: coreos +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: '/^Linux.*coreos/' diff --git a/priv/profiles/os_detection/coriant.yaml b/priv/profiles/os_detection/coriant.yaml new file mode 100644 index 00000000..6e99fe9e --- /dev/null +++ b/priv/profiles/os_detection/coriant.yaml @@ -0,0 +1,37 @@ +os: coriant +text: 'Coriant TNMS' +type: network +icon: coriant +discovery_modules: + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false + ipmi: false + bgp-peers: false + services: false + vlans: false + arp-table: false + mef: true + cisco-vrf-lite: false + storage: false +poller_modules: + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false + ipmi: false + bgp-peers: false + services: false + vlans: false + arp-table: false + mef: true + cisco-vrf-lite: false + storage: false + tnms-nbi: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.42229.6.22 diff --git a/priv/profiles/os_detection/ctcu.yaml b/priv/profiles/os_detection/ctcu.yaml new file mode 100644 index 00000000..3fd5996f --- /dev/null +++ b/priv/profiles/os_detection/ctcu.yaml @@ -0,0 +1,12 @@ +os: ctcu +text: 'CTC Union' +type: network +icon: ctcu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4756. diff --git a/priv/profiles/os_detection/ctm.yaml b/priv/profiles/os_detection/ctm.yaml new file mode 100644 index 00000000..25699aae --- /dev/null +++ b/priv/profiles/os_detection/ctm.yaml @@ -0,0 +1,12 @@ +os: ctm +text: 'Last Mile Gear CTM' +type: wireless +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } + - { graph: device_wireless_clients, text: 'Satellites in View' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25868. diff --git a/priv/profiles/os_detection/cts.yaml b/priv/profiles/os_detection/cts.yaml new file mode 100644 index 00000000..dafdb38c --- /dev/null +++ b/priv/profiles/os_detection/cts.yaml @@ -0,0 +1,15 @@ +os: cts +text: 'Connection Technology Systems' +type: network +icon: cts +group: cts +mib_dir: cts +ifname: true +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.9304. +discovery_modules: + fdb-table: false diff --git a/priv/profiles/os_detection/cumulus.yaml b/priv/profiles/os_detection/cumulus.yaml new file mode 100644 index 00000000..368fb45b --- /dev/null +++ b/priv/profiles/os_detection/cumulus.yaml @@ -0,0 +1,17 @@ +os: cumulus +type: network +group: unix +text: 'Cumulus Linux' +icon: cumulus +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +processor_stacked: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40310 + - + sysDescr: + - 'Cumulus' diff --git a/priv/profiles/os_detection/cxc.yaml b/priv/profiles/os_detection/cxc.yaml new file mode 100644 index 00000000..d2d83f0b --- /dev/null +++ b/priv/profiles/os_detection/cxc.yaml @@ -0,0 +1,15 @@ +os: cxc +text: 'Alpha CXC HP Controller' +type: power +icon: alpha +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_temperature, text: 'Battery Temperature' } +mib_dir: alpha +rfc1628_compat: true +snmp_bulk: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7309.5 diff --git a/priv/profiles/os_detection/cxr-ts.yaml b/priv/profiles/os_detection/cxr-ts.yaml new file mode 100644 index 00000000..38a79ed9 --- /dev/null +++ b/priv/profiles/os_detection/cxr-ts.yaml @@ -0,0 +1,10 @@ +os: cxr-ts +text: 'CXR Networks TS' +type: network +icon: cxr-networks +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: cxr-networks +discovery: + - + sysObjectID: .1.3.6.1.4.1.1425. diff --git a/priv/profiles/os_detection/cxrc.yaml b/priv/profiles/os_detection/cxrc.yaml new file mode 100644 index 00000000..3e0f4d80 --- /dev/null +++ b/priv/profiles/os_detection/cxrc.yaml @@ -0,0 +1,13 @@ +os: cxrc +text: 'Alpha CXRC Controller' +type: power +icon: alpha +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_charge, text: Charge } +mib_dir: alpha +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7309.4 diff --git a/priv/profiles/os_detection/cyan.yaml b/priv/profiles/os_detection/cyan.yaml new file mode 100644 index 00000000..463b5303 --- /dev/null +++ b/priv/profiles/os_detection/cyan.yaml @@ -0,0 +1,10 @@ +os: cyan +text: 'Ciena Z-Series' +icon: ciena +over: + - { graph: device_bits, text: Traffic } +type: network +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28533. diff --git a/priv/profiles/os_detection/cyberoam-utm.yaml b/priv/profiles/os_detection/cyberoam-utm.yaml new file mode 100644 index 00000000..fc6292f1 --- /dev/null +++ b/priv/profiles/os_detection/cyberoam-utm.yaml @@ -0,0 +1,13 @@ +os: cyberoam-utm +text: 'Cyberoam UTM' +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: sophos +type: appliance +mib_dir: cyberoam +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21067.2 diff --git a/priv/profiles/os_detection/cyberpower.yaml b/priv/profiles/os_detection/cyberpower.yaml new file mode 100644 index 00000000..68212d8d --- /dev/null +++ b/priv/profiles/os_detection/cyberpower.yaml @@ -0,0 +1,18 @@ +os: cyberpower +text: Cyberpower +type: power +icon: cyberpower +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3808 + sysDescr_except: + - 'Power Management Card' +poller_modules: + ports: false +discovery_modules: + ports: false +snmp_bulk: false diff --git a/priv/profiles/os_detection/dahua-nvr.yaml b/priv/profiles/os_detection/dahua-nvr.yaml new file mode 100644 index 00000000..8507ca80 --- /dev/null +++ b/priv/profiles/os_detection/dahua-nvr.yaml @@ -0,0 +1,11 @@ +os: dahua-nvr +text: 'Dahua NVR' +type: appliance +icon: dahua +group: dahua +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1004849.3.2. diff --git a/priv/profiles/os_detection/dantherm-os.yaml b/priv/profiles/os_detection/dantherm-os.yaml new file mode 100644 index 00000000..71c96380 --- /dev/null +++ b/priv/profiles/os_detection/dantherm-os.yaml @@ -0,0 +1,13 @@ +os: dantherm-os +text: 'Dantherm' +type: environment +icon: dantherm +group: dantherm +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - 'FreeCooling Controller, SNMP V1.0' \ No newline at end of file diff --git a/priv/profiles/os_detection/dasan-nos.yaml b/priv/profiles/os_detection/dasan-nos.yaml new file mode 100644 index 00000000..3fad2aaf --- /dev/null +++ b/priv/profiles/os_detection/dasan-nos.yaml @@ -0,0 +1,14 @@ +os: dasan-nos +text: 'Dasan NOS' +type: network +icon: dasan +mib_dir: dasan +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6296.1.2 + - .1.3.6.1.4.1.6296.1.21 diff --git a/priv/profiles/os_detection/datacom-dmos.yaml b/priv/profiles/os_detection/datacom-dmos.yaml new file mode 100644 index 00000000..5405c5a4 --- /dev/null +++ b/priv/profiles/os_detection/datacom-dmos.yaml @@ -0,0 +1,13 @@ +os: datacom-dmos +text: 'DmOS' +type: network +icon: datacom +mib_dir: datacom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.3709.1.2.137 + sysDescr: DM diff --git a/priv/profiles/os_detection/datacom.yaml b/priv/profiles/os_detection/datacom.yaml new file mode 100644 index 00000000..05b44f5f --- /dev/null +++ b/priv/profiles/os_detection/datacom.yaml @@ -0,0 +1,11 @@ +os: datacom +text: Datacom +type: network +icon: datacom +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3709 + - + sysObjectID: .1.3.6.1.4.1.4413 + sysDescr: DM1200E diff --git a/priv/profiles/os_detection/datadomain.yaml b/priv/profiles/os_detection/datadomain.yaml new file mode 100644 index 00000000..aa5169d0 --- /dev/null +++ b/priv/profiles/os_detection/datadomain.yaml @@ -0,0 +1,13 @@ +os: datadomain +text: 'EMC Data Domain' +type: storage +icon: emc +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.19746.3.1 diff --git a/priv/profiles/os_detection/dcn-software.yaml b/priv/profiles/os_detection/dcn-software.yaml new file mode 100644 index 00000000..4a376ead --- /dev/null +++ b/priv/profiles/os_detection/dcn-software.yaml @@ -0,0 +1,14 @@ +os: dcn-software +text: 'Digital China Networks' +type: network +icon: dcn +mib_dir: dcn +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6339.1.1.1. + - .1.3.6.1.4.1.6339.1.1.2. diff --git a/priv/profiles/os_detection/dd-wrt.yaml b/priv/profiles/os_detection/dd-wrt.yaml new file mode 100644 index 00000000..b6a1b4e6 --- /dev/null +++ b/priv/profiles/os_detection/dd-wrt.yaml @@ -0,0 +1,15 @@ +os: dd-wrt +text: dd-wrt +type: network +icon: dd-wrt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: 'NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."distro"' + op: starts + value: dd-wrt diff --git a/priv/profiles/os_detection/ddnos.yaml b/priv/profiles/os_detection/ddnos.yaml new file mode 100644 index 00000000..02f91458 --- /dev/null +++ b/priv/profiles/os_detection/ddnos.yaml @@ -0,0 +1,16 @@ +os: ddnos +text: 'DDN Storage' +type: storage +icon: ddn +mib_dir: ddn +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: SFA-INFO::systemName.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/default.yaml b/priv/profiles/os_detection/default.yaml new file mode 100644 index 00000000..c7679077 --- /dev/null +++ b/priv/profiles/os_detection/default.yaml @@ -0,0 +1,6 @@ +os: default +text: Generic +type: server +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } diff --git a/priv/profiles/os_detection/deliberant.yaml b/priv/profiles/os_detection/deliberant.yaml new file mode 100644 index 00000000..fe1ad3a0 --- /dev/null +++ b/priv/profiles/os_detection/deliberant.yaml @@ -0,0 +1,10 @@ +os: deliberant +text: 'Deliberant OS' +type: wireless +icon: deliberant +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr: + - Deliberant diff --git a/priv/profiles/os_detection/dell-compellent.yaml b/priv/profiles/os_detection/dell-compellent.yaml new file mode 100644 index 00000000..329fd69c --- /dev/null +++ b/priv/profiles/os_detection/dell-compellent.yaml @@ -0,0 +1,35 @@ +os: dell-compellent +type: storage +text: 'Dell Storage' +group: unix +icon: dell +mib_dir: dell +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + applications: false + bgp-peers: false + mpls: false + ospf: false + stp: false + wireless: false +discovery_modules: + applications: false + bgp-peers: false + mpls: false + stp: false + wireless: false +discovery: + - + sysDescr: + 'FreeBSD' + snmpget: + oid: 1.3.6.1.4.1.674.11000.2000.500.1.2.1.0 + op: starts + value: 'Dell-Compellent' + - + sysDescr: COMPELLEN + sysObjectID: .1.3.6.1.4.1.8072.3.2.8 diff --git a/priv/profiles/os_detection/dell-laser.yaml b/priv/profiles/os_detection/dell-laser.yaml new file mode 100644 index 00000000..ff67eb9c --- /dev/null +++ b/priv/profiles/os_detection/dell-laser.yaml @@ -0,0 +1,22 @@ +os: dell-laser +group: printer +text: 'Dell Laser' +ifname: true +type: printer +icon: dell +over: + - { graph: device_toner, text: Toner } +mib_dir: dell +discovery: + - + sysDescr: + - 'Dell Color Laser' + - 'Dell Laser Printer' + - + sysDescr_regex: '/^Dell.*(MFP|Printer|Laser)/' + - + sysObjectID: .1.3.6.1.4.1.674.10898. +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/dell-ome-m.yaml b/priv/profiles/os_detection/dell-ome-m.yaml new file mode 100644 index 00000000..128050f1 --- /dev/null +++ b/priv/profiles/os_detection/dell-ome-m.yaml @@ -0,0 +1,14 @@ +os: dell-ome-m +text: 'Dell OpenManage Enterprise Modular' +type: appliance +icon: dell +group: dell +mib_dir: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.674.10892.6 + - sysDescr: 'Dell OpenManage Enterprise Modular' diff --git a/priv/profiles/os_detection/dell-os10.yaml b/priv/profiles/os_detection/dell-os10.yaml new file mode 100644 index 00000000..eddb6027 --- /dev/null +++ b/priv/profiles/os_detection/dell-os10.yaml @@ -0,0 +1,15 @@ +os: dell-os10 +text: 'Dell EMC Networking OS10 Enterprise' +type: network +icon: dell +group: dell +mib_dir: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + # DELLEMC-OS10-PRODUCTS-MIB::os10Products + - .1.3.6.1.4.1.674.11000.5000.100.2. diff --git a/priv/profiles/os_detection/dell-powervault.yaml b/priv/profiles/os_detection/dell-powervault.yaml new file mode 100644 index 00000000..877e2640 --- /dev/null +++ b/priv/profiles/os_detection/dell-powervault.yaml @@ -0,0 +1,12 @@ +os: dell-powervault +text: 'Dell PowerVault' +type: storage +icon: dell +group: dell +discovery: + - + sysObjectID: .1.3.6.1.4.1.674.10893.2.31 + sysDescr_regex: '/^DELL(\s)+M(D|E)/' + - + sysObjectID: .1.3.6.1.4.1.674 + sysDescr: 'DELL EMC ' diff --git a/priv/profiles/os_detection/dell-rcs.yaml b/priv/profiles/os_detection/dell-rcs.yaml new file mode 100644 index 00000000..fa33972d --- /dev/null +++ b/priv/profiles/os_detection/dell-rcs.yaml @@ -0,0 +1,10 @@ +os: dell-rcs +text: 'Dell Remote Console' +type: appliance +icon: dell +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: dell +discovery: + - + sysObjectID: .1.3.6.1.4.1.10418.18.21.17 diff --git a/priv/profiles/os_detection/dell-rpdu.yaml b/priv/profiles/os_detection/dell-rpdu.yaml new file mode 100644 index 00000000..bdbe9fe2 --- /dev/null +++ b/priv/profiles/os_detection/dell-rpdu.yaml @@ -0,0 +1,13 @@ +os: dell-rpdu +text: 'Dell Rack PDU' +type: power +icon: dell +group: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.674.10903.200.3 diff --git a/priv/profiles/os_detection/dell-sonic.yaml b/priv/profiles/os_detection/dell-sonic.yaml new file mode 100644 index 00000000..46b92ab9 --- /dev/null +++ b/priv/profiles/os_detection/dell-sonic.yaml @@ -0,0 +1,15 @@ +os: dell-sonic +text: 'Dell Enterprise SONiC' +type: network +icon: dell +group: dell +mib_dir: dell +ignore_mount_string: ['/proc', '/dev', '/run', '/sys', '/tmp', '/var/tmp'] +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4413.1.2.1.2. diff --git a/priv/profiles/os_detection/dell-ups.yaml b/priv/profiles/os_detection/dell-ups.yaml new file mode 100644 index 00000000..c7517bde --- /dev/null +++ b/priv/profiles/os_detection/dell-ups.yaml @@ -0,0 +1,13 @@ +os: dell-ups +text: 'Dell UPS' +type: power +rfc1628_compat: true +icon: dell +over: + - { graph: device_current, text: Current } + - { graph: sensor_runtime, text: Runtime } +mib_dir: dell +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.674.10902.2 diff --git a/priv/profiles/os_detection/deltaorion.yaml b/priv/profiles/os_detection/deltaorion.yaml new file mode 100644 index 00000000..a56f26f1 --- /dev/null +++ b/priv/profiles/os_detection/deltaorion.yaml @@ -0,0 +1,12 @@ +os: deltaorion +group: delta +text: 'Delta Orion Controller' +type: environment +icon: delta +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.20246 diff --git a/priv/profiles/os_detection/deltaups.yaml b/priv/profiles/os_detection/deltaups.yaml new file mode 100644 index 00000000..1e4a2f3c --- /dev/null +++ b/priv/profiles/os_detection/deltaups.yaml @@ -0,0 +1,14 @@ +os: deltaups +text: 'Delta UPS' +type: power +icon: delta +rfc1628_compat: true +snmp_bulk: false +mib_dir: delta +over: + - { graph: device_current, text: Current } + - { graph: device_runtime, text: Runtime } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2254.2. diff --git a/priv/profiles/os_detection/deva-db7001.yaml b/priv/profiles/os_detection/deva-db7001.yaml new file mode 100644 index 00000000..86cf5388 --- /dev/null +++ b/priv/profiles/os_detection/deva-db7001.yaml @@ -0,0 +1,11 @@ +os: deva-db7001 +text: 'DB7001 - FM Radio Re-Broadcast Receiver' +type: appliance +icon: deva +group: deva +over: + - { graph: device_dbm, text: RF Level (dBµV) } + - { graph: device_ber, text: 'RDS BER' } + - { graph: device_percent, text: 'Multipath (%)' } +discovery: + - sysObjectID: .1.3.6.1.4.1.35833.37 diff --git a/priv/profiles/os_detection/developprinter.yaml b/priv/profiles/os_detection/developprinter.yaml new file mode 100644 index 00000000..c6ef0cfc --- /dev/null +++ b/priv/profiles/os_detection/developprinter.yaml @@ -0,0 +1,15 @@ +os: developprinter +group: printer +text: 'Develop Printer' +type: printer +icon: develop +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.18334.1.2.1.2.1.50.2.2 +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/dhcpatriot.yaml b/priv/profiles/os_detection/dhcpatriot.yaml new file mode 100644 index 00000000..208e5675 --- /dev/null +++ b/priv/profiles/os_detection/dhcpatriot.yaml @@ -0,0 +1,15 @@ +os: dhcpatriot +type: server +group: unix +text: 'DHCPatriot' +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: 'FNGi' +processor_stacked: true diff --git a/priv/profiles/os_detection/digipower.yaml b/priv/profiles/os_detection/digipower.yaml new file mode 100644 index 00000000..eed6a450 --- /dev/null +++ b/priv/profiles/os_detection/digipower.yaml @@ -0,0 +1,9 @@ +os: digipower +text: Digipower +type: power +over: + - { graph: device_current, text: Current } +snmp_max_oid: 2 +discovery: + - sysObjectID: + - .1.3.6.1.4.1.17420 diff --git a/priv/profiles/os_detection/dkt.yaml b/priv/profiles/os_detection/dkt.yaml new file mode 100644 index 00000000..93e2104c --- /dev/null +++ b/priv/profiles/os_detection/dkt.yaml @@ -0,0 +1,11 @@ +os: dkt +group: dkt +text: 'DKT Comega' +type: network +icon: dkt +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: dkt +discovery: + - + sysObjectID: .1.3.6.1.4.1.27304 diff --git a/priv/profiles/os_detection/dlink-dgs1250.yaml b/priv/profiles/os_detection/dlink-dgs1250.yaml new file mode 100644 index 00000000..274a0450 --- /dev/null +++ b/priv/profiles/os_detection/dlink-dgs1250.yaml @@ -0,0 +1,15 @@ +os: dlink-dgs1250 +text: 'D-Link Switch' +type: network +icon: dlink +#group: dlink +mib_dir: dlink_dgs1250 +ifname: true +empty_ifdescr: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.171.10.165.1.1 +good_if: + - po + - vlan diff --git a/priv/profiles/os_detection/dlink.yaml b/priv/profiles/os_detection/dlink.yaml new file mode 100644 index 00000000..2d0ebf7b --- /dev/null +++ b/priv/profiles/os_detection/dlink.yaml @@ -0,0 +1,15 @@ +os: dlink +text: 'D-Link Switch' +type: network +icon: dlink +ifname: true +empty_ifdescr: true +discovery: + - + sysObjectID_except: + - .1.3.6.1.4.1.171.10.37. + sysObjectID: + - .1.3.6.1.4.1.171.10. +good_if: + - po + - vlan diff --git a/priv/profiles/os_detection/dlinkap.yaml b/priv/profiles/os_detection/dlinkap.yaml new file mode 100644 index 00000000..ffd975c8 --- /dev/null +++ b/priv/profiles/os_detection/dlinkap.yaml @@ -0,0 +1,8 @@ +os: dlinkap +text: 'D-Link Access Point' +type: wireless +icon: dlink +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.171.10.37. diff --git a/priv/profiles/os_detection/dnos.yaml b/priv/profiles/os_detection/dnos.yaml new file mode 100644 index 00000000..2690e795 --- /dev/null +++ b/priv/profiles/os_detection/dnos.yaml @@ -0,0 +1,16 @@ +os: dnos +text: 'Dell Networking OS' +type: network +icon: dell +mib_dir: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6027.1. + sysDescr_except: + - Force10 Operating System + - Force10 Networks Real Time Operating System Software diff --git a/priv/profiles/os_detection/dpi.yaml b/priv/profiles/os_detection/dpi.yaml new file mode 100644 index 00000000..a18156d1 --- /dev/null +++ b/priv/profiles/os_detection/dpi.yaml @@ -0,0 +1,34 @@ +os: dpi +text: 'IBM DPI' +type: power +icon: ibmos +over: + - { graph: device_bits, text: 'Device Traffic' } +poller_modules: + hr-mib: false + ucd-mib: false + bgp-peers: false + ucd-diskio: false + wireless: false + ospf: false + entity-physical: false + applications: false + stp: false + ntp: false +discovery_modules: + entity-physical: false + cisco-vrf-lite: false + ipv6-address: false + storage: false + hr-device: false + discovery-protocols: false + arp-table: false + bgp-peers: false + ucd-diskio: false + services: false + stp: false + ntp: false + wireless: false +discovery: + - + sysDescr: IBM DPI diff --git a/priv/profiles/os_detection/drac.yaml b/priv/profiles/os_detection/drac.yaml new file mode 100644 index 00000000..b3aef762 --- /dev/null +++ b/priv/profiles/os_detection/drac.yaml @@ -0,0 +1,12 @@ +os: drac +text: 'Dell DRAC' +icon: dell +type: management +mib_dir: dell +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.674.10892.2 + - .1.3.6.1.4.1.674.10892.5 + - + sysDescr: 'Dell Out-of-band SNMP Agent for Remote Access Controller' diff --git a/priv/profiles/os_detection/dragonfly.yaml b/priv/profiles/os_detection/dragonfly.yaml new file mode 100644 index 00000000..0b16a344 --- /dev/null +++ b/priv/profiles/os_detection/dragonfly.yaml @@ -0,0 +1,11 @@ +os: dragonfly +type: server +group: unix +text: DragonflyBSD +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.17 diff --git a/priv/profiles/os_detection/draytek.yaml b/priv/profiles/os_detection/draytek.yaml new file mode 100644 index 00000000..776ee952 --- /dev/null +++ b/priv/profiles/os_detection/draytek.yaml @@ -0,0 +1,19 @@ +os: draytek +text: DrayTek +type: network +icon: draytek +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7367 + - + sysDescr_regex: + - '/^DrayTek/' +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/dsm.yaml b/priv/profiles/os_detection/dsm.yaml new file mode 100644 index 00000000..31ffee57 --- /dev/null +++ b/priv/profiles/os_detection/dsm.yaml @@ -0,0 +1,27 @@ +os: dsm +text: 'Synology DSM' +group: unix +type: storage +icon: synology +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: synology +processor_stacked: true +discovery: + - + sysDescr_regex: '/^Linux /' + snmpget: + oid: systemStatus.0 + mib: SYNOLOGY-SYSTEM-MIB + mib_dir: synology + op: '!=' + value: false + - + sysDescr_regex: '/^Linux /' + snmpget: + oid: HOST-RESOURCES-MIB::hrSystemInitialLoadParameters.0 + value: + - 'syno_hw_version' + - 'syno_dyn_module' diff --git a/priv/profiles/os_detection/e3meter.yaml b/priv/profiles/os_detection/e3meter.yaml new file mode 100644 index 00000000..d2f134b4 --- /dev/null +++ b/priv/profiles/os_detection/e3meter.yaml @@ -0,0 +1,14 @@ +os: e3meter +text: 'E3 Meter' +type: power +icon: riedo +mib_dir: riedo +over: + - { graph: device_power, text: Power } + - { graph: device_voltage, text: Voltage } + - { graph: device_frequency, text: Frequency } + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - '.1.3.6.1.4.1.21695.1.' diff --git a/priv/profiles/os_detection/e3meterdc.yaml b/priv/profiles/os_detection/e3meterdc.yaml new file mode 100644 index 00000000..ab796324 --- /dev/null +++ b/priv/profiles/os_detection/e3meterdc.yaml @@ -0,0 +1,12 @@ +os: e3meterdc +text: 'E3 Meter DataConcentrator' +type: power +icon: riedo +mib_dir: riedo +over: + - { graph: device_power, text: Power } + - { graph: device_temperature, text: Temperature } +discovery: + - + sysObjectID: + - '.1.3.6.1.4.1.21695.1401' diff --git a/priv/profiles/os_detection/eaton-ats.yaml b/priv/profiles/os_detection/eaton-ats.yaml new file mode 100644 index 00000000..f274cec0 --- /dev/null +++ b/priv/profiles/os_detection/eaton-ats.yaml @@ -0,0 +1,12 @@ +os: eaton-ats +text: 'Eaton ATS' +type: power +icon: eaton +mib_dir: eaton +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } +discovery: + - + sysDescr_regex: + - '/^Eaton ATS/' diff --git a/priv/profiles/os_detection/eaton-matrix.yaml b/priv/profiles/os_detection/eaton-matrix.yaml new file mode 100644 index 00000000..a9bad638 --- /dev/null +++ b/priv/profiles/os_detection/eaton-matrix.yaml @@ -0,0 +1,13 @@ +os: eaton-matrix +text: 'Eaton Matrix' +type: power +icon: eaton +mib_dir: eaton +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.935.10.2 + - + sysDescr_regex: + - '/^NMC for Matrix Inverter/' + diff --git a/priv/profiles/os_detection/eaton-mgeups.yaml b/priv/profiles/os_detection/eaton-mgeups.yaml new file mode 100644 index 00000000..05286e1d --- /dev/null +++ b/priv/profiles/os_detection/eaton-mgeups.yaml @@ -0,0 +1,20 @@ +os: eaton-mgeups +text: 'Eaton UPS' +group: ups +type: power +icon: eaton +rfc1628_compat: true +mib_dir: eaton +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.705.1 + sysDescr_regex_except: + - '/^Eaton ATS/' + - '/^Galaxy/' + - '/^GALAXY/' + - '/^MGE Galaxy/' diff --git a/priv/profiles/os_detection/eaton-sc200.yaml b/priv/profiles/os_detection/eaton-sc200.yaml new file mode 100644 index 00000000..4ae09ea5 --- /dev/null +++ b/priv/profiles/os_detection/eaton-sc200.yaml @@ -0,0 +1,12 @@ +os: eaton-sc200 +text: 'Eaton SC200 Controller' +type: power +icon: eaton +snmp_bulk: false +over: + - { graph: device_current, text: Load } + - { graph: device_voltage, text: Voltage } +mib_dir: eaton +discovery: + - + sysObjectID: .1.3.6.1.4.1.1918.2.13 diff --git a/priv/profiles/os_detection/eaton-sc300.yaml b/priv/profiles/os_detection/eaton-sc300.yaml new file mode 100644 index 00000000..6b6e253a --- /dev/null +++ b/priv/profiles/os_detection/eaton-sc300.yaml @@ -0,0 +1,11 @@ +os: eaton-sc300 +text: 'Eaton SC300 Controller' +type: power +icon: eaton +over: + - { graph: device_load, text: Load } + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } +mib_dir: eaton +discovery: + - sysObjectID: .1.3.6.1.4.1.1918.2.14 diff --git a/priv/profiles/os_detection/eatonpdu.yaml b/priv/profiles/os_detection/eatonpdu.yaml new file mode 100644 index 00000000..bc73acc6 --- /dev/null +++ b/priv/profiles/os_detection/eatonpdu.yaml @@ -0,0 +1,11 @@ +os: eatonpdu +text: 'Eaton PDU' +type: power +icon: eaton +mib_dir: eaton +over: + - { graph: device_power, text: Power } + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: .1.3.6.1.4.1.534.6. diff --git a/priv/profiles/os_detection/eatonups.yaml b/priv/profiles/os_detection/eatonups.yaml new file mode 100644 index 00000000..75e2892c --- /dev/null +++ b/priv/profiles/os_detection/eatonups.yaml @@ -0,0 +1,16 @@ +os: eatonups +text: 'Eaton UPS' +group: ups +type: power +icon: eaton +mib_dir: eaton +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } + - { graph: device_frequency, text: Load } +discovery: + - + sysObjectID: .1.3.6.1.4.1.534.1 + sysDescr_regex: '/^ConnectUPS Web\/SNMP Card .*/' + - + sysObjectID: .1.3.6.1.4.1.534.2 diff --git a/priv/profiles/os_detection/eatonupsm2.yaml b/priv/profiles/os_detection/eatonupsm2.yaml new file mode 100644 index 00000000..a5844750 --- /dev/null +++ b/priv/profiles/os_detection/eatonupsm2.yaml @@ -0,0 +1,15 @@ +os: eatonupsm2 +text: 'Eaton UPS' +group: ups +type: power +icon: eaton +rfc1628_compat: true +mib_dir: eaton +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: .1.3.6.1.4.1.534.1 + sysDescr_regex_except: '/^ConnectUPS Web\/SNMP Card .*/' diff --git a/priv/profiles/os_detection/ecresofm-os.yaml b/priv/profiles/os_detection/ecresofm-os.yaml new file mode 100644 index 00000000..42304808 --- /dev/null +++ b/priv/profiles/os_detection/ecresofm-os.yaml @@ -0,0 +1,16 @@ +os: ecresofm-os +text: 'Ecreso FM Transmitter' +type: appliance +icon: worldcastsystems +group: worldcastsystems +over: + - { graph: device_power, text: 'Power' } + - { graph: device_count, text: 'Counters' } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: 1.3.6.1.4.1.6404.3.1.2.9.1.1.0 + op: 'regex' + value: '(E01|E03|G20|G10)' \ No newline at end of file diff --git a/priv/profiles/os_detection/edfa.yaml b/priv/profiles/os_detection/edfa.yaml new file mode 100644 index 00000000..801dd42c --- /dev/null +++ b/priv/profiles/os_detection/edfa.yaml @@ -0,0 +1,14 @@ +os: edfa +text: 'EDFA' +type: network +icon: edfa +group: edfa +mib_dir: edfa +over: + - { graph: device_dbm, text: 'dBm' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17409.1 + sysObjectID_except: + - .1.3.6.1.4.1.17409.1.11 diff --git a/priv/profiles/os_detection/edfamux.yaml b/priv/profiles/os_detection/edfamux.yaml new file mode 100644 index 00000000..836473f3 --- /dev/null +++ b/priv/profiles/os_detection/edfamux.yaml @@ -0,0 +1,13 @@ +os: edfamux +text: 'Solid Optics EDFAMUX' +type: network +icon: solidoptics +mib_dir: solidoptics +over: + - { graph: device_dbm, text: 'dBm' } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.51628 + diff --git a/priv/profiles/os_detection/edgecos.yaml b/priv/profiles/os_detection/edgecos.yaml new file mode 100644 index 00000000..d1e4c056 --- /dev/null +++ b/priv/profiles/os_detection/edgecos.yaml @@ -0,0 +1,34 @@ +os: edgecos +text: Edgecore +type: network +icon: edge-core +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.259.6.10.94 + - .1.3.6.1.4.1.259.8.1.11 + - .1.3.6.1.4.1.259.8.1.4 + - .1.3.6.1.4.1.259.8.1.5 + - .1.3.6.1.4.1.259.8.2.4 + - .1.3.6.1.4.1.259.10.1.22 + - .1.3.6.1.4.1.259.10.1.24 + - .1.3.6.1.4.1.259.10.1.27 + - .1.3.6.1.4.1.259.10.1.39 + - .1.3.6.1.4.1.259.10.1.42 + - .1.3.6.1.4.1.259.10.1.43 + - .1.3.6.1.4.1.259.10.1.45 + - .1.3.6.1.4.1.259.10.1.46 + - .1.3.6.1.4.1.259.10.1.57 + - .1.3.6.1.4.1.259.10.1.74 + - .1.3.6.1.4.1.259.10.1.27.101 + - .1.3.6.1.4.1.259.10.1.45.103 + - .1.3.6.1.4.1.259.10.1.46.104 + - .1.3.6.1.4.1.259.10.1.5 + - + sysDescr_regex: + - '/^SONiC Software Version: SONiC\.Edgecore/' diff --git a/priv/profiles/os_detection/edgeos-ep.yaml b/priv/profiles/os_detection/edgeos-ep.yaml new file mode 100644 index 00000000..95c9b0d6 --- /dev/null +++ b/priv/profiles/os_detection/edgeos-ep.yaml @@ -0,0 +1,19 @@ +os: edgeos-ep +text: 'Ubiquiti Edgepower' +type: power +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +over: + - { graph: device_current, text: 'Current' } + - { graph: device_voltage, text: 'Voltage' } + - { graph: device_power, text: 'Power' } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10002.1 + snmpget: + oid: .1.3.6.1.4.1.41112.1.5.1.1.0 + op: 'contains' + value: 'EP-' diff --git a/priv/profiles/os_detection/edgeos.yaml b/priv/profiles/os_detection/edgeos.yaml new file mode 100644 index 00000000..161868fd --- /dev/null +++ b/priv/profiles/os_detection/edgeos.yaml @@ -0,0 +1,25 @@ +os: edgeos +text: EdgeOS +type: network +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.41112.1.5 + sysDescr_regex: + - '/^Ubiquiti\ EdgeOS/' + - '/^EdgeOS/' + - '/^EdgeRouter/' + snmpget_except: + oid: .1.3.6.1.4.1.41112.1.5.1.1.0 + op: 'contains' + value: 'UFiber' + +bad_if_regexp: + - '/^npi[0-9]/' + - '/^loop[0-9]/' + - '/^gre[0-9]/' + - '/^gretap[0-9]/' diff --git a/priv/profiles/os_detection/edgeosolt.yaml b/priv/profiles/os_detection/edgeosolt.yaml new file mode 100644 index 00000000..f7c0d822 --- /dev/null +++ b/priv/profiles/os_detection/edgeosolt.yaml @@ -0,0 +1,21 @@ +os: edgeosolt +text: UFiber +type: network +icon: ubiquiti +mib_dir: ubnt +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.41112.1.5 + snmpget: + oid: .1.3.6.1.4.1.41112.1.5.1.1.0 + op: 'contains' + value: 'UFiber' + - + sysObjectID: .1.3.6.1.4.1.4413 + sysDescr_regex: + - '/UISP Fiber OLT XGS/' diff --git a/priv/profiles/os_detection/edgeswitch.yaml b/priv/profiles/os_detection/edgeswitch.yaml new file mode 100644 index 00000000..2e2def2f --- /dev/null +++ b/priv/profiles/os_detection/edgeswitch.yaml @@ -0,0 +1,31 @@ +os: edgeswitch +text: EdgeSwitch +type: network +icon: ubiquiti +ifname: true +bad_snmpEngineTime: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4413 + - .1.3.6.1.4.1.41112 + - .1.3.6.1.4.1.10002 + - .1.3.6.1.4.1.8072 + - .1.3.6.1.4.1 + sysDescr_regex: + - '/^EdgeSwitch/' + - '/^EdgePoint/' + - '/^USW[ -]/' + - '/^UBNT US/' + - '/^US[ -]/' + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + - .1.3.6.1.4.1.27282.3.2.10 + sysDescr_regex: + - '/^Linux UBNT/' + - '/^RTL8380/' diff --git a/priv/profiles/os_detection/eds.yaml b/priv/profiles/os_detection/eds.yaml new file mode 100644 index 00000000..421a0ad4 --- /dev/null +++ b/priv/profiles/os_detection/eds.yaml @@ -0,0 +1,19 @@ +os: eds +text: 'EDS' +type: appliance +icon: eds +group: eds +mib_dir: eds +poller_modules: + bgp-peers: false + stp: false + wireless: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + stp: false + wireless: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.31440 diff --git a/priv/profiles/os_detection/ees.yaml b/priv/profiles/os_detection/ees.yaml new file mode 100644 index 00000000..68ca3ac1 --- /dev/null +++ b/priv/profiles/os_detection/ees.yaml @@ -0,0 +1,14 @@ +os: ees +text: 'Emerson Energy System' +type: power +icon: emerson +mib_dir: emerson +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_state, text: State } + +discovery: + - sysDescr: + - 'Linux ES_Controller' + - 'Linux AT9263' diff --git a/priv/profiles/os_detection/ekinops.yaml b/priv/profiles/os_detection/ekinops.yaml new file mode 100644 index 00000000..49964ffd --- /dev/null +++ b/priv/profiles/os_detection/ekinops.yaml @@ -0,0 +1,9 @@ +os: ekinops +text: 'Ekinops Optical' +type: network +icon: ekinops +group: ekinops +discovery: + - sysObjectID: + - .1.3.6.1.4.1.20044 +mib_dir: ekinops diff --git a/priv/profiles/os_detection/elg-ipecs-es.yaml b/priv/profiles/os_detection/elg-ipecs-es.yaml new file mode 100644 index 00000000..ca3797e0 --- /dev/null +++ b/priv/profiles/os_detection/elg-ipecs-es.yaml @@ -0,0 +1,13 @@ +os: elg-ipecs-es +text: 'EricssonLG IPECS ES' +type: network +icon: ericsson +group: ericsson +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.572.17389 diff --git a/priv/profiles/os_detection/elg-ipecs-ucp.yaml b/priv/profiles/os_detection/elg-ipecs-ucp.yaml new file mode 100644 index 00000000..6504c098 --- /dev/null +++ b/priv/profiles/os_detection/elg-ipecs-ucp.yaml @@ -0,0 +1,10 @@ +os: elg-ipecs-ucp +text: 'Ericsson LG iPECS UCP' +type: appliance +icon: ericsson +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.572.16838 diff --git a/priv/profiles/os_detection/eltek-webpower.yaml b/priv/profiles/os_detection/eltek-webpower.yaml new file mode 100644 index 00000000..e13e3e1f --- /dev/null +++ b/priv/profiles/os_detection/eltek-webpower.yaml @@ -0,0 +1,14 @@ +os: eltek-webpower +text: 'Eltek WebPower' +type: power +icon: eltek +snmp_bulk: false +over: + - { graph: device_current, text: Load } + - { graph: device_voltage, text: Voltage } +mib_dir: eltek +discovery: + - + sysObjectID: .1.3.6.1.4.1.12148.9 +poller_modules: + ospf: false diff --git a/priv/profiles/os_detection/eltex-mes21xx.yaml b/priv/profiles/os_detection/eltex-mes21xx.yaml new file mode 100644 index 00000000..f059a18d --- /dev/null +++ b/priv/profiles/os_detection/eltex-mes21xx.yaml @@ -0,0 +1,26 @@ +os: eltex-mes21xx +text: Eltex +ifname: true +type: network +icon: eltex +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.35265.1.24 #mes 3124 + - .1.3.6.1.4.1.35265.1.43 #mes 2124 + - .1.3.6.1.4.1.35265.1.52 #MES 1124MB + - .1.3.6.1.4.1.35265.1.154 + - .1.3.6.1.4.1.35265.1.143 # MES2408 + +mib_dir: eltexmes21xx +group: radlan + +bad_iftype: + - tunnel + - softwareLoopback + - propPointToPointSerial diff --git a/priv/profiles/os_detection/eltex-mes23xx.yaml b/priv/profiles/os_detection/eltex-mes23xx.yaml new file mode 100644 index 00000000..c4b17a2b --- /dev/null +++ b/priv/profiles/os_detection/eltex-mes23xx.yaml @@ -0,0 +1,55 @@ +os: eltex-mes23xx +text: Eltex +ifname: true +type: network +icon: eltex +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.35265.1.112 #MES 2308R + - .1.3.6.1.4.1.35265.1.116 #MES 3308F + - .1.3.6.1.4.1.35265.1.117 #MES 3316F + - .1.3.6.1.4.1.35265.1.107 #MES 2348P + - .1.3.6.1.4.1.35265.1.86 #MES 2348B + - .1.3.6.1.4.1.35265.1.96 #MES 3348 + - .1.3.6.1.4.1.35265.1.83 #MES 2324B + - .1.3.6.1.4.1.35265.1.81 #MES 3324F + - .1.3.6.1.4.1.35265.1.80 #MES 3324 + - .1.3.6.1.4.1.35265.1.78 #MES 2324FB AC + - .1.3.6.1.4.1.35265.1.74 #MES 5324 + - .1.3.6.1.4.1.35265.1.92 #MES 2324P + - .1.3.6.1.4.1.35265.1.76 #MES2324 + - .1.3.6.1.4.1.35265.1.318 #MES2300D-24P + - .1.3.6.1.4.1.35265.1.262 #MES 3300-24F + - .1.3.6.1.4.1.35265.1.142 #MES 3348F rev.B + - .1.3.6.1.4.1.35265.1.120 #MES 3348F + - .1.3.6.1.4.1.35265.1.190 #MES 3324F rev.B + - .1.3.6.1.4.1.35265.1.89 #MES 2308P + - .1.3.6.1.4.1.35265.1.235 # MES 2348P + - .1.3.6.1.4.1.35265.1.225 # MES 2324P + - .1.3.6.1.4.1.35265.1.233 #MES 2348B rev. C + - .1.3.6.1.4.1.35265.1.282 #MES 5332A rev. C + - .1.3.6.1.4.1.35265.1.234 #MES2324 rev.B AC + - .1.3.6.1.4.1.35265.1.137 #MES5324A + - .1.3.6.1.4.1.35265.1.313 #MES3300-16F + - .1.3.6.1.4.1.35265.1.266 #MES2300-24 AC + - .1.3.6.1.4.1.35265.1.192 #MES2324FB + + +mib_dir: eltexmes23xx +group: radlan + +bad_iftype: + - tunnel + - softwareLoopback + - propPointToPointSerial + +oids: + no_bulk: + - MARVELL-POE-MIB::rlPethPsePortOutputPower + - MARVELL-POE-MIB::rlPethPsePortPowerLimit diff --git a/priv/profiles/os_detection/eltex-mes24xx.yaml b/priv/profiles/os_detection/eltex-mes24xx.yaml new file mode 100644 index 00000000..c347e84f --- /dev/null +++ b/priv/profiles/os_detection/eltex-mes24xx.yaml @@ -0,0 +1,32 @@ +os: eltex-mes24xx +text: Eltex +ifname: true +type: network +icon: eltex +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.35265.1.158 # MES2408C AC + - .1.3.6.1.4.1.35265.1.176 # MES2424B AC + - .1.3.6.1.4.1.35265.1.217 # MES2424 AC + - .1.3.6.1.4.1.35265.1.250 # MES2448B AC + +mib_dir: eltexmes24xx + +bad_iftype: + - tunnel + - softwareLoopback + - propPointToPointSerial + + +poller_modules: + ospf: false + mpls: false +discovery_modules: + ospf: false + mpls: false diff --git a/priv/profiles/os_detection/eltex-olt.yaml b/priv/profiles/os_detection/eltex-olt.yaml new file mode 100644 index 00000000..4157c3c1 --- /dev/null +++ b/priv/profiles/os_detection/eltex-olt.yaml @@ -0,0 +1,17 @@ +os: eltex-olt +text: 'Eltex OLT' +type: network +icon: eltex +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: eltex +bad_ifXEntry: + - 'Eltex LTP-8X' +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.35265.1.22 # ELTEX LTP-8X + - .1.3.6.1.4.1.35265.1.70 # ELTEX LTP-4X + - .1.3.6.1.4.1.35265.1.13 # ELTEX MA4000 diff --git a/priv/profiles/os_detection/endian.yaml b/priv/profiles/os_detection/endian.yaml new file mode 100644 index 00000000..308ac1a9 --- /dev/null +++ b/priv/profiles/os_detection/endian.yaml @@ -0,0 +1,13 @@ +os: endian +text: Endian +type: firewall +group: unix +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +processor_stacked: true +discovery: + - + sysDescr_regex: '/^Linux.*endian/' diff --git a/priv/profiles/os_detection/endrun.yaml b/priv/profiles/os_detection/endrun.yaml new file mode 100644 index 00000000..0cfcd306 --- /dev/null +++ b/priv/profiles/os_detection/endrun.yaml @@ -0,0 +1,28 @@ +os: endrun +type: appliance +group: unix +mib_dir: endrun +text: 'EndRun' +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.13827.5.0.11.0 + op: 'contains' + value: 'Tempus LX CDMA' + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.13827.12.1.16.0 + op: 'contains' + value: 'Sonoma_D12' + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.13827.14.1.16.0 + op: 'contains' + value: 'MeridianII' diff --git a/priv/profiles/os_detection/enexus.yaml b/priv/profiles/os_detection/enexus.yaml new file mode 100644 index 00000000..cd37ddba --- /dev/null +++ b/priv/profiles/os_detection/enexus.yaml @@ -0,0 +1,48 @@ +os: enexus +text: 'Eltek Valere eNexus' +type: power +icon: eltek +snmp_bulk: false +over: + - { graph: device_current, text: Current } + - { graph: device_runtime, text: Runtime } + - { graph: device_voltage, text: Voltage } + +mib_dir: eltek +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12148.10 + - + sysObjectID_regex: '/^$/' + snmpget: + oid: .1.3.6.1.4.1.12148.10.2.6.0 + op: '!=' + value: false +poller_modules: + entity-physical: true + hr-mib: false + ipSystemStats: false + netstats: false + ospf: false + ucd-mib: false + ports: false + stp: false +discovery_modules: + ports-stack: false + entity-physical: true + processors: false + mempools: false + cisco-vrf-lite: false + ipv4-addresses: false + ipv6-addresses: false + storage: false + hr-device: false + discovery-protocols: false + arp-table: false + bgp-peers: false + ucd-diskio: false + fdb-table: false + stp: false + vlans: false + ports: false diff --git a/priv/profiles/os_detection/engenius.yaml b/priv/profiles/os_detection/engenius.yaml new file mode 100644 index 00000000..2018aeec --- /dev/null +++ b/priv/profiles/os_detection/engenius.yaml @@ -0,0 +1,19 @@ +os: engenius +type: wireless +text: 'EnGenius Access Point' +icon: engenius +over: + - { graph: device_ucd_cpu, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.14125.100.1.3 + - .1.3.6.1.4.1.14125.101.1.3 + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 #Linux + sysDescr: 'Wireless Access Point' + - + sysObjectID: .1.3.6.1.4.1.14125 + sysDescr: 'Wireless Access Point' diff --git a/priv/profiles/os_detection/enlogic-pdu.yaml b/priv/profiles/os_detection/enlogic-pdu.yaml new file mode 100644 index 00000000..5b39095d --- /dev/null +++ b/priv/profiles/os_detection/enlogic-pdu.yaml @@ -0,0 +1,13 @@ +os: enlogic-pdu +type: power +text: 'enLogic PDU' +icon: enlogic +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } + - { graph: device_state, text: State } +mib_dir: enlogic +discovery: + - + sysObjectID: .1.3.6.1.4.1.38446. diff --git a/priv/profiles/os_detection/enterasys.yaml b/priv/profiles/os_detection/enterasys.yaml new file mode 100644 index 00000000..aa1341ea --- /dev/null +++ b/priv/profiles/os_detection/enterasys.yaml @@ -0,0 +1,16 @@ +os: enterasys +text: Enterasys +type: network +icon: enterasys +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +ifname: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.5624.2.1 + - + sysDescr: 'Enterasys Networks' +good_if: + - ras diff --git a/priv/profiles/os_detection/epmp.yaml b/priv/profiles/os_detection/epmp.yaml new file mode 100644 index 00000000..87c515af --- /dev/null +++ b/priv/profiles/os_detection/epmp.yaml @@ -0,0 +1,11 @@ +os: epmp +text: 'Cambium epmp' +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.21 diff --git a/priv/profiles/os_detection/epson-projector.yaml b/priv/profiles/os_detection/epson-projector.yaml new file mode 100644 index 00000000..5ddb4648 --- /dev/null +++ b/priv/profiles/os_detection/epson-projector.yaml @@ -0,0 +1,8 @@ +os: epson-projector +text: 'Epson Projector' +type: collaboration +icon: epson +group: epson +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1248.4 diff --git a/priv/profiles/os_detection/epson-scanner.yaml b/priv/profiles/os_detection/epson-scanner.yaml new file mode 100644 index 00000000..10d2f684 --- /dev/null +++ b/priv/profiles/os_detection/epson-scanner.yaml @@ -0,0 +1,11 @@ +os: epson-scanner +text: 'Epson Scanner' +type: printer +icon: epson +group: epson +snmp_bulk: false +bad_iftype: + - softwareLoopback +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1248.1.1.2.1.3.22.78.101.116.119.111.114.107.32.73.110.116.101.114.102.97.99.101.32.85.110.105.116 diff --git a/priv/profiles/os_detection/epson.yaml b/priv/profiles/os_detection/epson.yaml new file mode 100644 index 00000000..875e33e3 --- /dev/null +++ b/priv/profiles/os_detection/epson.yaml @@ -0,0 +1,15 @@ +os: epson +group: printer +text: 'Epson Printer' +type: printer +icon: epson +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - 'EPSON Built-in' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/equallogic.yaml b/priv/profiles/os_detection/equallogic.yaml new file mode 100644 index 00000000..93202951 --- /dev/null +++ b/priv/profiles/os_detection/equallogic.yaml @@ -0,0 +1,13 @@ +os: equallogic +text: 'Dell EqualLogic' +type: storage +icon: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: dell +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12740.17.1 + - .1.3.6.1.4.1.12740.12.1. diff --git a/priv/profiles/os_detection/ericsson-6600.yaml b/priv/profiles/os_detection/ericsson-6600.yaml new file mode 100644 index 00000000..25075738 --- /dev/null +++ b/priv/profiles/os_detection/ericsson-6600.yaml @@ -0,0 +1,11 @@ +os: ericsson-6600 +text: 'Ericsson 6600 series' +type: wireless +icon: ericsson +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.193.81.1.1.3 + sysDescr_except: + - 'MINI-LINK Traffic Node' +mib_dir: ericsson diff --git a/priv/profiles/os_detection/ericsson-ipos.yaml b/priv/profiles/os_detection/ericsson-ipos.yaml new file mode 100644 index 00000000..bbd6a1b7 --- /dev/null +++ b/priv/profiles/os_detection/ericsson-ipos.yaml @@ -0,0 +1,26 @@ +os: ericsson-ipos +group: ericsson +text: 'Ericsson IPOS' +type: network +icon: ericsson +mib_dir: ericsson +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_storage, text: 'Device Storage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.193.218.1.40 # { ericssonProducts 6672 } -- Ericsson 6672 + - .1.3.6.1.4.1.193.218.1.41 # { ericssonProducts 6274 } -- Ericsson 6274 + - .1.3.6.1.4.1.193.218.1.42 # { ericssonProducts 6675 } -- Ericsson 6675 + - .1.3.6.1.4.1.193.218.1.43 # { ericssonProducts 6x71 } -- Ericsson 6371 and 6471 + - .1.3.6.1.4.1.193.218.1.44 # { ericssonProducts 6273 } -- Ericsson 6273 + - .1.3.6.1.4.1.193.218.1.45 # { ericssonProducts 6671 } -- Ericsson 6671 + - .1.3.6.1.4.1.193.218.1.17 # SSR 8020 + - .1.3.6.1.4.1.193.218.1.18 # SSR 8010 + - .1.3.6.1.4.1.193.218.1.19 # SSR 8004 + sysDescr_regex: + - '/^Ericsson\s+IPOS/' +discovery_modules: + vrf: true diff --git a/priv/profiles/os_detection/ericsson-ml.yaml b/priv/profiles/os_detection/ericsson-ml.yaml new file mode 100644 index 00000000..d0a11267 --- /dev/null +++ b/priv/profiles/os_detection/ericsson-ml.yaml @@ -0,0 +1,13 @@ +os: ericsson-ml +text: 'Ericsson MINI-LINK' +type: wireless +empty_ifdescr: true +icon: ericsson +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.193.223.2.1 +mib_dir: ericsson + diff --git a/priv/profiles/os_detection/ericsson-tn.yaml b/priv/profiles/os_detection/ericsson-tn.yaml new file mode 100644 index 00000000..d8784059 --- /dev/null +++ b/priv/profiles/os_detection/ericsson-tn.yaml @@ -0,0 +1,9 @@ +os: ericsson-tn +text: 'Ericsson Traffic Node' +type: wireless +icon: ericsson +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.193.81.1.1.3 +mib_dir: ericsson diff --git a/priv/profiles/os_detection/esphome.yaml b/priv/profiles/os_detection/esphome.yaml new file mode 100644 index 00000000..062a11e0 --- /dev/null +++ b/priv/profiles/os_detection/esphome.yaml @@ -0,0 +1,11 @@ +os: esphome +text: 'ESP-Home' +type: appliance +icon: esphome +snmp_bulk: false +over: + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_dbm, text: 'Wifi RSSI' } +discovery: + - sysDescr: + - 'ESPHome' diff --git a/priv/profiles/os_detection/etherwan.yaml b/priv/profiles/os_detection/etherwan.yaml new file mode 100644 index 00000000..70ec369f --- /dev/null +++ b/priv/profiles/os_detection/etherwan.yaml @@ -0,0 +1,11 @@ +os: etherwan +text: 'Etherwan Managed Switch' +type: network +icon: etherwan +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2736. diff --git a/priv/profiles/os_detection/ets.yaml b/priv/profiles/os_detection/ets.yaml new file mode 100644 index 00000000..809d73b9 --- /dev/null +++ b/priv/profiles/os_detection/ets.yaml @@ -0,0 +1,13 @@ +os: ets +text: 'Gude Expert Transfer Switch' +type: power +icon: gude +group: gude +mib_dir: gude +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_state, text: States } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28507.4 diff --git a/priv/profiles/os_detection/eurostor.yaml b/priv/profiles/os_detection/eurostor.yaml new file mode 100644 index 00000000..589c0bec --- /dev/null +++ b/priv/profiles/os_detection/eurostor.yaml @@ -0,0 +1,8 @@ +os: eurostor +text: 'EUROstor RAID Subsystem' +icon: eurostor +type: appliance +mib_dir: proware +discovery: + - + sysObjectID: .1.3.6.1.4.1.14752.1.3 diff --git a/priv/profiles/os_detection/ewc.yaml b/priv/profiles/os_detection/ewc.yaml new file mode 100644 index 00000000..3b9101d0 --- /dev/null +++ b/priv/profiles/os_detection/ewc.yaml @@ -0,0 +1,15 @@ +os: ewc +text: 'Extreme Wireless Convergence' +type: wireless +icon: extreme +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_wireless_ap-count, text: 'Connected APs' } + - { graph: device_wireless_clients, text: 'Connected Clients' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4329.15.1.1. +mib_dir: enterasys diff --git a/priv/profiles/os_detection/exa.yaml b/priv/profiles/os_detection/exa.yaml new file mode 100644 index 00000000..0609dd37 --- /dev/null +++ b/priv/profiles/os_detection/exa.yaml @@ -0,0 +1,14 @@ +os: exa +text: Calix EXA +type: network +ifname: true +empty_ifdescr: true +icon: calix +mib_dir: calix +over: + - { graph: device_bits, text: 'Device Traffic' } +snmp_max_oid: 8 +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6321.1.2.2 diff --git a/priv/profiles/os_detection/exagridos.yaml b/priv/profiles/os_detection/exagridos.yaml new file mode 100644 index 00000000..e6aeaaa8 --- /dev/null +++ b/priv/profiles/os_detection/exagridos.yaml @@ -0,0 +1,14 @@ +os: exagridos +text: 'Exagrid' +type: storage +icon: exagrid +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: exagrid +discovery: + - + sysDescr: + - 'ExaGrid' diff --git a/priv/profiles/os_detection/exalink-fusion.yaml b/priv/profiles/os_detection/exalink-fusion.yaml new file mode 100644 index 00000000..ac21139d --- /dev/null +++ b/priv/profiles/os_detection/exalink-fusion.yaml @@ -0,0 +1,26 @@ +os: exalink-fusion +text: 'Cisco Nexus 3550 Series' +type: network +icon: cisco +discovery: + - sysObjectID: + - .1.3.6.1.4.1.43296. +mib_dir: exalink-fusion +poller_modules: + ipmi: false + processors: false + mempools: false + storage: false + ospf: false + ucd-diskio: false + wireless: false + applications: false + +discovery_modules: + processors: false + mempools: false + storage: false + ospf: false + ucd-diskio: false + cisco-vrf-lite: false + wireless: false diff --git a/priv/profiles/os_detection/exinda.yaml b/priv/profiles/os_detection/exinda.yaml new file mode 100644 index 00000000..da6c36e7 --- /dev/null +++ b/priv/profiles/os_detection/exinda.yaml @@ -0,0 +1,12 @@ +os: exinda +text: Exinda +type: appliance +icon: exinda +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21091 diff --git a/priv/profiles/os_detection/exos.yaml b/priv/profiles/os_detection/exos.yaml new file mode 100644 index 00000000..38e8628f --- /dev/null +++ b/priv/profiles/os_detection/exos.yaml @@ -0,0 +1,12 @@ +os: exos +text: Exos +type: storage +icon: seagate +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_current, text: 'Current' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.347.2.5730 diff --git a/priv/profiles/os_detection/extendair.yaml b/priv/profiles/os_detection/extendair.yaml new file mode 100644 index 00000000..83b72d08 --- /dev/null +++ b/priv/profiles/os_detection/extendair.yaml @@ -0,0 +1,13 @@ +os: extendair +text: 'Exalt ExtendAir' +type: wireless +icon: exalt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_temperature, text: Temperatures } + - { graph: device_state, text: States } +mib_dir: exalt +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25651.1. diff --git a/priv/profiles/os_detection/extrahop.yaml b/priv/profiles/os_detection/extrahop.yaml new file mode 100644 index 00000000..260e7df2 --- /dev/null +++ b/priv/profiles/os_detection/extrahop.yaml @@ -0,0 +1,19 @@ +os: extrahop +type: network +group: unix +text: 'Extrahop Appliance' +icon: extrahop +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: extrahopInfoVersionString + mib: EXTRAHOP-MIB + mib_dir: extrahop + op: '!=' + value: false diff --git a/priv/profiles/os_detection/extremeware.yaml b/priv/profiles/os_detection/extremeware.yaml new file mode 100644 index 00000000..4801624c --- /dev/null +++ b/priv/profiles/os_detection/extremeware.yaml @@ -0,0 +1,15 @@ +os: extremeware +text: Extremeware +type: network +ifname: true +icon: extreme +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1916.2. + sysDescr: + - Release_Master diff --git a/priv/profiles/os_detection/f5.yaml b/priv/profiles/os_detection/f5.yaml new file mode 100644 index 00000000..0dab3f32 --- /dev/null +++ b/priv/profiles/os_detection/f5.yaml @@ -0,0 +1,16 @@ +os: f5 +text: 'F5 Big IP' +type: loadbalancer +icon: f5 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3375.2.1 +poller_modules: + loadbalancers: true +discovery_modules: + loadbalancers: true diff --git a/priv/profiles/os_detection/f5os.yaml b/priv/profiles/os_detection/f5os.yaml new file mode 100644 index 00000000..3c5d0df3 --- /dev/null +++ b/priv/profiles/os_detection/f5os.yaml @@ -0,0 +1,13 @@ +os: f5os +text: F5OS +type: network +icon: f5 +empty_ifdescr: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: f5 +discovery: + - sysObjectID: + - .1.3.6.1.4.1.12276. diff --git a/priv/profiles/os_detection/fabos.yaml b/priv/profiles/os_detection/fabos.yaml new file mode 100644 index 00000000..a7a57ccc --- /dev/null +++ b/priv/profiles/os_detection/fabos.yaml @@ -0,0 +1,11 @@ +os: fabos +text: 'Brocade FabricOS' +type: network +icon: brocade +group: brocade +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1588.2.1.1. diff --git a/priv/profiles/os_detection/feos.yaml b/priv/profiles/os_detection/feos.yaml new file mode 100644 index 00000000..580b4390 --- /dev/null +++ b/priv/profiles/os_detection/feos.yaml @@ -0,0 +1,13 @@ +os: feos +group: trellix +text: 'FireEye OS' +type: appliance +icon: trellix +mib_dir: trellix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.25597.1 \ No newline at end of file diff --git a/priv/profiles/os_detection/fiberhome-switch.yaml b/priv/profiles/os_detection/fiberhome-switch.yaml new file mode 100644 index 00000000..b8b73c3a --- /dev/null +++ b/priv/profiles/os_detection/fiberhome-switch.yaml @@ -0,0 +1,12 @@ +os: fiberhome-switch +text: 'FiberHome Switch' +type: network +icon: fiberhome +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3807.1. +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: fiberhome diff --git a/priv/profiles/os_detection/fiberhome.yaml b/priv/profiles/os_detection/fiberhome.yaml new file mode 100644 index 00000000..20d8e2ec --- /dev/null +++ b/priv/profiles/os_detection/fiberhome.yaml @@ -0,0 +1,34 @@ +os: fiberhome +text: Fiberhome +type: network +icon: fiberhome +discovery: + - + sysDescr_regex: '/^AN5516-0(1|6|4|4B)$/' +discovery_modules: + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + entity-physical: false + ports: false + ports-stack: false + wireless: false + discovery-protocols: false + storage: false + ucd-diskio: false +poller_modules: + applications: false + bgp-peers: false + entity-physical: false + hr-mib: false + ipSystemStats: false + ipmi: false + ntp: false + ospf: false + ports: false + services: false + storage: false + stp: false + ucd-diskio: false + ucd-mib: false + wireless: false diff --git a/priv/profiles/os_detection/fibernet-xmux4-plus.yaml b/priv/profiles/os_detection/fibernet-xmux4-plus.yaml new file mode 100755 index 00000000..34eef2f8 --- /dev/null +++ b/priv/profiles/os_detection/fibernet-xmux4-plus.yaml @@ -0,0 +1,12 @@ +os: fibernet-xmux4-plus +text: 'Fibernet XMUX 4+' +type: network +icon: fibernet +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.29003.2.44.1 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: fibernet diff --git a/priv/profiles/os_detection/fibrolan-falcon.yaml b/priv/profiles/os_detection/fibrolan-falcon.yaml new file mode 100644 index 00000000..acc30861 --- /dev/null +++ b/priv/profiles/os_detection/fibrolan-falcon.yaml @@ -0,0 +1,13 @@ +os: fibrolan-falcon +text: 'FibroLAN Falcon OS' +type: network +icon: fibrolan +mib_dir: fibrolan +group: fibrolan +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.4467.1000. diff --git a/priv/profiles/os_detection/fibrolan-metrostar.yaml b/priv/profiles/os_detection/fibrolan-metrostar.yaml new file mode 100644 index 00000000..7e17ad2c --- /dev/null +++ b/priv/profiles/os_detection/fibrolan-metrostar.yaml @@ -0,0 +1,13 @@ +os: fibrolan-metrostar +text: 'FibroLAN MetroStar OS' +type: network +icon: fibrolan +mib_dir: fibrolan +group: fibrolan +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.4467.100.100.10 diff --git a/priv/profiles/os_detection/firebrick.yaml b/priv/profiles/os_detection/firebrick.yaml new file mode 100644 index 00000000..74a44c97 --- /dev/null +++ b/priv/profiles/os_detection/firebrick.yaml @@ -0,0 +1,14 @@ +os: firebrick +text: 'Firebrick' +type: network +icon: firebrick +group: firebrick +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.24693.1. +poller_modules: + cipsec-tunnels: true diff --git a/priv/profiles/os_detection/fireware.yaml b/priv/profiles/os_detection/fireware.yaml new file mode 100644 index 00000000..e27bdee8 --- /dev/null +++ b/priv/profiles/os_detection/fireware.yaml @@ -0,0 +1,13 @@ +os: fireware +text: 'Watchguard Fireware' +type: firewall +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } +icon: watchguard +group: watchguard +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3097.1.4 + - .1.3.6.1.4.1.3097.1.5 diff --git a/priv/profiles/os_detection/flareos.yaml b/priv/profiles/os_detection/flareos.yaml new file mode 100644 index 00000000..ef93a97f --- /dev/null +++ b/priv/profiles/os_detection/flareos.yaml @@ -0,0 +1,10 @@ +os: flareos +text: 'EMC Flare OS' +type: storage +icon: emc +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1981.1.1 diff --git a/priv/profiles/os_detection/flexbng.yaml b/priv/profiles/os_detection/flexbng.yaml new file mode 100644 index 00000000..e365c2a6 --- /dev/null +++ b/priv/profiles/os_detection/flexbng.yaml @@ -0,0 +1,13 @@ +os: flexbng +text: 'NetElastic Flex BNG' +type: network +icon: netelastic +mib_dir: netelastic +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.54268 diff --git a/priv/profiles/os_detection/forcepoint-fe.yaml b/priv/profiles/os_detection/forcepoint-fe.yaml new file mode 100644 index 00000000..fa4945d1 --- /dev/null +++ b/priv/profiles/os_detection/forcepoint-fe.yaml @@ -0,0 +1,13 @@ +os: forcepoint-fe +text: 'Forcepoint FlexEdge Secure SD-WAN' +type: firewall +icon: forcepoint +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.47565.1.1 + +mib_dir: forcepoint diff --git a/priv/profiles/os_detection/forcepoint.yaml b/priv/profiles/os_detection/forcepoint.yaml new file mode 100644 index 00000000..62b90e3f --- /dev/null +++ b/priv/profiles/os_detection/forcepoint.yaml @@ -0,0 +1,13 @@ +os: forcepoint +text: 'Forcepoint NGFW' +type: firewall +icon: forcepoint +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1369.5.2 + +mib_dir: forcepoint diff --git a/priv/profiles/os_detection/fortiadc.yaml b/priv/profiles/os_detection/fortiadc.yaml new file mode 100644 index 00000000..525246c6 --- /dev/null +++ b/priv/profiles/os_detection/fortiadc.yaml @@ -0,0 +1,13 @@ +os: fortiadc +text: 'Fortinet Application Deliver Controller' +type: loadbalancer +icon: fortinet +mib_dir: fortinet +empty_ifdescr: true +ifname: true +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.12356.112.100 #FortiADC diff --git a/priv/profiles/os_detection/fortiap.yaml b/priv/profiles/os_detection/fortiap.yaml new file mode 100644 index 00000000..005db67d --- /dev/null +++ b/priv/profiles/os_detection/fortiap.yaml @@ -0,0 +1,10 @@ +os: fortiap +text: 'Fortinet FortiAP' +type: wireless +icon: fortinet +group: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.12356.120.10 diff --git a/priv/profiles/os_detection/fortiauthenticator.yaml b/priv/profiles/os_detection/fortiauthenticator.yaml new file mode 100644 index 00000000..c15b81e9 --- /dev/null +++ b/priv/profiles/os_detection/fortiauthenticator.yaml @@ -0,0 +1,19 @@ +os: fortiauthenticator +text: 'Fortinet FortiAuthenticator' +type: firewall +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr: + - 'FortiAuthenticator' + - + sysObjectID: + # Fireware 6.0+ + - .1.3.6.1.4.1.12356.113.100. diff --git a/priv/profiles/os_detection/fortiextender.yaml b/priv/profiles/os_detection/fortiextender.yaml new file mode 100644 index 00000000..cef6ab97 --- /dev/null +++ b/priv/profiles/os_detection/fortiextender.yaml @@ -0,0 +1,14 @@ +os: fortiextender +text: 'Fortinet FortiExtender' +type: network +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.121. #FortiExtender + diff --git a/priv/profiles/os_detection/fortigate.yaml b/priv/profiles/os_detection/fortigate.yaml new file mode 100644 index 00000000..26ad635e --- /dev/null +++ b/priv/profiles/os_detection/fortigate.yaml @@ -0,0 +1,16 @@ +os: fortigate +text: 'Fortinet Fortigate' +type: firewall +icon: fortinet +mib_dir: fortinet +empty_ifdescr: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_fortigate_cpu, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.15 + - .1.3.6.1.4.1.12356.101.1 #FortiGate diff --git a/priv/profiles/os_detection/fortimail.yaml b/priv/profiles/os_detection/fortimail.yaml new file mode 100644 index 00000000..28f5b0e9 --- /dev/null +++ b/priv/profiles/os_detection/fortimail.yaml @@ -0,0 +1,13 @@ +os: fortimail +text: 'Fortinet FortiMail' +type: firewall +icon: fortinet +group: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.105 diff --git a/priv/profiles/os_detection/fortios.yaml b/priv/profiles/os_detection/fortios.yaml new file mode 100644 index 00000000..76724dc1 --- /dev/null +++ b/priv/profiles/os_detection/fortios.yaml @@ -0,0 +1,13 @@ +os: fortios +text: FortiOS +type: appliance +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.103 #FortiManager diff --git a/priv/profiles/os_detection/fortisandbox.yaml b/priv/profiles/os_detection/fortisandbox.yaml new file mode 100644 index 00000000..1a1d1d45 --- /dev/null +++ b/priv/profiles/os_detection/fortisandbox.yaml @@ -0,0 +1,14 @@ +os: fortisandbox +text: 'Fortinet FortiSandbox' +type: firewall +icon: fortinet +group: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.118.1 diff --git a/priv/profiles/os_detection/fortiswitch.yaml b/priv/profiles/os_detection/fortiswitch.yaml new file mode 100644 index 00000000..d1d9de92 --- /dev/null +++ b/priv/profiles/os_detection/fortiswitch.yaml @@ -0,0 +1,13 @@ +os: fortiswitch +text: 'Fortinet FortiSwitch' +type: network +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.106. #FortiSwitch diff --git a/priv/profiles/os_detection/fortivoice.yaml b/priv/profiles/os_detection/fortivoice.yaml new file mode 100644 index 00000000..59328a7e --- /dev/null +++ b/priv/profiles/os_detection/fortivoice.yaml @@ -0,0 +1,13 @@ +os: fortivoice +text: 'Fortinet FortiVoice' +type: firewall +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.115 diff --git a/priv/profiles/os_detection/fortiweb.yaml b/priv/profiles/os_detection/fortiweb.yaml new file mode 100644 index 00000000..40188215 --- /dev/null +++ b/priv/profiles/os_detection/fortiweb.yaml @@ -0,0 +1,13 @@ +os: fortiweb +text: 'Fortinet FortiWeb' +type: firewall +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12356.107.1 diff --git a/priv/profiles/os_detection/fortiwlc.yaml b/priv/profiles/os_detection/fortiwlc.yaml new file mode 100644 index 00000000..80de7a6f --- /dev/null +++ b/priv/profiles/os_detection/fortiwlc.yaml @@ -0,0 +1,13 @@ +os: fortiwlc +text: 'Fortinet FortiWLC' +type: network +icon: fortinet +mib_dir: fortinet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.15983.1.1 diff --git a/priv/profiles/os_detection/foundryos.yaml b/priv/profiles/os_detection/foundryos.yaml new file mode 100644 index 00000000..3bd87c3d --- /dev/null +++ b/priv/profiles/os_detection/foundryos.yaml @@ -0,0 +1,13 @@ +os: foundryos +text: 'Foundry Networking' +type: network +icon: foundry +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: foundry +discovery: + - + sysDescr: + - Foundry Networks diff --git a/priv/profiles/os_detection/freebsd.yaml b/priv/profiles/os_detection/freebsd.yaml new file mode 100644 index 00000000..e8e9e142 --- /dev/null +++ b/priv/profiles/os_detection/freebsd.yaml @@ -0,0 +1,16 @@ +os: freebsd +type: server +group: unix +text: FreeBSD +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery_modules: + applications: true +discovery: + - + sysDescr: FreeBSD + sysDescr_except: + - FreeNAS + - TrueNAS diff --git a/priv/profiles/os_detection/freshtomato.yaml b/priv/profiles/os_detection/freshtomato.yaml new file mode 100644 index 00000000..23c85891 --- /dev/null +++ b/priv/profiles/os_detection/freshtomato.yaml @@ -0,0 +1,15 @@ +os: freshtomato +text: FreshTomato +type: network +icon: tomato +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.8072.1.3.2.2.1.3.7.118.101.114.115.105.111.110 + op: starts + value: FreshTomato diff --git a/priv/profiles/os_detection/fs-bdcom.yaml b/priv/profiles/os_detection/fs-bdcom.yaml new file mode 100644 index 00000000..0dfb12d5 --- /dev/null +++ b/priv/profiles/os_detection/fs-bdcom.yaml @@ -0,0 +1,17 @@ +os: fs-bdcom +text: 'Fiberstore (BDCOM)' +type: network +icon: fs +group: fs +mib_dir: fs/bdcom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.52642.1.445.0 # S3400 Series + - .1.3.6.1.4.1.52642.1.458.0 # S3900-24F4S-R + - .1.3.6.1.4.1.52642.1.446.0 # S3900-24T4S-R + - .1.3.6.1.4.1.52642.1.2039.0 # S3900-48T6S-R diff --git a/priv/profiles/os_detection/fs-centec.yaml b/priv/profiles/os_detection/fs-centec.yaml new file mode 100644 index 00000000..9f66adbf --- /dev/null +++ b/priv/profiles/os_detection/fs-centec.yaml @@ -0,0 +1,19 @@ +os: fs-centec +text: 'Fiberstore (Centec CNOS)' +type: network +icon: fs +group: fs +mib_dir: fs/centec +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.52642.1.99 + #- .1.3.6.1.4.1.52642.1.99.5638 # S5850-48B8C + #- .1.3.6.1.4.1.52642.1.99.5802 # S5850-48S2Q4C +oids: + no_bulk: + - Q-BRIDGE-MIB::dot1qVlanStaticEgressPorts diff --git a/priv/profiles/os_detection/fs-gbn.yaml b/priv/profiles/os_detection/fs-gbn.yaml new file mode 100644 index 00000000..a9a061a9 --- /dev/null +++ b/priv/profiles/os_detection/fs-gbn.yaml @@ -0,0 +1,14 @@ +os: fs-gbn +text: 'Fiberstore GBN' +type: network +icon: fs +group: fs +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: fs +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.13464 diff --git a/priv/profiles/os_detection/fs-net-pdu.yaml b/priv/profiles/os_detection/fs-net-pdu.yaml new file mode 100644 index 00000000..c3400b83 --- /dev/null +++ b/priv/profiles/os_detection/fs-net-pdu.yaml @@ -0,0 +1,15 @@ +os: fs-net-pdu +text: 'FS.COM monitored pdu' +type: power +icon: fs +group: fs +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30966 + - + sysDescr: + - 'net-pdu' diff --git a/priv/profiles/os_detection/fs-nmu.yaml b/priv/profiles/os_detection/fs-nmu.yaml new file mode 100644 index 00000000..3cd36c16 --- /dev/null +++ b/priv/profiles/os_detection/fs-nmu.yaml @@ -0,0 +1,10 @@ +--- +os: fs-nmu +text: 'Network Management Unit' +type: network +icon: fs +group: fs +mib_dir: fs +discovery: + - sysObjectID: + - .1.3.6.1.2.1.1.2 diff --git a/priv/profiles/os_detection/fs-switch-dc.yaml b/priv/profiles/os_detection/fs-switch-dc.yaml new file mode 100644 index 00000000..0aff83d4 --- /dev/null +++ b/priv/profiles/os_detection/fs-switch-dc.yaml @@ -0,0 +1,21 @@ +os: fs-switch-dc +text: 'Fiberstore Datacenter Switch' +type: network +icon: fs +group: fs +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: fs +poller_modules: + stp: false + wireless: false +discovery_modules: + stp: false + wireless: false +discovery: + - sysObjectID: + - .1.3.6.1.4.1.52642.1.1.10.1.516 + - .1.3.6.1.4.1.52642.1.1.10.1.805 + - .1.3.6.1.4.1.52642.1.1.10.1.514 diff --git a/priv/profiles/os_detection/fs-switch.yaml b/priv/profiles/os_detection/fs-switch.yaml new file mode 100644 index 00000000..f540ddfe --- /dev/null +++ b/priv/profiles/os_detection/fs-switch.yaml @@ -0,0 +1,27 @@ +os: fs-switch +text: 'Fiberstore Switch' +type: network +icon: fs +group: fs +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: fs +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.51134 + - .1.3.6.1.4.1.52642 + - .1.3.6.1.4.1.27975 + - .1.3.6.1.4.1.12345 + # - .1.3.6.1.4.1.52642.2.1.45.101 # S3900-24T4S + # - .1.3.6.1.4.1.52642.2.1.45.103 # S3900-24F4S + sysObjectID_except: + - .1.3.6.1.4.1.52642.1.1.10.1.805 + - .1.3.6.1.4.1.52642.1.1.10.1.514 + - .1.3.6.1.4.1.52642.1.445.0 # S3400 Series + - .1.3.6.1.4.1.52642.1.458.0 # S3900-24F4S-R + - .1.3.6.1.4.1.52642.1.446.0 # S3900-24T4S-R + - .1.3.6.1.4.1.52642.1.2039.0 # S3900-48T6S-R + - .1.3.6.1.4.1.52642.1.99 # S5800/S5850 Series (fs-centec) diff --git a/priv/profiles/os_detection/ftd.yaml b/priv/profiles/os_detection/ftd.yaml new file mode 100644 index 00000000..d1c35e53 --- /dev/null +++ b/priv/profiles/os_detection/ftd.yaml @@ -0,0 +1,50 @@ +os: ftd +text: 'Cisco FTD' +type: firewall +icon: cisco +group: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_ping_perf, text: 'ICMP Response' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.1902 # { ciscoProducts 1902 } -- Cisco FirePOWER Virtual Appliance + - .1.3.6.1.4.1.9.1.2313 # { ciscoProducts 2413 } -- Cisco FirePOWER 4110 Security module + - .1.3.6.1.4.1.9.1.2315 # { ciscoProducts 2315 } -- Cisco FirePOWER 4140 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2319 + - .1.3.6.1.4.1.9.1.2404 # { ciscoProducts 2404 } -- Cisco FirePOWER 2110 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2405 # { ciscoProducts 2405 } -- Cisco FirePOWER 2120 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2406 # { ciscoProducts 2406 } -- Cisco FirePOWER 2130 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2407 # { ciscoProducts 2407 } -- Cisco FirePOWER 2140 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2409 # { ciscoProducts 2409 } -- Cisco FirePOWER 9000 Security Appliance + - .1.3.6.1.4.1.9.1.2483 # { ciscoProducts 2483 } -- Cisco FirePOWER 1010 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2662 # { ciscoProducts 2662 } -- Cisco FirePOWER 1140 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2663 # { ciscoProducts 2663 } -- Cisco FirePOWER 1120 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2991 # { ciscoProducts 2991 } -- Cisco FirePOWER 4112 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2774 # { ciscoProducts 2774 } -- Cisco FirePOWER 4115 Security Module 24 + - .1.3.6.1.4.1.9.1.2775 # { ciscoProducts 2775 } -- Cisco FirePOWER 4125 Security Appliance + - .1.3.6.1.4.1.9.1.2295 # { ciscoProducts 2295 } -- Cisco FirePOWER 4110 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2294 # { ciscoProducts 2294 } -- Cisco FirePOWER 4120 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2778 # { ciscoProducts 2778 } -- Cisco FirePOWER 4125 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.2870 # { ciscoProducts 2870 } -- Cisco FirePOWER 1150 Security Appliance, 1U with embedded security + - .1.3.6.1.4.1.9.1.3041 # { ciscoProducts 3041 } -- Cisco Secure Firewall 4245 Threat Defense Module 79 + - .1.3.6.1.4.1.9.1.3053 # { ciscoProducts 3053 } -- Cisco Secure Firewall 3110 Security Appliance + - .1.3.6.1.4.1.9.1.3054 # { ciscoProducts 3054 } -- Cisco Secure Firewall 3120 Security Appliance + - .1.3.6.1.4.1.9.1.3055 # { ciscoProducts 3055 } -- Cisco Secure Firewall 3130 Security Appliance + - .1.3.6.1.4.1.9.1.3056 # { ciscoProducts 3056 } -- Cisco Secure Firewall 3140 Security Appliance + - .1.3.6.1.4.1.9.1.3057 # { ciscoProducts 3057 } -- Cisco Secure Firewall 3105 Security Appliance + - .1.3.6.1.4.1.9.1.3166 # { ciscoProducts 3166 } -- Cisco Secure Firewall 3105 Security Appliance - Cisco FTD 7.4.2.1 (Build 30) + - .1.3.6.1.4.1.9.1.3257 # { ciscoProducts 3257 } -- Cisco Firepower 1010E Threat Defense + - .1.3.6.1.4.1.9.1.3305 # { ciscoProducts 3305 } -- Cisco Secure Firewall 1220 Threat Defense + +discovery_modules: + entity-physical: false + cisco-vrf-lite: false + sensors: false + storage: false + hr-device: false + arp-table: false + ucd-diskio: false + services: false + wireless: false diff --git a/priv/profiles/os_detection/ftos.yaml b/priv/profiles/os_detection/ftos.yaml new file mode 100644 index 00000000..285357e3 --- /dev/null +++ b/priv/profiles/os_detection/ftos.yaml @@ -0,0 +1,14 @@ +os: ftos +text: 'Force10 FTOS' +type: network +icon: force10 +mib_dir: dell +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - 'Force10 Operating System' + - 'Force10 Networks Real Time Operating System Software' diff --git a/priv/profiles/os_detection/fujifilmprinter.yaml b/priv/profiles/os_detection/fujifilmprinter.yaml new file mode 100644 index 00000000..c9d8c5a6 --- /dev/null +++ b/priv/profiles/os_detection/fujifilmprinter.yaml @@ -0,0 +1,13 @@ +os: fujifilmprinter +text: 'Fujifilm Printer' +type: printer +icon: fujifilm +over: + - { graph: device_toner, text: Toner } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.297.1.11.93.2.1 +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/fujitsueternusos.yaml b/priv/profiles/os_detection/fujitsueternusos.yaml new file mode 100644 index 00000000..9593a879 --- /dev/null +++ b/priv/profiles/os_detection/fujitsueternusos.yaml @@ -0,0 +1,13 @@ +os: fujitsueternusos +text: 'Fujitsu ETERNUS' +type: storage +icon: fujitsu +mib_dir: fujitsu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.211.1.21.1.150 diff --git a/priv/profiles/os_detection/fujitsuiRMC.yaml b/priv/profiles/os_detection/fujitsuiRMC.yaml new file mode 100644 index 00000000..63fad3b8 --- /dev/null +++ b/priv/profiles/os_detection/fujitsuiRMC.yaml @@ -0,0 +1,13 @@ +os: fujitsuiRMC +text: 'FUJITSU iRMC' +icon: fujitsu +type: appliance +mib_dir: fujitsu +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.231 + sysDescr: + - 'Primergy' + - + sysDescr: 'FUJITSU Out-of-band SNMP Agent for iRMC' diff --git a/priv/profiles/os_detection/fujitsupyos.yaml b/priv/profiles/os_detection/fujitsupyos.yaml new file mode 100644 index 00000000..725408f6 --- /dev/null +++ b/priv/profiles/os_detection/fujitsupyos.yaml @@ -0,0 +1,12 @@ +os: fujitsupyos +text: Fujitsu +type: network +icon: fujitsu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - 'PY CB Eth Switch' diff --git a/priv/profiles/os_detection/fusion.yaml b/priv/profiles/os_detection/fusion.yaml new file mode 100644 index 00000000..f12077a1 --- /dev/null +++ b/priv/profiles/os_detection/fusion.yaml @@ -0,0 +1,13 @@ +os: fusion +text: 'IgniteNet FusionSwitch' +type: network +icon: ignitenet +group: ignitenet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.259.6.10.120 diff --git a/priv/profiles/os_detection/fusionhub.yaml b/priv/profiles/os_detection/fusionhub.yaml new file mode 100644 index 00000000..1fc670c8 --- /dev/null +++ b/priv/profiles/os_detection/fusionhub.yaml @@ -0,0 +1,9 @@ +os: fusionhub +text: FusionHub +type: appliance +icon: peplink +group: unix +mib_dir: peplink +discovery: + - + sysObjectID: .1.3.6.1.4.1.23695 diff --git a/priv/profiles/os_detection/fxm.yaml b/priv/profiles/os_detection/fxm.yaml new file mode 100644 index 00000000..8da3be15 --- /dev/null +++ b/priv/profiles/os_detection/fxm.yaml @@ -0,0 +1,14 @@ +os: fxm +text: 'Alpha FXM' +type: power +icon: alpha +group: alpha +over: + - { graph: device_voltage, text: 'Device Voltage' } + - { graph: device_current, text: 'Device Current' } + - { graph: device_power, text: 'Device Power' } + - { graph: device_frequency, text: 'Device Frequency' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7309.6 diff --git a/priv/profiles/os_detection/fxos.yaml b/priv/profiles/os_detection/fxos.yaml new file mode 100644 index 00000000..7d33fe36 --- /dev/null +++ b/priv/profiles/os_detection/fxos.yaml @@ -0,0 +1,29 @@ +os: fxos +group: cisco +text: 'Cisco FX-OS' +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: cisco +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'Cisco FX-OS' diff --git a/priv/profiles/os_detection/gaia.yaml b/priv/profiles/os_detection/gaia.yaml new file mode 100644 index 00000000..eb3dae42 --- /dev/null +++ b/priv/profiles/os_detection/gaia.yaml @@ -0,0 +1,26 @@ +os: gaia +text: 'Check Point GAiA' +type: firewall +icon: checkpoint +ifname: true +mib_dir: checkpoint +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2620.1.6.123.1 + - .1.3.6.1.4.1.2620.1.1 + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: CHECKPOINT-MIB::osName.0 + mib_dir: checkpoint + op: contains + value: Gaia +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/gam.yaml b/priv/profiles/os_detection/gam.yaml new file mode 100644 index 00000000..8acfefd4 --- /dev/null +++ b/priv/profiles/os_detection/gam.yaml @@ -0,0 +1,13 @@ +os: gam +text: Positron Access Solutions GAM +icon: positron-access +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_temperature, text: 'Temperatures' } +type: network +mib_dir: positron +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.20095.2000.1. diff --git a/priv/profiles/os_detection/gamatronicups.yaml b/priv/profiles/os_detection/gamatronicups.yaml new file mode 100644 index 00000000..4eb3d23c --- /dev/null +++ b/priv/profiles/os_detection/gamatronicups.yaml @@ -0,0 +1,8 @@ +os: gamatronicups +text: 'Gamatronic UPS Stack' +type: power +mib_dir: gamatronic +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6050.5 diff --git a/priv/profiles/os_detection/ge-ups.yaml b/priv/profiles/os_detection/ge-ups.yaml new file mode 100644 index 00000000..237123bf --- /dev/null +++ b/priv/profiles/os_detection/ge-ups.yaml @@ -0,0 +1,14 @@ +os: ge-ups +text: 'GE Digital Energy UPS' +group: ups +type: power +icon: ge +rfc1628_compat: true +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.818.1.100.1.1 diff --git a/priv/profiles/os_detection/geist-pdu.yaml b/priv/profiles/os_detection/geist-pdu.yaml new file mode 100644 index 00000000..ed1bbbce --- /dev/null +++ b/priv/profiles/os_detection/geist-pdu.yaml @@ -0,0 +1,14 @@ +os: geist-pdu +text: 'Geist PDU' +type: power +icon: geist +group: geist +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21239.2 + sysDescr: + - RCM-O +mib_dir: geist +over: + - { graph: device_bits, text: 'Device Traffic' } diff --git a/priv/profiles/os_detection/geist-watchdog.yaml b/priv/profiles/os_detection/geist-watchdog.yaml new file mode 100644 index 00000000..fdf25a09 --- /dev/null +++ b/priv/profiles/os_detection/geist-watchdog.yaml @@ -0,0 +1,19 @@ +os: geist-watchdog +text: 'Geist Watchdog' +type: environment +icon: geist +group: geist +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21239 + sysObjectID_except: + - .1.3.6.1.4.1.21239.42.1.52 + - .1.3.6.1.4.1.21239.42.1.53 + - .1.3.6.1.4.1.21239.42.1.55 + sysDescr_except: + - RCM-O +mib_dir: geist +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_humidity, text: 'Humidity' } diff --git a/priv/profiles/os_detection/gemds.yaml b/priv/profiles/os_detection/gemds.yaml new file mode 100644 index 00000000..70853b49 --- /dev/null +++ b/priv/profiles/os_detection/gemds.yaml @@ -0,0 +1,10 @@ +os: gemds +text: GE MDS Orbit network Operating System +type: network +icon: ge +mib_dir: gemds + +discovery: + - sysObjectID: .1.3.6.1.4.1.4130.10 + + diff --git a/priv/profiles/os_detection/generex-ups.yaml b/priv/profiles/os_detection/generex-ups.yaml new file mode 100644 index 00000000..662cc126 --- /dev/null +++ b/priv/profiles/os_detection/generex-ups.yaml @@ -0,0 +1,38 @@ +os: generex-ups +text: 'Generex UPS SNMP adapter' +type: power +icon: generex-ups +rfc1628_compat: true +discovery: + - + sysObjectID: + - .1.3.6.1.2.1.33 + sysDescr_regex: + - '/^(.)* SNMP Agent$/i' + - '/CS121/i' + - '/CS141/i' +discovery_modules: + storage: false + bgp-peers: false + ntp: false + stp: false + diskio: false + vlans: false + arp-table: false + discovery-protocols: false + hr-device: false + mempools: false + entity-physical: false + ports-stack: false + ucd-diskio: false + processors: false +poller_modules: + ospf: false + ntp: false + services: false + storage: false +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } + - { graph: device_power, text: Power } diff --git a/priv/profiles/os_detection/generic.yaml b/priv/profiles/os_detection/generic.yaml new file mode 100644 index 00000000..896c71ab --- /dev/null +++ b/priv/profiles/os_detection/generic.yaml @@ -0,0 +1,3 @@ +os: generic +text: 'Generic Device' +type: server diff --git a/priv/profiles/os_detection/gepulsar.yaml b/priv/profiles/os_detection/gepulsar.yaml new file mode 100644 index 00000000..489be4ab --- /dev/null +++ b/priv/profiles/os_detection/gepulsar.yaml @@ -0,0 +1,40 @@ +os: gepulsar +text: 'GE Pulsar' +type: power +icon: ge +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_state, text: State } +mib_dir: gepower +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10520.2.1.3 +discovery_modules: + storage: false + bgp-peers: false + ntp: false + stp: false + diskio: false + vlans: false + arp-table: false + discovery-protocols: false + hr-device: false + mempools: false + entity-physical: false + ports-stack: false + ucd-diskio: false + processors: false + mpls: false + wireless: false + fdb-table: false + services: false + cisco-vrf-lite: false +poller_modules: + ospf: false + ntp: false + services: false + storage: false + ucd-diskio: false + mpls: false diff --git a/priv/profiles/os_detection/gestetner.yaml b/priv/profiles/os_detection/gestetner.yaml new file mode 100644 index 00000000..310bb2e5 --- /dev/null +++ b/priv/profiles/os_detection/gestetner.yaml @@ -0,0 +1,17 @@ +os: gestetner +group: printer +text: 'Gestetner Printer' +type: printer +icon: ricoh +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - Gestetner Network Printer +discovery_modules: + printer-supplies: true + mempools: false +poller_modules: + printer-supplies: true + mempools: false diff --git a/priv/profiles/os_detection/gigavue.yaml b/priv/profiles/os_detection/gigavue.yaml new file mode 100644 index 00000000..5c547e38 --- /dev/null +++ b/priv/profiles/os_detection/gigavue.yaml @@ -0,0 +1,14 @@ +os: gigavue +text: 'GigaVUE' +type: network +icon: gigamon +group: gigamon +mib_dir: gigamon +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.26866.3 diff --git a/priv/profiles/os_detection/gos.yaml b/priv/profiles/os_detection/gos.yaml new file mode 100644 index 00000000..b2c69e7b --- /dev/null +++ b/priv/profiles/os_detection/gos.yaml @@ -0,0 +1,28 @@ +os: gos +type: appliance +group: greenbone +text: 'Greenbone OS' +ifXmcbc: true +ifname: true +mib_dir: greenbone +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + applications: false + bgp-peers: false + mpls: false + ospf: false + stp: false + wireless: false +discovery_modules: + applications: false + bgp-peers: false + mpls: false + stp: false + wireless: false +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.35847.1.1 diff --git a/priv/profiles/os_detection/grandstream-ap.yaml b/priv/profiles/os_detection/grandstream-ap.yaml new file mode 100644 index 00000000..1a13849b --- /dev/null +++ b/priv/profiles/os_detection/grandstream-ap.yaml @@ -0,0 +1,21 @@ +os: grandstream-ap +group: grandstream +text: 'Grandstream Access Point' +type: wireless +icon: grandstream +snmp_bulk: false +snmp_max_oid: 1 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_wireless_clients, text: 'Client Count' } +mib_dir: grandstream +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.42397.1.1.2.1.0 + op: starts + value: GWN76 diff --git a/priv/profiles/os_detection/grandstream-gxw.yaml b/priv/profiles/os_detection/grandstream-gxw.yaml new file mode 100644 index 00000000..dd801d6d --- /dev/null +++ b/priv/profiles/os_detection/grandstream-gxw.yaml @@ -0,0 +1,14 @@ +os: grandstream-gxw +group: grandstream +text: 'Grandstream GXW' +type: appliance +icon: grandstream +over: + - { graph: device_ping_perf, text: 'Ping Response' } +mib_dir: grandstream +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^Linux GXW\d/' diff --git a/priv/profiles/os_detection/grandstream-ht.yaml b/priv/profiles/os_detection/grandstream-ht.yaml new file mode 100644 index 00000000..0972eef8 --- /dev/null +++ b/priv/profiles/os_detection/grandstream-ht.yaml @@ -0,0 +1,14 @@ +os: grandstream-ht +group: grandstream +text: 'Grandstream HT' +type: network +icon: grandstream +over: + - { graph: device_ping_perf, text: 'Ping Response' } +mib_dir: grandstream +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^Linux HT\d/' diff --git a/priv/profiles/os_detection/grandstream-sw.yaml b/priv/profiles/os_detection/grandstream-sw.yaml new file mode 100644 index 00000000..f0b6dfa9 --- /dev/null +++ b/priv/profiles/os_detection/grandstream-sw.yaml @@ -0,0 +1,16 @@ +os: grandstream-sw +group: grandstream +text: 'Grandstream Switch' +type: network +icon: grandstream +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_temperature, text: 'Temperature' } +mib_dir: grandstream +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.42397 + sysDescr_regex: + - '/^GWN/' \ No newline at end of file diff --git a/priv/profiles/os_detection/gude-esb.yaml b/priv/profiles/os_detection/gude-esb.yaml new file mode 100644 index 00000000..cccd8788 --- /dev/null +++ b/priv/profiles/os_detection/gude-esb.yaml @@ -0,0 +1,14 @@ +os: gude-esb +text: 'Expert Sensor Box' +type: power +icon: gude +group: gude +mib_dir: gude +over: + - { graph: device_humidity, text: 'Humidity' } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28507.66 + - .1.3.6.1.4.1.28507.67 diff --git a/priv/profiles/os_detection/gw-eydfa.yaml b/priv/profiles/os_detection/gw-eydfa.yaml new file mode 100644 index 00000000..a9f99b9c --- /dev/null +++ b/priv/profiles/os_detection/gw-eydfa.yaml @@ -0,0 +1,48 @@ +os: gw-eydfa +text: 'Glass Way WDM EYDFA' +type: network +icon: glassway +over: + - { graph: device_temperature, text: 'Temperatures' } + - { graph: device_dbm, text: 'Optics' } +mib_dir: glassway +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17409.1.11 +poller_modules: + bgp-peers: false + entity-physical: false + hr-mib: false + ipSystemStats: false + mempools: false + netstats: false + ntp: false + ospf: false + ports: false + processors: false + storage: false + stp: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + ports: false + ports-stack: false + entity-physical: false + processors: false + mempools: false + cisco-vrf-lite: false + ipv4-addresses: false + ipv6-addresses: false + storage: false + hr-device: false + discovery-protocols: false + arp-table: false + bgp-peers: false + vlans: false + ucd-diskio: false + services: false + stp: false + ntp: false + wireless: false + fdb-table: false diff --git a/priv/profiles/os_detection/gwd.yaml b/priv/profiles/os_detection/gwd.yaml new file mode 100644 index 00000000..7cc2dab8 --- /dev/null +++ b/priv/profiles/os_detection/gwd.yaml @@ -0,0 +1,14 @@ +os: gwd +text: 'gwd' +type: network +icon: gwd +group: gwd +mib_dir: gwd +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10072.2.20 diff --git a/priv/profiles/os_detection/halon.yaml b/priv/profiles/os_detection/halon.yaml new file mode 100644 index 00000000..a5266aa2 --- /dev/null +++ b/priv/profiles/os_detection/halon.yaml @@ -0,0 +1,10 @@ +os: halon +text: Halon +type: appliance +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - Halon diff --git a/priv/profiles/os_detection/harmony-enhanced.yaml b/priv/profiles/os_detection/harmony-enhanced.yaml new file mode 100644 index 00000000..cf8aff11 --- /dev/null +++ b/priv/profiles/os_detection/harmony-enhanced.yaml @@ -0,0 +1,13 @@ +os: harmony-enhanced +text: 'Dragonwave Harmony Enhanced' +type: wireless +icon: dragonwave +over: + - { graph: device_wireless_snr, text: SNR } + - { graph: device_wireless_rssi, text: RSL } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7262.4. +mib_dir: dragonwave + diff --git a/priv/profiles/os_detection/hatteras.yaml b/priv/profiles/os_detection/hatteras.yaml new file mode 100644 index 00000000..b67d2d47 --- /dev/null +++ b/priv/profiles/os_detection/hatteras.yaml @@ -0,0 +1,18 @@ +os: hatteras +text: 'Overture Hatteras DSLAM' +type: network +icon: hatteras + +empty_ifdescr: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysDescr: + - HN4000-I + - HN4000e +bad_if: + - notPresent + - serConsole +good_if: + - ras #all interfaces has 'Hatteras' in it... diff --git a/priv/profiles/os_detection/helios.yaml b/priv/profiles/os_detection/helios.yaml new file mode 100644 index 00000000..93fa8da0 --- /dev/null +++ b/priv/profiles/os_detection/helios.yaml @@ -0,0 +1,18 @@ +os: helios +text: 'IgniteNet HeliOS' +type: wireless +icon: ignitenet +mib_dir: ignitenet +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.47307 +discovery_modules: + bgp-peers: false + stp: false +poller_modules: + bgp-peers: false + services: false + storage: false +over: + - { graph: device_bits, text: Traffic } diff --git a/priv/profiles/os_detection/heliosip.yaml b/priv/profiles/os_detection/heliosip.yaml new file mode 100644 index 00000000..ca619a34 --- /dev/null +++ b/priv/profiles/os_detection/heliosip.yaml @@ -0,0 +1,11 @@ +os: heliosip +text: 'Helios IP' +type: appliance +icon: 2n +over: + - { graph: device_uptime, text: 'Device Uptime' } +mib_dir: 2n +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6530 diff --git a/priv/profiles/os_detection/hikvision-cam.yaml b/priv/profiles/os_detection/hikvision-cam.yaml new file mode 100644 index 00000000..8a4f1df6 --- /dev/null +++ b/priv/profiles/os_detection/hikvision-cam.yaml @@ -0,0 +1,14 @@ +os: hikvision-cam +text: 'Hikvision Camera' +type: network +icon: hikvision +mib_dir: hikvision +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID_regex: '/^$/' + snmpget: + oid: .1.3.6.1.4.1.39165.1.1.0 + op: contains + value: '-' diff --git a/priv/profiles/os_detection/hikvision-nvr.yaml b/priv/profiles/os_detection/hikvision-nvr.yaml new file mode 100644 index 00000000..cbe56ecc --- /dev/null +++ b/priv/profiles/os_detection/hikvision-nvr.yaml @@ -0,0 +1,15 @@ +os: hikvision-nvr +text: 'Hikvision NVR' +type: network +icon: hikvision +mib_dir: hikvision +over: + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_uptime, text: 'Device Uptime' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.50001 + - + sysDescr: + - 'Hikvision company products' diff --git a/priv/profiles/os_detection/himoinsa-gensets.yaml b/priv/profiles/os_detection/himoinsa-gensets.yaml new file mode 100644 index 00000000..758c9640 --- /dev/null +++ b/priv/profiles/os_detection/himoinsa-gensets.yaml @@ -0,0 +1,12 @@ +os: himoinsa-gensets +text: 'Himoinsa Generator Sets' +type: power +icon: himoinsa +group: himoinsa +mib_dir: himoinsa +over: + - { graph: device_uptime, text: 'Device Uptime' } +discovery: + - + sysDescr: + - 'C2LAN SNMP' diff --git a/priv/profiles/os_detection/hirschmann.yaml b/priv/profiles/os_detection/hirschmann.yaml new file mode 100644 index 00000000..74a90dc3 --- /dev/null +++ b/priv/profiles/os_detection/hirschmann.yaml @@ -0,0 +1,12 @@ +os: hirschmann +text: 'Hirschmann' +type: network +icon: hirschmann +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.248.14.10 diff --git a/priv/profiles/os_detection/hiveos-network.yaml b/priv/profiles/os_detection/hiveos-network.yaml new file mode 100644 index 00000000..79e0ab2c --- /dev/null +++ b/priv/profiles/os_detection/hiveos-network.yaml @@ -0,0 +1,14 @@ +os: hiveos-network +text: 'Aerohive HiveOS' +type: network +icon: aerohive +mib_dir: aerohive +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.26928.1 + - .1.3.6.1.4.1.4413 + sysDescr_regex: + - '/^(Aerohive )*SR[\d\w]+/' diff --git a/priv/profiles/os_detection/hiveos-wireless.yaml b/priv/profiles/os_detection/hiveos-wireless.yaml new file mode 100644 index 00000000..27e15b4c --- /dev/null +++ b/priv/profiles/os_detection/hiveos-wireless.yaml @@ -0,0 +1,13 @@ +os: hiveos-wireless +text: 'Aerohive HiveOS' +type: wireless +icon: aerohive +mib_dir: aerohive +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_wireless_clients, text: 'Wifi Clients' } +discovery: + - + sysDescr_regex: + - '/^(Hive)?AP[\w-]+(?:_n)?, (HiveOS|IQ Engine)/' diff --git a/priv/profiles/os_detection/horizon-compact.yaml b/priv/profiles/os_detection/horizon-compact.yaml new file mode 100644 index 00000000..4c5382e7 --- /dev/null +++ b/priv/profiles/os_detection/horizon-compact.yaml @@ -0,0 +1,13 @@ +os: horizon-compact +text: 'Dragonwave Horizon Compact' +type: wireless +icon: dragonwave +mib_dir: 'dragonwave' +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_wireless_snr, text: 'SNR' } + - { graph: device_wireless_rssi, text: 'RSL' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7262.2.2 diff --git a/priv/profiles/os_detection/horizon-compactplus.yaml b/priv/profiles/os_detection/horizon-compactplus.yaml new file mode 100644 index 00000000..38c1436d --- /dev/null +++ b/priv/profiles/os_detection/horizon-compactplus.yaml @@ -0,0 +1,13 @@ +os: horizon-compactplus +text: 'Dragonwave Horizon Compact Plus' +type: wireless +icon: dragonwave +mib_dir: 'dragonwave' +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_wireless_snr, text: 'SNR' } + - { graph: device_wireless_rssi, text: 'RSL' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7262.2.5 diff --git a/priv/profiles/os_detection/horizon-duo.yaml b/priv/profiles/os_detection/horizon-duo.yaml new file mode 100644 index 00000000..2f9bd60a --- /dev/null +++ b/priv/profiles/os_detection/horizon-duo.yaml @@ -0,0 +1,12 @@ +os: horizon-duo +text: 'Dragonwave Horizon Duo' +type: wireless +icon: dragonwave +mib_dir: 'dragonwave' +over: + - { graph: device_wireless_snr, text: 'SNR' } + - { graph: device_wireless_rssi, text: 'RSL' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7262.2.3 diff --git a/priv/profiles/os_detection/horizon-quantum.yaml b/priv/profiles/os_detection/horizon-quantum.yaml new file mode 100644 index 00000000..d951a93e --- /dev/null +++ b/priv/profiles/os_detection/horizon-quantum.yaml @@ -0,0 +1,12 @@ +os: horizon-quantum +text: 'Dragonwave Horizon Quantum' +type: wireless +icon: dragonwave +mib_dir: dragonwave +over: + - { graph: device_wireless_snr, text: 'SNR' } + - { graph: device_wireless_rssi, text: 'RSSI' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7262.2.4 diff --git a/priv/profiles/os_detection/hpblmos.yaml b/priv/profiles/os_detection/hpblmos.yaml new file mode 100644 index 00000000..e3250c5b --- /dev/null +++ b/priv/profiles/os_detection/hpblmos.yaml @@ -0,0 +1,13 @@ +os: hpblmos +text: 'HP Blade Management' +type: appliance +icon: hpe +mib_dir: hp +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11.5.7.1.2 diff --git a/priv/profiles/os_detection/hpe-ilo.yaml b/priv/profiles/os_detection/hpe-ilo.yaml new file mode 100644 index 00000000..9ab023fb --- /dev/null +++ b/priv/profiles/os_detection/hpe-ilo.yaml @@ -0,0 +1,16 @@ +os: hpe-ilo +text: 'HPE Integrated Lights Out' +type: management +icon: hpe +over: + - { graph: device_bits, text: Traffic } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.232.9.4.10 + - .1.3.6.1.4.1.232.9.4.11 + - .1.3.6.1.4.1.232.9.4.12 +mib_dir: hp +ignore_mount_regexp: + - '#^[^/]+ on /#' # Ignore linux synthetic mounts via CPQHOST-MIB diff --git a/priv/profiles/os_detection/hpe-ipdu.yaml b/priv/profiles/os_detection/hpe-ipdu.yaml new file mode 100644 index 00000000..4afe214d --- /dev/null +++ b/priv/profiles/os_detection/hpe-ipdu.yaml @@ -0,0 +1,11 @@ +os: hpe-ipdu +text: 'HPE iPDU' +type: power +icon: hpe +over: + - { graph: device_bits, text: Traffic } +mib_dir: hp +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.232.165.5 diff --git a/priv/profiles/os_detection/hpe-mapdu.yaml b/priv/profiles/os_detection/hpe-mapdu.yaml new file mode 100644 index 00000000..fd328dfa --- /dev/null +++ b/priv/profiles/os_detection/hpe-mapdu.yaml @@ -0,0 +1,21 @@ +os: hpe-mapdu +text: 'HPE Managed Power Distribution Unit' +type: power +icon: hpe +group: hpe +mib_dir: hp +over: + - {graph: device_power, text: Power} + - {graph: device_current, text: Current} +snmp_max_oid: 8 +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.232.165.7 + - .1.3.6.1.4.1.232.165.11 + - + sysDescr: + - P9S18A + - Outlet Metered, Outlet Switched + sysObjectID_except: + - .1.3.6.1.4.1.19536 # Panduit diff --git a/priv/profiles/os_detection/hpe-msa.yaml b/priv/profiles/os_detection/hpe-msa.yaml new file mode 100644 index 00000000..080ecc5e --- /dev/null +++ b/priv/profiles/os_detection/hpe-msa.yaml @@ -0,0 +1,11 @@ +os: hpe-msa +text: 'HPE MSA' +type: storage +icon: hpe +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11.2.51 +mib_dir: hp diff --git a/priv/profiles/os_detection/hpe-msl.yaml b/priv/profiles/os_detection/hpe-msl.yaml new file mode 100644 index 00000000..3a62584e --- /dev/null +++ b/priv/profiles/os_detection/hpe-msl.yaml @@ -0,0 +1,11 @@ +os: hpe-msl +text: 'HPE StoreEver MSL' +type: storage +icon: hpe +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11.10.2.1.3.25 +mib_dir: hp diff --git a/priv/profiles/os_detection/hpe-pdumm.yaml b/priv/profiles/os_detection/hpe-pdumm.yaml new file mode 100644 index 00000000..ad22e5bf --- /dev/null +++ b/priv/profiles/os_detection/hpe-pdumm.yaml @@ -0,0 +1,12 @@ +os: hpe-pdumm +text: 'HP PDU Management Module' +type: power +icon: hpe +over: + - {graph: device_load, text: Load} + - {graph: device_current, text: Current} +mib_dir: hp +discovery: + - + sysDescr: + - 'HP PDU Management Module' diff --git a/priv/profiles/os_detection/hpe-rtups.yaml b/priv/profiles/os_detection/hpe-rtups.yaml new file mode 100644 index 00000000..641dd0af --- /dev/null +++ b/priv/profiles/os_detection/hpe-rtups.yaml @@ -0,0 +1,15 @@ +os: hpe-rtups +text: 'HP UPS' +group: ups +type: power +icon: hpe +rfc1628_compat: true +mib_dir: hp +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.232.165.3 diff --git a/priv/profiles/os_detection/hpmsm.yaml b/priv/profiles/os_detection/hpmsm.yaml new file mode 100644 index 00000000..c04b8872 --- /dev/null +++ b/priv/profiles/os_detection/hpmsm.yaml @@ -0,0 +1,31 @@ +os: hpmsm +text: 'HP MSM' +type: wireless +icon: hp +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8744.1.40 + - .1.3.6.1.4.1.8744.1.41 + - .1.3.6.1.4.1.8744.1.42 + - .1.3.6.1.4.1.8744.1.43 + - .1.3.6.1.4.1.8744.1.44 + - .1.3.6.1.4.1.8744.1.45 + - .1.3.6.1.4.1.8744.1.46 + - .1.3.6.1.4.1.8744.1.47 + - .1.3.6.1.4.1.8744.1.48 + - .1.3.6.1.4.1.8744.1.49 + - .1.3.6.1.4.1.8744.1.50 + - .1.3.6.1.4.1.8744.1.51 + - .1.3.6.1.4.1.8744.1.52 + - .1.3.6.1.4.1.8744.1.53 + - .1.3.6.1.4.1.8744.1.54 + - .1.3.6.1.4.1.8744.1.55 + - .1.3.6.1.4.1.8744.1.56 + - .1.3.6.1.4.1.8744.1.57 + - .1.3.6.1.4.1.8744.1.59 + - .1.3.6.1.4.1.8744.1.67 diff --git a/priv/profiles/os_detection/hpvc.yaml b/priv/profiles/os_detection/hpvc.yaml new file mode 100644 index 00000000..9c6b5c96 --- /dev/null +++ b/priv/profiles/os_detection/hpvc.yaml @@ -0,0 +1,10 @@ +os: hpvc +text: 'HP Virtual Connect' +type: network +icon: hpe +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11.5.7.5. diff --git a/priv/profiles/os_detection/huawei-optixrtn.yaml b/priv/profiles/os_detection/huawei-optixrtn.yaml new file mode 100644 index 00000000..15613300 --- /dev/null +++ b/priv/profiles/os_detection/huawei-optixrtn.yaml @@ -0,0 +1,12 @@ +os: huawei-optixrtn +text: 'Huawei OptiX RTN' +type: network +icon: huawei +group: huawei +mib_dir: huawei +discovery: + - + sysObjectID: + - '.1.3.6.1.4.1.2011.2.25' + sysDescr: ['RTN'] + diff --git a/priv/profiles/os_detection/huawei-smu.yaml b/priv/profiles/os_detection/huawei-smu.yaml new file mode 100644 index 00000000..fe8d2931 --- /dev/null +++ b/priv/profiles/os_detection/huawei-smu.yaml @@ -0,0 +1,21 @@ +os: huawei-smu +text: Huawei SMU +type: power +icon: huawei +mib_dir: huawei +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_charge, text: Charge } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2011.6.164. + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.2011.6.164.1.1.1.4.0 + op: starts + value: + - HUAWEI SMU + - huawei description diff --git a/priv/profiles/os_detection/huaweiups.yaml b/priv/profiles/os_detection/huaweiups.yaml new file mode 100644 index 00000000..d627e3ca --- /dev/null +++ b/priv/profiles/os_detection/huaweiups.yaml @@ -0,0 +1,18 @@ +os: huaweiups +text: 'Huawei UPS' +group: ups +type: power +icon: huawei +rfc1628_compat: true +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } +discovery: + - + sysDescr: + - Linux GSE200M + - UPS + snmpget: + oid: UPS-MIB::upsIdentManufacturer.0 + value: HUAWEI diff --git a/priv/profiles/os_detection/hwg-perseus.yaml b/priv/profiles/os_detection/hwg-perseus.yaml new file mode 100644 index 00000000..968c35d7 --- /dev/null +++ b/priv/profiles/os_detection/hwg-perseus.yaml @@ -0,0 +1,13 @@ +os: hwg-perseus +text: 'HWg Perseus' +type: environment +icon: hwg +mib_dir: hwg +snmp_bulk: false +over: + - { graph: device_state, text: States } + - { graph: device_count, text: 'Count' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21796.5.1 diff --git a/priv/profiles/os_detection/hwg-poseidon.yaml b/priv/profiles/os_detection/hwg-poseidon.yaml new file mode 100644 index 00000000..f128dfa4 --- /dev/null +++ b/priv/profiles/os_detection/hwg-poseidon.yaml @@ -0,0 +1,11 @@ +os: hwg-poseidon +text: 'HWg Poseidon' +type: environment +icon: hwg-poseidon +mib_dir: hwg +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21796.3.3 diff --git a/priv/profiles/os_detection/hwg-ste.yaml b/priv/profiles/os_detection/hwg-ste.yaml new file mode 100644 index 00000000..2c6964de --- /dev/null +++ b/priv/profiles/os_detection/hwg-ste.yaml @@ -0,0 +1,42 @@ +os: hwg-ste +text: 'HWg STE' +type: environment +icon: hwg +mib_dir: hwg +over: + - { graph: device_temperature, text: Temperature } +snmp_bulk: false +poller_modules: + applications: false + bgp-peers: false + ipmi: false + ospf: false + stp: false + netstats: false +discovery_modules: + applications: false + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + discovery-protocols: false + fdb-table: false + hr-device: false + ipv4-addresses: false + ipv6-addresses: false + mempools: false + ntp: false + ports: false + ports-stack: false + processors: false + services: false + storage: false + stp: false + ucd-diskio: false + vlans: false + wireless: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21796.4.1 + sysDescr_except: + - 'HWg-WLD' diff --git a/priv/profiles/os_detection/hwg-ste2.yaml b/priv/profiles/os_detection/hwg-ste2.yaml new file mode 100644 index 00000000..709667e7 --- /dev/null +++ b/priv/profiles/os_detection/hwg-ste2.yaml @@ -0,0 +1,14 @@ +os: hwg-ste2 +text: 'HWg STE2' +type: environment +icon: hwg +over: + - { graph: device_temperature, text: Temperature } +mib_dir: hwg +snmp_bulk: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21796.4.9 + sysDescr_except: + - 'WLD2' diff --git a/priv/profiles/os_detection/hwg-wld.yaml b/priv/profiles/os_detection/hwg-wld.yaml new file mode 100644 index 00000000..d61dba09 --- /dev/null +++ b/priv/profiles/os_detection/hwg-wld.yaml @@ -0,0 +1,22 @@ +os: hwg-wld +text: 'HWg WLD' +type: environment +icon: hwg +mib_dir: hwg +over: + - { graph: device_state, text: States } +snmp_bulk: false +poller_modules: + stp: false + ucd-mib: false + ports: false +discovery_modules: + stp: false + ports: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21796.4.1 + - .1.3.6.1.4.1.21796.4.9 + sysDescr: + - 'WLD' diff --git a/priv/profiles/os_detection/hyperion.yaml b/priv/profiles/os_detection/hyperion.yaml new file mode 100644 index 00000000..8574ee8d --- /dev/null +++ b/priv/profiles/os_detection/hyperion.yaml @@ -0,0 +1,10 @@ +os: hyperion +text: 'Bitstream Hyperion' +type: network +icon: bitstream +group: bistream +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.6603 diff --git a/priv/profiles/os_detection/hytera.yaml b/priv/profiles/os_detection/hytera.yaml new file mode 100644 index 00000000..245bda16 --- /dev/null +++ b/priv/profiles/os_detection/hytera.yaml @@ -0,0 +1,8 @@ +os: hytera +text: 'Hytera Repeater' +type: wireless +icon: hytera +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.26381 diff --git a/priv/profiles/os_detection/ibm-amm.yaml b/priv/profiles/os_detection/ibm-amm.yaml new file mode 100644 index 00000000..176398c2 --- /dev/null +++ b/priv/profiles/os_detection/ibm-amm.yaml @@ -0,0 +1,9 @@ +os: ibm-amm +text: 'IBM AMM' +type: appliance +icon: ibmos +mib_dir: ibm +discovery: + - + sysDescr: + - 'BladeCenter Advanced Management Module' diff --git a/priv/profiles/os_detection/ibm-i.yaml b/priv/profiles/os_detection/ibm-i.yaml new file mode 100644 index 00000000..b461d1aa --- /dev/null +++ b/priv/profiles/os_detection/ibm-i.yaml @@ -0,0 +1,12 @@ +os: 'ibm-i' +text: 'IBM i' +type: server +icon: ibmos +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2.6.11 diff --git a/priv/profiles/os_detection/ibm-imm.yaml b/priv/profiles/os_detection/ibm-imm.yaml new file mode 100644 index 00000000..a242d209 --- /dev/null +++ b/priv/profiles/os_detection/ibm-imm.yaml @@ -0,0 +1,19 @@ +os: ibm-imm +text: 'IBM IMM' +type: management +icon: ibmos +mib_dir: ibm +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: '.1.3.6.1.4.1.2.3.51.3.3.2.1.0' + op: '!=' + value: false + - + sysObjectID: + - .1.3.6.1.4.1.2.3.51.3 diff --git a/priv/profiles/os_detection/ibmc.yaml b/priv/profiles/os_detection/ibmc.yaml new file mode 100644 index 00000000..21949051 --- /dev/null +++ b/priv/profiles/os_detection/ibmc.yaml @@ -0,0 +1,24 @@ +os: ibmc +text: 'Huawei iBMC Management Console' +type: appliance +icon: huawei +group: ibmc +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_power, text: 'Power' } + - { graph: device_fanspeed, text: 'Fans' } +mib_dir: huawei +poller_modules: + bgp-peers: false + stp: false + wireless: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + stp: false + wireless: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2011.2.235 + diff --git a/priv/profiles/os_detection/ibmnos.yaml b/priv/profiles/os_detection/ibmnos.yaml new file mode 100644 index 00000000..328197c7 --- /dev/null +++ b/priv/profiles/os_detection/ibmnos.yaml @@ -0,0 +1,12 @@ +os: ibmnos +text: 'IBM Networking Operating System' +type: network +icon: ibmos +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr: + - 'Networking Operating System' + - 'Flex System Fabric' + - 'IBM Networking OS' diff --git a/priv/profiles/os_detection/ibmtl.yaml b/priv/profiles/os_detection/ibmtl.yaml new file mode 100644 index 00000000..bb4d7cea --- /dev/null +++ b/priv/profiles/os_detection/ibmtl.yaml @@ -0,0 +1,16 @@ +os: ibmtl +text: 'IBM Tape Library' +type: storage +icon: ibmos +mib_dir: ibm +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: .1.3.6.1.4.1.14851 + snmpget: + oid: 'SML-MIB::product-Name.0' + value: 'IBM System Storage TS3500 Tape Library' + - sysDescr_regex: + - '/IBM (.*) UltraScaleable Tape Library/' + diff --git a/priv/profiles/os_detection/iboot.yaml b/priv/profiles/os_detection/iboot.yaml new file mode 100644 index 00000000..b9994cdb --- /dev/null +++ b/priv/profiles/os_detection/iboot.yaml @@ -0,0 +1,15 @@ +os: iboot +text: 'iBoot PDU' +type: power +icon: dataprobe +rfc1628_compat: true +mib_dir: dataprobe +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/ibootpdu/' diff --git a/priv/profiles/os_detection/ibos.yaml b/priv/profiles/os_detection/ibos.yaml new file mode 100644 index 00000000..10f57492 --- /dev/null +++ b/priv/profiles/os_detection/ibos.yaml @@ -0,0 +1,21 @@ +os: ibos +text: 'Waystream iBOS' +type: network +icon: waystream +group: waystream +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +bad_if: + - downstream0 + - Lo0 + - Null0 + - system0 +discovery: + - + sysObjectID: + # ASR 5k products + - .1.3.6.1.4.1.9303.1.1. + # Metrostar products + - .1.3.6.1.4.1.9303.1.5. diff --git a/priv/profiles/os_detection/icotera.yaml b/priv/profiles/os_detection/icotera.yaml new file mode 100644 index 00000000..98cc912d --- /dev/null +++ b/priv/profiles/os_detection/icotera.yaml @@ -0,0 +1,24 @@ +os: icotera +text: 'Icotera OS' +type: network +mib_dir: icotera +ifname: true +icon: icotera +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.29865.11 +poller_modules: + wireless: false + ipmi: false + applications: false + services: false + ntp: false + entity-physical: false +discovery_modules: + cisco-vrf-lite: false + services: false + ntp: false + wireless: false diff --git a/priv/profiles/os_detection/icr-os.yaml b/priv/profiles/os_detection/icr-os.yaml new file mode 100644 index 00000000..01a03b1f --- /dev/null +++ b/priv/profiles/os_detection/icr-os.yaml @@ -0,0 +1,15 @@ +os: icr-os +text: 'ICR-OS' +type: network +icon: advantech +group: advantech +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.30140.1 + +mib_dir: icr-os + diff --git a/priv/profiles/os_detection/ict-mps.yaml b/priv/profiles/os_detection/ict-mps.yaml new file mode 100644 index 00000000..3eb881a2 --- /dev/null +++ b/priv/profiles/os_detection/ict-mps.yaml @@ -0,0 +1,14 @@ +os: ict-mps +text: 'ICT Modular Power System' +type: power +icon: ict +snmp_bulk: false +mib_dir: ict +over: + - { graph: device_voltage, text: 'Input Voltage' } + - { graph: device_voltage, text: 'Output Voltage' } + - { graph: device_current, text: 'Output Current' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39145.13 diff --git a/priv/profiles/os_detection/ict-pdu.yaml b/priv/profiles/os_detection/ict-pdu.yaml new file mode 100644 index 00000000..c4390c46 --- /dev/null +++ b/priv/profiles/os_detection/ict-pdu.yaml @@ -0,0 +1,13 @@ +os: ict-pdu +text: 'ICT Distribution Series' +type: power +icon: ict +snmp_bulk: false +mib_dir: ict +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39145.10 diff --git a/priv/profiles/os_detection/ict-psu.yaml b/priv/profiles/os_detection/ict-psu.yaml new file mode 100644 index 00000000..8680ef7d --- /dev/null +++ b/priv/profiles/os_detection/ict-psu.yaml @@ -0,0 +1,13 @@ +os: ict-psu +text: 'ICT Digital Series Power Supply' +type: power +icon: ict +snmp_bulk: false +mib_dir: ict +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39145.11 diff --git a/priv/profiles/os_detection/ict-swi.yaml b/priv/profiles/os_detection/ict-swi.yaml new file mode 100644 index 00000000..4caf13fb --- /dev/null +++ b/priv/profiles/os_detection/ict-swi.yaml @@ -0,0 +1,14 @@ +os: ict-swi +text: 'ICT Sine Wave Inverter' +type: power +icon: ict +snmp_bulk: false +mib_dir: ict +over: + - { graph: device_voltage, text: 'Battery Voltage (VDC)' } + - { graph: device_voltage, text: 'Inverter Voltage (VAC)' } + - { graph: device_load, text: 'Inverter Power' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39145.12 diff --git a/priv/profiles/os_detection/ies.yaml b/priv/profiles/os_detection/ies.yaml new file mode 100644 index 00000000..4eb7e5f7 --- /dev/null +++ b/priv/profiles/os_detection/ies.yaml @@ -0,0 +1,17 @@ +os: ies +text: 'ZyXEL DSLAM' +group: zyxel +type: network +icon: zyxel +discovery: + - + sysObjectID: .1.3.6.1.4.1.890. + sysObjectID_except: + - .1.3.6.1.4.1.890.1.5.13.10 + - .1.3.6.1.4.1.890.1.5.13.7 + sysDescr: + - IES +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/ies5000.yaml b/priv/profiles/os_detection/ies5000.yaml new file mode 100644 index 00000000..ca403a6d --- /dev/null +++ b/priv/profiles/os_detection/ies5000.yaml @@ -0,0 +1,14 @@ +os: ies5000 +text: 'ZyXEL IES-5000 DSLAM' +group: zyxel +type: network +icon: zyxel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.890.1.5.13.7 + - .1.3.6.1.4.1.890.1.5.13.10 +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/ies52xxM.yaml b/priv/profiles/os_detection/ies52xxM.yaml new file mode 100644 index 00000000..c4794a73 --- /dev/null +++ b/priv/profiles/os_detection/ies52xxM.yaml @@ -0,0 +1,20 @@ +# IES4206/5206/5212/6217 +os: ies52xxM +text: 'ZyXEL IES MSAN' +group: zyxel +type: network +icon: zyxel +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.890.1.5.13.15 + - .1.3.6.1.4.1.890.1.5.13.13 + - .1.3.6.1.4.1.890.1.5.13.16 +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/ifotec.yaml b/priv/profiles/os_detection/ifotec.yaml new file mode 100644 index 00000000..0c379b63 --- /dev/null +++ b/priv/profiles/os_detection/ifotec.yaml @@ -0,0 +1,10 @@ +os: ifotec +text: 'Ifotec' +type: network +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.21362 diff --git a/priv/profiles/os_detection/illustra.yaml b/priv/profiles/os_detection/illustra.yaml new file mode 100644 index 00000000..be0840b8 --- /dev/null +++ b/priv/profiles/os_detection/illustra.yaml @@ -0,0 +1,9 @@ +os: illustra +text: 'Illustra Network Camera' +type: network +icon: illustra +group: illustra +discovery: + - + sysDescr: + - 'illustra' diff --git a/priv/profiles/os_detection/imcopower-big.yaml b/priv/profiles/os_detection/imcopower-big.yaml new file mode 100644 index 00000000..1be6c6aa --- /dev/null +++ b/priv/profiles/os_detection/imcopower-big.yaml @@ -0,0 +1,11 @@ +os: imcopower-big +text: 'Imco Power' +type: power +icon: imco +group: IMCO POWER +snmp_bulk: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.818.32.4 +mib_dir: imco diff --git a/priv/profiles/os_detection/imcopower-ls110.yaml b/priv/profiles/os_detection/imcopower-ls110.yaml new file mode 100644 index 00000000..dc8232a6 --- /dev/null +++ b/priv/profiles/os_detection/imcopower-ls110.yaml @@ -0,0 +1,10 @@ +os: imcopower-ls110 +text: 'Imco Power LS/PS' +type: power +icon: imco +group: IMCO POWER +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.33283.1 +mib_dir: imco diff --git a/priv/profiles/os_detection/infinera-groove.yaml b/priv/profiles/os_detection/infinera-groove.yaml new file mode 100644 index 00000000..d2f56df1 --- /dev/null +++ b/priv/profiles/os_detection/infinera-groove.yaml @@ -0,0 +1,58 @@ +os: infinera-groove +text: 'Infinera Groove' +type: network +icon: infinera +mib_dir: infinera +discovery_modules: + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false + ipmi: false + bgp-peers: false + services: false + vlans: false + arp-table: false + mef: false + cisco-vrf-lite: false + storage: false + fdb-table: false + wireless: false + discovery-protocols: false + hr-device: false + ipv4-addresses: false + ipv6-addresses: false + processors: false + mempools: false + ports-stack: false + ports: true +poller_modules: + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false + ipmi: false + bgp-peers: false + services: false + vlans: false + arp-table: false + mef: false + cisco-vrf-lite: false + storage: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_temperature, text: 'Device Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.42229.1.2 + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: CORIANT-GROOVE-MIB::softwareloadSwloadProduct.1 + mib_dir: infinera + op: 'contains' + value: 'Groove' diff --git a/priv/profiles/os_detection/infinera-pon.yaml b/priv/profiles/os_detection/infinera-pon.yaml new file mode 100644 index 00000000..be5e0f9b --- /dev/null +++ b/priv/profiles/os_detection/infinera-pon.yaml @@ -0,0 +1,11 @@ +os: infinera-pon +text: 'Infinera PON' +type: network +icon: infinera +mib_dir: infinera +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID_regex: + - '/^.1.3.6.1.4.1.42229$/' diff --git a/priv/profiles/os_detection/infinera-xtm.yaml b/priv/profiles/os_detection/infinera-xtm.yaml new file mode 100644 index 00000000..9d52b37f --- /dev/null +++ b/priv/profiles/os_detection/infinera-xtm.yaml @@ -0,0 +1,8 @@ +os: infinera-xtm +text: 'Infinera XTM' +type: network +icon: infinera +mib_dir: infinera +discovery: + - sysObjectID: + - .1.3.6.1.4.1.8708 diff --git a/priv/profiles/os_detection/infinity.yaml b/priv/profiles/os_detection/infinity.yaml new file mode 100644 index 00000000..be998c05 --- /dev/null +++ b/priv/profiles/os_detection/infinity.yaml @@ -0,0 +1,13 @@ +os: infinity +text: 'LigoWave Infinity' +type: wireless +icon: ligowave +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.10002.1 + sysDescr_regex: '/^NFT 2/' diff --git a/priv/profiles/os_detection/informos.yaml b/priv/profiles/os_detection/informos.yaml new file mode 100644 index 00000000..9e4e4deb --- /dev/null +++ b/priv/profiles/os_detection/informos.yaml @@ -0,0 +1,10 @@ +os: informos +text: 'HPE 3PAR' +type: storage +icon: hpe +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12925.1 diff --git a/priv/profiles/os_detection/infortrend.yaml b/priv/profiles/os_detection/infortrend.yaml new file mode 100644 index 00000000..5ddb83a1 --- /dev/null +++ b/priv/profiles/os_detection/infortrend.yaml @@ -0,0 +1,13 @@ +os: infortrend +text: 'EonStor GS DS-3016' +type: storage +icon: infortrend +mib_dir: infortrend +group: Infortrend +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1714.1 + - .1.3.6.1.4.1.2021.4.6 diff --git a/priv/profiles/os_detection/innovaphone.yaml b/priv/profiles/os_detection/innovaphone.yaml new file mode 100644 index 00000000..450ec509 --- /dev/null +++ b/priv/profiles/os_detection/innovaphone.yaml @@ -0,0 +1,8 @@ +os: innovaphone +text: 'Innovaphone ISDN' +type: environment +icon: innovaphone +mib_dir: innovaphone +discovery: + - + sysObjectID: .1.3.6.1.4.1.6666 diff --git a/priv/profiles/os_detection/intelliflash.yaml b/priv/profiles/os_detection/intelliflash.yaml new file mode 100644 index 00000000..a2f8ed7e --- /dev/null +++ b/priv/profiles/os_detection/intelliflash.yaml @@ -0,0 +1,11 @@ +os: intelliflash +text: 'Tegile IntelliFlash' +type: storage +icon: tegile +over: + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: tegile +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.43906.1 diff --git a/priv/profiles/os_detection/inteno.yaml b/priv/profiles/os_detection/inteno.yaml new file mode 100644 index 00000000..de483675 --- /dev/null +++ b/priv/profiles/os_detection/inteno.yaml @@ -0,0 +1,17 @@ +os: inteno +text: 'Inteno GW' +type: network +over: + - { graph: device_bits, text: Traffic } +mib_dir: inteno +icon: inteno +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4413 + sysDescr_regex_except: + - '/UISP Fiber OLT XGS/' + - '/VxWorks/' + - '/quanta/i' + - '/FASTPATH (Switching|Routing)/' + - '/SONiC Software Version/' diff --git a/priv/profiles/os_detection/interseptor.yaml b/priv/profiles/os_detection/interseptor.yaml new file mode 100644 index 00000000..9f64f42a --- /dev/null +++ b/priv/profiles/os_detection/interseptor.yaml @@ -0,0 +1,15 @@ +os: interseptor +text: 'Jacarta InterSeptor' +type: environment +icon: jacarta +group: jacarta +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_humidity, text: 'Humidity' } + + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.19011.1.3 + diff --git a/priv/profiles/os_detection/ionodes.yaml b/priv/profiles/os_detection/ionodes.yaml new file mode 100644 index 00000000..1b139c47 --- /dev/null +++ b/priv/profiles/os_detection/ionodes.yaml @@ -0,0 +1,13 @@ +os: ionodes +text: 'IONODES' +type: encoder +icon: ionodes +mib_dir: ionodes +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40748.1 diff --git a/priv/profiles/os_detection/ionos.yaml b/priv/profiles/os_detection/ionos.yaml new file mode 100644 index 00000000..316a144c --- /dev/null +++ b/priv/profiles/os_detection/ionos.yaml @@ -0,0 +1,29 @@ +os: ionos +text: 'Sagem ADR IONOS' +type: network +icon: sagemcom +group: sagemcom +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1038 +poller_modules: + hr-mib: false + ucd-mib: false + stp: false + ospf: false +discovery_modules: + processors: false + mempools: false + entity-physical: false + storage: false + hr-device: false + discovery-protocols: false + bgp-peers: false + ports-stack: false + vlans: false + ucd-diskio: false + stp: false + fdb-table: false diff --git a/priv/profiles/os_detection/ios.yaml b/priv/profiles/os_detection/ios.yaml new file mode 100644 index 00000000..cd7f2784 --- /dev/null +++ b/priv/profiles/os_detection/ios.yaml @@ -0,0 +1,56 @@ +os: ios +group: cisco +text: 'Cisco IOS' +type: network +ifXmcbc: true +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: cisco +discovery: + - + sysDescr: + - 'Cisco Internetwork Operating System Software' + - 'IOS (tm)' + - 'Cisco IOS Software' + - 'Global Site Selector' + sysDescr_except: + - 'LINUX_IOSD' + - 'IOS-XE' + - 'IOSXE' + - 'CAT3K_CAA' + - + sysObjectID: + - .1.3.6.1.4.1.9.1.2330 # ciscoIE10004TLM + - .1.3.6.1.4.1.9.1.2331 # ciscoIE10006TLM + - .1.3.6.1.4.1.9.1.2332 # ciscoIE10004PTSLM + - .1.3.6.1.4.1.9.1.2333 # ciscoIE10008PTSLM +bad_ifXEntry: + - cisco1941 + - cisco886Va + - cisco2811 +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + cisco-vpdn: true + ipmi: false + xdsl: true + port-security: false +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true + xdsl: true diff --git a/priv/profiles/os_detection/iosxe.yaml b/priv/profiles/os_detection/iosxe.yaml new file mode 100644 index 00000000..5793bef3 --- /dev/null +++ b/priv/profiles/os_detection/iosxe.yaml @@ -0,0 +1,53 @@ +os: iosxe +group: cisco +text: 'Cisco IOS-XE' +type: network +ifXmcbc: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: cisco +mib_dir: cisco +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + ipmi: false + cisco-vpdn: true + cisco-qfp: true + xdsl: true + port-security: false +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true + cisco-qfp: true + xdsl: true +discovery: + - + sysDescr: + - IOS-XE + - IOSXE + - LINUX_IOSD + - CAT3K_CAA + - + sysObjectID: + - .1.3.6.1.4.1.9.1.2683 # ciscoIE32008T2S + - .1.3.6.1.4.1.9.1.2684 # ciscoIE32008P2S + - .1.3.6.1.4.1.9.1.2685 # ciscoIE33008T2S + - .1.3.6.1.4.1.9.1.2686 # ciscoIE33008P2S + - .1.3.6.1.4.1.9.1.2687 # ciscoIE34008P2S +bad_iftype: + - macSecControlledIF + - macSecUncontrolledIF diff --git a/priv/profiles/os_detection/iosxr.yaml b/priv/profiles/os_detection/iosxr.yaml new file mode 100644 index 00000000..cc44a2fe --- /dev/null +++ b/priv/profiles/os_detection/iosxr.yaml @@ -0,0 +1,35 @@ +os: iosxr +group: cisco +text: 'Cisco IOS-XR' +type: network +ifXmcbc: true +icon: cisco +mib_dir: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + ipmi: false + cisco-vpdn: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'IOS XR' diff --git a/priv/profiles/os_detection/ipolis.yaml b/priv/profiles/os_detection/ipolis.yaml new file mode 100644 index 00000000..9f5955a2 --- /dev/null +++ b/priv/profiles/os_detection/ipolis.yaml @@ -0,0 +1,10 @@ +os: ipolis +text: 'Hanwha Techwin' +type: camera +icon: hanwhatechwin +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.36849.1.2. diff --git a/priv/profiles/os_detection/ipoman.yaml b/priv/profiles/os_detection/ipoman.yaml new file mode 100644 index 00000000..66118a7e --- /dev/null +++ b/priv/profiles/os_detection/ipoman.yaml @@ -0,0 +1,12 @@ +os: ipoman +text: 'Ingrasys iPoMan' +type: power +icon: ingrasys +mib_dir: ingrasys +over: + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2468.1.4.2.1 diff --git a/priv/profiles/os_detection/iqnos.yaml b/priv/profiles/os_detection/iqnos.yaml new file mode 100644 index 00000000..e1443647 --- /dev/null +++ b/priv/profiles/os_detection/iqnos.yaml @@ -0,0 +1,10 @@ +os: iqnos +text: 'Infinera IQNOS' +type: network +icon: infinera +mib_dir: iqnos + +over: + - { graph: device_temperature, text: 'Device Temperature' } +discovery: + - sysObjectID: .1.3.6.1.4.1.21296 diff --git a/priv/profiles/os_detection/ird.yaml b/priv/profiles/os_detection/ird.yaml new file mode 100644 index 00000000..354de807 --- /dev/null +++ b/priv/profiles/os_detection/ird.yaml @@ -0,0 +1,18 @@ +os: ird +text: 'PBI Digital Decoder' +type: network +icon: pbi +group: pbi +mib_dir: pbi +over: + - { graph: device_signal, text: 'Signal Strength' } + - { graph: device_dbm, text: 'dBm' } + - { graph: device_wireless_rate, text: 'Tuner Bitrate' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2021.250.10 + snmpget: + oid: .1.3.6.1.4.1.1070.3.1.1.1.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/ironware.yaml b/priv/profiles/os_detection/ironware.yaml new file mode 100644 index 00000000..077f232e --- /dev/null +++ b/priv/profiles/os_detection/ironware.yaml @@ -0,0 +1,16 @@ +os: ironware +text: 'Brocade IronWare' +type: network +icon: brocade +group: brocade +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - IronWare +oids: + no_bulk: + - ifPhysAddress diff --git a/priv/profiles/os_detection/ise.yaml b/priv/profiles/os_detection/ise.yaml new file mode 100644 index 00000000..341f5f72 --- /dev/null +++ b/priv/profiles/os_detection/ise.yaml @@ -0,0 +1,33 @@ +os: ise +text: 'Cisco Identity Services Engine' +type: server +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.2139 + - .1.3.6.1.4.1.9.1.1425 + - .1.3.6.1.4.1.9.1.1426 + - .1.3.6.1.4.1.9.1.2784 + - .1.3.6.1.4.1.9.1.2266 diff --git a/priv/profiles/os_detection/istars.yaml b/priv/profiles/os_detection/istars.yaml new file mode 100644 index 00000000..95951879 --- /dev/null +++ b/priv/profiles/os_detection/istars.yaml @@ -0,0 +1,14 @@ +os: istars +text: 'East' +icon: istars +type: power +rfc1628_compat: true +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } + - { graph: device_power, text: Power } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40614 diff --git a/priv/profiles/os_detection/janitza-umg96.yaml b/priv/profiles/os_detection/janitza-umg96.yaml new file mode 100644 index 00000000..7386535f --- /dev/null +++ b/priv/profiles/os_detection/janitza-umg96.yaml @@ -0,0 +1,17 @@ +os: janitza-umg96 +text: 'Janitza UMG96' +type: power +icon: janitza +over: + - { graph: device_power, text: 'Power' } +mib_dir: janitza +discovery_modules: + storage: false + mempools: false + processors: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.34278 + sysDescr_regex: + - '/^Janitza.*UMG96/' diff --git a/priv/profiles/os_detection/janitza.yaml b/priv/profiles/os_detection/janitza.yaml new file mode 100644 index 00000000..419af8fa --- /dev/null +++ b/priv/profiles/os_detection/janitza.yaml @@ -0,0 +1,18 @@ +os: janitza +text: 'Janitza' +type: power +icon: janitza +over: + - { graph: device_power, text: 'Power' } +mib_dir: janitza +discovery_modules: + storage: false + mempools: false + processors: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.34278 + - + sysDescr: + - 'Janitza' diff --git a/priv/profiles/os_detection/jetdirect.yaml b/priv/profiles/os_detection/jetdirect.yaml new file mode 100644 index 00000000..f732cf1f --- /dev/null +++ b/priv/profiles/os_detection/jetdirect.yaml @@ -0,0 +1,23 @@ +os: jetdirect +group: printer +text: 'HP Print server' +ifname: true +type: printer +icon: hp +mib_dir: hp +snmp_bulk: false +over: + - { graph: device_toner, text: Toner } +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true +discovery: + - + sysDescr: + - JETDIRECT + - HP ETHERNET MULTI-ENVIRONMENT + - HP Laser MFP + - + sysObjectID_regex: + - '/^.1.3.6.1.4.1.11.1$/' diff --git a/priv/profiles/os_detection/jetstream.yaml b/priv/profiles/os_detection/jetstream.yaml new file mode 100644 index 00000000..14af6899 --- /dev/null +++ b/priv/profiles/os_detection/jetstream.yaml @@ -0,0 +1,39 @@ +os: jetstream +text: 'TP-Link JetStream' +type: network +icon: tplink +mib_dir: tplink +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11863.5. + - + sysDescr: + - JetStream +oids: + no_bulk: + - TPLINK-DDMSTATUS-MIB::ddmStatusTable + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowAlarm + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowWarn + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighAlarm + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighWarn + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowAlarm + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowWarn + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighAlarm + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighWarn + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowAlarm + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowWarn + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighAlarm + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighWarn + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowAlarm + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowWarn + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighAlarm + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighWarn + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowAlarm + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowWarn + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighAlarm + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighWarn diff --git a/priv/profiles/os_detection/juniper-mss.yaml b/priv/profiles/os_detection/juniper-mss.yaml new file mode 100644 index 00000000..b93e23f1 --- /dev/null +++ b/priv/profiles/os_detection/juniper-mss.yaml @@ -0,0 +1,9 @@ +os: juniper-mss +text: 'Juniper MSS' +type: appliance +icon: junos +mib_dir: juniper +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - { sysObjectID: [.1.3.6.1.4.1.14525.3.] } diff --git a/priv/profiles/os_detection/juniperex2500os.yaml b/priv/profiles/os_detection/juniperex2500os.yaml new file mode 100644 index 00000000..038b40a5 --- /dev/null +++ b/priv/profiles/os_detection/juniperex2500os.yaml @@ -0,0 +1,10 @@ +os: juniperex2500os +text: 'Juniper EX2500' +type: network +icon: junos +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1411.102 diff --git a/priv/profiles/os_detection/junos.yaml b/priv/profiles/os_detection/junos.yaml new file mode 100644 index 00000000..72700d25 --- /dev/null +++ b/priv/profiles/os_detection/junos.yaml @@ -0,0 +1,19 @@ +os: junos +text: 'Juniper JunOS' +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery_modules: + slas: true + vrf: true +poller_modules: + slas: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.2636 + - + sysDescr: + - 'kernel JUNOS' + - 'kernel Junos' diff --git a/priv/profiles/os_detection/junose.yaml b/priv/profiles/os_detection/junose.yaml new file mode 100644 index 00000000..63078372 --- /dev/null +++ b/priv/profiles/os_detection/junose.yaml @@ -0,0 +1,16 @@ +os: junose +text: 'Juniper JunOSe' +type: network +icon: junos +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + junose-atm-vp: true +discovery_modules: + junose-atm-vp: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4874 diff --git a/priv/profiles/os_detection/jwos.yaml b/priv/profiles/os_detection/jwos.yaml new file mode 100644 index 00000000..da42be09 --- /dev/null +++ b/priv/profiles/os_detection/jwos.yaml @@ -0,0 +1,8 @@ +os: jwos +text: 'Juniper JWOS' +type: network +icon: junos +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8239.1.2.9 diff --git a/priv/profiles/os_detection/keeneticos.yaml b/priv/profiles/os_detection/keeneticos.yaml new file mode 100644 index 00000000..482540c0 --- /dev/null +++ b/priv/profiles/os_detection/keeneticos.yaml @@ -0,0 +1,11 @@ +os: keeneticos +group: keenetic +text: 'KeeneticOS' +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: + - '/^Keenetic/' diff --git a/priv/profiles/os_detection/kemp.yaml b/priv/profiles/os_detection/kemp.yaml new file mode 100644 index 00000000..13eac39f --- /dev/null +++ b/priv/profiles/os_detection/kemp.yaml @@ -0,0 +1,11 @@ +os: kemp +text: 'Kemp Loadbalancer' +type: loadbalancer +icon: kemp +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.12196.250.10 diff --git a/priv/profiles/os_detection/konica.yaml b/priv/profiles/os_detection/konica.yaml new file mode 100644 index 00000000..ab46f9b3 --- /dev/null +++ b/priv/profiles/os_detection/konica.yaml @@ -0,0 +1,18 @@ +os: konica +group: printer +text: 'Konica-Minolta Printer' +type: printer +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - 'KONICA MINOLTA' + - 'konica minolta' + - + sysObjectID: + - .1.3.6.1.4.1.18334.1. +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/kti.yaml b/priv/profiles/os_detection/kti.yaml new file mode 100644 index 00000000..db51a574 --- /dev/null +++ b/priv/profiles/os_detection/kti.yaml @@ -0,0 +1,11 @@ +os: kti +text: KTI +type: network +icon: kti +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/^KGS-/' diff --git a/priv/profiles/os_detection/kyocera.yaml b/priv/profiles/os_detection/kyocera.yaml new file mode 100644 index 00000000..74a826fe --- /dev/null +++ b/priv/profiles/os_detection/kyocera.yaml @@ -0,0 +1,15 @@ +os: kyocera +group: printer +text: 'Kyocera Mita Printer' +over: + - { graph: device_toner, text: Toner } +ifname: true +type: printer +discovery: + - + sysDescr_regex: + - '/^KYOCERA/' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/lambdatrail.yaml b/priv/profiles/os_detection/lambdatrail.yaml new file mode 100644 index 00000000..19a881c3 --- /dev/null +++ b/priv/profiles/os_detection/lambdatrail.yaml @@ -0,0 +1,13 @@ +os: lambdatrail +text: 'Lambdatrail' +type: network +icon: lambdatrail +group: deltanet +over: + - { graph: device_dbm, text: 'Optical values' } + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_state, text: 'State' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.35616 +mib_dir: deltanet \ No newline at end of file diff --git a/priv/profiles/os_detection/lanier.yaml b/priv/profiles/os_detection/lanier.yaml new file mode 100644 index 00000000..16032967 --- /dev/null +++ b/priv/profiles/os_detection/lanier.yaml @@ -0,0 +1,15 @@ +os: lanier +group: printer +text: 'Lanier Printer' +type: printer +icon: lanier +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - LANIER +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/lantronix-slc.yaml b/priv/profiles/os_detection/lantronix-slc.yaml new file mode 100644 index 00000000..f13456cf --- /dev/null +++ b/priv/profiles/os_detection/lantronix-slc.yaml @@ -0,0 +1,13 @@ +os: lantronix-slc +text: 'Lantronix SLC' +type: network +icon: lantronix +mib_dir: lantronix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.244.1.1 diff --git a/priv/profiles/os_detection/lantronix-uds.yaml b/priv/profiles/os_detection/lantronix-uds.yaml new file mode 100644 index 00000000..f547a57c --- /dev/null +++ b/priv/profiles/os_detection/lantronix-uds.yaml @@ -0,0 +1,12 @@ +os: lantronix-uds +text: 'Lantronix UDS' +type: network +icon: lantronix +mib_dir: lantronix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.1723.2.1 diff --git a/priv/profiles/os_detection/lcos.yaml b/priv/profiles/os_detection/lcos.yaml new file mode 100644 index 00000000..3362fa89 --- /dev/null +++ b/priv/profiles/os_detection/lcos.yaml @@ -0,0 +1,14 @@ +os: lcos +text: 'Lancom OS' +type: wireless +icon: lancom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: lancom +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2356.600.6. + - .1.3.6.1.4.1.2356.11.8. diff --git a/priv/profiles/os_detection/lcoslx.yaml b/priv/profiles/os_detection/lcoslx.yaml new file mode 100644 index 00000000..2b07c481 --- /dev/null +++ b/priv/profiles/os_detection/lcoslx.yaml @@ -0,0 +1,14 @@ +os: lcoslx +text: 'Lancom Systems LCOS LX' +type: wireless +icon: lancom +mib_dir: lancom +empty_ifdescr: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2356.13.8. diff --git a/priv/profiles/os_detection/lcossx.yaml b/priv/profiles/os_detection/lcossx.yaml new file mode 100644 index 00000000..714e779f --- /dev/null +++ b/priv/profiles/os_detection/lcossx.yaml @@ -0,0 +1,16 @@ +os: lcossx +text: 'Lancom Systems LCOS SX' +type: network +icon: lancom +mib_dir: lancom +empty_ifdescr: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2356.14.8. + - .1.3.6.1.4.1.2356.16.8. + + diff --git a/priv/profiles/os_detection/lenovoemc.yaml b/priv/profiles/os_detection/lenovoemc.yaml new file mode 100644 index 00000000..64a0c951 --- /dev/null +++ b/priv/profiles/os_detection/lenovoemc.yaml @@ -0,0 +1,14 @@ +os: lenovoemc +type: storage +group: storage +text: LenovoEMC +icon: lenovo +mib_dir: lenovo +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - 'EMC SOHO-NAS Storage.' diff --git a/priv/profiles/os_detection/lexmarkprinter.yaml b/priv/profiles/os_detection/lexmarkprinter.yaml new file mode 100644 index 00000000..d3b84a40 --- /dev/null +++ b/priv/profiles/os_detection/lexmarkprinter.yaml @@ -0,0 +1,15 @@ +os: lexmarkprinter +group: printer +text: 'Lexmark Printer' +type: printer +icon: lexmark +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - Lexmark +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/liebert.yaml b/priv/profiles/os_detection/liebert.yaml new file mode 100644 index 00000000..5ca99aa6 --- /dev/null +++ b/priv/profiles/os_detection/liebert.yaml @@ -0,0 +1,15 @@ +os: liebert +text: Liebert +type: power +icon: vertiv +snmp_bulk: false +mib_dir: liebert +rfc1628_compat: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.476.1.42 +over: + - { graph: device_power, text: 'Power' } + - { graph: device_current, text: 'Current' } + - { graph: device_voltage, text: 'Voltage' } diff --git a/priv/profiles/os_detection/ligoos.yaml b/priv/profiles/os_detection/ligoos.yaml new file mode 100644 index 00000000..ad7cb8b0 --- /dev/null +++ b/priv/profiles/os_detection/ligoos.yaml @@ -0,0 +1,12 @@ +os: ligoos +text: 'LigoWave LigoOS' +type: wireless +icon: ligowave +mib_dir: ligoos +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr_regex: + - '/^LigoPTP/' + - '/^LigoDLB/' diff --git a/priv/profiles/os_detection/linksys-ss.yaml b/priv/profiles/os_detection/linksys-ss.yaml new file mode 100644 index 00000000..b6ba1b1a --- /dev/null +++ b/priv/profiles/os_detection/linksys-ss.yaml @@ -0,0 +1,13 @@ +os: linksys-ss +text: 'Linksys Smart Switch' +ifname: true +type: network +icon: linksys +mib_dir: linksys +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3955.1000 diff --git a/priv/profiles/os_detection/linux.yaml b/priv/profiles/os_detection/linux.yaml new file mode 100644 index 00000000..9cd50ff8 --- /dev/null +++ b/priv/profiles/os_detection/linux.yaml @@ -0,0 +1,31 @@ +os: linux +type: server +group: unix +text: Linux +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + applications: true + bgp-peers: false + stp: false + vminfo: true +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex_except: + - '/^USG/' + - + sysDescr_regex: '/^Linux/' +ignore_mount_regexp: + - '#^/run($|/)#' + - '#^/dev/shm$#' + - '#^/var/snap/#' diff --git a/priv/profiles/os_detection/loadbalancer.yaml b/priv/profiles/os_detection/loadbalancer.yaml new file mode 100644 index 00000000..7b6c7da9 --- /dev/null +++ b/priv/profiles/os_detection/loadbalancer.yaml @@ -0,0 +1,19 @@ +os: loadbalancer +text: 'Loadbalancer.org' +type: loadbalancer +icon: loadbalancer +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.54849.1.1.4.0 + op: '!=' + value: false +poller_modules: + loadbalancers: true +discovery_modules: + loadbalancers: true diff --git a/priv/profiles/os_detection/logmaster.yaml b/priv/profiles/os_detection/logmaster.yaml new file mode 100644 index 00000000..f0eeb80a --- /dev/null +++ b/priv/profiles/os_detection/logmaster.yaml @@ -0,0 +1,38 @@ +os: logmaster +text: LogMaster +type: power +icon: logmaster +mib_dir: logmaster +discovery: + - + sysObjectID: .1.3.6.1.4.1.935 + sysDescr: LogWeb +discovery_modules: + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + entity-physical: false + ports: false + ports-stack: false + mempools: false + discovery-protocols: false + storage: false + ucd-diskio: false +poller_modules: + bgp-peers: false + entity-physical: false + hr-mib: false + ipSystemStats: false + ipmi: false + ntp: false + ospf: false + processors: false + services: false + netstats: false + ports: false + stp: false + mempools: false + storage: false + ucd-diskio: false + ucd-mib: false + wireless: false diff --git a/priv/profiles/os_detection/loop-telecom.yaml b/priv/profiles/os_detection/loop-telecom.yaml new file mode 100644 index 00000000..9e1980df --- /dev/null +++ b/priv/profiles/os_detection/loop-telecom.yaml @@ -0,0 +1,11 @@ +os: loop-telecom +text: Loop Telecom Operating System +type: network +icon: loop-telecom +mib_dir: loop-telecom +over: + - { graph: device_bits, text: 'Device Traffic' } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.823.34441 \ No newline at end of file diff --git a/priv/profiles/os_detection/luminato.yaml b/priv/profiles/os_detection/luminato.yaml new file mode 100644 index 00000000..2e2d1c62 --- /dev/null +++ b/priv/profiles/os_detection/luminato.yaml @@ -0,0 +1,29 @@ +os: luminato +text: 'Teleste Luminato' +type: network +icon: teleste +group: luminato +mib_dir: teleste +bad_snmpEngineTime: true +bad_hrSystemUptime: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3715 +discovery_modules: + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + ports-stack: false + mempools: false + discovery-protocols: false + wireless: false +poller_modules: + bgp-peers: false + services: false + mempools: false + wireless: false diff --git a/priv/profiles/os_detection/macosx.yaml b/priv/profiles/os_detection/macosx.yaml new file mode 100644 index 00000000..f7ac0262 --- /dev/null +++ b/priv/profiles/os_detection/macosx.yaml @@ -0,0 +1,14 @@ +os: macosx +text: 'Apple OS X' +type: server +icon: apple +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.16 + - + sysDescr: + - 'Darwin Kernel Version' diff --git a/priv/profiles/os_detection/magnum.yaml b/priv/profiles/os_detection/magnum.yaml new file mode 100644 index 00000000..8d7ca2d9 --- /dev/null +++ b/priv/profiles/os_detection/magnum.yaml @@ -0,0 +1,10 @@ +os: magnum +text: 'Tandberg Magnum' +type: storage +icon: tandberg +over: + - { graph: device_ping_perf, text: 'ICMP Response' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3073.2. diff --git a/priv/profiles/os_detection/marathonups.yaml b/priv/profiles/os_detection/marathonups.yaml new file mode 100644 index 00000000..93d62f0d --- /dev/null +++ b/priv/profiles/os_detection/marathonups.yaml @@ -0,0 +1,10 @@ +os: marathonups +text: 'Marathon UPS' +type: power +rfc1628_compat: true +over: + - { graph: device_load, text: Load } + - { graph: device_voltage, text: Voltage } +discovery: + - + sysObjectID: .1.3.6.1.4.1.2021.1.1.1 diff --git a/priv/profiles/os_detection/mbg-ltos6.yaml b/priv/profiles/os_detection/mbg-ltos6.yaml new file mode 100644 index 00000000..340aa038 --- /dev/null +++ b/priv/profiles/os_detection/mbg-ltos6.yaml @@ -0,0 +1,9 @@ +os: mbg-ltos6 +text: 'LANTIME v6' +type: timing +icon: meinberg +mib_dir: meinberg +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5597.3 diff --git a/priv/profiles/os_detection/mbg-meinbergos.yaml b/priv/profiles/os_detection/mbg-meinbergos.yaml new file mode 100644 index 00000000..a555e3d8 --- /dev/null +++ b/priv/profiles/os_detection/mbg-meinbergos.yaml @@ -0,0 +1,9 @@ +os: mbg-meinbergos +text: 'Meinberg microSync' +type: timing +icon: meinberg +group: meinberg +mib_dir: meinberg +discovery: + - sysObjectID: + - .1.3.6.1.4.1.5597.7 diff --git a/priv/profiles/os_detection/mcafeewebgateway.yaml b/priv/profiles/os_detection/mcafeewebgateway.yaml new file mode 100644 index 00000000..c95b6e4e --- /dev/null +++ b/priv/profiles/os_detection/mcafeewebgateway.yaml @@ -0,0 +1,17 @@ +os: mcafeewebgateway +text: 'Mcafee Web Gateway' +type: firewall +icon: mcafeewebgateway +mib_dir: mcafee +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.1230.2.7.1.1 + snmpget: + oid: 'SNMPv2-SMI::enterprises.1230.2.7.1.1.0' + op: starts + value: 'McAfee Web Gateway' diff --git a/priv/profiles/os_detection/mellanox.yaml b/priv/profiles/os_detection/mellanox.yaml new file mode 100644 index 00000000..0068e131 --- /dev/null +++ b/priv/profiles/os_detection/mellanox.yaml @@ -0,0 +1,12 @@ +os: mellanox +text: Mellanox +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.33049.1.1.1. + - .1.3.6.1.4.1.33049.2 diff --git a/priv/profiles/os_detection/merakimr.yaml b/priv/profiles/os_detection/merakimr.yaml new file mode 100644 index 00000000..f30c0bcf --- /dev/null +++ b/priv/profiles/os_detection/merakimr.yaml @@ -0,0 +1,13 @@ +os: merakimr +text: 'Meraki AP' +type: wireless +icon: meraki +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +bad_uptime: true +discovery: + - + sysDescr_regex: + - '/^=?Meraki MR/' + - '/^=?Meraki CW/' diff --git a/priv/profiles/os_detection/merakims.yaml b/priv/profiles/os_detection/merakims.yaml new file mode 100644 index 00000000..f2b8ab32 --- /dev/null +++ b/priv/profiles/os_detection/merakims.yaml @@ -0,0 +1,14 @@ +os: merakims +text: 'Meraki Switch' +type: network +icon: meraki +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/^Meraki MS/' + - + sysObjectID: + - .1.3.6.1.4.1.29671.2.388 diff --git a/priv/profiles/os_detection/merakimx.yaml b/priv/profiles/os_detection/merakimx.yaml new file mode 100644 index 00000000..dd152884 --- /dev/null +++ b/priv/profiles/os_detection/merakimx.yaml @@ -0,0 +1,11 @@ +os: merakimx +text: 'Meraki MX Appliance' +type: firewall +icon: meraki +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/^Meraki MX/' diff --git a/priv/profiles/os_detection/mgepdu.yaml b/priv/profiles/os_detection/mgepdu.yaml new file mode 100644 index 00000000..03421cb5 --- /dev/null +++ b/priv/profiles/os_detection/mgepdu.yaml @@ -0,0 +1,11 @@ +os: mgepdu +text: 'Eaton MGE PDU' +type: power +icon: eaton +mib_dir: eaton +over: + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.705.2 diff --git a/priv/profiles/os_detection/microsemipdsine.yaml b/priv/profiles/os_detection/microsemipdsine.yaml new file mode 100644 index 00000000..8490160e --- /dev/null +++ b/priv/profiles/os_detection/microsemipdsine.yaml @@ -0,0 +1,12 @@ +os: microsemipdsine +text: 'Microsemi PowerDsine Midspan PoE' +type: network +icon: microsemi +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } +mib_dir: microsemi +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7428.1.1.1. diff --git a/priv/profiles/os_detection/microsemitime.yaml b/priv/profiles/os_detection/microsemitime.yaml new file mode 100644 index 00000000..7b941d87 --- /dev/null +++ b/priv/profiles/os_detection/microsemitime.yaml @@ -0,0 +1,13 @@ +os: microsemitime +text: 'SyncServer' +type: timing +icon: microsemi +mib_dir: microsemi +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.39165.1.6 + - .1.3.6.1.4.1.9070.1.2 diff --git a/priv/profiles/os_detection/mimosa.yaml b/priv/profiles/os_detection/mimosa.yaml new file mode 100644 index 00000000..7ab52012 --- /dev/null +++ b/priv/profiles/os_detection/mimosa.yaml @@ -0,0 +1,12 @@ +os: mimosa +text: Mimosa +type: wireless +icon: mimosa +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.43356 diff --git a/priv/profiles/os_detection/minkelsrms.yaml b/priv/profiles/os_detection/minkelsrms.yaml new file mode 100644 index 00000000..d1480094 --- /dev/null +++ b/priv/profiles/os_detection/minkelsrms.yaml @@ -0,0 +1,9 @@ +os: minkelsrms +text: 'Minkels RMS' +type: environment +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysDescr: + - 8VD-X20 diff --git a/priv/profiles/os_detection/mirth.yaml b/priv/profiles/os_detection/mirth.yaml new file mode 100644 index 00000000..96937fde --- /dev/null +++ b/priv/profiles/os_detection/mirth.yaml @@ -0,0 +1,11 @@ +os: mirth +type: server +text: 'Mirth Connect' +icon: mirth +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: '/^Linux mirthtemplate/' diff --git a/priv/profiles/os_detection/mlos-atd.yaml b/priv/profiles/os_detection/mlos-atd.yaml new file mode 100644 index 00000000..a4dca9f9 --- /dev/null +++ b/priv/profiles/os_detection/mlos-atd.yaml @@ -0,0 +1,13 @@ +os: mlos-atd +group: trellix +text: 'McAfee Linux OS - ATD' +type: appliance +icon: trellix +mib_dir: trellix +over: + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: mlos diff --git a/priv/profiles/os_detection/mlos-nsp.yaml b/priv/profiles/os_detection/mlos-nsp.yaml new file mode 100644 index 00000000..df0d6e35 --- /dev/null +++ b/priv/profiles/os_detection/mlos-nsp.yaml @@ -0,0 +1,19 @@ +os: mlos-nsp +group: trellix +text: 'McAfee Linux OS - NSP' +type: appliance +icon: trellix +mib_dir: trellix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.8962.2.1.2.1.1.6.0 + op: contains + value: + - 'NETWORK-SECURITY-PLATFORM' + - 'TRELLIX-INTRUSION-PREVENTION-SYSTEM' diff --git a/priv/profiles/os_detection/mni.yaml b/priv/profiles/os_detection/mni.yaml new file mode 100644 index 00000000..3b1b6d8d --- /dev/null +++ b/priv/profiles/os_detection/mni.yaml @@ -0,0 +1,12 @@ +os: mni +text: 'MNI Microwave Radio' +type: wireless +mib_dir: mni +icon: mni +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Device Rate' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.3323.11.1. +snmp_bulk: false diff --git a/priv/profiles/os_detection/mobileiron.yaml b/priv/profiles/os_detection/mobileiron.yaml new file mode 100644 index 00000000..a46359f3 --- /dev/null +++ b/priv/profiles/os_detection/mobileiron.yaml @@ -0,0 +1,19 @@ +os: mobileiron +type: appliance +group: unix +text: MobileIron +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +processor_stacked: true +discovery: + - + sysDescr: Linux + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpwalk: + oid: HOST-RESOURCES-MIB::hrSWInstalledName + op: 'contains' + value: mobileiron diff --git a/priv/profiles/os_detection/monowall.yaml b/priv/profiles/os_detection/monowall.yaml new file mode 100644 index 00000000..8f1c4136 --- /dev/null +++ b/priv/profiles/os_detection/monowall.yaml @@ -0,0 +1,12 @@ +os: monowall +group: unix +text: m0n0wall +type: firewall +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +processor_stacked: true +discovery: + - + sysDescr: + - m0n0wall diff --git a/priv/profiles/os_detection/montclair-edfa.yaml b/priv/profiles/os_detection/montclair-edfa.yaml new file mode 100644 index 00000000..d45a30a0 --- /dev/null +++ b/priv/profiles/os_detection/montclair-edfa.yaml @@ -0,0 +1,15 @@ +os: montclair-edfa +text: Montclair EDFA +type: network +ifname: true +empty_ifdescr: true +mib_dir: montclair +icon: montclair +over: + - { graph: device_dbm, text: 'Optical Power' } + - { graph: device_temperature, text: 'Device Temperature' } + +discovery: + - + sysObjectID_regex: + - "/^.1.3.6.1.4.1.1385$/" diff --git a/priv/profiles/os_detection/morningstar-mppt.yaml b/priv/profiles/os_detection/morningstar-mppt.yaml new file mode 100644 index 00000000..b598b60c --- /dev/null +++ b/priv/profiles/os_detection/morningstar-mppt.yaml @@ -0,0 +1,40 @@ +os: morningstar-mppt +text: MorningStar MPPT +over: + - { graph: device_temperature, text: Temperatures } + - { graph: device_voltage, text: Voltages } + - { graph: device_current, text: Currents } +type: appliance +icon: morningstar +mib_dir: morningstar +discovery: + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: GENSTAR::subModel.0 + op: 'contains' + value: 'MPPT' + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: SUNSAVER-MPPT::subModel.0 + op: 'contains' + value: 'MPPT' + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: PROSTAR-MPPT::subModel.0 + op: 'contains' + value: 'MPPT' + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: TRISTAR-MPPT::subModel.0 + op: 'contains' + value: 'MPPT' + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: TRISTAR-MPPT-600V::subModel.0 + op: 'contains' + value: 'MPPT' diff --git a/priv/profiles/os_detection/morningstar-pwm.yaml b/priv/profiles/os_detection/morningstar-pwm.yaml new file mode 100644 index 00000000..ea99f72c --- /dev/null +++ b/priv/profiles/os_detection/morningstar-pwm.yaml @@ -0,0 +1,22 @@ +os: morningstar-pwm +text: MorningStar PWM +over: + - { graph: device_temperature, text: Temperatures } + - { graph: device_voltage, text: Voltages } + - { graph: device_current, text: Currents } +type: appliance +icon: morningstar +mib_dir: morningstar +discovery: + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: PROSTAR-PWM::subModel.0 + op: 'contains' + value: 'PWM' + - + sysObjectID: .1.3.6.1.4.1.33333 + snmpget: + oid: TRISTAR::subModel.0 + op: 'contains' + value: 'PWM' \ No newline at end of file diff --git a/priv/profiles/os_detection/motorola-cm.yaml b/priv/profiles/os_detection/motorola-cm.yaml new file mode 100644 index 00000000..06a3fea2 --- /dev/null +++ b/priv/profiles/os_detection/motorola-cm.yaml @@ -0,0 +1,10 @@ +os: motorola-cm +text: 'Motorola DOCSIS Cable Modem' +icon: motorola-cm +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1166.1.450.12.2 diff --git a/priv/profiles/os_detection/moxa-awk.yaml b/priv/profiles/os_detection/moxa-awk.yaml new file mode 100644 index 00000000..d644aff7 --- /dev/null +++ b/priv/profiles/os_detection/moxa-awk.yaml @@ -0,0 +1,13 @@ +os: moxa-awk +text: 'Moxa AWK' +type: wireless +icon: moxa +group: moxa +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.8691.15.34 diff --git a/priv/profiles/os_detection/moxa-eds-4000-series.yaml b/priv/profiles/os_detection/moxa-eds-4000-series.yaml new file mode 100644 index 00000000..1bc2d017 --- /dev/null +++ b/priv/profiles/os_detection/moxa-eds-4000-series.yaml @@ -0,0 +1,11 @@ +os: moxa-eds-4000-series +icon: moxa +text: Moxa-EDS-4000-Series +type: network +over: + - { graph: device_power, text: 'Power Consumption' } +mib_dir: moxa +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8691.600. diff --git a/priv/profiles/os_detection/moxa-etherdevice.yaml b/priv/profiles/os_detection/moxa-etherdevice.yaml new file mode 100644 index 00000000..881cfbc3 --- /dev/null +++ b/priv/profiles/os_detection/moxa-etherdevice.yaml @@ -0,0 +1,13 @@ +os: moxa-etherdevice +icon: moxa +text: Moxa +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: moxa +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8691.7. diff --git a/priv/profiles/os_detection/moxa-nport.yaml b/priv/profiles/os_detection/moxa-nport.yaml new file mode 100644 index 00000000..14a5e193 --- /dev/null +++ b/priv/profiles/os_detection/moxa-nport.yaml @@ -0,0 +1,12 @@ +os: moxa-nport +text: Moxa +type: appliance +icon: moxa +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8691.2.7 diff --git a/priv/profiles/os_detection/mpb-srp.yaml b/priv/profiles/os_detection/mpb-srp.yaml new file mode 100644 index 00000000..5c082f59 --- /dev/null +++ b/priv/profiles/os_detection/mpb-srp.yaml @@ -0,0 +1,15 @@ +os: mpb-srp +text: 'MPB SRP' +type: network +icon: mpb +mib_dir: mpb +over: + - { graph: device_temperature, text: 'Case Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.4464.2.2.12.2.4.0 + op: 'contains' + value: 'MPBC_SNMP' diff --git a/priv/profiles/os_detection/mrv-od.yaml b/priv/profiles/os_detection/mrv-od.yaml new file mode 100644 index 00000000..6dba4ad9 --- /dev/null +++ b/priv/profiles/os_detection/mrv-od.yaml @@ -0,0 +1,13 @@ +os: mrv-od +text: 'MRV OptiDriver' +type: network +icon: mrv +group: mrv +over: + - { graph: device_dbm, text: 'dBm' } + - { graph: device_temperature, text: 'Temperature' } +mib_dir: mrv +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.629.200. diff --git a/priv/profiles/os_detection/mrvld.yaml b/priv/profiles/os_detection/mrvld.yaml new file mode 100644 index 00000000..c3f490da --- /dev/null +++ b/priv/profiles/os_detection/mrvld.yaml @@ -0,0 +1,9 @@ +os: mrvld +group: mrv +text: 'MRV LambdaDriver' +type: network +icon: mrv +discovery: + - + sysDescr_regex: + - '/^LambdaDriver/' diff --git a/priv/profiles/os_detection/msl.yaml b/priv/profiles/os_detection/msl.yaml new file mode 100644 index 00000000..94ba7b61 --- /dev/null +++ b/priv/profiles/os_detection/msl.yaml @@ -0,0 +1,20 @@ +os: msl +text: 'Mitel Standard Linux' +type: server +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: mitel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1027.1 +processor_stacked: true +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + bgp-peers: false + stp: false diff --git a/priv/profiles/os_detection/mts-com.yaml b/priv/profiles/os_detection/mts-com.yaml new file mode 100644 index 00000000..ded9352c --- /dev/null +++ b/priv/profiles/os_detection/mts-com.yaml @@ -0,0 +1,13 @@ +os: mts-com +text: 'Majorpower Majortel DC Power System' +type: power +icon: majorpower +mib_dir: majorpower +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_state, text: State } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.40865 diff --git a/priv/profiles/os_detection/mypoweros.yaml b/priv/profiles/os_detection/mypoweros.yaml new file mode 100644 index 00000000..cbe1fbf8 --- /dev/null +++ b/priv/profiles/os_detection/mypoweros.yaml @@ -0,0 +1,17 @@ +os: mypoweros +text: 'Maipu MyPower' +type: network +icon: maipu +ifname: true +mib_dir: maipu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5651.1.101 + - .1.3.6.1.4.1.5651.1.102 + - .1.3.6.1.4.1.5651.1.103 + diff --git a/priv/profiles/os_detection/neptune.yaml b/priv/profiles/os_detection/neptune.yaml new file mode 100644 index 00000000..f0e7a6a5 --- /dev/null +++ b/priv/profiles/os_detection/neptune.yaml @@ -0,0 +1,13 @@ +os: neptune +text: 'Neptune' +type: network +icon: ribbon +mib_dir: ribbon +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.1286.5. + diff --git a/priv/profiles/os_detection/netagent2.yaml b/priv/profiles/os_detection/netagent2.yaml new file mode 100644 index 00000000..ede3a895 --- /dev/null +++ b/priv/profiles/os_detection/netagent2.yaml @@ -0,0 +1,12 @@ +os: netagent2 +text: 'MegaTec NetAgent II' +group: ups +type: power +over: + - { graph: device_load, text: Load } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.935 + sysObjectID_except: + - .1.3.6.1.4.1.935.10 diff --git a/priv/profiles/os_detection/netapp.yaml b/priv/profiles/os_detection/netapp.yaml new file mode 100644 index 00000000..51dce916 --- /dev/null +++ b/priv/profiles/os_detection/netapp.yaml @@ -0,0 +1,10 @@ +os: netapp +type: storage +text: NetApp +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr: + - NetApp + - NETAPP diff --git a/priv/profiles/os_detection/netbotz.yaml b/priv/profiles/os_detection/netbotz.yaml new file mode 100644 index 00000000..6d4c9e71 --- /dev/null +++ b/priv/profiles/os_detection/netbotz.yaml @@ -0,0 +1,11 @@ +os: netbotz +text: 'NetBotz Environment Sensor' +type: environment +icon: apc +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5528.100.20.10 diff --git a/priv/profiles/os_detection/netbsd.yaml b/priv/profiles/os_detection/netbsd.yaml new file mode 100644 index 00000000..606ebbcb --- /dev/null +++ b/priv/profiles/os_detection/netbsd.yaml @@ -0,0 +1,12 @@ +os: netbsd +type: server +group: unix +text: NetBSD +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: + - '/^NetBSD/' diff --git a/priv/profiles/os_detection/netgear.yaml b/priv/profiles/os_detection/netgear.yaml new file mode 100644 index 00000000..f249e9f7 --- /dev/null +++ b/priv/profiles/os_detection/netgear.yaml @@ -0,0 +1,16 @@ +os: netgear +text: 'Netgear ProSafe' +type: network +ifname: true +bad_if: + - cpu +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4526 + - .1.3.6.1.4.1.89.1.1.1.3.6.1.4.1.4526.100.4 + - + sysDescr: ProSafe diff --git a/priv/profiles/os_detection/netguardian.yaml b/priv/profiles/os_detection/netguardian.yaml new file mode 100644 index 00000000..0ddba19e --- /dev/null +++ b/priv/profiles/os_detection/netguardian.yaml @@ -0,0 +1,13 @@ +os: netguardian +text: 'DPS Telecom NetGuardian' +type: appliance +icon: dpstelecom +group: dpstelecom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2682 diff --git a/priv/profiles/os_detection/netmanplus.yaml b/priv/profiles/os_detection/netmanplus.yaml new file mode 100644 index 00000000..cd972380 --- /dev/null +++ b/priv/profiles/os_detection/netmanplus.yaml @@ -0,0 +1,15 @@ +os: netmanplus +text: 'NetMan Plus' +type: power +icon: riello +mib_dir: riello +group: ups +snmp_bulk: false +rfc1628_compat: true +over: + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: .1.3.6.1.4.1.5491. + - + sysDescr_regex: '/^NetMan.*plus/' diff --git a/priv/profiles/os_detection/netmodule.yaml b/priv/profiles/os_detection/netmodule.yaml new file mode 100644 index 00000000..800600f5 --- /dev/null +++ b/priv/profiles/os_detection/netmodule.yaml @@ -0,0 +1,10 @@ +os: netmodule +text: NetModule +type: network +icon: netmodule +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.31496.10. diff --git a/priv/profiles/os_detection/netonix.yaml b/priv/profiles/os_detection/netonix.yaml new file mode 100644 index 00000000..fb33ce01 --- /dev/null +++ b/priv/profiles/os_detection/netonix.yaml @@ -0,0 +1,12 @@ +os: netonix +text: Netonix +type: network +icon: netonix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.46242 diff --git a/priv/profiles/os_detection/netopia.yaml b/priv/profiles/os_detection/netopia.yaml new file mode 100644 index 00000000..d1269d62 --- /dev/null +++ b/priv/profiles/os_detection/netopia.yaml @@ -0,0 +1,7 @@ +os: netopia +text: 'Motorola Netopia' +type: network +discovery: + - + sysDescr_regex: + - '/^Netopia/' diff --git a/priv/profiles/os_detection/netscaler-sdwan.yaml b/priv/profiles/os_detection/netscaler-sdwan.yaml new file mode 100644 index 00000000..186fe81b --- /dev/null +++ b/priv/profiles/os_detection/netscaler-sdwan.yaml @@ -0,0 +1,12 @@ +os: netscaler-sdwan +text: 'NetScaler SD-WAN' +type: appliance +icon: citrix +group: citrix +over: + - { graph: device_uptime, text: 'Device Uptime' } + - { graph: device_ping_perf, text: 'Ping Response' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3845.31 diff --git a/priv/profiles/os_detection/netscaler.yaml b/priv/profiles/os_detection/netscaler.yaml new file mode 100644 index 00000000..bd2fb1fe --- /dev/null +++ b/priv/profiles/os_detection/netscaler.yaml @@ -0,0 +1,15 @@ +os: netscaler +text: 'Citrix Netscaler' +type: loadbalancer +icon: citrix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +mib_dir: citrix +poller_modules: + netscaler-vsvr: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5951.1 + - .1.3.6.1.4.1.5951.6 diff --git a/priv/profiles/os_detection/netspire.yaml b/priv/profiles/os_detection/netspire.yaml new file mode 100644 index 00000000..444273bd --- /dev/null +++ b/priv/profiles/os_detection/netspire.yaml @@ -0,0 +1,9 @@ +os: netspire +text: 'Open Access Netspire' +type: appliance +icon: openaccess +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1732 +mib_dir: openaccess diff --git a/priv/profiles/os_detection/netsure.yaml b/priv/profiles/os_detection/netsure.yaml new file mode 100644 index 00000000..b67487e6 --- /dev/null +++ b/priv/profiles/os_detection/netsure.yaml @@ -0,0 +1,40 @@ +os: netsure +text: 'Emerson Netsure' +type: power +icon: emerson +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_state, text: State } +mib_dir: emerson +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.885.3 +discovery_modules: + storage: false + bgp-peers: false + ntp: false + stp: false + diskio: false + vlans: false + arp-table: false + discovery-protocols: false + hr-device: false + mempools: false + entity-physical: false + ports-stack: false + ucd-diskio: false + processors: false + mpls: false + wireless: false + fdb-table: false + services: false + cisco-vrf-lite: false +poller_modules: + ospf: false + ntp: false + services: false + storage: false + ucd-diskio: false + mpls: false diff --git a/priv/profiles/os_detection/netvision-rfc.yaml b/priv/profiles/os_detection/netvision-rfc.yaml new file mode 100644 index 00000000..ba121513 --- /dev/null +++ b/priv/profiles/os_detection/netvision-rfc.yaml @@ -0,0 +1,16 @@ +os: netvision-rfc +text: 'Socomec Net Vision' +type: power +icon: netvision +mib_dir: socomec +rfc1628_compat: true +over: + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: UPS-MIB::upsIdentAgentSoftwareVersion.0 + op: starts + value: 'Net Vision' + diff --git a/priv/profiles/os_detection/netware.yaml b/priv/profiles/os_detection/netware.yaml new file mode 100644 index 00000000..ede09201 --- /dev/null +++ b/priv/profiles/os_detection/netware.yaml @@ -0,0 +1,8 @@ +os: netware +type: server +text: 'Novell Netware' +icon: novell +discovery: + - + sysDescr: + - 'Novell NetWare' diff --git a/priv/profiles/os_detection/nexans.yaml b/priv/profiles/os_detection/nexans.yaml new file mode 100644 index 00000000..702f86a8 --- /dev/null +++ b/priv/profiles/os_detection/nexans.yaml @@ -0,0 +1,11 @@ +os: nexans +text: 'Nexans' +type: network +icon: nexans +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: nexans +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.266. diff --git a/priv/profiles/os_detection/nimbleos.yaml b/priv/profiles/os_detection/nimbleos.yaml new file mode 100644 index 00000000..c1447036 --- /dev/null +++ b/priv/profiles/os_detection/nimbleos.yaml @@ -0,0 +1,12 @@ +os: nimbleos +text: 'Nimble OS' +type: storage +icon: nimble +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: 'Storage Usage' } +mib_dir: nimble +discovery: + - + sysDescr: + - 'Nimble Storage' diff --git a/priv/profiles/os_detection/nios.yaml b/priv/profiles/os_detection/nios.yaml new file mode 100644 index 00000000..1d0f9b83 --- /dev/null +++ b/priv/profiles/os_detection/nios.yaml @@ -0,0 +1,9 @@ +os: nios +text: Infoblox +type: appliance +mib_dir: infoblox +icon: infoblox +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7779. diff --git a/priv/profiles/os_detection/nitro.yaml b/priv/profiles/os_detection/nitro.yaml new file mode 100644 index 00000000..de84c8ca --- /dev/null +++ b/priv/profiles/os_detection/nitro.yaml @@ -0,0 +1,15 @@ +os: nitro +text: 'McAfee SIEM Nitro' +type: appliance +icon: mcafee +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.23128.1000.1.1 + - .1.3.6.1.4.1.23128.1000.3.1 + - .1.3.6.1.4.1.23128.1000.7.1 + - .1.3.6.1.4.1.23128.1000.11.1 diff --git a/priv/profiles/os_detection/nokia-1830.yaml b/priv/profiles/os_detection/nokia-1830.yaml new file mode 100644 index 00000000..df552172 --- /dev/null +++ b/priv/profiles/os_detection/nokia-1830.yaml @@ -0,0 +1,21 @@ +os: nokia-1830 +group: nokia +text: 'Nokia 1830 PSS' +mib_dir: nokia/1830 +type: network +ifXmcbc: true +ifname: true +empty_ifdescr: true +over: + - { graph: device_state, text: States } + - { graph: device_dbm, text: 'Optical Power' } +icon: nokia +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7483.1.3.1.2 # PSS32 + - .1.3.6.1.4.1.7483.1.3.1.6 # PSS + - .1.3.6.1.4.1.7483.1.3.1.8 # PSS4 + - .1.3.6.1.4.1.7483.1.3.1.12 # PSD + - .1.3.6.1.4.1.7483.1.3.1.13 # PSI + - .1.3.6.1.4.1.7483.1.3.1.14 # PSIM diff --git a/priv/profiles/os_detection/nokia-isam.yaml b/priv/profiles/os_detection/nokia-isam.yaml new file mode 100644 index 00000000..1ead7942 --- /dev/null +++ b/priv/profiles/os_detection/nokia-isam.yaml @@ -0,0 +1,26 @@ +os: nokia-isam +text: 'NOKIA ISAM' +type: network +icon: nokia +group: nokia +bad_ifXEntry: + - NFXS-E +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.637.61 +mib_dir: nokia +bad_iftype: + - aluGponOnu + - bridge + - l2vlan + - slip + - softwareLoopback + - aluGponPhysicalUni + - linegroup + - gpon + - other diff --git a/priv/profiles/os_detection/nos.yaml b/priv/profiles/os_detection/nos.yaml new file mode 100644 index 00000000..4b462314 --- /dev/null +++ b/priv/profiles/os_detection/nos.yaml @@ -0,0 +1,17 @@ +os: nos +text: 'Brocade NOS' +type: network +ifname: true +group: brocade +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: brocade +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1588.2.2. + - .1.3.6.1.4.1.1588.3.3. + sysDescr_except: + - 'SLX Operating System' diff --git a/priv/profiles/os_detection/nrg.yaml b/priv/profiles/os_detection/nrg.yaml new file mode 100644 index 00000000..e7c99e7e --- /dev/null +++ b/priv/profiles/os_detection/nrg.yaml @@ -0,0 +1,15 @@ +os: nrg +group: printer +text: 'NRG Printer' +type: printer +icon: nrg +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - 'NRG Network Printer' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/ns-bsd.yaml b/priv/profiles/os_detection/ns-bsd.yaml new file mode 100644 index 00000000..b319316f --- /dev/null +++ b/priv/profiles/os_detection/ns-bsd.yaml @@ -0,0 +1,17 @@ +os: ns-bsd +text: 'Stormshield NS-BSD' +type: firewall +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: stormshield +mib_dir: stormshield +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.8 + - .1.3.6.1.4.1.11256.2.0 + - .1.3.6.1.4.1.11256.1.20 + sysDescr_regex: + - '/^NS-BSD/' diff --git a/priv/profiles/os_detection/nti.yaml b/priv/profiles/os_detection/nti.yaml new file mode 100644 index 00000000..831bf5c5 --- /dev/null +++ b/priv/profiles/os_detection/nti.yaml @@ -0,0 +1,12 @@ +os: nti +text: 'NTI' +type: environment +icon: nti +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.3699.1.1.12 +mib_dir: nti diff --git a/priv/profiles/os_detection/ntron.yaml b/priv/profiles/os_detection/ntron.yaml new file mode 100644 index 00000000..a12fb63f --- /dev/null +++ b/priv/profiles/os_detection/ntron.yaml @@ -0,0 +1,13 @@ +os: ntron +text: 'Redlion N-Tron' +type: network +icon: redlion +mib_dir: redlion +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28381. +bad_ifname_regexp: + - "/^cpu/" diff --git a/priv/profiles/os_detection/nutanix-aos.yaml b/priv/profiles/os_detection/nutanix-aos.yaml new file mode 100644 index 00000000..ca5bb82f --- /dev/null +++ b/priv/profiles/os_detection/nutanix-aos.yaml @@ -0,0 +1,13 @@ +os: nutanix-aos +text: 'Nutanix AOS' +type: server +icon: nutanix +group: unix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.41263 diff --git a/priv/profiles/os_detection/nxos.yaml b/priv/profiles/os_detection/nxos.yaml new file mode 100644 index 00000000..e76f8038 --- /dev/null +++ b/priv/profiles/os_detection/nxos.yaml @@ -0,0 +1,38 @@ +os: nxos +group: cisco +text: 'Cisco NX-OS' +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + ipmi: false + cisco-vpdn: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - NX-OS(tm) + - Cisco NX-OS + sysDescr_except: + - Cisco NX-OS(tm) ucs # exclude UCS, and indentify as "UCOS" OS + sysObjectID_except: + - .1.3.6.1.4.1.9.12.3.1.3.1062 # exclude UCS, and indentify as "UCOS" OS diff --git a/priv/profiles/os_detection/occamos.yaml b/priv/profiles/os_detection/occamos.yaml new file mode 100644 index 00000000..0c5cf02b --- /dev/null +++ b/priv/profiles/os_detection/occamos.yaml @@ -0,0 +1,16 @@ +os: occamos +text: Calix B6 System +type: network +icon: calix +mib_dir: calix +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6066.1. +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/oceanstor.yaml b/priv/profiles/os_detection/oceanstor.yaml new file mode 100644 index 00000000..0f1d0102 --- /dev/null +++ b/priv/profiles/os_detection/oceanstor.yaml @@ -0,0 +1,12 @@ +os: oceanstor +text: 'Huawei OceanStor' +type: storage +icon: huawei +group: huawei +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2011.2.91 diff --git a/priv/profiles/os_detection/ocnos.yaml b/priv/profiles/os_detection/ocnos.yaml new file mode 100644 index 00000000..d8150e03 --- /dev/null +++ b/priv/profiles/os_detection/ocnos.yaml @@ -0,0 +1,13 @@ +os: ocnos +text: 'IP Infusion OcNOS' +type: network +icon: ipinfusion +mib_dir: ipinfusion +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.36673 diff --git a/priv/profiles/os_detection/okilan.yaml b/priv/profiles/os_detection/okilan.yaml new file mode 100644 index 00000000..88c3e377 --- /dev/null +++ b/priv/profiles/os_detection/okilan.yaml @@ -0,0 +1,15 @@ +os: okilan +group: printer +text: 'OKI Printer' +over: + - { graph: device_toner, text: Toner } +type: printer +icon: oki +discovery: + - + sysDescr: + - 'OKI OkiLAN' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/omnipcx.yaml b/priv/profiles/os_detection/omnipcx.yaml new file mode 100644 index 00000000..1a8bc97f --- /dev/null +++ b/priv/profiles/os_detection/omnipcx.yaml @@ -0,0 +1,13 @@ +os: omnipcx +group: alcatel +text: 'Alcatel OmniPCX' +type: appliance +icon: alcatellucent +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: alcatel +discovery: + - + sysObjectID: .1.3.6.1.4.1.637.64.4400.1.1.10 diff --git a/priv/profiles/os_detection/omnitron-iconverter.yaml b/priv/profiles/os_detection/omnitron-iconverter.yaml new file mode 100644 index 00000000..f8162d0d --- /dev/null +++ b/priv/profiles/os_detection/omnitron-iconverter.yaml @@ -0,0 +1,9 @@ +os: omnitron-iconverter +text: 'Omnitron iConverter' +type: management +icon: omnitron +mib_dir: omnitron +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7342.5. diff --git a/priv/profiles/os_detection/oneaccess.yaml b/priv/profiles/os_detection/oneaccess.yaml new file mode 100644 index 00000000..adfdcc89 --- /dev/null +++ b/priv/profiles/os_detection/oneaccess.yaml @@ -0,0 +1,16 @@ +os: oneaccess +text: OneAccess +type: network +icon: oneaccess +mib_dir: oneaccess +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.13191. +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/onefs.yaml b/priv/profiles/os_detection/onefs.yaml new file mode 100644 index 00000000..8d7818ef --- /dev/null +++ b/priv/profiles/os_detection/onefs.yaml @@ -0,0 +1,17 @@ +os: onefs +text: 'EMC Isilon OneFS' +type: storage +icon: emc +mib_dir: emc +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12124.1 + - + sysDescr: + - 'Isilon OneFS' diff --git a/priv/profiles/os_detection/ons.yaml b/priv/profiles/os_detection/ons.yaml new file mode 100644 index 00000000..f06300b5 --- /dev/null +++ b/priv/profiles/os_detection/ons.yaml @@ -0,0 +1,30 @@ +os: ons +group: cisco +text: 'Cisco ONS' +ifname: true +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'Cisco ONS' diff --git a/priv/profiles/os_detection/open-e.yaml b/priv/profiles/os_detection/open-e.yaml new file mode 100644 index 00000000..d18c790f --- /dev/null +++ b/priv/profiles/os_detection/open-e.yaml @@ -0,0 +1,16 @@ +os: open-e +text: Open-E +group: unix +type: storage +icon: open-e +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_diskio, text: 'Disk I/O' } +discovery: + - + sysDescr: Open-E +processor_stacked: true +ignore_mount_string: + - /mnt/live + - /RAMDISK diff --git a/priv/profiles/os_detection/openbsd.yaml b/priv/profiles/os_detection/openbsd.yaml new file mode 100644 index 00000000..f74713b7 --- /dev/null +++ b/priv/profiles/os_detection/openbsd.yaml @@ -0,0 +1,14 @@ +os: openbsd +type: server +group: unix +text: OpenBSD +bad_snmpEngineTime: true +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.30155.23.1 + - + sysDescr: OpenBSD diff --git a/priv/profiles/os_detection/opengear.yaml b/priv/profiles/os_detection/opengear.yaml new file mode 100644 index 00000000..7c19edc2 --- /dev/null +++ b/priv/profiles/os_detection/opengear.yaml @@ -0,0 +1,13 @@ +os: opengear +text: Opengear +type: management +icon: opengear +over: + - { graph: device_signal, text: 'Signal' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: opengear +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25049.1 diff --git a/priv/profiles/os_detection/openindiana.yaml b/priv/profiles/os_detection/openindiana.yaml new file mode 100644 index 00000000..1cdad41f --- /dev/null +++ b/priv/profiles/os_detection/openindiana.yaml @@ -0,0 +1,12 @@ +os: openindiana +type: server +group: unix +text: OpenIndiana +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.3 + sysDescr_regex: '/^SunOS oi_.* 5\.11/' diff --git a/priv/profiles/os_detection/opensolaris.yaml b/priv/profiles/os_detection/opensolaris.yaml new file mode 100644 index 00000000..09fec59e --- /dev/null +++ b/priv/profiles/os_detection/opensolaris.yaml @@ -0,0 +1,12 @@ +os: opensolaris +type: server +group: unix +text: 'Sun OpenSolaris' +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.3 + sysDescr_regex: '/^SunOS .+ 5\.11 [^1]/' diff --git a/priv/profiles/os_detection/openvms.yaml b/priv/profiles/os_detection/openvms.yaml new file mode 100644 index 00000000..f5ab01c2 --- /dev/null +++ b/priv/profiles/os_detection/openvms.yaml @@ -0,0 +1,7 @@ +os: openvms +type: server +text: 'HPE OpenVMS' +icon: hpe +bad_hrSystemUptime: true +discovery: + - { sysObjectID: .1.3.6.1.4.1.36.2.15.22.1 } diff --git a/priv/profiles/os_detection/openwrt.yaml b/priv/profiles/os_detection/openwrt.yaml new file mode 100644 index 00000000..2081250f --- /dev/null +++ b/priv/profiles/os_detection/openwrt.yaml @@ -0,0 +1,15 @@ +os: openwrt +text: OpenWrt +type: network +icon: openwrt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: 'NET-SNMP-EXTEND-MIB::nsExtendOutput1Line."distro"' + op: starts + value: OpenWrt diff --git a/priv/profiles/os_detection/opnsense.yaml b/priv/profiles/os_detection/opnsense.yaml new file mode 100644 index 00000000..5fb47b01 --- /dev/null +++ b/priv/profiles/os_detection/opnsense.yaml @@ -0,0 +1,19 @@ +os: opnsense +type: firewall +group: unix +text: OPNsense +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - OPNsense + - sensey + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.8 + snmpget: + oid: .1.3.6.1.4.1.8072.1.3.2.3.1.2.7.118.101.114.115.105.111.110 + op: contains + value: 'OPNsense' diff --git a/priv/profiles/os_detection/oracle-ilom.yaml b/priv/profiles/os_detection/oracle-ilom.yaml new file mode 100644 index 00000000..af77c7d0 --- /dev/null +++ b/priv/profiles/os_detection/oracle-ilom.yaml @@ -0,0 +1,12 @@ +os: oracle-ilom +text: 'Oracle ILOM' +type: appliance +icon: oracle +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.42.2.200 diff --git a/priv/profiles/os_detection/orolia-securesync.yaml b/priv/profiles/os_detection/orolia-securesync.yaml new file mode 100644 index 00000000..76ea3817 --- /dev/null +++ b/priv/profiles/os_detection/orolia-securesync.yaml @@ -0,0 +1,9 @@ +os: orolia-securesync +text: 'Orolia SecureSync' +type: timing +icon: orolia +group: orolia +mib_dir: spectracom +discovery: + - sysObjectID: + - .1.3.6.1.4.1.18837.3 diff --git a/priv/profiles/os_detection/orvaldi-ups.yaml b/priv/profiles/os_detection/orvaldi-ups.yaml new file mode 100644 index 00000000..3080ece5 --- /dev/null +++ b/priv/profiles/os_detection/orvaldi-ups.yaml @@ -0,0 +1,19 @@ +os: orvaldi-ups +text: Orvaldi UPS +type: power +icon: orvaldi +rfc1628_compat: true +mib_dir: orvaldi +over: + - { graph: device_load, text: Load } + - { graph: device_power, text: Power } + - { graph: device_charge, text: Charge } +discovery: + - + sysObjectID: .1.3.6.1.4.1.43943 + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.21111.1.1.1.6.0 + op: starts + value: VER diff --git a/priv/profiles/os_detection/osag.yaml b/priv/profiles/os_detection/osag.yaml new file mode 100644 index 00000000..c743fdf7 --- /dev/null +++ b/priv/profiles/os_detection/osag.yaml @@ -0,0 +1,14 @@ +os: osag +text: OpenSystems +type: firewall +icon: osag +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: CPU } + - { graph: device_mempool, text: Memory } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3996.1.1 + diff --git a/priv/profiles/os_detection/osm.yaml b/priv/profiles/os_detection/osm.yaml new file mode 100644 index 00000000..cc627931 --- /dev/null +++ b/priv/profiles/os_detection/osm.yaml @@ -0,0 +1,15 @@ +os: osm +text: 'endace OSm' +type: appliance +icon: endace +poller_modules: + applications: false +over: + - { graph: device_bits, text: 'Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: endace +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.18418 diff --git a/priv/profiles/os_detection/packetlight.yaml b/priv/profiles/os_detection/packetlight.yaml new file mode 100644 index 00000000..a1fb81ab --- /dev/null +++ b/priv/profiles/os_detection/packetlight.yaml @@ -0,0 +1,12 @@ +os: packetlight +text: 'Packetlight' +type: network +icon: packetlight +group: packetlight +over: + - { graph: device_temperature, text: 'Temperature' } + - { graph: device_dbm, text: 'Interface Power' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.4515.100.1. + sysDescr_regex: '/^[Pp][Ll]/' diff --git a/priv/profiles/os_detection/packetshaper.yaml b/priv/profiles/os_detection/packetshaper.yaml new file mode 100644 index 00000000..61b227bb --- /dev/null +++ b/priv/profiles/os_detection/packetshaper.yaml @@ -0,0 +1,13 @@ +os: packetshaper +text: 'Blue Coat PacketShaper' +type: network +ifname: true +icon: bluecoat +mib_dir: bluecoat +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr: + - PacketShaper + diff --git a/priv/profiles/os_detection/panasonic-ns.yaml b/priv/profiles/os_detection/panasonic-ns.yaml new file mode 100644 index 00000000..f5ef91ab --- /dev/null +++ b/priv/profiles/os_detection/panasonic-ns.yaml @@ -0,0 +1,11 @@ +os: panasonic-ns +text: 'Panasonic KX-NS Series' +type: server +icon: panasonic +mib_dir: panasonic +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.258.601.3 diff --git a/priv/profiles/os_detection/pandacom.yaml b/priv/profiles/os_detection/pandacom.yaml new file mode 100644 index 00000000..f0e3652d --- /dev/null +++ b/priv/profiles/os_detection/pandacom.yaml @@ -0,0 +1,11 @@ +os: pandacom +text: 'PanDacom' +type: network +icon: pandacom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.3652. diff --git a/priv/profiles/os_detection/panduit-eagle.yaml b/priv/profiles/os_detection/panduit-eagle.yaml new file mode 100644 index 00000000..fb68cf06 --- /dev/null +++ b/priv/profiles/os_detection/panduit-eagle.yaml @@ -0,0 +1,11 @@ +os: panduit-eagle +text: 'Eagle-I' +type: power +icon: panduit +mib_dir: sinetica +over: + - { graph: "", text: "" } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3711.24 diff --git a/priv/profiles/os_detection/panduit.yaml b/priv/profiles/os_detection/panduit.yaml new file mode 100644 index 00000000..df33db06 --- /dev/null +++ b/priv/profiles/os_detection/panduit.yaml @@ -0,0 +1,12 @@ +os: panduit +text: 'Panduit PDU' +type: power +mib_dir: panduit +icon: panduit +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } +discovery: + - + sysObjectID: .1.3.6.1.4.1.19536 \ No newline at end of file diff --git a/priv/profiles/os_detection/panos.yaml b/priv/profiles/os_detection/panos.yaml new file mode 100644 index 00000000..bdf2f176 --- /dev/null +++ b/priv/profiles/os_detection/panos.yaml @@ -0,0 +1,13 @@ +os: panos +text: PanOS +type: firewall +icon: panos +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: paloaltonetworks +discovery: + - + sysDescr: + - 'Palo Alto Networks' diff --git a/priv/profiles/os_detection/papouch-quido.yaml b/priv/profiles/os_detection/papouch-quido.yaml new file mode 100644 index 00000000..a8576bfe --- /dev/null +++ b/priv/profiles/os_detection/papouch-quido.yaml @@ -0,0 +1,11 @@ +os: papouch-quido +text: 'Papouch QUIDO' +type: environment +icon: papouch-tme +mib_dir: papouch +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysObjectID: .0.9.43.6.1.4.1 + sysDescr: Quidos diff --git a/priv/profiles/os_detection/papouch-tme.yaml b/priv/profiles/os_detection/papouch-tme.yaml new file mode 100644 index 00000000..d209d026 --- /dev/null +++ b/priv/profiles/os_detection/papouch-tme.yaml @@ -0,0 +1,9 @@ +os: papouch-tme +text: 'Papouch TME' +type: environment +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysObjectID: .0.9.43.6.1.4.1 + sysDescr: TME diff --git a/priv/profiles/os_detection/paradyne.yaml b/priv/profiles/os_detection/paradyne.yaml new file mode 100644 index 00000000..51a72b47 --- /dev/null +++ b/priv/profiles/os_detection/paradyne.yaml @@ -0,0 +1,13 @@ +os: paradyne +text: 'Paradyne (by Zhone)' +type: network +icon: paradyne +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_count, text: 'xDSL speed' } +good_if: + - SHDSL +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3278.1. diff --git a/priv/profiles/os_detection/parks-switch.yaml b/priv/profiles/os_detection/parks-switch.yaml new file mode 100644 index 00000000..2a97b737 --- /dev/null +++ b/priv/profiles/os_detection/parks-switch.yaml @@ -0,0 +1,9 @@ +os: parks-switch +text: 'PK700' +type: network +icon: parks +mib_dir: parks + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.50224.3.1.1 diff --git a/priv/profiles/os_detection/patton-sn.yaml b/priv/profiles/os_detection/patton-sn.yaml new file mode 100644 index 00000000..963cc06d --- /dev/null +++ b/priv/profiles/os_detection/patton-sn.yaml @@ -0,0 +1,14 @@ +os: patton-sn +group: patton +text: 'Patton SmartNode' +type: network +icon: patton +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_count, text: 'Ongoing Calls' } +mib_dir: patton +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1768.100 diff --git a/priv/profiles/os_detection/pbn-cp.yaml b/priv/profiles/os_detection/pbn-cp.yaml new file mode 100644 index 00000000..49c5f1dc --- /dev/null +++ b/priv/profiles/os_detection/pbn-cp.yaml @@ -0,0 +1,20 @@ +os: pbn-cp +text: 'PBN P2P CP100 Series Platform' +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } +icon: pbn +discovery_modules: + ntp: false + ospf: false + services: false + storage: false +poller_modules: + ntp: false + ospf: false + services: false + storage: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11606.24 diff --git a/priv/profiles/os_detection/pbn.yaml b/priv/profiles/os_detection/pbn.yaml new file mode 100644 index 00000000..3b80c86e --- /dev/null +++ b/priv/profiles/os_detection/pbn.yaml @@ -0,0 +1,15 @@ +os: pbn +text: PBN +type: network +ifXmcbc: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: pbn +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11606.10 + - .1.3.6.1.4.1.11606.25 + - .1.3.6.1.4.1.11606.11 diff --git a/priv/profiles/os_detection/pcoweb-rittal-lcp-3311.yaml b/priv/profiles/os_detection/pcoweb-rittal-lcp-3311.yaml new file mode 100644 index 00000000..ddb6d3a1 --- /dev/null +++ b/priv/profiles/os_detection/pcoweb-rittal-lcp-3311.yaml @@ -0,0 +1,12 @@ +os: pcoweb-rittal-lcp-3311 +text: 'Rittal LCP DX Chiller' +type: environment +icon: rittal +over: + - { graph: device_cooling, text: 'Cooling Capacity' } + - { graph: device_temperature, text: Temperatures } + - { graph: device_fanspeed, text: 'Fan Speed' } +mib_dir: carel +discovery: + - sysObjectID: + - .1.3.6.1.4.1.9839.2606.3311 diff --git a/priv/profiles/os_detection/pcoweb-rittalchiller.yaml b/priv/profiles/os_detection/pcoweb-rittalchiller.yaml new file mode 100644 index 00000000..f17f37cb --- /dev/null +++ b/priv/profiles/os_detection/pcoweb-rittalchiller.yaml @@ -0,0 +1,13 @@ +os: pcoweb-rittalchiller +text: 'Rittal IT Chiller' +type: environment +icon: rittal +over: + - { graph: device_cooling, text: 'Cooling Capacity' } + - { graph: device_temperature, text: Temperatures } + - { graph: device_power, text: 'Power Consumption' } +mib_dir: carel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9839.2606.1 diff --git a/priv/profiles/os_detection/pcoweb.yaml b/priv/profiles/os_detection/pcoweb.yaml new file mode 100644 index 00000000..bd34db34 --- /dev/null +++ b/priv/profiles/os_detection/pcoweb.yaml @@ -0,0 +1,21 @@ +os: pcoweb +text: 'Carel pCOWeb' +type: environment +mib_dir: carel +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +icon: carel +icons: + - uniflair +discovery: + - + sysDescr: 'pCO Gateway' + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: roomTemp.0 + mib: CAREL-ug40cdz-MIB + mib_dir: carel + op: '!=' + value: false diff --git a/priv/profiles/os_detection/pegasus.yaml b/priv/profiles/os_detection/pegasus.yaml new file mode 100644 index 00000000..14fbf655 --- /dev/null +++ b/priv/profiles/os_detection/pegasus.yaml @@ -0,0 +1,16 @@ +os: pegasus +group: pegasus +text: 'Pegasus' +type: network +icon: pegasus +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: pegasus +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6368.2 +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/pepwave.yaml b/priv/profiles/os_detection/pepwave.yaml new file mode 100644 index 00000000..f7a17d29 --- /dev/null +++ b/priv/profiles/os_detection/pepwave.yaml @@ -0,0 +1,12 @@ +os: pepwave +text: 'Pepwave' +type: network +icon: peplink +mib_dir: peplink +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.27662 diff --git a/priv/profiles/os_detection/perle.yaml b/priv/profiles/os_detection/perle.yaml new file mode 100644 index 00000000..478baaa9 --- /dev/null +++ b/priv/profiles/os_detection/perle.yaml @@ -0,0 +1,13 @@ +os: perle +text: Perle +type: network +icon: perle +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr: + - 'Perle MCR-MGT' + - + sysObjectID: + - .1.3.6.1.4.1.1966 diff --git a/priv/profiles/os_detection/pfsense.yaml b/priv/profiles/os_detection/pfsense.yaml new file mode 100644 index 00000000..66371013 --- /dev/null +++ b/priv/profiles/os_detection/pfsense.yaml @@ -0,0 +1,13 @@ +os: pfsense +type: firewall +group: unix +text: pfSense +processor_stacked: true +config_highlighting: xml +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - pfSense diff --git a/priv/profiles/os_detection/phybridge-flex.yaml b/priv/profiles/os_detection/phybridge-flex.yaml new file mode 100644 index 00000000..9b8c0633 --- /dev/null +++ b/priv/profiles/os_detection/phybridge-flex.yaml @@ -0,0 +1,18 @@ +os: phybridge-flex +text: 'NVT Phybridge' +icon: phybridge +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + - .1.3.6.1.4.1.54743.1.7 + sysDescr: + - 'Phybridge FLEX' + - 'FLEX-24 Switch' + + diff --git a/priv/profiles/os_detection/picos.yaml b/priv/profiles/os_detection/picos.yaml new file mode 100644 index 00000000..f15055d6 --- /dev/null +++ b/priv/profiles/os_detection/picos.yaml @@ -0,0 +1,11 @@ +os: picos +text: 'Pica8 OS' +type: network +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } +icon: picos +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.35098 diff --git a/priv/profiles/os_detection/ping.yaml b/priv/profiles/os_detection/ping.yaml new file mode 100644 index 00000000..64f480d3 --- /dev/null +++ b/priv/profiles/os_detection/ping.yaml @@ -0,0 +1,5 @@ +os: ping +text: 'Ping only' +over: + - { graph: device_ping_perf, text: 'ICMP Response' } +type: server diff --git a/priv/profiles/os_detection/pixos.yaml b/priv/profiles/os_detection/pixos.yaml new file mode 100644 index 00000000..2b78796f --- /dev/null +++ b/priv/profiles/os_detection/pixos.yaml @@ -0,0 +1,44 @@ +os: pixos +group: cisco +text: 'Cisco PIX-OS' +ifname: true +type: firewall +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + bgp-peers: false + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true + hr-mib: false + ipmi: false + ipSystemStats: false + junose-atm-vp: false + netscaler-vsvr: false + ntp: false + ospf: false + stp: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + bgp-peers: false + stp: false + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - 'Cisco PIX' + - 'Cisco Firewall Services Module' diff --git a/priv/profiles/os_detection/pktj.yaml b/priv/profiles/os_detection/pktj.yaml new file mode 100644 index 00000000..5430c12a --- /dev/null +++ b/priv/profiles/os_detection/pktj.yaml @@ -0,0 +1,18 @@ +os: pktj +type: network +group: unix +text: 'Gandi Packet Journey' +icon: gandi +mib_dir: gandi +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +processor_stacked: true +discovery: + - + sysDescr_regex: '/^Linux/' + snmpget: + oid: 'GANDI-MIB::rxCounter.0' + op: '!=' + value: false diff --git a/priv/profiles/os_detection/planet-pdu.yaml b/priv/profiles/os_detection/planet-pdu.yaml new file mode 100644 index 00000000..da714410 --- /dev/null +++ b/priv/profiles/os_detection/planet-pdu.yaml @@ -0,0 +1,15 @@ +os: planet-pdu +text: PLANET +type: power +icon: planet +mib_dir: planet +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } + - { graph: device_state, text: State } + - { graph: device_temperature, text: Temperature } + +discovery: + - sysObjectID_regex: + - '/^\.1\.3\.6\.1\.4\.1\.10456$/' diff --git a/priv/profiles/os_detection/planetos.yaml b/priv/profiles/os_detection/planetos.yaml new file mode 100644 index 00000000..0d222de6 --- /dev/null +++ b/priv/profiles/os_detection/planetos.yaml @@ -0,0 +1,14 @@ +os: planetos +text: PLANET +type: network +icon: planet +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.10456.1. + - .1.3.6.1.4.1.10456.6. + - .1.3.6.1.4.1.10456.9. diff --git a/priv/profiles/os_detection/pmp.yaml b/priv/profiles/os_detection/pmp.yaml new file mode 100644 index 00000000..b6f96394 --- /dev/null +++ b/priv/profiles/os_detection/pmp.yaml @@ -0,0 +1,13 @@ +os: pmp +text: Cambium +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.161.19 + sysDescr_regex: + - '/CANOPY/i' diff --git a/priv/profiles/os_detection/polycomLens.yaml b/priv/profiles/os_detection/polycomLens.yaml new file mode 100644 index 00000000..562c25eb --- /dev/null +++ b/priv/profiles/os_detection/polycomLens.yaml @@ -0,0 +1,10 @@ +os: polycomLens +text: 'Polycom Videoconferencing System' +type: collaboration +icon: polycom +mib_dir: polycom +discovery: + - + sysObjectID: + # DELLEMC-OS10-PRODUCTS-MIB::os10Products + - .1.3.6.1.4.1.2684 diff --git a/priv/profiles/os_detection/poweralert.yaml b/priv/profiles/os_detection/poweralert.yaml new file mode 100644 index 00000000..b4dfc6e5 --- /dev/null +++ b/priv/profiles/os_detection/poweralert.yaml @@ -0,0 +1,20 @@ +os: poweralert +text: 'Tripp Lite PowerAlert' +type: power +over: + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } + - { graph: device_load, text: Load} +icon: tripplite +rfc1628_compat: true +mib_dir: poweralert +discovery: + - + sysDescr_regex: + - '/POWERALERT/i' + - + sysObjectID: + - .1.3.6.1.4.1.850 + sysObjectID_except: + - .1.3.6.1.4.1.850.1.5 + - .1.3.6.1.4.1.850.1.7 diff --git a/priv/profiles/os_detection/powercode.yaml b/priv/profiles/os_detection/powercode.yaml new file mode 100644 index 00000000..bde1ecae --- /dev/null +++ b/priv/profiles/os_detection/powercode.yaml @@ -0,0 +1,14 @@ +os: powercode +group: unix +text: 'Powercode BMU' +icon: powercode +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +type: server +processor_stacked: true +discovery: + - + sysDescr: + - 'Powercode BMU' diff --git a/priv/profiles/os_detection/powerconnect.yaml b/priv/profiles/os_detection/powerconnect.yaml new file mode 100644 index 00000000..8cf3df18 --- /dev/null +++ b/priv/profiles/os_detection/powerconnect.yaml @@ -0,0 +1,14 @@ +os: powerconnect +text: 'Dell PowerConnect' +ifname: true +type: network +icon: dell +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: dell +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.674.10895 diff --git a/priv/profiles/os_detection/powerlogic.yaml b/priv/profiles/os_detection/powerlogic.yaml new file mode 100644 index 00000000..64137062 --- /dev/null +++ b/priv/profiles/os_detection/powerlogic.yaml @@ -0,0 +1,14 @@ +os: powerlogic +text: 'Schneider PowerLogic' +icon: schneider +type: power +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } + - { graph: device_frequency, text: Frequency } +mib_dir: schneider +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3833.1.7.255.15 diff --git a/priv/profiles/os_detection/powervault.yaml b/priv/profiles/os_detection/powervault.yaml new file mode 100644 index 00000000..cf1a161c --- /dev/null +++ b/priv/profiles/os_detection/powervault.yaml @@ -0,0 +1,9 @@ +os: powervault +text: 'Dell PowerVault' +icon: dell +type: storage +mib_dir: dell +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.674.10893.2.102 diff --git a/priv/profiles/os_detection/powerwalker-vfi.yaml b/priv/profiles/os_detection/powerwalker-vfi.yaml new file mode 100644 index 00000000..f3ee6307 --- /dev/null +++ b/priv/profiles/os_detection/powerwalker-vfi.yaml @@ -0,0 +1,21 @@ +os: powerwalker-vfi +text: 'PowerWalker VFI' +type: power +icon: powerwalker +mib_dir: powerwalker-vfi +discovery: + - + sysObjectID: .1.3.6.1.4.1.3808.1.1.1 + sysDescr: 'Power Management Card' + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: 'Linux SNMP-System' + snmpget: + oid: .1.3.6.1.2.1.33.1.1.3.0 + op: '!=' + value: false +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } + - { graph: device_power, text: Power } diff --git a/priv/profiles/os_detection/powerwalker.yaml b/priv/profiles/os_detection/powerwalker.yaml new file mode 100644 index 00000000..7d1c80f7 --- /dev/null +++ b/priv/profiles/os_detection/powerwalker.yaml @@ -0,0 +1,11 @@ +os: powerwalker +text: 'PowerWalker UPS' +type: power +icon: powerwalker +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.935.10 + - + sysDescr_regex: + - '/^Network Management Card for UPS/' diff --git a/priv/profiles/os_detection/prestige.yaml b/priv/profiles/os_detection/prestige.yaml new file mode 100644 index 00000000..59a491cd --- /dev/null +++ b/priv/profiles/os_detection/prestige.yaml @@ -0,0 +1,10 @@ +os: prestige +text: 'ZyXEL Prestige' +group: zyxel +type: network +icon: zyxel +discovery: + - + sysDescr_regex: + - '/^Prestige/' + - '/^P-.*-/' diff --git a/priv/profiles/os_detection/primeinfrastructure.yaml b/priv/profiles/os_detection/primeinfrastructure.yaml new file mode 100644 index 00000000..a787ec2e --- /dev/null +++ b/priv/profiles/os_detection/primeinfrastructure.yaml @@ -0,0 +1,30 @@ +os: primeinfrastructure +text: 'Prime Infrastructure' +type: server +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.2307 diff --git a/priv/profiles/os_detection/primekey-sw.yaml b/priv/profiles/os_detection/primekey-sw.yaml new file mode 100644 index 00000000..230fafe8 --- /dev/null +++ b/priv/profiles/os_detection/primekey-sw.yaml @@ -0,0 +1,18 @@ +os: primekey-sw +text: "Software Appliance" +type: appliance +icon: primekey +group: primekey +mib_dir: primekey +snmp_bulk: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + stp: false +discovery: + - sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-systemVersion.0 + op: "!=" + value: false diff --git a/priv/profiles/os_detection/primekey.yaml b/priv/profiles/os_detection/primekey.yaml new file mode 100644 index 00000000..451bddb7 --- /dev/null +++ b/priv/profiles/os_detection/primekey.yaml @@ -0,0 +1,27 @@ +os: primekey +text: "Hardware Appliance" +type: appliance +icon: primekey +group: primekey +mib_dir: primekey +snmp_bulk: false +over: + - { graph: device_voltage, text: "HSM Voltage" } + - { graph: device_temperature, text: "Temperature" } + - { graph: device_fanspeed, text: "Fan Speed" } +poller_modules: + bgp-peers: false + ospf: false + stp: false + mpls: false +discovery_modules: + bgp-peers: false + cisco-vrf-lite: false + stp: false +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: PRIMEKEY-APPLIANCE-MIB::pkAVersion + op: "contains" + value: "PrimeKey" diff --git a/priv/profiles/os_detection/procera.yaml b/priv/profiles/os_detection/procera.yaml new file mode 100644 index 00000000..b72e4a9e --- /dev/null +++ b/priv/profiles/os_detection/procera.yaml @@ -0,0 +1,15 @@ +os: procera +type: network +group: unix +text: 'Procera Networks' +icon: procera +bad_if_regexp: '/^pl[0-9]+$/' +processor_stacked: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.15397.2 diff --git a/priv/profiles/os_detection/procurve.yaml b/priv/profiles/os_detection/procurve.yaml new file mode 100644 index 00000000..5eac965f --- /dev/null +++ b/priv/profiles/os_detection/procurve.yaml @@ -0,0 +1,14 @@ +os: procurve +text: 'HP ProCurve' +type: network +icon: hpe +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: hp +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11.2.3.7.8.5. + - .1.3.6.1.4.1.11.2.3.7.11. diff --git a/priv/profiles/os_detection/profline-sfd.yaml b/priv/profiles/os_detection/profline-sfd.yaml new file mode 100755 index 00000000..24696a3e --- /dev/null +++ b/priv/profiles/os_detection/profline-sfd.yaml @@ -0,0 +1,11 @@ +os: profline-sfd +text: 'PROFline SFD FM Receiver' +type: appliance +icon: profline +group: profline +over: + - { graph: device_frequency, text: 'Frequency' } + - { graph: device_dbm, text: 'dBm' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.21222.1.4 diff --git a/priv/profiles/os_detection/protelevision-t1.yaml b/priv/profiles/os_detection/protelevision-t1.yaml new file mode 100644 index 00000000..15e43b03 --- /dev/null +++ b/priv/profiles/os_detection/protelevision-t1.yaml @@ -0,0 +1,13 @@ +os: protelevision-t1 +text: 'DVB-T Transmitter' +type: network +icon: protelevision +group: protelevision +mib_dir: protelevision +over: + - { graph: device_dbm, text: 'dBm' } + - { graph: device_wireless_rate, text: 'On Air TS Bitrate' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.18086.8 diff --git a/priv/profiles/os_detection/proxim.yaml b/priv/profiles/os_detection/proxim.yaml new file mode 100644 index 00000000..ac43ee53 --- /dev/null +++ b/priv/profiles/os_detection/proxim.yaml @@ -0,0 +1,10 @@ +os: proxim +text: Proxim +type: network +icon: proxim +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11898.2.4.9 diff --git a/priv/profiles/os_detection/proxmox.yaml b/priv/profiles/os_detection/proxmox.yaml new file mode 100644 index 00000000..2a782a69 --- /dev/null +++ b/priv/profiles/os_detection/proxmox.yaml @@ -0,0 +1,26 @@ +os: proxmox +type: server +group: unix +text: 'proxmox pve' +icon: proxmox +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + applications: true + bgp-peers: false + stp: false +processor_stacked: true +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/ PVE|pve /' diff --git a/priv/profiles/os_detection/ptp250.yaml b/priv/profiles/os_detection/ptp250.yaml new file mode 100644 index 00000000..41421888 --- /dev/null +++ b/priv/profiles/os_detection/ptp250.yaml @@ -0,0 +1,13 @@ +os: ptp250 +text: 'Cambium PTP 250' +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_ssr, text: 'Device SSR' } + - { graph: device_wireless_rate, text: 'Device Rate' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.250 diff --git a/priv/profiles/os_detection/ptp500.yaml b/priv/profiles/os_detection/ptp500.yaml new file mode 100644 index 00000000..5a9f6216 --- /dev/null +++ b/priv/profiles/os_detection/ptp500.yaml @@ -0,0 +1,14 @@ +os: ptp500 +text: 'Cambium PTP 300/500' +type: wireless +icon: cambium +mib_dir: cambium/500 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_ssr, text: 'Device SSR' } + - { graph: device_wireless_rate, text: 'Device Rate' } +group: cambium +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.5 diff --git a/priv/profiles/os_detection/ptp600.yaml b/priv/profiles/os_detection/ptp600.yaml new file mode 100644 index 00000000..45f67d66 --- /dev/null +++ b/priv/profiles/os_detection/ptp600.yaml @@ -0,0 +1,14 @@ +os: ptp600 +text: 'Cambium PTP 600' +type: wireless +icon: cambium +mib_dir: cambium/600 +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_ssr, text: 'Device SSR' } + - { graph: device_wireless_rate, text: 'Device Rate' } +group: cambium +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.6 diff --git a/priv/profiles/os_detection/ptp650.yaml b/priv/profiles/os_detection/ptp650.yaml new file mode 100644 index 00000000..643709f5 --- /dev/null +++ b/priv/profiles/os_detection/ptp650.yaml @@ -0,0 +1,13 @@ +os: ptp650 +text: 'Cambium PTP 650' +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_ssr, text: 'Device SSR' } + - { graph: device_wireless_rate, text: 'Device Rate' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.7 diff --git a/priv/profiles/os_detection/ptp670.yaml b/priv/profiles/os_detection/ptp670.yaml new file mode 100644 index 00000000..11290cc8 --- /dev/null +++ b/priv/profiles/os_detection/ptp670.yaml @@ -0,0 +1,13 @@ +os: ptp670 +text: 'Cambium PTP 670' +type: wireless +icon: cambium +group: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_ssr, text: 'Device SSR' } + - { graph: device_wireless_rate, text: 'Device Rate' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.11 diff --git a/priv/profiles/os_detection/ptp800.yaml b/priv/profiles/os_detection/ptp800.yaml new file mode 100644 index 00000000..de924741 --- /dev/null +++ b/priv/profiles/os_detection/ptp800.yaml @@ -0,0 +1,13 @@ +os: ptp800 +text: 'Cambium PTP 800' +type: wireless +icon: cambium +mib_dir: cambium +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_rate, text: 'Device Rate' } +group: cambium +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.8 diff --git a/priv/profiles/os_detection/pulse.yaml b/priv/profiles/os_detection/pulse.yaml new file mode 100644 index 00000000..acb439bc --- /dev/null +++ b/priv/profiles/os_detection/pulse.yaml @@ -0,0 +1,12 @@ +os: pulse +text: 'Pulse Secure' +type: firewall +icon: pulse +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.12532. diff --git a/priv/profiles/os_detection/purestorage.yaml b/priv/profiles/os_detection/purestorage.yaml new file mode 100644 index 00000000..9ac0ce29 --- /dev/null +++ b/priv/profiles/os_detection/purestorage.yaml @@ -0,0 +1,100 @@ +os: purestorage +text: 'Pure Storage' +type: storage +icon: purestorage +mib_dir: purestorage +processor_stacked: false + +over: + - { graph: device_purestorage_bandwidth, text: 'Array Bandwidth' } + - { graph: device_purestorage_iops, text: 'Array IOPS' } + - { graph: device_purestorage_latency, text: 'Array Latency' } + +poller_modules: + arp-table: false + bgp-peers: false + cisco-ace-loadbalancer: false + cisco-ace-serverfarms: false + cisco-cef: false + cisco-ipsec-flow-monitor: false + cisco-mac-accounting: false + cisco-otv: false + cisco-qfp: false + cisco-remote-access-monitor: false + cipsec-tunnels: false + entity-physical: true + entity-state: false + fdb-table: false + ipmi: false + isis: false + mef: false + mempools: false + mib: false + ntp: false + ospf: false + ospfv3: false + port-security: false + processors: false + route: false + slas: false + stp: false + storage: false + ucd-diskio: false + ucd-mib: false + vlans: false + wireless: false + +discovery_modules: + arp-table: false + bgp-peers: false + charge: false + cisco-cef: false + cisco-mac-accounting: false + cisco-otv: false + cisco-pw: false + cisco-qfp: false + cisco-vrf-lite: false + discovery-protocols: false + diskio: false + entity-physical: true + entity-state: false + fdb-table: false + hr-device: false + ipmi: false + ipv4-addresses: false + ipv6-address: false + ipv6-addresses: false + isis: false + junose-atm-vp: false + loadbalancers: false + mempools: false + mpls: false + ntp: false + ospf: false + ports: false + ports-stack: false + printer-supplies: false + sensors: false + services: false + slas: false + stp: false + storage: false + ucd-diskio: false + ucd-dsktable: false + ucd-mib: false + vlans: false + vminfo: false + vrf: false + wireless: false + xdsl: false + +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40482 + - .1.3.6.1.4.1.40482. + sysDescr_regex: + - '/Pure.*Storage/i' + - '/FlashArray/i' + - '/Purity/i' + diff --git a/priv/profiles/os_detection/qnap.yaml b/priv/profiles/os_detection/qnap.yaml new file mode 100644 index 00000000..c238d746 --- /dev/null +++ b/priv/profiles/os_detection/qnap.yaml @@ -0,0 +1,20 @@ +os: qnap +type: storage +group: unix +text: 'QNAP TurboNAS' +ifXmcbc: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.24681 + - + sysDescr: Linux TS- + snmpget: + oid: entPhysicalMfgName.1 + mib: ENTITY-MIB + op: starts + value: 'QNAP Systems' diff --git a/priv/profiles/os_detection/qtech.yaml b/priv/profiles/os_detection/qtech.yaml new file mode 100644 index 00000000..b038d9af --- /dev/null +++ b/priv/profiles/os_detection/qtech.yaml @@ -0,0 +1,13 @@ +os: qtech +text: 'QTECH' +type: network +icon: qtech +group: qtech +mib_dir: qtech +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.27514. diff --git a/priv/profiles/os_detection/quanta.yaml b/priv/profiles/os_detection/quanta.yaml new file mode 100644 index 00000000..c09b7b99 --- /dev/null +++ b/priv/profiles/os_detection/quanta.yaml @@ -0,0 +1,20 @@ +os: quanta +text: Quanta +type: network +icon: quanta +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: quanta +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7244 + - + sysObjectID: + - .1.3.6.1.4.1.4413 + sysDescr_regex: + - '/VxWorks/' + - '/quanta/i' + - '/FASTPATH (Switching|Routing)/' diff --git a/priv/profiles/os_detection/quantastor.yaml b/priv/profiles/os_detection/quantastor.yaml new file mode 100644 index 00000000..0dd30c80 --- /dev/null +++ b/priv/profiles/os_detection/quantastor.yaml @@ -0,0 +1,24 @@ +os: quantastor +text: 'QuantaStor' +type: storage +icon: quantastor +ifXmcbc: true +ifname: true +mib_dir: osnexus +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + bgp-peers: false + wireless: false + ospf: false + stp: false +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: QUANTASTOR-SYS-STATS::storageSystem-ProductId.0 + op: starts + value: 'QUANTASTOR' diff --git a/priv/profiles/os_detection/quantum.yaml b/priv/profiles/os_detection/quantum.yaml new file mode 100644 index 00000000..675b10cb --- /dev/null +++ b/priv/profiles/os_detection/quantum.yaml @@ -0,0 +1,9 @@ +os: quantum +type: server +text: Quantum +mib_dir: adic +ifXmcbc: true +ifname: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.3764.1.1 diff --git a/priv/profiles/os_detection/rad-rici.yaml b/priv/profiles/os_detection/rad-rici.yaml new file mode 100644 index 00000000..5fc515b4 --- /dev/null +++ b/priv/profiles/os_detection/rad-rici.yaml @@ -0,0 +1,12 @@ +os: rad-rici +text: 'RAD RICi' +type: network +icon: rad +group: rad +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.164.6.1.6 diff --git a/priv/profiles/os_detection/radlan.yaml b/priv/profiles/os_detection/radlan.yaml new file mode 100644 index 00000000..9757bea3 --- /dev/null +++ b/priv/profiles/os_detection/radlan.yaml @@ -0,0 +1,23 @@ +os: radlan +text: Radlan +ifname: true +type: network +icon: alliedtelesis +group: alliedtelesis +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysDescr: + - AT-8000 + - + sysObjectID: + - .1.3.6.1.4.1.207.1.4.125 + - .1.3.6.1.4.1.207.1.4.126 + - .1.3.6.1.4.1.207.1.4.127 + - .1.3.6.1.4.1.207.1.4.128 + - .1.3.6.1.4.1.207.1.4.143 + - .1.3.6.1.4.1.207.1.4.144 + - .1.3.6.1.4.1.207.1.4.145 +mib_dir: radlan diff --git a/priv/profiles/os_detection/radwin.yaml b/priv/profiles/os_detection/radwin.yaml new file mode 100644 index 00000000..d315d2b2 --- /dev/null +++ b/priv/profiles/os_detection/radwin.yaml @@ -0,0 +1,13 @@ +os: radwin +text: RADWIN +type: wireless +mib_dir: radwin +icon: radwin +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.4458.20.3. + - .1.3.6.1.4.1.4458.20.5. + - .1.3.6.1.4.1.4458.20.6. diff --git a/priv/profiles/os_detection/raisecom-ros.yaml b/priv/profiles/os_detection/raisecom-ros.yaml new file mode 100644 index 00000000..a598474f --- /dev/null +++ b/priv/profiles/os_detection/raisecom-ros.yaml @@ -0,0 +1,33 @@ +os: raisecom-ros +text: 'Raisecom ROS' +type: network +bad_snmpEngineTime: true +mib_dir: raisecom +oids: + unordered: + # Tell LibreNMS to call snmpwalk with the -Cc flag for these entries + - ifEntry + - ifXEntry + - ifDescr + - ifAdminStatus + - ifOperStatus + - ifLastChange + - ifType + - ifPhysAddress + - ifMtu + - ifInErrors + - ifOutErrors + - ifInDiscards + - ifOutDiscards +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: raisecom +discovery: + - + sysObjectID: .1.3.6.1.4.1.8886 + snmpget: + oid: ROSMGMT-VERSION-MIB::rosMgmtRosVersion.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/raisecom.yaml b/priv/profiles/os_detection/raisecom.yaml new file mode 100644 index 00000000..48c59f36 --- /dev/null +++ b/priv/profiles/os_detection/raisecom.yaml @@ -0,0 +1,33 @@ +os: raisecom +text: 'Raisecom ROAP' +type: network +bad_snmpEngineTime: true +mib_dir: raisecom +oids: + unordered: + # Tell LibreNMS to call snmpwalk with the -Cc flag for these entries + - ifEntry + - ifXEntry + - ifDescr + - ifAdminStatus + - ifOperStatus + - ifLastChange + - ifType + - ifPhysAddress + - ifMtu + - ifInErrors + - ifOutErrors + - ifInDiscards + - ifOutDiscards +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: raisecom +discovery: + - + sysObjectID: .1.3.6.1.4.1.8886 + snmpget: + oid: ROSMGMT-VERSION-MIB::rosMgmtRosVersion.0 + op: '=' + value: false diff --git a/priv/profiles/os_detection/rajant.yaml b/priv/profiles/os_detection/rajant.yaml new file mode 100644 index 00000000..6cca931d --- /dev/null +++ b/priv/profiles/os_detection/rajant.yaml @@ -0,0 +1,13 @@ +os: rajant +text: 'Rajant Breadcrumb' +type: network +icon: rajant +group: rajant +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.34861.1.1 diff --git a/priv/profiles/os_detection/raritan-emx.yaml b/priv/profiles/os_detection/raritan-emx.yaml new file mode 100644 index 00000000..f24cbe2f --- /dev/null +++ b/priv/profiles/os_detection/raritan-emx.yaml @@ -0,0 +1,10 @@ +os: raritan-emx +text: 'Raritan EMX' +type: environment +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: raritan +icon: raritan +discovery: + - + sysObjectID: '.1.3.6.1.4.1.13742.8' diff --git a/priv/profiles/os_detection/raritan-kvm.yaml b/priv/profiles/os_detection/raritan-kvm.yaml new file mode 100644 index 00000000..3c18e1cb --- /dev/null +++ b/priv/profiles/os_detection/raritan-kvm.yaml @@ -0,0 +1,10 @@ +os: raritan-kvm +text: 'Raritan KVM' +type: appliance +over: + - { graph: device_bits, text: 'Device Traffic' } +mib_dir: raritan +icon: raritan +discovery: + - + sysObjectID: '.1.3.6.1.4.1.13742.3.2.10' diff --git a/priv/profiles/os_detection/raritan-pdu.yaml b/priv/profiles/os_detection/raritan-pdu.yaml new file mode 100644 index 00000000..4336eaad --- /dev/null +++ b/priv/profiles/os_detection/raritan-pdu.yaml @@ -0,0 +1,12 @@ +os: raritan-pdu +text: 'Raritan PDU' +type: power +over: + - { graph: device_current, text: Current } + - { graph: device_temperature, text: Temperature } + - { graph: device_voltage, text: Voltage } +mib_dir: raritan +icon: raritan +discovery: + - + sysObjectID_regex: '/^.1.3.6.1.4.1.13742.[4|6]/' diff --git a/priv/profiles/os_detection/ray.yaml b/priv/profiles/os_detection/ray.yaml new file mode 100644 index 00000000..d0d9d586 --- /dev/null +++ b/priv/profiles/os_detection/ray.yaml @@ -0,0 +1,12 @@ +os: ray +text: RAy +type: wireless +icon: ray +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.33555.1.1 +mib_dir: ray diff --git a/priv/profiles/os_detection/ray3.yaml b/priv/profiles/os_detection/ray3.yaml new file mode 100644 index 00000000..22003207 --- /dev/null +++ b/priv/profiles/os_detection/ray3.yaml @@ -0,0 +1,13 @@ +os: ray3 +text: RAy3 +type: wireless +icon: ray +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.33555.4.1 +mib_dir: ray diff --git a/priv/profiles/os_detection/recoveryos.yaml b/priv/profiles/os_detection/recoveryos.yaml new file mode 100644 index 00000000..a738382d --- /dev/null +++ b/priv/profiles/os_detection/recoveryos.yaml @@ -0,0 +1,13 @@ +os: recoveryos +text: RecoveryOS +type: server +icon: unitrends +group: unix +mib_dir: unitrends +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.21865.1.6.1.0 + op: regex + value: '/^U.+|80\d{2}S?-\d{3}-\d{5}/' diff --git a/priv/profiles/os_detection/remoteye4.yaml b/priv/profiles/os_detection/remoteye4.yaml new file mode 100644 index 00000000..e996ed3b --- /dev/null +++ b/priv/profiles/os_detection/remoteye4.yaml @@ -0,0 +1,11 @@ +os: remoteye4 +text: 'Toshiba RemotEye4' +type: power +icon: toshiba +mib_dir: toshiba +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: 'UPS-MIB::upsIdentAgentSoftwareVersion.0' + value: RemotEye4 diff --git a/priv/profiles/os_detection/ricoh.yaml b/priv/profiles/os_detection/ricoh.yaml new file mode 100644 index 00000000..80e9990f --- /dev/null +++ b/priv/profiles/os_detection/ricoh.yaml @@ -0,0 +1,16 @@ +os: ricoh +group: printer +text: 'Ricoh Printer' +type: printer +icon: ricoh +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - 'RICOH Aficio' + - 'RICOH Network Printer' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/rittal-cmc-iii-pu.yaml b/priv/profiles/os_detection/rittal-cmc-iii-pu.yaml new file mode 100644 index 00000000..7b693fde --- /dev/null +++ b/priv/profiles/os_detection/rittal-cmc-iii-pu.yaml @@ -0,0 +1,20 @@ +os: rittal-cmc-iii-pu +text: 'Rittal CMC III PU' +type: environment +icon: rittal +mib_dir: rittal +over: + - { graph: device_temperature, text: Temperatures } +discovery_modules: + storage: false + mempools: false + processors: false + entity-physical: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2606.7 + sysDescr_regex: + - '/^Rittal CMC III PU/' + - '/^Rittal CMC III PU Compact/' + - '/^Rittal PDU/' diff --git a/priv/profiles/os_detection/rittal-cmc.yaml b/priv/profiles/os_detection/rittal-cmc.yaml new file mode 100644 index 00000000..b696be10 --- /dev/null +++ b/priv/profiles/os_detection/rittal-cmc.yaml @@ -0,0 +1,16 @@ +os: rittal-cmc +text: 'Rittal CMC' +type: environment +icon: rittal +over: + - { graph: device_temperature, text: Temperatures } + - { graph: device_cooling, text: 'Cooling capacity' } +mib_dir: rittal +discovery_modules: + storage: false + mempools: false + processors: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2606.4 diff --git a/priv/profiles/os_detection/rittal-lcp.yaml b/priv/profiles/os_detection/rittal-lcp.yaml new file mode 100644 index 00000000..cce552a0 --- /dev/null +++ b/priv/profiles/os_detection/rittal-lcp.yaml @@ -0,0 +1,20 @@ +os: rittal-lcp +text: 'Rittal LCP' +type: environment +icon: rittal +mib_dir: rittal +over: + - { graph: device_temperature, text: Temperatures } + - { graph: device_power, text: 'Cooling capacity' } +discovery_modules: + storage: false + mempools: false + processors: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2606.7 + sysDescr: + - 'Rittal LCP' + sysDescr_regex: + - '/^Rittal LCP/' diff --git a/priv/profiles/os_detection/riverbed.yaml b/priv/profiles/os_detection/riverbed.yaml new file mode 100644 index 00000000..7a7548ec --- /dev/null +++ b/priv/profiles/os_detection/riverbed.yaml @@ -0,0 +1,11 @@ +os: riverbed +text: Riverbed +type: network +icon: riverbed +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17163. diff --git a/priv/profiles/os_detection/rnx-updu.yaml b/priv/profiles/os_detection/rnx-updu.yaml new file mode 100644 index 00000000..45393b3d --- /dev/null +++ b/priv/profiles/os_detection/rnx-updu.yaml @@ -0,0 +1,15 @@ +os: rnx-updu +text: RNX UPDU +type: power +icon: riedo +group: riedo +over: + - graph: device_current + text: Current + - graph: device_power + text: Power + - graph: device_voltage + text: Voltage +discovery: + - sysObjectID: + - .1.3.6.1.4.1.55108.1 diff --git a/priv/profiles/os_detection/ros.yaml b/priv/profiles/os_detection/ros.yaml new file mode 100644 index 00000000..cf4f5092 --- /dev/null +++ b/priv/profiles/os_detection/ros.yaml @@ -0,0 +1,11 @@ +os: ros +text: 'Siemens Ruggedcom Switches (ROS)' +type: network +empty_ifdescr: true +icon: siemens +mib_dir: ros +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.15004.2.1 + - .1.3.6.1.4.1.15004.2.2 diff --git a/priv/profiles/os_detection/routeros.yaml b/priv/profiles/os_detection/routeros.yaml new file mode 100644 index 00000000..3fd92b8d --- /dev/null +++ b/priv/profiles/os_detection/routeros.yaml @@ -0,0 +1,20 @@ +os: routeros +text: 'Mikrotik RouterOS' +icon: mikrotik +group: mikrotik +type: network +mib_dir: mikrotik +rfc1628_compat: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.14988.1 +oids: + unordered: + - IP-FORWARD-MIB::ipCidrRouteTable + - IPV6-MIB::ipv6RouteTable + diff --git a/priv/profiles/os_detection/rs.yaml b/priv/profiles/os_detection/rs.yaml new file mode 100644 index 00000000..dc4549f2 --- /dev/null +++ b/priv/profiles/os_detection/rs.yaml @@ -0,0 +1,10 @@ +os: rs +text: Rohde & Schwarz +over: + - { graph: device_power, text: Output Power } +type: network +mib_dir: rs +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2566.127.1.2. diff --git a/priv/profiles/os_detection/rubrik.yaml b/priv/profiles/os_detection/rubrik.yaml new file mode 100644 index 00000000..2d858f37 --- /dev/null +++ b/priv/profiles/os_detection/rubrik.yaml @@ -0,0 +1,15 @@ +os: rubrik +text: 'Rubrik' +type: storage +icon: rubrik +group: unix +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/rubrik/' \ No newline at end of file diff --git a/priv/profiles/os_detection/ruckuswireless-hotzone.yaml b/priv/profiles/os_detection/ruckuswireless-hotzone.yaml new file mode 100644 index 00000000..91b1741a --- /dev/null +++ b/priv/profiles/os_detection/ruckuswireless-hotzone.yaml @@ -0,0 +1,16 @@ +os: ruckuswireless-hotzone +text: 'Ruckus Wireless HotZone' +type: wireless +icon: ruckus +mib_dir: ruckus +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_clients, text: 'Number of Clients' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25053.3.1.4 +poller_modules: + wireless: true +discovery_modules: + wireless: true diff --git a/priv/profiles/os_detection/ruckuswireless-sz.yaml b/priv/profiles/os_detection/ruckuswireless-sz.yaml new file mode 100644 index 00000000..4743aa43 --- /dev/null +++ b/priv/profiles/os_detection/ruckuswireless-sz.yaml @@ -0,0 +1,32 @@ +os: ruckuswireless-sz +text: 'Ruckus Wireless SmartZone' +type: wireless +icon: ruckus +mib_dir: ruckus +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_ap-count, text: 'Number of APs' } + - { graph: device_wireless_clients, text: 'Number of Clients' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25053.3.1.11.1 + - .1.3.6.1.4.1.25053.3.1.10 #virtual SmartZone +ignore_mount_string: + - ruckuswireles + - etc + - var + - java + - cassandra + - home + - usr + - boot_mbr + - dev + - cgroup + - media + - tmp + - data +poller_modules: + wireless: true +discovery_modules: + wireless: true diff --git a/priv/profiles/os_detection/ruckuswireless-unleashed.yaml b/priv/profiles/os_detection/ruckuswireless-unleashed.yaml new file mode 100644 index 00000000..c4ec41a5 --- /dev/null +++ b/priv/profiles/os_detection/ruckuswireless-unleashed.yaml @@ -0,0 +1,22 @@ +os: ruckuswireless-unleashed +text: 'Ruckus Wireless Unleashed' +type: wireless +icon: ruckus +mib_dir: ruckus +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_ap-count, text: 'Connected APs' } + - { graph: device_wireless_clients, text: 'Number of Clients' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25053.3.1.5.20 # Unleashed > 200.14 + - .1.3.6.1.4.1.25053.3.1.5.15 # Unleashed =< 200.14 + snmpget_except: + oid: '.1.3.6.1.4.1.25053.1.2.1.1.1.1.9.0' + op: starts + value: [ ZD, zd ] +poller_modules: + wireless: true +discovery_modules: + wireless: true diff --git a/priv/profiles/os_detection/ruckuswireless.yaml b/priv/profiles/os_detection/ruckuswireless.yaml new file mode 100644 index 00000000..7cec9af6 --- /dev/null +++ b/priv/profiles/os_detection/ruckuswireless.yaml @@ -0,0 +1,20 @@ +os: ruckuswireless +text: 'Ruckus Wireless ZoneDirector' +type: wireless +icon: ruckus +mib_dir: ruckus +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_ap-count, text: 'Number of APs' } + - { graph: device_wireless_clients, text: 'Number of Clients' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.25053.3.1.5 + snmpget: + oid: '.1.3.6.1.4.1.25053.1.2.1.1.1.1.9.0' + op: starts + value: [ ZD, zd ] +poller_modules: + wireless: true +discovery_modules: + wireless: true diff --git a/priv/profiles/os_detection/ruijie.yaml b/priv/profiles/os_detection/ruijie.yaml new file mode 100644 index 00000000..432d0811 --- /dev/null +++ b/priv/profiles/os_detection/ruijie.yaml @@ -0,0 +1,13 @@ +os: ruijie +text: 'Ruijie Networks' +type: network +icon: ruijie +mib_dir: ruijie +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + +discovery: + - sysObjectID: + - .1.3.6.1.4.1.4881.1. diff --git a/priv/profiles/os_detection/rutos-2xx.yaml b/priv/profiles/os_detection/rutos-2xx.yaml new file mode 100644 index 00000000..7b031a42 --- /dev/null +++ b/priv/profiles/os_detection/rutos-2xx.yaml @@ -0,0 +1,20 @@ +os: rutos-2xx +type: network +text: "Teltonika RutOS" +icon: teltonika +ifXmcbc: true +ifname: true +mib_dir: teltonika +over: + - { graph: device_processor, text: "Processor Usage" } + - { graph: device_mempool, text: "Memory Usage" } + - { graph: device_signal, text: 'Mobile Signal' } +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: Teltonika + snmpget: + oid: .1.3.6.1.4.1.48690.2.14.0 + op: starts + value: RUT2XX diff --git a/priv/profiles/os_detection/rutos-rutm.yaml b/priv/profiles/os_detection/rutos-rutm.yaml new file mode 100644 index 00000000..4b69e686 --- /dev/null +++ b/priv/profiles/os_detection/rutos-rutm.yaml @@ -0,0 +1,20 @@ +os: rutos-rutm +type: network +text: "Teltonika RutOS RUTM Series" +icon: teltonika +ifXmcbc: true +ifname: true +mib_dir: teltonika +over: + - { graph: device_processor, text: "Processor Usage" } + - { graph: device_mempool, text: "Memory Usage" } + - { graph: device_signal, text: 'Mobile Signal' } +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.48690.1.3.0 + op: starts + value: + - RUTM diff --git a/priv/profiles/os_detection/rutos-rutx.yaml b/priv/profiles/os_detection/rutos-rutx.yaml new file mode 100644 index 00000000..848140a8 --- /dev/null +++ b/priv/profiles/os_detection/rutos-rutx.yaml @@ -0,0 +1,27 @@ +os: rutos-rutx +type: network +text: "Teltonika RutOS RUTX Series" +icon: teltonika +ifXmcbc: true +ifname: true +mib_dir: teltonika +over: + - { graph: device_processor, text: "Processor Usage" } + - { graph: device_mempool, text: "Memory Usage" } + - { graph: device_signal, text: 'Mobile Signal' } +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.48690.1.3.0 + op: starts + value: + - RUT2 + - RUT360 + - RUT950 + - RUT955 + - RUT956 + - RUTX + - TRB255 + - TRB500 diff --git a/priv/profiles/os_detection/rutos.yaml b/priv/profiles/os_detection/rutos.yaml new file mode 100644 index 00000000..daddcf30 --- /dev/null +++ b/priv/profiles/os_detection/rutos.yaml @@ -0,0 +1,28 @@ +os: rutos +type: network +group: unix +text: 'teltonika rutos' +icon: teltonika +ifXmcbc: true +ifname: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + ospf: false + stp: false +discovery_modules: + applications: false + bgp-peers: false + stp: false +processor_stacked: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr: Teltonika + snmpget: + oid: .1.3.6.1.4.1.48690.2.14.0 + op: starts + value: RUT9XX diff --git a/priv/profiles/os_detection/saf-cfm.yaml b/priv/profiles/os_detection/saf-cfm.yaml new file mode 100644 index 00000000..9d42d764 --- /dev/null +++ b/priv/profiles/os_detection/saf-cfm.yaml @@ -0,0 +1,13 @@ +os: saf-cfm +text: 'SAF CFM' +type: wireless +icon: saf +group: saf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_wireless_power, text: 'Power Levels' } +discovery: + - + sysObjectID: + .1.3.6.1.4.1.7571.100.1.1.2.22 diff --git a/priv/profiles/os_detection/saf-integra-b.yaml b/priv/profiles/os_detection/saf-integra-b.yaml new file mode 100644 index 00000000..06a1058f --- /dev/null +++ b/priv/profiles/os_detection/saf-integra-b.yaml @@ -0,0 +1,15 @@ +os: saf-integra-b +text: 'SAF Integra B' +type: wireless +icon: saf +group: saf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7571.100.1.1.7.1 + sysDescr: + - 'Prod: Integra;' diff --git a/priv/profiles/os_detection/saf-integra-e.yaml b/priv/profiles/os_detection/saf-integra-e.yaml new file mode 100644 index 00000000..986b2ab1 --- /dev/null +++ b/priv/profiles/os_detection/saf-integra-e.yaml @@ -0,0 +1,12 @@ +os: saf-integra-e +text: 'SAF Integra E' +type: wireless +icon: saf +group: saf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.7571.100.1.1.7.9 diff --git a/priv/profiles/os_detection/saf-integra-w.yaml b/priv/profiles/os_detection/saf-integra-w.yaml new file mode 100644 index 00000000..7cac95e5 --- /dev/null +++ b/priv/profiles/os_detection/saf-integra-w.yaml @@ -0,0 +1,13 @@ +os: saf-integra-w +text: 'SAF Integra W' +type: wireless +icon: saf +group: saf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7571.100.1.1.7.2 diff --git a/priv/profiles/os_detection/saf-integra-x.yaml b/priv/profiles/os_detection/saf-integra-x.yaml new file mode 100644 index 00000000..2e073a17 --- /dev/null +++ b/priv/profiles/os_detection/saf-integra-x.yaml @@ -0,0 +1,15 @@ +os: saf-integra-x +text: 'SAF Integra X' +type: wireless +icon: saf +group: saf +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7571.100.1.1.7.10 + sysDescr: + - 'Prod: Integra-X;' diff --git a/priv/profiles/os_detection/saf.yaml b/priv/profiles/os_detection/saf.yaml new file mode 100644 index 00000000..b00d2f25 --- /dev/null +++ b/priv/profiles/os_detection/saf.yaml @@ -0,0 +1,12 @@ +os: saf +text: 'SAF Tehnika' +type: wireless +icon: saf +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_power, text: 'Power Levels' } + - { graph: device_ping_perf, text: 'Ping Times' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7571.100.1.1.5 diff --git a/priv/profiles/os_detection/samlex.yaml b/priv/profiles/os_detection/samlex.yaml new file mode 100755 index 00000000..78bb4cbf --- /dev/null +++ b/priv/profiles/os_detection/samlex.yaml @@ -0,0 +1,13 @@ +os: samlex +text: Samlex Inverter +type: power +icon: samlex +mib_dir: samlex +snmp_bulk: false +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_power, text: Power } +discovery: + - + sysObjectID: .1.3.6.1.4.1.49075 diff --git a/priv/profiles/os_detection/samsungprinter.yaml b/priv/profiles/os_detection/samsungprinter.yaml new file mode 100644 index 00000000..c3a1ca32 --- /dev/null +++ b/priv/profiles/os_detection/samsungprinter.yaml @@ -0,0 +1,18 @@ +os: samsungprinter +group: printer +text: 'Samsung Printer' +type: printer +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - 'Samsung C' + - 'Samsung S' + - 'Samsung ML' + - 'Samsung M4080FX' + - 'Samsung X' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/sanos.yaml b/priv/profiles/os_detection/sanos.yaml new file mode 100644 index 00000000..5168b905 --- /dev/null +++ b/priv/profiles/os_detection/sanos.yaml @@ -0,0 +1,31 @@ +os: sanos +group: cisco +text: 'Cisco SAN-OS' +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-ace-serverfarms: true + cisco-ace-loadbalancer: true + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +discovery: + - + sysDescr: + - SAN-OS diff --git a/priv/profiles/os_detection/savin.yaml b/priv/profiles/os_detection/savin.yaml new file mode 100644 index 00000000..04fbbd0d --- /dev/null +++ b/priv/profiles/os_detection/savin.yaml @@ -0,0 +1,15 @@ +os: savin +group: printer +text: 'Savin Printer' +type: printer +icon: savin +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr: + - SAVIN +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/scalance.yaml b/priv/profiles/os_detection/scalance.yaml new file mode 100644 index 00000000..f01c7746 --- /dev/null +++ b/priv/profiles/os_detection/scalance.yaml @@ -0,0 +1,14 @@ +os: scalance +text: 'Siemens SCALANCE' +type: network +icon: siemens +group: siemens +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.4329.6.1.2.1 + - .1.3.6.1.4.1.4329.6.1.2.3 diff --git a/priv/profiles/os_detection/schleifenbauer.yaml b/priv/profiles/os_detection/schleifenbauer.yaml new file mode 100644 index 00000000..fb144858 --- /dev/null +++ b/priv/profiles/os_detection/schleifenbauer.yaml @@ -0,0 +1,15 @@ +os: schleifenbauer +text: 'Schleifenbauer SPDM' +type: power +icon: schleifenbauer +group: schleifenbauer +over: + - { graph: device_current, text: 'Current' } + - { graph: device_voltage, text: 'Voltage' } + - { graph: device_power, text: 'Power' } +mib_dir: schleifenbauer +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.31034.11.1 + - .1.3.6.1.4.1.31034.11.3 diff --git a/priv/profiles/os_detection/scopia.yaml b/priv/profiles/os_detection/scopia.yaml new file mode 100644 index 00000000..1782406e --- /dev/null +++ b/priv/profiles/os_detection/scopia.yaml @@ -0,0 +1,12 @@ +os: scopia +text: 'Avaya Scopia' +type: appliance +icon: avaya +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_storage, text: Storage } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.903.31. diff --git a/priv/profiles/os_detection/screenos.yaml b/priv/profiles/os_detection/screenos.yaml new file mode 100644 index 00000000..51e3ced1 --- /dev/null +++ b/priv/profiles/os_detection/screenos.yaml @@ -0,0 +1,11 @@ +os: screenos +text: 'Juniper ScreenOS' +type: firewall +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3224. diff --git a/priv/profiles/os_detection/scs-ks.yaml b/priv/profiles/os_detection/scs-ks.yaml new file mode 100644 index 00000000..7d0eacca --- /dev/null +++ b/priv/profiles/os_detection/scs-ks.yaml @@ -0,0 +1,42 @@ +os: scs-ks +text: 'SCS KS' +type: environment +icon: carel +mib_dir: carel +over: + - { graph: device_humidity, text: 'Humidity' } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysDescr: + - 'CAREL cpCO controller' + sysObjectID: + - .1.3.6.1.4.1.9839 + +poller_modules: + entity-physical: true + hr-mib: true + ipSystemStats: true + netstats: true + ospf: false + ucd-mib: true + ports: true + stp: false +discovery_modules: + ports-stack: true + entity-physical: true + processors: true + mempools: true + cisco-vrf-lite: false + ipv4-addresses: true + ipv6-addresses: true + storage: false + hr-device: true + discovery-protocols: true + arp-table: true + bgp-peers: false + ucd-diskio: false + fdb-table: true + stp: false + vlans: true + ports: true diff --git a/priv/profiles/os_detection/secureplatform.yaml b/priv/profiles/os_detection/secureplatform.yaml new file mode 100644 index 00000000..33976e57 --- /dev/null +++ b/priv/profiles/os_detection/secureplatform.yaml @@ -0,0 +1,30 @@ +os: secureplatform +text: 'CheckPoint SecurePlatform' +type: firewall +icon: checkpoint +mib_dir: checkpoint +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery_modules: + ports-stack: false + fdb-table: false + stp: false + wireless: false + vlans: false + bgp-peers: false + ntp: false + services: false + ip6-addresses: false +poller_modules: + ntp: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2 + snmpget: + oid: CHECKPOINT-MIB::osName.0 + mib_dir: checkpoint + op: 'contains' + value: SecurePlatform diff --git a/priv/profiles/os_detection/seh-uds.yaml b/priv/profiles/os_detection/seh-uds.yaml new file mode 100644 index 00000000..3994c9cc --- /dev/null +++ b/priv/profiles/os_detection/seh-uds.yaml @@ -0,0 +1,8 @@ +os: seh-uds +text: 'SEH' +type: appliance +icon: seh +mib_dir: seh +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1229 diff --git a/priv/profiles/os_detection/sensatronics-em1.yaml b/priv/profiles/os_detection/sensatronics-em1.yaml new file mode 100644 index 00000000..6edc24d2 --- /dev/null +++ b/priv/profiles/os_detection/sensatronics-em1.yaml @@ -0,0 +1,11 @@ +os: sensatronics-em1 +text: 'Sensatronics EM1' +type: sensor +icon: sensatronics +over: + - { graph: device_temperature, text: 'Temperature' } +mib_dir: sensatronics +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.16174.1.1.3 diff --git a/priv/profiles/os_detection/sensatronics-ittm.yaml b/priv/profiles/os_detection/sensatronics-ittm.yaml new file mode 100644 index 00000000..bd34712b --- /dev/null +++ b/priv/profiles/os_detection/sensatronics-ittm.yaml @@ -0,0 +1,11 @@ +os: sensatronics-ittm +text: 'Sensatronics ITTM' +type: environment +icon: sensatronics +over: + - { graph: device_temperature, text: 'Temperature' } +mib_dir: sensatronics +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.16174.1.1.1 diff --git a/priv/profiles/os_detection/sentry3.yaml b/priv/profiles/os_detection/sentry3.yaml new file mode 100644 index 00000000..1d187b6f --- /dev/null +++ b/priv/profiles/os_detection/sentry3.yaml @@ -0,0 +1,26 @@ +os: sentry3 +text: 'ServerTech Sentry3' +type: power +over: + - { graph: device_current, text: Current } +icon: servertech +mib_dir: sentry +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1718.3 +poller_modules: + bgp-peers: false + wireless: false + ospf: false + stp: false +discovery_modules: + cisco-vrf-lite: false + discovery-protocols: false + arp-table: false + bgp-peers: false + vlans: false + stp: false + wireless: false + fdb-table: false + diff --git a/priv/profiles/os_detection/sentry4.yaml b/priv/profiles/os_detection/sentry4.yaml new file mode 100644 index 00000000..0ea7adf0 --- /dev/null +++ b/priv/profiles/os_detection/sentry4.yaml @@ -0,0 +1,26 @@ +os: sentry4 +text: 'ServerTech Sentry4' +type: power +over: + - { graph: device_current, text: Current } +icon: servertech +mib_dir: sentry +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1718.4 +poller_modules: + bgp-peers: false + wireless: false + ospf: false + stp: false +discovery_modules: + cisco-vrf-lite: false + discovery-protocols: false + arp-table: false + bgp-peers: false + vlans: false + stp: false + wireless: false + fdb-table: false + diff --git a/priv/profiles/os_detection/seos.yaml b/priv/profiles/os_detection/seos.yaml new file mode 100644 index 00000000..79376088 --- /dev/null +++ b/priv/profiles/os_detection/seos.yaml @@ -0,0 +1,9 @@ +os: seos +text: 'Redback Networks SmartEdge' +type: network +icon: ericsson +mib_dir: ericsson +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2352.1 diff --git a/priv/profiles/os_detection/serveriron.yaml b/priv/profiles/os_detection/serveriron.yaml new file mode 100644 index 00000000..bcdb7dd1 --- /dev/null +++ b/priv/profiles/os_detection/serveriron.yaml @@ -0,0 +1,14 @@ +os: serveriron +text: 'Brocade ServerIron' +type: loadbalancer +group: brocade +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: brocade +discovery: + - + sysDescr: + - ServerIron diff --git a/priv/profiles/os_detection/serverscheck.yaml b/priv/profiles/os_detection/serverscheck.yaml new file mode 100644 index 00000000..585d4ee7 --- /dev/null +++ b/priv/profiles/os_detection/serverscheck.yaml @@ -0,0 +1,9 @@ +os: serverscheck +text: ServersCheck +type: environment +snmp_bulk: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17095 +mib_dir: serverscheck diff --git a/priv/profiles/os_detection/sgos.yaml b/priv/profiles/os_detection/sgos.yaml new file mode 100644 index 00000000..08d1a43c --- /dev/null +++ b/priv/profiles/os_detection/sgos.yaml @@ -0,0 +1,14 @@ +os: sgos +text: 'BlueCoat ProxySG' +type: network +ifname: true +icon: bluecoat +mib_dir: bluecoat +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - SGOS diff --git a/priv/profiles/os_detection/sharp.yaml b/priv/profiles/os_detection/sharp.yaml new file mode 100644 index 00000000..cde6bcd0 --- /dev/null +++ b/priv/profiles/os_detection/sharp.yaml @@ -0,0 +1,14 @@ +os: sharp +group: printer +text: 'Sharp Printer' +type: printer +icon: sharp +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysDescr_regex: '/SHARP (BP|MX)-/' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/siklu.yaml b/priv/profiles/os_detection/siklu.yaml new file mode 100644 index 00000000..cf256b78 --- /dev/null +++ b/priv/profiles/os_detection/siklu.yaml @@ -0,0 +1,12 @@ +os: siklu +text: 'Siklu Wireless' +type: wireless +icon: siklu +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_rssi, text: RSSI } + - { graph: device_wireless_snr, text: CINR } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.31926 diff --git a/priv/profiles/os_detection/sinetica.yaml b/priv/profiles/os_detection/sinetica.yaml new file mode 100644 index 00000000..32caa3c7 --- /dev/null +++ b/priv/profiles/os_detection/sinetica.yaml @@ -0,0 +1,12 @@ +os: sinetica +text: 'Sinetica UPS' +group: ups +type: power +icon: mitsubishi +mib_dir: mitsubishi +over: + - { graph: device_current, text: Current } +discovery: + - + sysDescr_regex: + - '/^Sinetica UPSController./' diff --git a/priv/profiles/os_detection/siteboss.yaml b/priv/profiles/os_detection/siteboss.yaml new file mode 100644 index 00000000..f6b7d2c1 --- /dev/null +++ b/priv/profiles/os_detection/siteboss.yaml @@ -0,0 +1,14 @@ +os: siteboss +text: 'Asentria SiteBoss' +type: server +icon: siteboss +group: asentria +mib_dir: asentria +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3052.12 diff --git a/priv/profiles/os_detection/siteboss360.yaml b/priv/profiles/os_detection/siteboss360.yaml new file mode 100644 index 00000000..784b6139 --- /dev/null +++ b/priv/profiles/os_detection/siteboss360.yaml @@ -0,0 +1,14 @@ +os: siteboss360 +text: 'Asentria SiteBoss' +type: server +icon: siteboss +group: asentria +mib_dir: asentria +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3052.23.3.2 diff --git a/priv/profiles/os_detection/siteboss550.yaml b/priv/profiles/os_detection/siteboss550.yaml new file mode 100644 index 00000000..2157e018 --- /dev/null +++ b/priv/profiles/os_detection/siteboss550.yaml @@ -0,0 +1,14 @@ +os: siteboss550 +text: 'Asentria SiteBoss' +type: server +icon: siteboss +group: asentria +mib_dir: asentria +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3052.10 diff --git a/priv/profiles/os_detection/siteboss571.yaml b/priv/profiles/os_detection/siteboss571.yaml new file mode 100644 index 00000000..c6445c00 --- /dev/null +++ b/priv/profiles/os_detection/siteboss571.yaml @@ -0,0 +1,12 @@ +os: siteboss571 +text: 'Asentria SiteBoss' +type: power +icon: siteboss +group: asentria +mib_dir: asentria +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3052.14 diff --git a/priv/profiles/os_detection/siteboss572.yaml b/priv/profiles/os_detection/siteboss572.yaml new file mode 100644 index 00000000..7a966d27 --- /dev/null +++ b/priv/profiles/os_detection/siteboss572.yaml @@ -0,0 +1,12 @@ +os: siteboss572 +text: 'Asentria SiteBoss' +type: power +icon: siteboss +group: asentria +mib_dir: asentria +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3052.20 diff --git a/priv/profiles/os_detection/sitemonitor.yaml b/priv/profiles/os_detection/sitemonitor.yaml new file mode 100644 index 00000000..bb9ba1c7 --- /dev/null +++ b/priv/profiles/os_detection/sitemonitor.yaml @@ -0,0 +1,12 @@ +os: sitemonitor +text: 'Packetflux SiteMonitor' +type: appliance +icon: packetflux +over: + - { graph: device_poller_perf, text: 'Poller time' } +snmp_bulk: false +mib_dir: packetflux +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.32050 diff --git a/priv/profiles/os_detection/sixnet.yaml b/priv/profiles/os_detection/sixnet.yaml new file mode 100644 index 00000000..e437138c --- /dev/null +++ b/priv/profiles/os_detection/sixnet.yaml @@ -0,0 +1,14 @@ +os: sixnet +text: 'Red Lion Sixnet' +type: network +icon: sixnet +group: Red +over: + - { graph: device_state, text: States } + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_uptime, text: Uptime } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.20540.2. +mib_dir: redlion diff --git a/priv/profiles/os_detection/skyhighwebprotect.yaml b/priv/profiles/os_detection/skyhighwebprotect.yaml new file mode 100644 index 00000000..5fd08b6d --- /dev/null +++ b/priv/profiles/os_detection/skyhighwebprotect.yaml @@ -0,0 +1,19 @@ +os: skyhighwebprotect +text: 'Skyhigh Secure Web Gateway' +type: firewall +icon: skyhigh +mib_dir: skyhigh +ifname: true +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.59732.2.7.1.1 + - .1.3.6.1.4.1.1230.2.7.1.1 + snmpget: + oid: '.1.3.6.1.4.1.59732.2.7.1.1.0' + op: starts + value: 'Skyhigh Secure Web Gateway' diff --git a/priv/profiles/os_detection/slms.yaml b/priv/profiles/os_detection/slms.yaml new file mode 100644 index 00000000..2fa87c9b --- /dev/null +++ b/priv/profiles/os_detection/slms.yaml @@ -0,0 +1,17 @@ +os: slms +text: 'Zhone MXK' +type: network +icon: zhone +mib_dir: zhone +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5504.1.7. + - .1.3.6.1.4.1.5504.1.8. +discovery_modules: + ports-stack: false + diff --git a/priv/profiles/os_detection/slxos.yaml b/priv/profiles/os_detection/slxos.yaml new file mode 100644 index 00000000..8aa1ae01 --- /dev/null +++ b/priv/profiles/os_detection/slxos.yaml @@ -0,0 +1,16 @@ +os: slxos +text: 'Extreme SLX-OS' +type: network +icon: extreme +group: extreme +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1588.3.3.1 + - .1.3.6.1.4.1.1916.2. + sysDescr: + - 'SLX Operating System' diff --git a/priv/profiles/os_detection/sm-os.yaml b/priv/profiles/os_detection/sm-os.yaml new file mode 100644 index 00000000..a5bf9ad8 --- /dev/null +++ b/priv/profiles/os_detection/sm-os.yaml @@ -0,0 +1,13 @@ +os: sm-os +text: 'SM-OS' +type: wireless +icon: siae +mib_dir: siae +over: + - { graph: device_bits, text: Traffic } + - { graph: device_wireless_rate, text: Rate } + - { graph: device_wireless_power, text: Power } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3373.1103 diff --git a/priv/profiles/os_detection/smartax-mdu.yaml b/priv/profiles/os_detection/smartax-mdu.yaml new file mode 100644 index 00000000..427f79c6 --- /dev/null +++ b/priv/profiles/os_detection/smartax-mdu.yaml @@ -0,0 +1,15 @@ +os: smartax-mdu +group: huawei +text: 'Huawei SmartAX MDU' +type: network +icon: huawei +ifname: true +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2011.2.185 +mib_dir: huawei diff --git a/priv/profiles/os_detection/smartax.yaml b/priv/profiles/os_detection/smartax.yaml new file mode 100644 index 00000000..589951a4 --- /dev/null +++ b/priv/profiles/os_detection/smartax.yaml @@ -0,0 +1,19 @@ +os: smartax +group: huawei +text: 'Huawei SmartAX' +type: network +icon: huawei +ifname: true +mib_dir: huawei +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - sysDescr: + - 'Huawei Integrated Access Software' + - sysObjectID: + - .1.3.6.1.4.1.2011.2.80.8 + - .1.3.6.1.4.1.2011.2.115 + - .1.3.6.1.4.1.2011.2.123 + - .1.3.6.1.4.1.2011.2.133 + - .1.3.6.1.4.1.2011.2.248 diff --git a/priv/profiles/os_detection/smartbyte.yaml b/priv/profiles/os_detection/smartbyte.yaml new file mode 100644 index 00000000..ca9bae92 --- /dev/null +++ b/priv/profiles/os_detection/smartbyte.yaml @@ -0,0 +1,13 @@ +os: smartbyte +text: 'SmartByte' +type: network +icon: smartbyte +group: smartbyte +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.56166 diff --git a/priv/profiles/os_detection/smartos-dcp-m.yaml b/priv/profiles/os_detection/smartos-dcp-m.yaml new file mode 100644 index 00000000..65c554ed --- /dev/null +++ b/priv/profiles/os_detection/smartos-dcp-m.yaml @@ -0,0 +1,12 @@ +os: smartos-dcp-m +text: 'SmartOptics DCP-M Series' +type: network +icon: smartoptics +group: smartoptics +mib_dir: smartoptics +over: + - { graph: device_dbm, text: dbm } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30826.2 diff --git a/priv/profiles/os_detection/smartos-t.yaml b/priv/profiles/os_detection/smartos-t.yaml new file mode 100644 index 00000000..b257bd9b --- /dev/null +++ b/priv/profiles/os_detection/smartos-t.yaml @@ -0,0 +1,14 @@ +os: smartos-t +text: 'SmartOptics T-Series' +type: network +icon: smartoptics +group: smartoptics +mib_dir: smartoptics +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.4515.100.1.1000 + sysDescr_regex_except: '/^[Pp][Ll]/' diff --git a/priv/profiles/os_detection/smartos.yaml b/priv/profiles/os_detection/smartos.yaml new file mode 100644 index 00000000..718a439a --- /dev/null +++ b/priv/profiles/os_detection/smartos.yaml @@ -0,0 +1,14 @@ +os: smartos +text: 'SmartOptics M-Series' +type: network +icon: smartoptics +group: smartoptics +mib_dir: smartoptics +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30826.1 diff --git a/priv/profiles/os_detection/snr-erd.yaml b/priv/profiles/os_detection/snr-erd.yaml new file mode 100644 index 00000000..11cfafee --- /dev/null +++ b/priv/profiles/os_detection/snr-erd.yaml @@ -0,0 +1,12 @@ +os: snr-erd +text: 'snr-erd' +type: network +icon: snr +group: snr-erd +mib_dir: snrerd +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40418.2.6 diff --git a/priv/profiles/os_detection/snr.yaml b/priv/profiles/os_detection/snr.yaml new file mode 100644 index 00000000..1538774d --- /dev/null +++ b/priv/profiles/os_detection/snr.yaml @@ -0,0 +1,15 @@ +os: snr +text: 'snr' +type: network +icon: snr +group: snr +mib_dir: snr +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.40418.7 + - .1.3.6.1.4.1.40418.8.67 diff --git a/priv/profiles/os_detection/socomec-ups.yaml b/priv/profiles/os_detection/socomec-ups.yaml new file mode 100644 index 00000000..8fba7243 --- /dev/null +++ b/priv/profiles/os_detection/socomec-ups.yaml @@ -0,0 +1,14 @@ +os: socomec-ups +text: 'Socomec UPS' +group: ups +type: power +snmp_bulk: false +mib_dir: socomec +icon: socomecpdu +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } + - { graph: device_frequency, text: Frequency } +discovery: + - + sysObjectID: .1.3.6.1.4.1.4555.1.1.7 diff --git a/priv/profiles/os_detection/socomec.yaml b/priv/profiles/os_detection/socomec.yaml new file mode 100644 index 00000000..4d70a6e3 --- /dev/null +++ b/priv/profiles/os_detection/socomec.yaml @@ -0,0 +1,11 @@ +os: socomec +text: 'Socomec PDU' +type: power +mib_dir: socomec +icon: socomecpdu +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } +discovery: + - + sysObjectID: .1.3.6.1.4.1.4555.2.30 diff --git a/priv/profiles/os_detection/solaris.yaml b/priv/profiles/os_detection/solaris.yaml new file mode 100644 index 00000000..53181c3d --- /dev/null +++ b/priv/profiles/os_detection/solaris.yaml @@ -0,0 +1,17 @@ +os: solaris +group: unix +text: 'Sun Solaris' +type: server +processor_stacked: true +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.42.2.1.1 + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.3 + sysDescr_regex: '/^SunOS .+ 5\.10/' + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.3 + sysDescr_regex: '/^SunOS .+ 5\.11 11/' diff --git a/priv/profiles/os_detection/solidserver.yaml b/priv/profiles/os_detection/solidserver.yaml new file mode 100644 index 00000000..e8fe4b9a --- /dev/null +++ b/priv/profiles/os_detection/solidserver.yaml @@ -0,0 +1,13 @@ +os: solidserver +text: EfficientIP SOLIDserver +type: server +icon: eip +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: efficientip +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2440 diff --git a/priv/profiles/os_detection/sonicwall.yaml b/priv/profiles/os_detection/sonicwall.yaml new file mode 100644 index 00000000..7879fd99 --- /dev/null +++ b/priv/profiles/os_detection/sonicwall.yaml @@ -0,0 +1,12 @@ +os: sonicwall +text: SonicWALL +type: firewall +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: CPU } + - { graph: device_mempool, text: Memory } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8741. + - .1.0.3.0.6.0.1.0 diff --git a/priv/profiles/os_detection/sonus-gsx.yaml b/priv/profiles/os_detection/sonus-gsx.yaml new file mode 100644 index 00000000..2e78e571 --- /dev/null +++ b/priv/profiles/os_detection/sonus-gsx.yaml @@ -0,0 +1,8 @@ +os: sonus-gsx +text: 'Ribbon GSX' +type: appliance +icon: ribbon +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2879.1.1.2 diff --git a/priv/profiles/os_detection/sonus-sbc.yaml b/priv/profiles/os_detection/sonus-sbc.yaml new file mode 100644 index 00000000..3665cb4e --- /dev/null +++ b/priv/profiles/os_detection/sonus-sbc.yaml @@ -0,0 +1,9 @@ +os: sonus-sbc +text: 'Ribbon SBC' +type: appliance +icon: ribbon +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2879.1.9. + - .1.3.6.1.4.1.177.15.1.1. diff --git a/priv/profiles/os_detection/sophos-xg.yaml b/priv/profiles/os_detection/sophos-xg.yaml new file mode 100644 index 00000000..0d52bd3f --- /dev/null +++ b/priv/profiles/os_detection/sophos-xg.yaml @@ -0,0 +1,13 @@ +os: sophos-xg +text: 'Sophos XG' +type: appliance +icon: sophos-xg +group: sophos +mib_dir: sophos +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.2604.5 diff --git a/priv/profiles/os_detection/sophos.yaml b/priv/profiles/os_detection/sophos.yaml new file mode 100644 index 00000000..ef0f8239 --- /dev/null +++ b/priv/profiles/os_detection/sophos.yaml @@ -0,0 +1,13 @@ +os: sophos +text: 'Sophos UTM Firewall' +type: firewall +icon: sophos +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^Linux \S+ [0-9\-.]{1,19}\.g[a-f\d]{7}(\.|-smp64)/' diff --git a/priv/profiles/os_detection/speedtouch.yaml b/priv/profiles/os_detection/speedtouch.yaml new file mode 100644 index 00000000..7612fb53 --- /dev/null +++ b/priv/profiles/os_detection/speedtouch.yaml @@ -0,0 +1,14 @@ +os: speedtouch +text: 'Thomson Speedtouch' +ifname: true +type: network +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysDescr: + - 'TG585v7' + - 'SpeedTouch ' + - + sysDescr_regex: + - '/^ST/' diff --git a/priv/profiles/os_detection/srlinux.yaml b/priv/profiles/os_detection/srlinux.yaml new file mode 100644 index 00000000..dc0fd991 --- /dev/null +++ b/priv/profiles/os_detection/srlinux.yaml @@ -0,0 +1,22 @@ +os: srlinux +group: nokia +text: 'Nokia SR Linux' +type: network +ifXmcbc: true +ifname: true +mib_dir: nokia +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: nokia +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6527.1.20. +discovery_modules: + bgp-peers: true + vrf: true + cisco-vrf-lite: false +poller_modules: + bgp-peers: true diff --git a/priv/profiles/os_detection/sslvis.yaml b/priv/profiles/os_detection/sslvis.yaml new file mode 100644 index 00000000..d5118c4b --- /dev/null +++ b/priv/profiles/os_detection/sslvis.yaml @@ -0,0 +1,14 @@ +os: sslvis +text: 'Blue Coat SSL Visibility' +type: network +ifname: true +icon: bluecoat +mib_dir: bluecoat +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3417.1.5. diff --git a/priv/profiles/os_detection/ssu2000.yaml b/priv/profiles/os_detection/ssu2000.yaml new file mode 100644 index 00000000..eddf21b1 --- /dev/null +++ b/priv/profiles/os_detection/ssu2000.yaml @@ -0,0 +1,49 @@ +os: ssu2000 +text: 'Microsemi Synchronization Supply Unit' +type: appliance +icon: microsemi +mib_dir: microsemi +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.601.3.1. +discovery_modules: + ports: false + storage: false + bgp-peers: false + ntp: false + stp: false + ospf: false + vlans: false + arp-table: false + mempools: false + entity-physical: false + ucd-diskio: false + processors: false + mpls: false + wireless: false + fdb-table: false + services: false + cisco-vrf-lite: false + ucd-mib: false + applications: false +poller_modules: + ucd-mib: false + ports: false + storage: false + bgp-peers: false + ntp: false + stp: false + vlans: false + arp-table: false + mempools: false + entity-physical: false + ucd-diskio: false + processors: false + mpls: false + wireless: false + fdb-table: false + services: false + cisco-vrf-lite: false + applications: false + ospf: false diff --git a/priv/profiles/os_detection/stellar.yaml b/priv/profiles/os_detection/stellar.yaml new file mode 100644 index 00000000..2472ae69 --- /dev/null +++ b/priv/profiles/os_detection/stellar.yaml @@ -0,0 +1,23 @@ +os: stellar +group: nokia +text: 'Alcatel-Lucent Enterprise Stellar Wireless OS (AWOS)' +type: network +ifXmcbc: true +ifname: true +snmp_bulk: false +ignore_mount_string: + - firmware + - overlay + - .productinfo + - rom +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_wireless_clients, text: 'Client Count' } +icon: alcatellucent +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6486.802. #stellar +mib_dir: nokia/stellar diff --git a/priv/profiles/os_detection/stoneos.yaml b/priv/profiles/os_detection/stoneos.yaml new file mode 100644 index 00000000..8a4ddae5 --- /dev/null +++ b/priv/profiles/os_detection/stoneos.yaml @@ -0,0 +1,12 @@ +os: stoneos +text: 'Hillstone StoneOs' +type: network +icon: hillstone +group: hillstone +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.28557.1 diff --git a/priv/profiles/os_detection/stulz.yaml b/priv/profiles/os_detection/stulz.yaml new file mode 100644 index 00000000..7e3de467 --- /dev/null +++ b/priv/profiles/os_detection/stulz.yaml @@ -0,0 +1,23 @@ +os: stulz +text: 'Stulz GMBH Klimatechnik' +type: environment +icon: stulz +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery_modules: + arp-table: false + bgp-peers: false + cisco-vrf-lite: false + discovery-protocols: false + fdb-table: false + hr-device: false + mpls: false + storage: false + stp: false + ucd-diskio: false + vlans: false + wireless: false +discovery: + - sysObjectID: + - .1.3.6.1.4.1.29462. +snmp_bulk: false diff --git a/priv/profiles/os_detection/sub10.yaml b/priv/profiles/os_detection/sub10.yaml new file mode 100644 index 00000000..b9df28ed --- /dev/null +++ b/priv/profiles/os_detection/sub10.yaml @@ -0,0 +1,10 @@ +os: sub10 +text: 'Sub10 Systems' +type: wireless +icon: sub10 +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.39003 diff --git a/priv/profiles/os_detection/supercap.yaml b/priv/profiles/os_detection/supercap.yaml new file mode 100644 index 00000000..3b2e44c2 --- /dev/null +++ b/priv/profiles/os_detection/supercap.yaml @@ -0,0 +1,15 @@ +os: supercap +text: 'SuperCap Energy' +type: power +icon: supercap +mib_dir: supercap +over: + - { graph: device_bits, text: Traffic } +discovery: + - + sysObjectID_regex: + - '/^$/' + snmpget: + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + op: '>=' + value: '0' diff --git a/priv/profiles/os_detection/supermicro-bmc.yaml b/priv/profiles/os_detection/supermicro-bmc.yaml new file mode 100644 index 00000000..78eb7418 --- /dev/null +++ b/priv/profiles/os_detection/supermicro-bmc.yaml @@ -0,0 +1,17 @@ +os: supermicro-bmc +text: 'Supermicro BMC' +type: appliance +icon: supermicro +snmp_bulk: false +mib_dir: supermicro +group: supermicro +over: + - { graph: device_temperature, text: 'Temperatures' } + - { graph: device_fanspeed, text: 'Fan Speed' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1. # could be any server os + snmpget: + oid: ATEN-IPMI-MIB::bmcMajorVesion.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/supermicro-switch.yaml b/priv/profiles/os_detection/supermicro-switch.yaml new file mode 100644 index 00000000..56efdfca --- /dev/null +++ b/priv/profiles/os_detection/supermicro-switch.yaml @@ -0,0 +1,14 @@ +os: supermicro-switch +group: supermicro +text: 'Supermicro Switch' +type: network +icon: supermicro +ifname: true +mib_dir: supermicro +discovery: + - + sysDescr_regex: + - '/^Supermicro Switch/' + - '/^SuperSwitch/' + - '/^SSE-/' + - '/^SBM-/' diff --git a/priv/profiles/os_detection/supervyse-openbmc.yaml b/priv/profiles/os_detection/supervyse-openbmc.yaml new file mode 100644 index 00000000..51fbcc61 --- /dev/null +++ b/priv/profiles/os_detection/supervyse-openbmc.yaml @@ -0,0 +1,16 @@ +os: supervyse-openbmc +text: 'Supervyse OpenBMC' +type: appliance +icon: supervyse-openbmc +mib_dir: supervyse-openbmc +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.45065.1.1.1.3.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/svos.yaml b/priv/profiles/os_detection/svos.yaml new file mode 100644 index 00000000..23a2e630 --- /dev/null +++ b/priv/profiles/os_detection/svos.yaml @@ -0,0 +1,9 @@ +os: svos +text: 'Hitachi Storage Virtualization Operating System (SVOS)' +type: storage +icon: hds +mib_dir: hitachi +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.116.3. diff --git a/priv/profiles/os_detection/swos.yaml b/priv/profiles/os_detection/swos.yaml new file mode 100644 index 00000000..0d56473d --- /dev/null +++ b/priv/profiles/os_detection/swos.yaml @@ -0,0 +1,12 @@ +os: swos +text: 'Mikrotik SwOS' +icon: mikrotik +group: mikrotik +type: network +mib_dir: mikrotik +#rfc1628_compat: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.14988.2 diff --git a/priv/profiles/os_detection/symbol.yaml b/priv/profiles/os_detection/symbol.yaml new file mode 100644 index 00000000..5b994bd2 --- /dev/null +++ b/priv/profiles/os_detection/symbol.yaml @@ -0,0 +1,8 @@ +os: symbol +type: network +text: 'Symbol AP' +icon: symbol +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.388 diff --git a/priv/profiles/os_detection/tachyon.yaml b/priv/profiles/os_detection/tachyon.yaml new file mode 100644 index 00000000..2db7ba86 --- /dev/null +++ b/priv/profiles/os_detection/tachyon.yaml @@ -0,0 +1,12 @@ +os: tachyon +text: 'Tachyon' +type: wireless +icon: tachyon +mib_dir: tachyon +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.57344. diff --git a/priv/profiles/os_detection/tailyn.yaml b/priv/profiles/os_detection/tailyn.yaml new file mode 100644 index 00000000..56531f75 --- /dev/null +++ b/priv/profiles/os_detection/tailyn.yaml @@ -0,0 +1,11 @@ +os: tailyn +text: 'Tailyn' +type: network +icon: tailyn +mib_dir: tailyn +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5833.2017 diff --git a/priv/profiles/os_detection/tait-infra93.yaml b/priv/profiles/os_detection/tait-infra93.yaml new file mode 100644 index 00000000..3b2b54db --- /dev/null +++ b/priv/profiles/os_detection/tait-infra93.yaml @@ -0,0 +1,11 @@ +os: tait-infra93 +text: 'Tait Infra93 Series' +type: network +icon: tait +mib_dir: tait +over: + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: + - '.1.3.6.1.4.1.3570.2.2' diff --git a/priv/profiles/os_detection/tait-tnadmin.yaml b/priv/profiles/os_detection/tait-tnadmin.yaml new file mode 100644 index 00000000..270e2956 --- /dev/null +++ b/priv/profiles/os_detection/tait-tnadmin.yaml @@ -0,0 +1,13 @@ +os: tait-tnadmin +text: 'Tait TN Admin OS' +type: network +icon: tait +mib_dir: tait +snmp_max_oid: 1 +over: + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: + - '.1.3.6.1.4.1.3570.3.15' + diff --git a/priv/profiles/os_detection/teldat.yaml b/priv/profiles/os_detection/teldat.yaml new file mode 100644 index 00000000..e6b5b91c --- /dev/null +++ b/priv/profiles/os_detection/teldat.yaml @@ -0,0 +1,17 @@ +os: teldat +text: 'Teldat' +type: network +icon: teldat +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: teldat +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2007. +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/televes-fs.yaml b/priv/profiles/os_detection/televes-fs.yaml new file mode 100644 index 00000000..f545eaf5 --- /dev/null +++ b/priv/profiles/os_detection/televes-fs.yaml @@ -0,0 +1,11 @@ +os: televes-fs +text: 'Fourth Series [TRedess]' +type: appliance +icon: tredess +group: tredess +over: + - { graph: device_power, text: 'Device Power' } + - { graph: device_count, text: 'Count' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.23180.2.1.1 \ No newline at end of file diff --git a/priv/profiles/os_detection/teracom.yaml b/priv/profiles/os_detection/teracom.yaml new file mode 100644 index 00000000..a55be0b3 --- /dev/null +++ b/priv/profiles/os_detection/teracom.yaml @@ -0,0 +1,8 @@ +os: teracom +text: 'TeraCom' +type: environment +icon: teracom +mib_dir: teracom +discovery: + - sysObjectID: + - .1.3.6.1.4.1.38783 diff --git a/priv/profiles/os_detection/teradici-pcoip.yaml b/priv/profiles/os_detection/teradici-pcoip.yaml new file mode 100644 index 00000000..2c808cfc --- /dev/null +++ b/priv/profiles/os_detection/teradici-pcoip.yaml @@ -0,0 +1,11 @@ +os: teradici-pcoip +text: 'Teradici PCoIP' +type: workstation +icon: teradici +mib_dir: teradici +over: + - { graph: device_bits, text: 'Device Bits' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25071.1 diff --git a/priv/profiles/os_detection/terra-sdi410c.yaml b/priv/profiles/os_detection/terra-sdi410c.yaml new file mode 100644 index 00000000..0ea47b7d --- /dev/null +++ b/priv/profiles/os_detection/terra-sdi410c.yaml @@ -0,0 +1,12 @@ +os: terra-sdi410c +text: Terra +type: appliance +group: terra +icon: terra +mib_dir: terra +over: + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30631.1.8 diff --git a/priv/profiles/os_detection/terra-sdi480.yaml b/priv/profiles/os_detection/terra-sdi480.yaml new file mode 100644 index 00000000..c8e26242 --- /dev/null +++ b/priv/profiles/os_detection/terra-sdi480.yaml @@ -0,0 +1,12 @@ +os: terra-sdi480 +text: Terra +type: appliance +group: terra +icon: terra +mib_dir: terra +over: + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30631.1.17 diff --git a/priv/profiles/os_detection/terra.yaml b/priv/profiles/os_detection/terra.yaml new file mode 100644 index 00000000..111bfa82 --- /dev/null +++ b/priv/profiles/os_detection/terra.yaml @@ -0,0 +1,11 @@ +os: terra +text: Terra +type: appliance +group: terra +icon: terra +over: + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.30631.1. diff --git a/priv/profiles/os_detection/tgos.yaml b/priv/profiles/os_detection/tgos.yaml new file mode 100644 index 00000000..6affe8fa --- /dev/null +++ b/priv/profiles/os_detection/tgos.yaml @@ -0,0 +1,12 @@ +os: tgos +text: 'technicolor TG MediaAcces' +type: network +icon: technicolor +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2863.405.1 diff --git a/priv/profiles/os_detection/thomson-cm.yaml b/priv/profiles/os_detection/thomson-cm.yaml new file mode 100644 index 00000000..51c99252 --- /dev/null +++ b/priv/profiles/os_detection/thomson-cm.yaml @@ -0,0 +1,10 @@ +os: thomson-cm +text: 'Thomson DOCSIS Cable Modem' +icon: thomson-cm +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2863.205.43014.420.4.0.82.4.5 diff --git a/priv/profiles/os_detection/timos.yaml b/priv/profiles/os_detection/timos.yaml new file mode 100644 index 00000000..e37f22b5 --- /dev/null +++ b/priv/profiles/os_detection/timos.yaml @@ -0,0 +1,19 @@ +os: timos +group: nokia +text: 'Nokia SR OS (TiMOS)' +type: network +ifXmcbc: true +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +icon: nokia +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6527. +discovery_modules: + bgp-peers: true + vrf: true + cisco-vrf-lite: false +poller_modules: + bgp-peers: true diff --git a/priv/profiles/os_detection/tomato.yaml b/priv/profiles/os_detection/tomato.yaml new file mode 100644 index 00000000..c6a0ccda --- /dev/null +++ b/priv/profiles/os_detection/tomato.yaml @@ -0,0 +1,16 @@ +os: tomato +text: Tomato +type: network +icon: tomato +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.2021.7890.1.101.1 + op: starts + value: Tomato diff --git a/priv/profiles/os_detection/topvision.yaml b/priv/profiles/os_detection/topvision.yaml new file mode 100644 index 00000000..f74ad8a4 --- /dev/null +++ b/priv/profiles/os_detection/topvision.yaml @@ -0,0 +1,10 @@ +os: topvision +text: 'TopVision' +type: network +icon: sumavision +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.32285.11. diff --git a/priv/profiles/os_detection/toshiba-tec.yaml b/priv/profiles/os_detection/toshiba-tec.yaml new file mode 100644 index 00000000..5a017ce0 --- /dev/null +++ b/priv/profiles/os_detection/toshiba-tec.yaml @@ -0,0 +1,19 @@ +os: toshiba-tec +group: printer +text: 'Toshiba Printer' +ifname: true +type: printer +icon: toshiba +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1129.1.2. + - + sysDescr: + - 'TOSHIBA e-STUDIO' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/tpconductor.yaml b/priv/profiles/os_detection/tpconductor.yaml new file mode 100644 index 00000000..ea843e0e --- /dev/null +++ b/priv/profiles/os_detection/tpconductor.yaml @@ -0,0 +1,25 @@ +os: tpconductor +text: 'TelePresence Conductor' +type: collaboration +icon: cisco +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5596.180.6.4.1 diff --git a/priv/profiles/os_detection/tpdin.yaml b/priv/profiles/os_detection/tpdin.yaml new file mode 100644 index 00000000..f27206b6 --- /dev/null +++ b/priv/profiles/os_detection/tpdin.yaml @@ -0,0 +1,13 @@ +os: tpdin +text: 'Tycon Systems TPDIN' +type: appliance +icon: tyconsystems +over: + - { graph: device_voltage, text: 'Device Voltage' } + - { graph: device_current, text: 'Device Current' } + - { graph: device_temperature, text: 'Device Temperature' } +mib_dir: tycon +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.45621.2 diff --git a/priv/profiles/os_detection/tpdin3.yaml b/priv/profiles/os_detection/tpdin3.yaml new file mode 100644 index 00000000..4b4891a3 --- /dev/null +++ b/priv/profiles/os_detection/tpdin3.yaml @@ -0,0 +1,14 @@ +os: tpdin3 +text: 'Tycon Systems TPDIN' +type: power +icon: tyconsystems +mib_dir: tycon +snmp_bulk: false +over: + - { graph: device_voltage, text: 'Device Voltage' } + - { graph: device_current, text: 'Device Current' } + - { graph: device_temperature, text: 'Device Temperature' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.45621.3 diff --git a/priv/profiles/os_detection/tplink.yaml b/priv/profiles/os_detection/tplink.yaml new file mode 100644 index 00000000..7871624b --- /dev/null +++ b/priv/profiles/os_detection/tplink.yaml @@ -0,0 +1,13 @@ +os: tplink +text: 'TP-Link Switch' +type: network +icon: tplink +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.11863. + - + sysObjectID: .1.3.6.1.4.1.16972 + sysDescr_regex: '/Build \d+ Rel/' diff --git a/priv/profiles/os_detection/transition.yaml b/priv/profiles/os_detection/transition.yaml new file mode 100644 index 00000000..9e52efb1 --- /dev/null +++ b/priv/profiles/os_detection/transition.yaml @@ -0,0 +1,12 @@ +os: transition +text: 'Transition' +type: network +ifname: true +empty_ifdescr: true +icon: transition +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.868. diff --git a/priv/profiles/os_detection/tranzeo.yaml b/priv/profiles/os_detection/tranzeo.yaml new file mode 100644 index 00000000..a55ca931 --- /dev/null +++ b/priv/profiles/os_detection/tranzeo.yaml @@ -0,0 +1,9 @@ +os: tranzeo +text: Tranzeo +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysDescr_regex: + - '/^Tranzeo/' diff --git a/priv/profiles/os_detection/trendnet.yaml b/priv/profiles/os_detection/trendnet.yaml new file mode 100644 index 00000000..d9645308 --- /dev/null +++ b/priv/profiles/os_detection/trendnet.yaml @@ -0,0 +1,16 @@ +os: trendnet +text: 'TRENDnet Switch' +type: network +icon: trendnet +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.28866.2.34 + - .1.3.6.1.4.1.28866.2.46 + - .1.3.6.1.4.1.28866.2.48 + - .1.3.6.1.4.1.28866.2.49 + - .1.3.6.1.4.1.28866.2.51 + - .1.3.6.1.4.1.28866.2.64 diff --git a/priv/profiles/os_detection/trippliteconsole.yaml b/priv/profiles/os_detection/trippliteconsole.yaml new file mode 100644 index 00000000..ba9505d2 --- /dev/null +++ b/priv/profiles/os_detection/trippliteconsole.yaml @@ -0,0 +1,17 @@ +os: trippliteconsole +text: 'TrippLite console server' +type: appliance +icon: tripplite +group: tripplite +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: poweralert +discovery: + - sysObjectID: + - .1.3.6.1.4.1.850.1.5 + - .1.3.6.1.4.1.850.1.7 + +bad_if: + - lo diff --git a/priv/profiles/os_detection/truenas-scale.yaml b/priv/profiles/os_detection/truenas-scale.yaml new file mode 100644 index 00000000..d0293eee --- /dev/null +++ b/priv/profiles/os_detection/truenas-scale.yaml @@ -0,0 +1,26 @@ +os: truenas-scale +type: storage +text: TrueNAS-SCALE +processor_stacked: true +mib_dir: ixsystems +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + mpls: false + ospf: false + stp: false + wireless: false +discovery_modules: + bgp-peers: false + mpls: false + stp: false + wireless: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.50536.3 + sysDescr_regex: + - '/truenas-scale/i' diff --git a/priv/profiles/os_detection/truenas.yaml b/priv/profiles/os_detection/truenas.yaml new file mode 100644 index 00000000..303481d0 --- /dev/null +++ b/priv/profiles/os_detection/truenas.yaml @@ -0,0 +1,29 @@ +os: truenas +type: storage +text: TrueNAS +processor_stacked: true +mib_dir: ixsystems +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +poller_modules: + bgp-peers: false + mpls: false + ospf: false + stp: false + wireless: false +discovery_modules: + bgp-peers: false + mpls: false + stp: false + wireless: false +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.8 #freebsd + - .1.3.6.1.4.1.50536.3 #truenas + sysDescr_regex: + - '/freenas/i' + - '/^(TrueNAS)(?!.*-SCALE).*$/i' + diff --git a/priv/profiles/os_detection/ts-bspdu.yaml b/priv/profiles/os_detection/ts-bspdu.yaml new file mode 100644 index 00000000..99d49c8b --- /dev/null +++ b/priv/profiles/os_detection/ts-bspdu.yaml @@ -0,0 +1,11 @@ +os: ts-bspdu +text: 'BladeShelter PDU by PowerTek' +type: power +icon: bladeshelterpdu +mib_dir: bladeshelter +over: + - { graph: device_power, text: Power } + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: .1.3.6.1.4.1.42610.1.4.4 diff --git a/priv/profiles/os_detection/tsc.yaml b/priv/profiles/os_detection/tsc.yaml new file mode 100644 index 00000000..2afc95f2 --- /dev/null +++ b/priv/profiles/os_detection/tsc.yaml @@ -0,0 +1,10 @@ +os: tsc +group: printer +text: 'TSC Printer' +icon: tsc +ifname: true +type: printer +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.51966. diff --git a/priv/profiles/os_detection/ubiquoss-pon.yaml b/priv/profiles/os_detection/ubiquoss-pon.yaml new file mode 100644 index 00000000..85776a74 --- /dev/null +++ b/priv/profiles/os_detection/ubiquoss-pon.yaml @@ -0,0 +1,12 @@ +os: ubiquoss-pon +text: 'Ubiquoss PON' +type: network +icon: ubiquoss +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: ubiquoss +discovery: + - + sysObjectID: .1.3.6.1.4.1.7800.1 diff --git a/priv/profiles/os_detection/ucopia.yaml b/priv/profiles/os_detection/ucopia.yaml new file mode 100644 index 00000000..bd45a1ba --- /dev/null +++ b/priv/profiles/os_detection/ucopia.yaml @@ -0,0 +1,12 @@ +os: ucopia +text: Ucopia +type: network +icon: ucopia +mib_dir: ucopia +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.31218. diff --git a/priv/profiles/os_detection/ucos.yaml b/priv/profiles/os_detection/ucos.yaml new file mode 100644 index 00000000..c7e2cad7 --- /dev/null +++ b/priv/profiles/os_detection/ucos.yaml @@ -0,0 +1,34 @@ +os: ucos +text: 'Cisco Unified Communications Manager' +type: collaboration +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.9.1.1348 + - .1.3.6.1.4.1.9.12.3.1.3.1062 + - + sysDescr: + - 'Software:UCOS' + - 'Cisco NX-OS(tm) ucs' diff --git a/priv/profiles/os_detection/uhp.yaml b/priv/profiles/os_detection/uhp.yaml new file mode 100644 index 00000000..df567679 --- /dev/null +++ b/priv/profiles/os_detection/uhp.yaml @@ -0,0 +1,11 @@ +os: uhp +text: 'UHP Networks VSAT Terminal' +type: wireless +icon: uhp +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8000 +mib_dir: uhp +poller_modules: + netstats: false \ No newline at end of file diff --git a/priv/profiles/os_detection/ulaf.yaml b/priv/profiles/os_detection/ulaf.yaml new file mode 100644 index 00000000..6dbd4eac --- /dev/null +++ b/priv/profiles/os_detection/ulaf.yaml @@ -0,0 +1,10 @@ +os: ulaf +text: 'ULAF+' +type: network +icon: ulaf +group: siemens +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1887.1.1.1.2.1.1 diff --git a/priv/profiles/os_detection/unifi-usp.yaml b/priv/profiles/os_detection/unifi-usp.yaml new file mode 100644 index 00000000..62495e2e --- /dev/null +++ b/priv/profiles/os_detection/unifi-usp.yaml @@ -0,0 +1,11 @@ +os: unifi-usp +text: 'Ubiquiti UniFi' +type: power +icon: ubiquiti +snmp_bulk: false +mib_dir: ubnt +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^USP-/' diff --git a/priv/profiles/os_detection/unifi.yaml b/priv/profiles/os_detection/unifi.yaml new file mode 100644 index 00000000..87eee796 --- /dev/null +++ b/priv/profiles/os_detection/unifi.yaml @@ -0,0 +1,28 @@ +os: unifi +text: 'Ubiquiti UniFi' +type: wireless +icon: ubiquiti +mib_dir: ubnt +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_clients, text: 'Connected Clients' } + - { graph: device_wireless_ccq, text: 'Connection Quality' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.41112 + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr_regex: + - '/^UAP/' + - '/^U6/' + - '/^U7/' + - '/^E7/' + - '/^UK/' + - '/^U-LTE/' + - + sysObjectID: .1.3.6.1.4.1.10002.1 + sysDescr: Linux + snmpwalk: + oid: 'IEEE802dot11-MIB::dot11manufacturerProductName' + op: 'contains' + value: 'UAP' diff --git a/priv/profiles/os_detection/uniping.yaml b/priv/profiles/os_detection/uniping.yaml new file mode 100644 index 00000000..de1ca3ec --- /dev/null +++ b/priv/profiles/os_detection/uniping.yaml @@ -0,0 +1,14 @@ +os: uniping +text: UniPing +type: environmental +icon: netping +group: netping +snmp_bulk: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.25728 diff --git a/priv/profiles/os_detection/univerge.yaml b/priv/profiles/os_detection/univerge.yaml new file mode 100644 index 00000000..1dbeec86 --- /dev/null +++ b/priv/profiles/os_detection/univerge.yaml @@ -0,0 +1,10 @@ +os: univerge +text: 'NEC Univerge' +type: appliance +over: + - { graph: device_bits, text: 'Device Traffic' } +icon: nec +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.119.1. diff --git a/priv/profiles/os_detection/utax.yaml b/priv/profiles/os_detection/utax.yaml new file mode 100644 index 00000000..cf5878a5 --- /dev/null +++ b/priv/profiles/os_detection/utax.yaml @@ -0,0 +1,16 @@ +os: utax +group: printer +text: 'UTAX Printer' +over: + - { graph: device_toner, text: Toner } +ifname: true +type: printer +discovery: + - sysObjectID: + - .1.3.6.1.4.1.1347.41 + - sysDescr: + - 'TA_UTAX Printing System' +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/valere.yaml b/priv/profiles/os_detection/valere.yaml new file mode 100644 index 00000000..96bcf383 --- /dev/null +++ b/priv/profiles/os_detection/valere.yaml @@ -0,0 +1,11 @@ +os: valere +text: 'Eltek Valere' +type: power +icon: eltek +snmp_bulk: false +mib_dir: eltek +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.13858 diff --git a/priv/profiles/os_detection/vccodec.yaml b/priv/profiles/os_detection/vccodec.yaml new file mode 100644 index 00000000..6f4271b4 --- /dev/null +++ b/priv/profiles/os_detection/vccodec.yaml @@ -0,0 +1,25 @@ +os: vccodec +text: 'TelePresence Codec' +type: collaboration +icon: cisco +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5596.150.6.4.1 diff --git a/priv/profiles/os_detection/vcs.yaml b/priv/profiles/os_detection/vcs.yaml new file mode 100644 index 00000000..51f4f867 --- /dev/null +++ b/priv/profiles/os_detection/vcs.yaml @@ -0,0 +1,25 @@ +os: vcs +text: 'Video Communication Server' +type: collaboration +icon: cisco +poller_modules: + cisco-cef: true + cisco-mac-accounting: true + cisco-remote-access-monitor: true + slas: true + cisco-ipsec-flow-monitor: true + cipsec-tunnels: true + cisco-otv: true +discovery_modules: + cisco-cef: true + slas: true + cisco-mac-accounting: true + cisco-otv: true + cisco-pw: true + vrf: true + cisco-vrf-lite: true +mib_dir: cisco +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.5596.130.6.4.1 diff --git a/priv/profiles/os_detection/vega.yaml b/priv/profiles/os_detection/vega.yaml new file mode 100644 index 00000000..91b4d91b --- /dev/null +++ b/priv/profiles/os_detection/vega.yaml @@ -0,0 +1,8 @@ +os: vega +text: 'Sangoma Vega' +type: network +icon: sangoma +mib_dir: sangoma +discovery: + - sysObjectID: + - .1.3.6.1.4.1.4686. diff --git a/priv/profiles/os_detection/velocloud.yaml b/priv/profiles/os_detection/velocloud.yaml new file mode 100644 index 00000000..9aa738e2 --- /dev/null +++ b/priv/profiles/os_detection/velocloud.yaml @@ -0,0 +1,16 @@ +os: velocloud +text: 'VMware SD-WAN' +type: appliance +icon: velocloud +mib_dir: vmware +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + - .1.3.6.1.4.1.45346.1.1 + sysDescr: + - VeloCloud diff --git a/priv/profiles/os_detection/venturi.yaml b/priv/profiles/os_detection/venturi.yaml new file mode 100644 index 00000000..b9ae6b31 --- /dev/null +++ b/priv/profiles/os_detection/venturi.yaml @@ -0,0 +1,12 @@ +os: venturi +text: 'Venturi Wireless' +type: server +icon: venturi +mib_dir: venturi +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.3382. diff --git a/priv/profiles/os_detection/vertiv-dcs.yaml b/priv/profiles/os_detection/vertiv-dcs.yaml new file mode 100644 index 00000000..d8bee124 --- /dev/null +++ b/priv/profiles/os_detection/vertiv-dcs.yaml @@ -0,0 +1,16 @@ +os: vertiv-dcs +text: 'DCS' +type: power +icon: vertiv +mib_dir: vertiv +over: + - { graph: device_charge, text: 'Battery Charge' } + - { graph: device_runtime, text: 'Battery Runtime' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2021.250.10 + snmpget: + oid: .1.3.6.1.4.1.13400.3.1.1.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/vertiv-ita2.yaml b/priv/profiles/os_detection/vertiv-ita2.yaml new file mode 100644 index 00000000..ab9227e5 --- /dev/null +++ b/priv/profiles/os_detection/vertiv-ita2.yaml @@ -0,0 +1,12 @@ +os: vertiv-ita2 +text: 'ITA2' +type: power +icon: vertiv +group: vertiv +mib_dir: vertiv +discovery: + - sysObjectID: + - .1.3.6.1.4.1.13400.2.54 +over: + - { graph: device_runtime, text: 'Battery Runtime' } + - { graph: device_charge, text: 'Battery %' } diff --git a/priv/profiles/os_detection/vertiv-pdu.yaml b/priv/profiles/os_detection/vertiv-pdu.yaml new file mode 100644 index 00000000..625f0be9 --- /dev/null +++ b/priv/profiles/os_detection/vertiv-pdu.yaml @@ -0,0 +1,13 @@ +os: vertiv-pdu +text: 'Vertiv PDU' +type: power +icon: vertiv +group: vertiv +discovery: + - sysObjectID: + - .1.3.6.1.4.1.21239.42.1. +mib_dir: vertiv +over: + - { graph: device_power, text: 'Power' } + - { graph: device_current, text: 'Current' } + - { graph: device_voltage, text: 'Voltage' } diff --git a/priv/profiles/os_detection/vigintos.yaml b/priv/profiles/os_detection/vigintos.yaml new file mode 100644 index 00000000..8a3f812c --- /dev/null +++ b/priv/profiles/os_detection/vigintos.yaml @@ -0,0 +1,13 @@ +os: vigintos +text: 'DVB Modulator & Ampiflier' +type: network +icon: vigintos +group: vigintos +mib_dir: vigintos +over: + - { graph: device_temperature, text: 'Ampiflier Temperature' } + - { graph: device_voltage, text: 'Ampiflier Voltage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.27993.5 diff --git a/priv/profiles/os_detection/viprinux.yaml b/priv/profiles/os_detection/viprinux.yaml new file mode 100644 index 00000000..be55daa5 --- /dev/null +++ b/priv/profiles/os_detection/viprinux.yaml @@ -0,0 +1,13 @@ +os: viprinux +text: Viprinux +type: network +icon: viprinux +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } +group: viprinet +discovery: + - + sysDescr: + - 'Viprinet VPN Router' diff --git a/priv/profiles/os_detection/viptela.yaml b/priv/profiles/os_detection/viptela.yaml new file mode 100644 index 00000000..93e3529e --- /dev/null +++ b/priv/profiles/os_detection/viptela.yaml @@ -0,0 +1,14 @@ +os: viptela +group: cisco +text: 'Viptela' +type: network +icon: cisco +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: viptela +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.41916. diff --git a/priv/profiles/os_detection/vivotek.yaml b/priv/profiles/os_detection/vivotek.yaml new file mode 100644 index 00000000..74c4371a --- /dev/null +++ b/priv/profiles/os_detection/vivotek.yaml @@ -0,0 +1,8 @@ +os: vivotek +text: 'Vivotek Camera' +type: camera +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.23465 diff --git a/priv/profiles/os_detection/vmware-esxi.yaml b/priv/profiles/os_detection/vmware-esxi.yaml new file mode 100644 index 00000000..e78fbd07 --- /dev/null +++ b/priv/profiles/os_detection/vmware-esxi.yaml @@ -0,0 +1,15 @@ +os: vmware-esxi +type: server +group: unix +text: VMware ESXi +icon: vmware +mib_dir: vmware +ifname: true +ifXmcbc: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery_modules: + vminfo: true +discovery: + - + sysObjectID: .1.3.6.1.4.1.6876.4.1 diff --git a/priv/profiles/os_detection/vmware-vcsa.yaml b/priv/profiles/os_detection/vmware-vcsa.yaml new file mode 100644 index 00000000..01733d8e --- /dev/null +++ b/priv/profiles/os_detection/vmware-vcsa.yaml @@ -0,0 +1,18 @@ +os: vmware-vcsa +group: unix +type: server +text: VMware vCenter +icon: vmware +mib_dir: vmware +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.6876.4.7 + - .1.3.6.1.4.1.6876.4.8 + - + sysDescr_regex: + - '/^VMware-vCenter-Server-Appliance/' + - '/^VMware vCenter Server/' diff --git a/priv/profiles/os_detection/volius.yaml b/priv/profiles/os_detection/volius.yaml new file mode 100644 index 00000000..b2b9333e --- /dev/null +++ b/priv/profiles/os_detection/volius.yaml @@ -0,0 +1,12 @@ +os: volius +text: 'Volius' +type: network +icon: volius +mib_dir: volius +snmp_bulk: false +over: + - { graph: device_dbm, text: 'dBm' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.34652 \ No newline at end of file diff --git a/priv/profiles/os_detection/voss.yaml b/priv/profiles/os_detection/voss.yaml new file mode 100644 index 00000000..f4693a04 --- /dev/null +++ b/priv/profiles/os_detection/voss.yaml @@ -0,0 +1,24 @@ +os: voss +text: 'Extreme VOSS' +type: network +icon: extremevoss +mib_dir: nortel +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2272. #If not caught by BOSS sysObjectID prefix + - + sysObjectID: + - .1.3.6.1.4.1.1916.2. #Extreme VOSS/VSP switches share sysObjectID prefix with xos(Extreme XOS) + sysDescr: + - FabricEngine + - VSP + - VOSS + - XA1440 + - XA1480 +good_if: + - 'Virtual Services Platform' diff --git a/priv/profiles/os_detection/voswall.yaml b/priv/profiles/os_detection/voswall.yaml new file mode 100644 index 00000000..d400855a --- /dev/null +++ b/priv/profiles/os_detection/voswall.yaml @@ -0,0 +1,12 @@ +os: voswall +group: unix +text: Voswall +type: firewall +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +processor_stacked: true +discovery: + - + sysDescr: + - Voswall diff --git a/priv/profiles/os_detection/vrp.yaml b/priv/profiles/os_detection/vrp.yaml new file mode 100644 index 00000000..0ac05f80 --- /dev/null +++ b/priv/profiles/os_detection/vrp.yaml @@ -0,0 +1,23 @@ +os: vrp +group: vrp +text: 'Huawei VRP' +type: network +icon: huawei +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: huawei +discovery: + - + sysDescr: + - VRP (R) Software + - VRP Software Version + - Software Version VRP + - Versatile Routing Platform Software +poller_modules: + slas: true + xdsl: true +discovery_modules: + slas: true + xdsl: true diff --git a/priv/profiles/os_detection/vsolution.yaml b/priv/profiles/os_detection/vsolution.yaml new file mode 100644 index 00000000..125f6443 --- /dev/null +++ b/priv/profiles/os_detection/vsolution.yaml @@ -0,0 +1,14 @@ +os: vsolution +text: 'V-Solution' +type: network +icon: vsolution +mib_dir: vsolution +bad_snmpEngineTime: false +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.37950. diff --git a/priv/profiles/os_detection/vubiq.yaml b/priv/profiles/os_detection/vubiq.yaml new file mode 100644 index 00000000..dc0e8ae8 --- /dev/null +++ b/priv/profiles/os_detection/vubiq.yaml @@ -0,0 +1,10 @@ +os: vubiq +text: 'Vubiq Networks' +type: network +icon: vubiq +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.46330.1 diff --git a/priv/profiles/os_detection/vutlan.yaml b/priv/profiles/os_detection/vutlan.yaml new file mode 100644 index 00000000..c3ffb8f6 --- /dev/null +++ b/priv/profiles/os_detection/vutlan.yaml @@ -0,0 +1,12 @@ +os: vutlan +text: 'Vutlan' +type: environment +icon: vutlan +mib_dir: vutlan +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.39052 diff --git a/priv/profiles/os_detection/vxoa.yaml b/priv/profiles/os_detection/vxoa.yaml new file mode 100644 index 00000000..8c3d8efa --- /dev/null +++ b/priv/profiles/os_detection/vxoa.yaml @@ -0,0 +1,14 @@ +os: vxoa +text: 'Silver Peak VXOA' +type: network +icon: silverpeak +group: silverpeak +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.23867.1.2. +mib_dir: silverpeak diff --git a/priv/profiles/os_detection/vyatta.yaml b/priv/profiles/os_detection/vyatta.yaml new file mode 100644 index 00000000..56602c72 --- /dev/null +++ b/priv/profiles/os_detection/vyatta.yaml @@ -0,0 +1,14 @@ +os: vyatta +text: Vyatta +type: network +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: + - '/^Vyatta/' + sysDescr_except: + - 'VyOS' diff --git a/priv/profiles/os_detection/vyos.yaml b/priv/profiles/os_detection/vyos.yaml new file mode 100644 index 00000000..d2221101 --- /dev/null +++ b/priv/profiles/os_detection/vyos.yaml @@ -0,0 +1,17 @@ +os: vyos +text: VyOS +group: unix +type: network +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr_regex: + - '/^Vyatta VyOS/' + - '/^VyOS/i' + - + sysObjectID: + - .1.3.6.1.4.1.44641 \ No newline at end of file diff --git a/priv/profiles/os_detection/waas.yaml b/priv/profiles/os_detection/waas.yaml new file mode 100644 index 00000000..a8540454 --- /dev/null +++ b/priv/profiles/os_detection/waas.yaml @@ -0,0 +1,40 @@ +os: waas +group: cisco +text: 'Cisco WAAS' +type: network +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: cisco +poller_modules: + applications: false + bgp-peers: false + cipsec-tunnels: false + cisco-cef: false + cisco-ipsec-flow-monitor: false + cisco-mac-accounting: false + cisco-otv: false + cisco-remote-access-monitor: false + slas: false + ipmi: false + ospf: false + printer-supplies: false + ucd-diskio: false + ucd-mib: false +discovery_modules: + bgp-peers: false + cisco-cef: false + cisco-mac-accounting: false + cisco-otv: false + cisco-pw: false + slas: false + cisco-vrf-lite: false + vrf: false + ntp: false + stp: false + printer-supplies: false + ucd-diskio: false + vlans: false +discovery: + - { sysDescr_regex: ['/^Cisco Wide Area Application Services/'] } diff --git a/priv/profiles/os_detection/webmon.yaml b/priv/profiles/os_detection/webmon.yaml new file mode 100644 index 00000000..a990511f --- /dev/null +++ b/priv/profiles/os_detection/webmon.yaml @@ -0,0 +1,12 @@ +os: webmon +text: 'Dantel Webmon' +type: environment +icon: dantel +mib_dir: dantel +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.994.3.4 diff --git a/priv/profiles/os_detection/webpower-smart2.yaml b/priv/profiles/os_detection/webpower-smart2.yaml new file mode 100644 index 00000000..391915c1 --- /dev/null +++ b/priv/profiles/os_detection/webpower-smart2.yaml @@ -0,0 +1,18 @@ +os: webpower-smart2 +text: WebPower-smart2 +group: ups +icon: generic +type: power +mib_dir: ingrasys +snmp_bulk: false +over: + - { graph: device_voltage, text: Voltage } + - { graph: device_load, text: Load } + - { graph: device_frequency, text: Frequency } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2468.1.2.1 + sysDescr_regex: + - '/WebPower Smart II Card/' + - '/USHA Smart II Card/' diff --git a/priv/profiles/os_detection/webpower.yaml b/priv/profiles/os_detection/webpower.yaml new file mode 100644 index 00000000..2d25132f --- /dev/null +++ b/priv/profiles/os_detection/webpower.yaml @@ -0,0 +1,12 @@ +os: webpower +text: WebPower +type: power +rfc1628_compat: true +over: + - { graph: device_current, text: Current } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.2468.1.2.1 + sysDescr_except: + - 'WebPower Smart II Card' diff --git a/priv/profiles/os_detection/websensor.yaml b/priv/profiles/os_detection/websensor.yaml new file mode 100644 index 00000000..fc8befee --- /dev/null +++ b/priv/profiles/os_detection/websensor.yaml @@ -0,0 +1,10 @@ +os: websensor +text: 'Comet System Web Sensor' +type: environment +icon: comet +mib_dir: comet +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysObjectID: .1.3.6.1.4.1.22626.1. diff --git a/priv/profiles/os_detection/weos.yaml b/priv/profiles/os_detection/weos.yaml new file mode 100644 index 00000000..3604c933 --- /dev/null +++ b/priv/profiles/os_detection/weos.yaml @@ -0,0 +1,13 @@ +os: weos +text: 'Westermo WeOS' +type: network +icon: westermo +group: westermo +ifname: true +mib_dir: westermo +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.16177 diff --git a/priv/profiles/os_detection/westmountainradio.yaml b/priv/profiles/os_detection/westmountainradio.yaml new file mode 100644 index 00000000..0b326008 --- /dev/null +++ b/priv/profiles/os_detection/westmountainradio.yaml @@ -0,0 +1,16 @@ +os: westmountainradio +text: 'West Mountain RMCU' +type: power +mib_dir: westmountainradio +icon: westmountainradio +snmp_bulk: false +bad_snmpEngineTime: true +bad_hrSystemUptime: true +over: + - { graph: device_current, text: Current } + - { graph: device_voltage, text: Voltage } + - { graph: device_state, text: 'Power Status' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.15117.1 diff --git a/priv/profiles/os_detection/windows.yaml b/priv/profiles/os_detection/windows.yaml new file mode 100644 index 00000000..e726812a --- /dev/null +++ b/priv/profiles/os_detection/windows.yaml @@ -0,0 +1,17 @@ +os: windows +type: server +text: 'Microsoft Windows' +ifname: true +processor_stacked: true +bad_hrSystemUptime: true +mib_dir: dell +group: microsoft +over: + - { graph: device_processor, text: 'Processor Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_storage, text: 'Storage Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.311.1.1.3 + - + sysDescr: Windows diff --git a/priv/profiles/os_detection/wipipe.yaml b/priv/profiles/os_detection/wipipe.yaml new file mode 100644 index 00000000..d207121f --- /dev/null +++ b/priv/profiles/os_detection/wipipe.yaml @@ -0,0 +1,9 @@ +os: wipipe +text: 'CradlePoint WiPipe' +type: network +icon: cradlepoint +mib_dir: cradlepoint +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.20992. diff --git a/priv/profiles/os_detection/wis-bridge.yaml b/priv/profiles/os_detection/wis-bridge.yaml new file mode 100755 index 00000000..fc6c9aee --- /dev/null +++ b/priv/profiles/os_detection/wis-bridge.yaml @@ -0,0 +1,14 @@ +os: wis-bridge +text: 'WIS Bridge' +type: wireless +icon: wis +snmp_bulk: false +mib_dir: wis +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_wireless_clients, text: 'Connected Clients' } + - { graph: device_wireless_ccq, text: 'Connection Quality' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.62821.1.4 diff --git a/priv/profiles/os_detection/wisi-tangram.yaml b/priv/profiles/os_detection/wisi-tangram.yaml new file mode 100644 index 00000000..03ed1d92 --- /dev/null +++ b/priv/profiles/os_detection/wisi-tangram.yaml @@ -0,0 +1,12 @@ +os: wisi-tangram +text: 'WISI Tangram' +type: network +icon: wisi +mib_dir: wisi +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_fanspeed, text: Fans } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.7465 diff --git a/priv/profiles/os_detection/witchos.yaml b/priv/profiles/os_detection/witchos.yaml new file mode 100644 index 00000000..c3973237 --- /dev/null +++ b/priv/profiles/os_detection/witchos.yaml @@ -0,0 +1,12 @@ +os: witchos +text: Teltonika WitchOS +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: Processors } + - { graph: device_mempool, text: Memory } +type: network +icon: teltonika +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.24686 diff --git a/priv/profiles/os_detection/wti-console.yaml b/priv/profiles/os_detection/wti-console.yaml new file mode 100644 index 00000000..f729f43a --- /dev/null +++ b/priv/profiles/os_detection/wti-console.yaml @@ -0,0 +1,9 @@ +os: wti-console +text: 'WTI CONSOLE' +type: appliance +icon: wti +group: wti +mib_dir: wti +discovery: + - sysObjectID: + - .1.3.6.1.4.1.2634.1 diff --git a/priv/profiles/os_detection/wti-mpc.yaml b/priv/profiles/os_detection/wti-mpc.yaml new file mode 100644 index 00000000..2ad2cd3d --- /dev/null +++ b/priv/profiles/os_detection/wti-mpc.yaml @@ -0,0 +1,26 @@ +os: wti-mpc +text: 'WTI MPC' +type: power +icon: wti +mib_dir: wti +poller_modules: + wireless: false + ntp: false + applications: false + stp: false + services: false +discovery_modules: + stp: false + wireless: false + vlans: false + ntp: false + services: false +discovery: + - + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: 'WTI-MPC-MIB::environmentUnitName.1' + mib_dir: wti + op: '!=' + value: false + diff --git a/priv/profiles/os_detection/wti-power.yaml b/priv/profiles/os_detection/wti-power.yaml new file mode 100644 index 00000000..92bb5b22 --- /dev/null +++ b/priv/profiles/os_detection/wti-power.yaml @@ -0,0 +1,12 @@ +os: wti-power +text: 'WTI POWER' +type: power +icon: wti +group: wti +mib_dir: wti +over: + - { graph: device_current, text: Current } + - { graph: device_power, text: Power } +discovery: + - sysObjectID: + - .1.3.6.1.4.1.2634.6 diff --git a/priv/profiles/os_detection/wut.yaml b/priv/profiles/os_detection/wut.yaml new file mode 100644 index 00000000..51172b0f --- /dev/null +++ b/priv/profiles/os_detection/wut.yaml @@ -0,0 +1,11 @@ +os: wut +text: 'Web-Thermo-Hygrometer' +type: environment +icon: wut +mib_dir: wut +over: + - { graph: device_temperature, text: Temperature } + - { graph: device_humidity, text: Humidity } +discovery: + - + sysObjectID: .1.3.6.1.4.1.5040.1.2. diff --git a/priv/profiles/os_detection/wxgoos.yaml b/priv/profiles/os_detection/wxgoos.yaml new file mode 100644 index 00000000..01274ea5 --- /dev/null +++ b/priv/profiles/os_detection/wxgoos.yaml @@ -0,0 +1,10 @@ +os: wxgoos +text: 'ITWatchDogs Goose' +type: environment +over: + - { graph: device_temperature, text: temperature } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.901.1 + - .1.3.6.1.4.1.17373 diff --git a/priv/profiles/os_detection/xclarity.yaml b/priv/profiles/os_detection/xclarity.yaml new file mode 100644 index 00000000..bb5b0147 --- /dev/null +++ b/priv/profiles/os_detection/xclarity.yaml @@ -0,0 +1,21 @@ +os: xclarity +text: 'Lenovo XCC IMPI' +type: appliance +icon: lenovo +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.19046.11.1 +ignore_mount_string: + - .whitelist + - .xcc-fw + - mlc + - mlc2 + - mnt + - pstorage + - pybox + - run + - shm + - tdm-rw + - tmp +mib_dir: lenovo \ No newline at end of file diff --git a/priv/profiles/os_detection/xerox.yaml b/priv/profiles/os_detection/xerox.yaml new file mode 100644 index 00000000..bf2ef1bc --- /dev/null +++ b/priv/profiles/os_detection/xerox.yaml @@ -0,0 +1,16 @@ +os: xerox +group: printer +text: 'Xerox Printer' +ifname: true +type: printer +over: + - { graph: device_toner, text: Toner } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.253.8.62.1. + - .1.3.6.1.4.1.297.1.11.93.1. +discovery_modules: + printer-supplies: true +poller_modules: + printer-supplies: true diff --git a/priv/profiles/os_detection/xirrus_aos.yaml b/priv/profiles/os_detection/xirrus_aos.yaml new file mode 100644 index 00000000..00fc2b1d --- /dev/null +++ b/priv/profiles/os_detection/xirrus_aos.yaml @@ -0,0 +1,13 @@ +os: xirrus_aos +text: 'Xirrus ArrayOS' +type: wireless +icon: xirrus +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_xirrus_stations, text: 'Wifi Clients' } + - { graph: device_wireless_rssi, text: 'Signal RSSI' } +discovery: + - + sysDescr: + - Xirrus + - ArrayOS diff --git a/priv/profiles/os_detection/xos.yaml b/priv/profiles/os_detection/xos.yaml new file mode 100644 index 00000000..32b9f4e0 --- /dev/null +++ b/priv/profiles/os_detection/xos.yaml @@ -0,0 +1,14 @@ +os: xos +text: 'Extreme XOS' +type: network +ifname: true +icon: extreme +mib_dir: extreme +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.1916.2. diff --git a/priv/profiles/os_detection/yunshan.yaml b/priv/profiles/os_detection/yunshan.yaml new file mode 100644 index 00000000..e7fa0b95 --- /dev/null +++ b/priv/profiles/os_detection/yunshan.yaml @@ -0,0 +1,13 @@ +os: yunshan +group: huawei +text: 'Huawei YunShan OS' +type: network +icon: huawei +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: huawei +discovery: + - sysObjectID: + - .1.3.6.1.4.1.2011.2.23 \ No newline at end of file diff --git a/priv/profiles/os_detection/zebra.yaml b/priv/profiles/os_detection/zebra.yaml new file mode 100644 index 00000000..06d03f7c --- /dev/null +++ b/priv/profiles/os_detection/zebra.yaml @@ -0,0 +1,12 @@ +os: zebra +text: ZebraNet +type: printer +icon: zebra +mib_dir: zebra +over: + - { graph: device_bits, text: 'Device Traffic' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.683. + - .1.3.6.1.4.1.10642. diff --git a/priv/profiles/os_detection/zenitel-alphacom.yaml b/priv/profiles/os_detection/zenitel-alphacom.yaml new file mode 100644 index 00000000..2b9a49c1 --- /dev/null +++ b/priv/profiles/os_detection/zenitel-alphacom.yaml @@ -0,0 +1,15 @@ +os: zenitel-alphacom +text: 'AlphaCom' +type: server +icon: zenitel +mib_dir: zenitel +over: + - { graph: device_processor, text: 'Processor Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.26122.1.1.1.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/zenitel-ipstation.yaml b/priv/profiles/os_detection/zenitel-ipstation.yaml new file mode 100644 index 00000000..965f2da5 --- /dev/null +++ b/priv/profiles/os_detection/zenitel-ipstation.yaml @@ -0,0 +1,13 @@ +os: zenitel-ipstation +text: 'IPStation' +type: appliance +icon: zenitel +mib_dir: zenitel +snmp_bulk: false +over: + - { graph: device_processor, text: 'Processor Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + sysDescr: ipstation diff --git a/priv/profiles/os_detection/zenitel-vsdevice.yaml b/priv/profiles/os_detection/zenitel-vsdevice.yaml new file mode 100644 index 00000000..c9f14366 --- /dev/null +++ b/priv/profiles/os_detection/zenitel-vsdevice.yaml @@ -0,0 +1,15 @@ +os: zenitel-vsdevice +text: 'VS Device' +type: appliance +icon: zenitel +mib_dir: zenitel +over: + - { graph: device_processor, text: 'Processor Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.8072.3.2.10 + snmpget: + oid: .1.3.6.1.4.1.26122.3.1.3.0 + op: '!=' + value: false diff --git a/priv/profiles/os_detection/zmtel.yaml b/priv/profiles/os_detection/zmtel.yaml new file mode 100644 index 00000000..de3de242 --- /dev/null +++ b/priv/profiles/os_detection/zmtel.yaml @@ -0,0 +1,9 @@ +os: zmtel +text: 'Zmtel Greenpacket' +icon: greenpacket +type: network +mib_dir: zmtel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.38595.10 diff --git a/priv/profiles/os_detection/zxa10.yaml b/priv/profiles/os_detection/zxa10.yaml new file mode 100644 index 00000000..33c4e557 --- /dev/null +++ b/priv/profiles/os_detection/zxa10.yaml @@ -0,0 +1,15 @@ +os: zxa10 +text: 'ZTE ZXA10' +type: network +icon: zte +mib_dir: zte +bad_snmpEngineTime: true +empty_ifdescr: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.3902.1082. diff --git a/priv/profiles/os_detection/zxdsl.yaml b/priv/profiles/os_detection/zxdsl.yaml new file mode 100644 index 00000000..6d9da9a6 --- /dev/null +++ b/priv/profiles/os_detection/zxdsl.yaml @@ -0,0 +1,15 @@ +os: zxdsl +text: 'ZXDSL' +type: network +icon: zte +group: zte +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_temperature, text: 'Temperature' } +discovery: + - + sysObjectID: [ .1.3.6.1.4.1.3902.1004., .1.3.6.1.4.1.3902.1015. ] +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/zxr10.yaml b/priv/profiles/os_detection/zxr10.yaml new file mode 100644 index 00000000..f217a44c --- /dev/null +++ b/priv/profiles/os_detection/zxr10.yaml @@ -0,0 +1,15 @@ +os: zxr10 +group: zte +text: 'ZTE ZXR10' +type: network +icon: zte +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +discovery: + - + sysDescr: + - ZXR10 + - 'ZTE Ethernet Switch' + diff --git a/priv/profiles/os_detection/zynos.yaml b/priv/profiles/os_detection/zynos.yaml new file mode 100644 index 00000000..309cb40a --- /dev/null +++ b/priv/profiles/os_detection/zynos.yaml @@ -0,0 +1,25 @@ +os: zynos +text: 'ZyXEL Ethernet Switch' +group: zyxel +type: network +icon: zyxel +ifname: true +over: + - { graph: device_bits, text: 'Device Traffic' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: .1.3.6.1.4.1.890 + sysDescr_regex: + - '/^ES/' + - '/^GS/' + - '/^GES/' + - '/^MES/' + - '/^MGS/' + - '/^XS/' + - '/^XGS/' + - '/^ZyXEL/' +oids: + unordered: + - LLDP-MIB::lldpRemTable + - .1.0.8802.1.1.2.1.4.2.1.3 diff --git a/priv/profiles/os_detection/zywall.yaml b/priv/profiles/os_detection/zywall.yaml new file mode 100644 index 00000000..8c52597b --- /dev/null +++ b/priv/profiles/os_detection/zywall.yaml @@ -0,0 +1,18 @@ +os: zywall +text: 'ZyXEL ZyWALL' +group: zyxel +type: firewall +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +icon: zyxel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.890.1.6 + - .1.3.6.1.4.1.890.1.15 + sysDescr_regex_except: + - '/^NWA/' + - '/^XGS/' + - '/^NXC/' diff --git a/priv/profiles/os_detection/zyxelac.yaml b/priv/profiles/os_detection/zyxelac.yaml new file mode 100644 index 00000000..bc0c1e45 --- /dev/null +++ b/priv/profiles/os_detection/zyxelac.yaml @@ -0,0 +1,15 @@ +os: zyxelac +text: 'ZyXEL AC' +group: zyxel +type: network +icon: zyxel +discovery: + - + sysDescr_regex: + - '/^AC/' + sysObjectID: + - '.1.3.6.1.4.1.890' +poller_modules: + xdsl: true +discovery_modules: + xdsl: true diff --git a/priv/profiles/os_detection/zyxelnwa.yaml b/priv/profiles/os_detection/zyxelnwa.yaml new file mode 100644 index 00000000..7abb0765 --- /dev/null +++ b/priv/profiles/os_detection/zyxelnwa.yaml @@ -0,0 +1,11 @@ +os: zyxelnwa +text: 'ZyXEL NWA' +group: zyxel +type: network +icon: zyxel +discovery: + - + sysDescr_regex: + - '/^NWA/' + sysObjectID: + - '.1.3.6.1.4.1.890.1.15' diff --git a/priv/profiles/os_detection/zyxelusg.yaml b/priv/profiles/os_detection/zyxelusg.yaml new file mode 100644 index 00000000..b6381a00 --- /dev/null +++ b/priv/profiles/os_detection/zyxelusg.yaml @@ -0,0 +1,16 @@ +os: zyxelusg +text: 'ZyXEL USG' +group: zyxel +type: firewall +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } +mib_dir: zyxel +icon: zyxel +discovery: + - + sysDescr_regex: + - '/^USG/' + sysObjectID: .1.3.6.1.4.1.8072.3.2.10 + diff --git a/priv/profiles/os_detection/zyxelwlc.yaml b/priv/profiles/os_detection/zyxelwlc.yaml new file mode 100644 index 00000000..4403f3b0 --- /dev/null +++ b/priv/profiles/os_detection/zyxelwlc.yaml @@ -0,0 +1,20 @@ +os: zyxelwlc +text: 'Zyxel Zyxelwlc' +group: zyxel +type: wireless +over: + - { graph: device_bits, text: Traffic } + - { graph: device_processor, text: 'CPU Usage' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_sensor-count-zyxelwlc-sessionNum, text: 'Active Sessions' } + - { graph: device_wireless_clients, text: 'Number of Clients' } + - { graph: device_wireless_ap-count, text: 'Connected APs' } +mib_dir: zyxel +icon: zyxel +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.890.1.6 + - .1.3.6.1.4.1.890.1.15 + sysDescr_regex: + - '/^NXC/' diff --git a/priv/profiles/os_discovery/3com.yaml b/priv/profiles/os_discovery/3com.yaml new file mode 100644 index 00000000..89bb374e --- /dev/null +++ b/priv/profiles/os_discovery/3com.yaml @@ -0,0 +1,14 @@ +mib: A3COM-HUAWEI-LswDEVM-MIB +modules: + mempools: + data: + - + free: A3COM-HUAWEI-LswDEVM-MIB::hwMemFree + total: A3COM-HUAWEI-LswDEVM-MIB::hwMemSize + index: 0 + processors: + data: + - + oid: hwCpuCostRatePer1Min + num_oid: '.1.3.6.1.4.1.43.45.1.6.1.1.1.3.{{ $index }}' + index: 0 diff --git a/priv/profiles/os_discovery/aaron.yaml b/priv/profiles/os_discovery/aaron.yaml new file mode 100644 index 00000000..6d30a159 --- /dev/null +++ b/priv/profiles/os_discovery/aaron.yaml @@ -0,0 +1,106 @@ +modules: + os: + hardware: SNMPv2-MIB::sysName.0 + serial: INOVONICS-MODEL640-MIB::serial.0 + version: + - INOVONICS-MODEL640-MIB::version.0 + - INOVONICS-MODEL650-MIB::version.0 + sensors: + frequency: + data: + - oid: INOVONICS-MODEL640-MIB::frequency + num_oid: '.1.3.6.1.4.1.42111.640.3.1.{{ $index }}' + descr: 'Frequency' + index: 1 + multiplier: 10000 + - oid: INOVONICS-MODEL650-MIB::frequency + num_oid: '.1.3.6.1.4.1.42111.650.3.1.{{ $index }}' + descr: 'Frequency' + index: 1 + multiplier: 10000 + dbm: + data: + - oid: INOVONICS-MODEL640-MIB::rssi + num_oid: '.1.3.6.1.4.1.42111.640.3.3.{{ $index }}' + descr: RSSI + index: 1 + - oid: INOVONICS-MODEL650-MIB::rssi + num_oid: '.1.3.6.1.4.1.42111.650.3.3.{{ $index }}' + descr: RSSI + index: 2 + percent: + data: + - oid: INOVONICS-MODEL640-MIB::multipath + num_oid: '.1.3.6.1.4.1.42111.640.3.5.{{ $index }}' + descr: Multipath + index: 1 + - oid: INOVONICS-MODEL650-MIB::multipath + num_oid: '.1.3.6.1.4.1.42111.650.3.5.{{ $index }}' + descr: Multipath + index: 2 + state: + data: + - oid: INOVONICS-MODEL640-MIB::audioLossAlarm + num_oid: '.1.3.6.1.4.1.42111.640.6.1.1.{{ $index }}' + descr: Audio Loss Alarm + index: 1 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL650-MIB::audioLossAlarm + num_oid: '.1.3.6.1.4.1.42111.650.6.1.1.{{ $index }}' + descr: Audio Loss Alarm + index: 2 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL640-MIB::lowSignalAlarm + num_oid: '.1.3.6.1.4.1.42111.640.6.1.2.{{ $index }}' + descr: Low Signal Alarm + index: 3 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL650-MIB::lowSignalAlarm + num_oid: '.1.3.6.1.4.1.42111.650.6.1.2.{{ $index }}' + descr: Low Signal Alarm + index: 4 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL640-MIB::rdsErrorAlarm + num_oid: '.1.3.6.1.4.1.42111.640.6.1.3.{{ $index }}' + descr: RDS Error Alarm + index: 5 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL650-MIB::rdsErrorAlarm + num_oid: '.1.3.6.1.4.1.42111.650.6.1.3.{{ $index }}' + descr: RDS Error Alarm + index: 6 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL640-MIB::pilotLossAlarm + num_oid: '.1.3.6.1.4.1.42111.640.6.1.4.{{ $index }}' + descr: Pilot Loss Alarm + index: 7 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } + - oid: INOVONICS-MODEL650-MIB::pilotLossAlarm + num_oid: '.1.3.6.1.4.1.42111.650.6.1.4.{{ $index }}' + descr: Pilot Loss Alarm + index: 8 + group: Device Alarms + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 3, graph: 0, descr: on } diff --git a/priv/profiles/os_discovery/abbups.yaml b/priv/profiles/os_discovery/abbups.yaml new file mode 100644 index 00000000..f2843766 --- /dev/null +++ b/priv/profiles/os_discovery/abbups.yaml @@ -0,0 +1,5 @@ +mib: ABBMODULARUPS-MIB +modules: + os: + hardware: ABBMODULARUPS-MIB::upsIdentModel.0 + version: ABBMODULARUPS-MIB::upsIdentUPSSoftwareVersion.0 diff --git a/priv/profiles/os_discovery/acano.yaml b/priv/profiles/os_discovery/acano.yaml new file mode 100644 index 00000000..3ba899d3 --- /dev/null +++ b/priv/profiles/os_discovery/acano.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Acano Server (?[^,]+)/' diff --git a/priv/profiles/os_discovery/acos.yaml b/priv/profiles/os_discovery/acos.yaml new file mode 100644 index 00000000..00fa9c89 --- /dev/null +++ b/priv/profiles/os_discovery/acos.yaml @@ -0,0 +1,145 @@ +mib: A10-AX-MIB +modules: + mempools: + data: + - + total: A10-AX-MIB::axSysMemoryTotal + used: A10-AX-MIB::axSysMemoryUsage + precision: 1024 + descr: 'System Memory' + os: + sysDescr_regex: '/(?\S+( TPS)?), ACOS (?[^,]+)/' + serial: A10-AX-MIB::axSysSerialNumber.0 + version: A10-AX-MIB::axSysPrimaryVersionOnDisk.0 + processors: + data: + - + oid: axSysCpuUsageValue + num_oid: '.1.3.6.1.4.1.22610.2.4.1.3.2.1.3.{{ $index }}' + descr: 'Proc #{{ $index }}' + sensors: + state: + data: + - + oid: axHAGroupLocalStatus + num_oid: '.1.3.6.1.4.1.22610.2.4.3.17.2.2.1.2.{{ $index }}' + index: 'axHAGroupLocalStatus.{{ $index }}' + descr: HA Local Status + group: HA + states: + - { value: 0, descr: 'standby', graph: 0, generic: 0 } + - { value: 1, descr: 'active', graph: 0, generic: 0 } + - { value: 9, descr: 'notConfigured', graph: 0, generic: 2 } + - + oid: axSysPowerSupplyStatusTable + value: axPowerSupplyStatus + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.12.1.3.{{ $index }}' + descr: axPowerSupplyName + index: 'axPowerSupplyStatus.{{ $index }}' + group: Hardware + states: + - { value: 0, descr: off, graph: 1, generic: 2 } + - { value: 1, descr: on, graph: 1, generic: 0 } + - { value: 2, descr: absent, graph: 1, generic: 1 } + - { value: -1, descr: unknown, graph: 1, generic: 3 } + - + oid: axSysFanStatusTable + value: axFanStatus + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.9.1.3.{{ $index }}' + descr: axFanName + index: 'axFanStatus.{{ $index }}' + group: Hardware + states: + - { value: 0, descr: failed, graph: 1, generic: 2 } + - { value: 4, descr: okFixedHigh, graph: 1, generic: 0 } + - { value: 5, descr: okLowMed, graph: 1, generic: 0 } + - { value: 6, descr: okMedMed, graph: 1, generic: 0 } + - { value: 7, descr: okMedHigh, graph: 1, generic: 0 } + - { value: -2, descr: notReady, graph: 1, generic: 1 } + - { value: -1, descr: unknown, graph: 1, generic: 3 } + - + oid: axPowerSupplyVoltageTable + value: axPowerSupplyVoltageStatus + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.11.1.2.{{ $index }}' + descr: axPowerSupplyVoltageDescription + index: 'axPowerSupplyVoltageStatus.{{ $index }}' + group: Hardware + states: + - { value: 0, descr: invalid, graph: 1, generic: 2 } + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - + oid: axSysHwPhySystemTempStatus + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.5.{{ $index }}' + descr: System Temp + index: 'axSysHwPhySystemTempStatus.{{ $index }}' + group: Hardware + states: + - { value: 0, descr: failed, graph: 1, generic: 2 } + - { value: 1, descr: low-med, graph: 1, generic: 0 } + - { value: 2, descr: med-med, graph: 1, generic: 1 } + - { value: 3, descr: med-high, graph: 1, generic: 1 } + - { value: 4, descr: ok, graph: 1, generic: 0 } + voltage: + data: + - + oid: axPowerSupplyVoltageTotal + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.10.{{ $index }}' + index: 'axPowerSupplyVoltageTotal.{{ $index }}' + descr: Power Supply + fanspeed: + data: + - + oid: axSysFanStatusTable + value: axFanSpeed + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.9.1.4.{{ $index }}' + descr: axFanName + index: 'axFanName.{{ $index }}' + - + oid: axSysHwFan1Speed + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.2.{{ $index }}' + descr: Fan 1 Speed + index: 'axSysHwFan1Speed.{{ $index }}' + - + oid: axSysHwFan2Speed + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.3.{{ $index }}' + descr: Fan 2 Speed + index: 'axSysHwFan2Speed.{{ $index }}' + - + oid: axSysHwFan3Speed + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.4.{{ $index }}' + descr: Fan 3 Speed + index: 'axSysHwFan3Speed.{{ $index }}' + temperature: + data: + - + oid: axSysHwPhySystemTemp + num_oid: '.1.3.6.1.4.1.22610.2.4.1.5.1.{{ $index }}' + descr: System Temp + index: 'axSysHwPhySystemTemp.{{ $index }}' + count: + data: + - + oid: axGlobalTotalL4Session + num_oid: '.1.3.6.1.4.1.22610.2.4.3.1.2.10.{{ $index }}' + index: 'axGlobalTotalL4Session.{{ $index }}' + descr: 'Count of L4 Sessions' + group: Connections + - + oid: axSessionGlobalStatTCPEstablished + num_oid: '.1.3.6.1.4.1.22610.2.4.3.19.1.1.{{ $index }}' + index: 'axSessionGlobalStatTCPEstablished.{{ $index }}' + descr: 'Count of TCP Established' + group: Connections + - + oid: axSessionGlobalStatUDP + num_oid: '.1.3.6.1.4.1.22610.2.4.3.19.1.3.{{ $index }}' + index: 'axSessionGlobalStatUDP.{{ $index }}' + descr: 'Count of UDP connections' + group: Connections + - + oid: axSessionGlobalStatNonTcpUdpIPSession + num_oid: '.1.3.6.1.4.1.22610.2.4.3.19.1.4.{{ $index }}' + index: 'axSessionGlobalStatNonTcpUdpIPSession.{{ $index }}' + descr: 'Count of non TCP/UDP' + group: Connections diff --git a/priv/profiles/os_discovery/acs.yaml b/priv/profiles/os_discovery/acs.yaml new file mode 100644 index 00000000..260c87e4 --- /dev/null +++ b/priv/profiles/os_discovery/acs.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/^Cisco Secure Access Control System (?[^,]+)$/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/adtran-aos.yaml b/priv/profiles/os_discovery/adtran-aos.yaml new file mode 100644 index 00000000..117c2020 --- /dev/null +++ b/priv/profiles/os_discovery/adtran-aos.yaml @@ -0,0 +1,16 @@ +mib: ADTRAN-AOSCPU +modules: + mempools: + data: + - + total: ADTRAN-AOSCPU::adGenAOSMemPool + free: ADTRAN-AOSCPU::adGenAOSHeapFree + os: + hardware: ADTRAN-AOSUNIT::adAOSDeviceProductName.0 + serial: ADTRAN-AOSUNIT::adAOSDeviceSerialNumber.0 + version: ADTRAN-AOSUNIT::adAOSDeviceVersion.0 + processors: + data: + - + oid: adGenAOSCurrentCpuUtil + num_oid: '.1.3.6.1.4.1.664.5.53.1.4.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/adva-alm.yaml b/priv/profiles/os_discovery/adva-alm.yaml new file mode 100644 index 00000000..c6095a94 --- /dev/null +++ b/priv/profiles/os_discovery/adva-alm.yaml @@ -0,0 +1,21 @@ +modules: + os: + hardware: ADVA-FSP3000ALM-MIB::inventoryType.0 + serial: ADVA-FSP3000ALM-MIB::serialNumber.0 + version: ADVA-FSP3000ALM-MIB::firmwarePackageRev.0 + + sensors: + temperature: + data: + - + oid: ADVA-FSP3000ALM-MIB::tempCPU + descr: CPU Temp + num_oid: '.1.3.6.1.4.1.2544.1.14.2.1.11.{{ $index }}' + index: tempCPU + divisor: 10 + - + oid: ADVA-FSP3000ALM-MIB::tempBoard1 + descr: Board Temp + index: tempBoard1 + num_oid: '.1.3.6.1.4.1.2544.1.14.2.1.13.{{ $index }}' + divisor: 10 diff --git a/priv/profiles/os_discovery/adva-aos.yaml b/priv/profiles/os_discovery/adva-aos.yaml new file mode 100644 index 00000000..2dd31af8 --- /dev/null +++ b/priv/profiles/os_discovery/adva-aos.yaml @@ -0,0 +1,462 @@ +mib: AOS-CORE-FACILITY-MIB:AOS-CORE-CONDITION-MIB:AOS-DOMAIN-OTN-PM-MIB + +modules: + os: + hardware: + - .1.3.6.1.2.1.47.1.1.1.1.7.1 + - .1.3.6.1.2.1.47.1.1.1.1.8.1 + hardware_template: '{{ .1.3.6.1.2.1.47.1.1.1.1.7.1 }} rev{{ .1.3.6.1.2.1.47.1.1.1.1.8.1 }}' + serial: .1.3.6.1.2.1.47.1.1.1.1.11.1 + version: .1.3.6.1.2.1.16.19.2.0 + sensors: + additional_oids: + data: + - + oid: + - ifDescr + ber: + data: + - + oid: aosCoreFacCurrFecBitErrorRate + num_oid: '.1.3.6.1.4.1.2544.1.20.1.3.2.4.1.{{ $index }}' + descr: '{{ $ifDescr }} FEC Bit Error Rate' + index: 'FEC-BER-{{ $index }}' + group: FEC + skip_values: 0 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + chromatic_dispersion: + data: + - + oid: aosDomainOtnPmQualityCdc + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.5.1.1.{{ $index }}' + descr: '{{ $ifDescr }}' + index: 'cdc-{{ $index }}' + group: Chromatic Dispersion + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + dbm: + data: + - + oid: aosCoreFacCurrOpticalPowerRx + num_oid: '.1.3.6.1.4.1.2544.1.20.1.3.2.1.1.1.{{ $index }}' + descr: '{{ $ifDescr }} Rx' + index: 'tpnd-rx-{{ $index }}' + group: Laser Rx + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: aosCoreFacCurrOpticalPowerTx + num_oid: '.1.3.6.1.4.1.2544.1.20.1.3.2.1.1.2.{{ $index }}' + descr: '{{ $ifDescr }} Tx' + index: 'tpnd-tx-{{ $index }}' + group: Laser Tx + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: aosDomainOtnPmOscOptPowerRx + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.1.1.1.{{ $index }}' + descr: '{{ $ifDescr }} Amp Rx' + index: 'otn-tx-{{ $index }}' + group: OTN Laser Rx + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: aosDomainOtnPmSpanLossRx + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.3.1.1.{{ $index }}' + descr: '{{ $ifDescr }} Span Loss Rx' + index: 'otn-spanloss-rx-{{ $index }}' + group: OTN Span Loss + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: aosDomainOtnPmSpanLossTx + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.3.1.2.{{ $index }}' + descr: '{{ $ifDescr }} Span Loss Tx' + index: 'otn-spanloss-tx-{{ $index }}' + group: OTN Span Loss + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + temperature: + data: + - + oid: aosDomainOtnPmOscLaserTemp + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.2.1.2.{{ $index }}' + descr: '{{ $ifDescr }} Laser Temperature' + index: 'temp-laser-{{ $index }}' + group: OTN Laser Temperature + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + quality_factor: + data: + - + oid: aosDomainOtnPmAmpTotalGain + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.4.1.2.{{ $index }}' + descr: '{{ $ifDescr }} Gain (dB)' + index: 'gainamp-{{ $index }}' + group: OTN Gain + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + snr: + data: + - + oid: aosCoreFacCurrSnrValue + num_oid: '.1.3.6.1.4.1.2544.1.20.1.3.2.7.{{ $index }}' + descr: '{{ $ifDescr }} SNR' + index: 'SNR-{{ $index }}' + group: SNR + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: aosDomainOtnPmQualitySnr + num_oid: '.1.3.6.1.4.1.2544.1.20.1.5.2.5.1.3.{{ $index }}' + descr: '{{ $ifDescr }} SNR' + index: 'SNR-{{ $index }}' + group: OTN SNR + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + state: + data: + - + oid: aosCoreConditionTable + value: aosCoreConditionType + num_oid: '.1.3.6.1.4.1.2544.1.20.1.2.1.1.1.2.{{ $index }}' + descr: aosCoreConditionEntityTranslation + index: 'aosCoreConditionIndex.{{ $index }}' + group: Conditions + states: + - { value: 0, graph: 0, generic: 3, descr: unknown } + - { value: 1, graph: 0, generic: 1, descr: volt-anr } + - { value: 2, graph: 0, generic: 1, descr: remove } + - { value: 3, graph: 0, generic: 2, descr: fault } + - { value: 4, graph: 0, generic: 3, descr: mea } + - { value: 5, graph: 0, generic: 2, descr: incompatible-hardware } + - { value: 6, graph: 0, generic: 1, descr: mea-approve } + - { value: 7, graph: 0, generic: 1, descr: mea-accept } + - { value: 8, graph: 0, generic: 1, descr: mea-capability } + - { value: 9, graph: 0, generic: 1, descr: fw-package-mismatch } + - { value: 10, graph: 0, generic: 2, descr: fw-reboot } + - { value: 11, graph: 0, generic: 2, descr: backplane-comm-fail } + - { value: 12, graph: 0, generic: 1, descr: mea-phys } + - { value: 13, graph: 0, generic: 1, descr: mea-differ } + - { value: 14, graph: 0, generic: 2, descr: psu-redundancy-mismatch } + - { value: 15, graph: 0, generic: 2, descr: insufficient-power } + - { value: 16, graph: 0, generic: 2, descr: backplane-eeprom-comm-fail } + - { value: 17, graph: 0, generic: 2, descr: power-feed-under-voltage } + - { value: 18, graph: 0, generic: 2, descr: power-feed-a-fail } + - { value: 19, graph: 0, generic: 2, descr: power-feed-b-fail } + - { value: 20, graph: 0, generic: 2, descr: output-power-fail } + - { value: 21, graph: 0, generic: 1, descr: tca-out-current-high } + - { value: 22, graph: 0, generic: 1, descr: tca-power-consumption-high } + - { value: 23, graph: 0, generic: 1, descr: tca-temp-high } + - { value: 24, graph: 0, generic: 1, descr: tca-temp-low } + - { value: 25, graph: 0, generic: 2, descr: loss-of-signal } + - { value: 26, graph: 0, generic: 2, descr: laser-fail } + - { value: 27, graph: 0, generic: 3, descr: force-laser-on } + - { value: 28, graph: 0, generic: 3, descr: force-transmit-shutdown } + - { value: 29, graph: 0, generic: 2, descr: loss-of-clock } + - { value: 30, graph: 0, generic: 3, descr: loss-of-overhead } + - { value: 31, graph: 0, generic: 3, descr: loss-of-prbs-pattern } + - { value: 32, graph: 0, generic: 3, descr: laser-on-delay } + - { value: 33, graph: 0, generic: 1, descr: auto-power-reduction } + - { value: 35, graph: 0, generic: 3, descr: supporting-equipment-failure } + - { value: 36, graph: 0, generic: 1, descr: payload-missing-indication } + - { value: 37, graph: 0, generic: 2, descr: loss-of-signal-payload } + - { value: 38, graph: 0, generic: 1, descr: tca-opt-rcv-pwr-hi } + - { value: 39, graph: 0, generic: 1, descr: tca-opt-trmt-pwr-hi } + - { value: 40, graph: 0, generic: 1, descr: tca-opt-laser-bias-curr-high } + - { value: 41, graph: 0, generic: 2, descr: laser-temperature-hi } + - { value: 42, graph: 0, generic: 1, descr: tca-opt-rcv-pwr-lo } + - { value: 43, graph: 0, generic: 1, descr: tca-opt-trmt-pwr-lo } + - { value: 44, graph: 0, generic: 1, descr: laser-temperature-lo } + - { value: 45, graph: 0, generic: 2, descr: alarm-indicator-sig-defect } + - { value: 46, graph: 0, generic: 3, descr: backward-defect-indicator } + - { value: 47, graph: 0, generic: 3, descr: backward-defect-indicator-payload } + - { value: 48, graph: 0, generic: 3, descr: backward-defect-indicator-overhead } + - { value: 49, graph: 0, generic: 3, descr: client-signal-fail } + - { value: 50, graph: 0, generic: 1, descr: degraded-signal } + - { value: 51, graph: 0, generic: 3, descr: forward-defect-indicator-payload } + - { value: 52, graph: 0, generic: 3, descr: forward-defect-indicator-overhead } + - { value: 53, graph: 0, generic: 1, descr: incoming-align-errors } + - { value: 54, graph: 0, generic: 1, descr: backward-incoming-align-error } + - { value: 55, graph: 0, generic: 2, descr: loss-of-frame } + - { value: 56, graph: 0, generic: 2, descr: loss-of-multi-frame } + - { value: 57, graph: 0, generic: 2, descr: loss-of-frame-and-multi-frame } + - { value: 58, graph: 0, generic: 3, descr: locked-condition } + - { value: 59, graph: 0, generic: 1, descr: loss-of-tandem-conn } + - { value: 60, graph: 0, generic: 2, descr: multiplex-structure-identifier-mismatch } + - { value: 61, graph: 0, generic: 1, descr: open-conn-indication } + - { value: 62, graph: 0, generic: 2, descr: payload-mismatch } + - { value: 63, graph: 0, generic: 3, descr: server-signal-fail } + - { value: 64, graph: 0, generic: 3, descr: server-signal-fail-payload } + - { value: 65, graph: 0, generic: 3, descr: server-signal-fail-overhead } + - { value: 66, graph: 0, generic: 3, descr: trace-signal-fail } + - { value: 67, graph: 0, generic: 3, descr: trace-signal-fail-payload } + - { value: 68, graph: 0, generic: 3, descr: trace-signal-fail-overhead } + - { value: 69, graph: 0, generic: 3, descr: trail-trace-identifier-mismatch } + - { value: 70, graph: 0, generic: 2, descr: loss-of-signal-overhead } + - { value: 71, graph: 0, generic: 1, descr: pump-end-of-life } + - { value: 72, graph: 0, generic: 3, descr: midstage-loss-high } + - { value: 73, graph: 0, generic: 1, descr: amp-ctrl-abnormal } + - { value: 74, graph: 0, generic: 3, descr: auto-power-shutdown } + - { value: 75, graph: 0, generic: 2, descr: voa-control-fail } + - { value: 76, graph: 0, generic: 2, descr: gain-control-fail } + - { value: 77, graph: 0, generic: 2, descr: tilt-control-fail } + - { value: 78, graph: 0, generic: 1, descr: opt-limit-ht } + - { value: 79, graph: 0, generic: 1, descr: opt-limit-ht-ex } + - { value: 80, graph: 0, generic: 2, descr: osc-laser-fail } + - { value: 81, graph: 0, generic: 3, descr: osc-power } + - { value: 82, graph: 0, generic: 2, descr: loss-of-signal-midstage } + - { value: 83, graph: 0, generic: 2, descr: loss-of-opu-multiframe-id } + - { value: 84, graph: 0, generic: 1, descr: tca-unavailable-seconds-hi } + - { value: 85, graph: 0, generic: 1, descr: tca-errored-second-hi } + - { value: 86, graph: 0, generic: 2, descr: tca-severly-errored-second-hi } + - { value: 87, graph: 0, generic: 1, descr: tca-background-block-errors-hi } + - { value: 88, graph: 0, generic: 1, descr: tca-osc-opt-laser-bias-cur-hi } + - { value: 89, graph: 0, generic: 1, descr: tca-osc-laser-temperature-hi } + - { value: 90, graph: 0, generic: 1, descr: tca-osc-opt-rcv-pwr-hi } + - { value: 91, graph: 0, generic: 1, descr: tca-osc-opt-tmt-pwr-hi } + - { value: 92, graph: 0, generic: 1, descr: tca-ses-payload-hi } + - { value: 93, graph: 0, generic: 1, descr: tca-ses-overhead-hi } + - { value: 94, graph: 0, generic: 1, descr: tca-uas-payload-hi } + - { value: 95, graph: 0, generic: 1, descr: tca-uas-overhead-hi } + - { value: 96, graph: 0, generic: 1, descr: tca-osc-laser-temperature-lo } + - { value: 97, graph: 0, generic: 1, descr: tca-osc-opt-rcv-pwr-lo } + - { value: 98, graph: 0, generic: 1, descr: tca-osc-opt-tmt-pwr-lo } + - { value: 99, graph: 0, generic: 2, descr: loss-of-modem-sync } + - { value: 100, graph: 0, generic: 2, descr: loss-of-coupling-alignment } + - { value: 101, graph: 0, generic: 1, descr: auto-chromatic-dispersion-compensation-failure } + - { value: 102, graph: 0, generic: 1, descr: tca-differential-group-delay-hi } + - { value: 103, graph: 0, generic: 1, descr: tca-chromatic-dispersion-compensation-hi } + - { value: 104, graph: 0, generic: 1, descr: tca-carrier-frequency-offset-hi } + - { value: 105, graph: 0, generic: 1, descr: tca-signal-to-noise-ratio-lo } + - { value: 106, graph: 0, generic: 1, descr: tca-chromatic-dispersion-compensation-lo } + - { value: 107, graph: 0, generic: 1, descr: tca-carrier-frequency-offset-lo } + - { value: 108, graph: 0, generic: 1, descr: link-failed } + - { value: 109, graph: 0, generic: 1, descr: link-cable-fault } + - { value: 110, graph: 0, generic: 1, descr: link-cable-remove } + - { value: 111, graph: 0, generic: 1, descr: link-autoneg-fail } + - { value: 112, graph: 0, generic: 1, descr: link-no-root-cause } + - { value: 113, graph: 0, generic: 3, descr: fend-dup-mode-unknown } + - { value: 114, graph: 0, generic: 2, descr: jab-th-id-exceed } + - { value: 115, graph: 0, generic: 2, descr: loss-of-sync } + - { value: 116, graph: 0, generic: 2, descr: rx-local-fault } + - { value: 117, graph: 0, generic: 1, descr: tx-local-fault } + - { value: 118, graph: 0, generic: 2, descr: loss-of-block-lock } + - { value: 119, graph: 0, generic: 1, descr: hi-ber } + - { value: 120, graph: 0, generic: 3, descr: auto-cdc-in-progress } + - { value: 121, graph: 0, generic: 2, descr: loss-of-block-lock-lane } + - { value: 122, graph: 0, generic: 2, descr: loss-of-lane-align-mark-lane } + - { value: 123, graph: 0, generic: 3, descr: link-down-deact } + - { value: 124, graph: 0, generic: 3, descr: neg-bw-exceed } + - { value: 125, graph: 0, generic: 1, descr: rx-server-signal-fail } + - { value: 126, graph: 0, generic: 3, descr: tx-server-signal-fail } + - { value: 127, graph: 0, generic: 2, descr: output-overcurrent } + - { value: 128, graph: 0, generic: 1, descr: tca-output-power-hi } + - { value: 129, graph: 0, generic: 2, descr: loss-of-alignment } + - { value: 130, graph: 0, generic: 1, descr: ntp-server-unavailable } + - { value: 133, graph: 0, generic: 1, descr: temperature-high } + - { value: 134, graph: 0, generic: 1, descr: temperature-low } + - { value: 135, graph: 0, generic: 1, descr: manifest-mismatch } + - { value: 136, graph: 0, generic: 1, descr: manifest-incomplete } + - { value: 137, graph: 0, generic: 2, descr: laser-bias-cur-abnormal } + - { value: 138, graph: 0, generic: 3, descr: loss-of-traffic-after-firmware-activation } + - { value: 139, graph: 0, generic: 1, descr: software-version-mismatch } + - { value: 140, graph: 0, generic: 2, descr: fan-fault } + - { value: 141, graph: 0, generic: 2, descr: port-config-mismatch } + - { value: 142, graph: 0, generic: 1, descr: license-server-disconnect } + - { value: 143, graph: 0, generic: 2, descr: hw-resource-unavailable-recoverable } + - { value: 144, graph: 0, generic: 1, descr: invalid-license } + - { value: 145, graph: 0, generic: 3, descr: ssd-wearout-level-warning } + - { value: 146, graph: 0, generic: 1, descr: license-expire } + - { value: 147, graph: 0, generic: 2, descr: database-mismatch } + - { value: 148, graph: 0, generic: 1, descr: license-missing } + - { value: 149, graph: 0, generic: 1, descr: license-overdraft } + - { value: 150, graph: 0, generic: 1, descr: crypto-password-missing } + - { value: 151, graph: 0, generic: 2, descr: vm-resume-failed } + - { value: 152, graph: 0, generic: 1, descr: key-exchange-auth-missing } + - { value: 153, graph: 0, generic: 1, descr: key-lifetime-expired } + - { value: 154, graph: 0, generic: 1, descr: tamper-detected } + - { value: 155, graph: 0, generic: 2, descr: self-test-failed } + - { value: 156, graph: 0, generic: 3, descr: crypto-temporary-lockout } + - { value: 157, graph: 0, generic: 1, descr: battery-low } + - { value: 158, graph: 0, generic: 3, descr: self-test-in-progress } + - { value: 159, graph: 0, generic: 2, descr: vm-crashed } + - { value: 160, graph: 0, generic: 1, descr: key-exchange-degrade } + - { value: 161, graph: 0, generic: 2, descr: internal-encryption-failed } + - { value: 162, graph: 0, generic: 1, descr: key-exchange-in-progress } + - { value: 163, graph: 0, generic: 2, descr: key-exchange-channel-fail } + - { value: 164, graph: 0, generic: 3, descr: terminal-loopback-inprogress } + - { value: 165, graph: 0, generic: 3, descr: local-oscillator-bias-cur-abnormal } + - { value: 166, graph: 0, generic: 1, descr: license-file-missing } + - { value: 167, graph: 0, generic: 1, descr: license-server-config-missing } + - { value: 168, graph: 0, generic: 1, descr: hardware-busy } + - { value: 169, graph: 0, generic: 2, descr: fan-filter-replace } + - { value: 170, graph: 0, generic: 3, descr: reboot-inprogress } + - { value: 171, graph: 0, generic: 3, descr: prbs-detection-inprogress } + - { value: 172, graph: 0, generic: 1, descr: tca-out-of-frame-second-hi } + - { value: 173, graph: 0, generic: 3, descr: ms-line-ais } + - { value: 174, graph: 0, generic: 1, descr: local-oscillator-temperature-lo } + - { value: 175, graph: 0, generic: 2, descr: local-oscillator-temperature-hi } + - { value: 176, graph: 0, generic: 3, descr: facility-loopback-in-progress } + - { value: 177, graph: 0, generic: 3, descr: prbs-generation-inprogress } + - { value: 178, graph: 0, generic: 2, descr: optical-power-transmit-signal-fail } + - { value: 179, graph: 0, generic: 3, descr: loopback-active } + - { value: 180, graph: 0, generic: 3, descr: mea-phy-changed } + - { value: 181, graph: 0, generic: 1, descr: backup-license-server-disconnect } + - { value: 182, graph: 0, generic: 1, descr: callhome-server-unreachable } + - { value: 183, graph: 0, generic: 3, descr: timinglicensemissing } + - { value: 184, graph: 0, generic: 3, descr: eomplslicensemissing } + - { value: 185, graph: 0, generic: 3, descr: fullcapacitylicensemissing } + - { value: 186, graph: 0, generic: 3, descr: elephantflowlicensemissing } + - { value: 187, graph: 0, generic: 3, descr: snmpdyinggasp } + - { value: 188, graph: 0, generic: 3, descr: snmpdyinggasphostresourcesbusy } + - { value: 189, graph: 0, generic: 3, descr: snmpdyinggasphostunreachable } + - { value: 190, graph: 0, generic: 3, descr: controlplanelicensemissing } + - { value: 191, graph: 0, generic: 3, descr: l3licensemissing } + - { value: 192, graph: 0, generic: 1, descr: coldrebootrequired } + - { value: 197, graph: 0, generic: 3, descr: tca-drop-event } + - { value: 227, graph: 0, generic: 3, descr: efm-remote-dying-gasp } + - { value: 228, graph: 0, generic: 3, descr: efm-fail } + - { value: 229, graph: 0, generic: 3, descr: efm-remote-critical-event } + - { value: 230, graph: 0, generic: 1, descr: efm-remote-link-down } + - { value: 231, graph: 0, generic: 1, descr: efm-remote-loopback-fail } + - { value: 232, graph: 0, generic: 1, descr: efm-remote-loopback-request } + - { value: 233, graph: 0, generic: 1, descr: tca-q-factor-lo } + - { value: 234, graph: 0, generic: 1, descr: tca-polarization-dependent-l-hi } + - { value: 235, graph: 0, generic: 1, descr: tca-state-of-polarization-change-rate-hi } + - { value: 236, graph: 0, generic: 1, descr: tca-optical-snr-lo } + - { value: 248, graph: 0, generic: 2, descr: optical-input-power-too-hi } + - { value: 250, graph: 0, generic: 1, descr: optical-amplifier-pump-bias-hi } + - { value: 252, graph: 0, generic: 2, descr: oa-pump-bias-cur-abn-warning } + - { value: 255, graph: 0, generic: 1, descr: ne-els-time-out-of-sync } + - { value: 300, graph: 0, generic: 3, descr: srv-discarded } + - { value: 301, graph: 0, generic: 1, descr: bw-exceed-port-speed } + - { value: 302, graph: 0, generic: 1, descr: mea-portal-address } + - { value: 303, graph: 0, generic: 1, descr: mea-portal-pri } + - { value: 304, graph: 0, generic: 1, descr: mea-three-portal } + - { value: 305, graph: 0, generic: 1, descr: mea-portal-sys-number } + - { value: 306, graph: 0, generic: 1, descr: mea-actor-adminKey } + - { value: 307, graph: 0, generic: 1, descr: mea-port-digest } + - { value: 308, graph: 0, generic: 1, descr: mea-gateway-digest } + - { value: 400, graph: 0, generic: 3, descr: ztp-in-progress } + - { value: 401, graph: 0, generic: 2, descr: ztp-failed } + - { value: 410, graph: 0, generic: 1, descr: crypto-config-mismatch } + - { value: 411, graph: 0, generic: 1, descr: key-exchange-config-mismatch } + - { value: 412, graph: 0, generic: 2, descr: fingerprint-auth-missing } + - { value: 413, graph: 0, generic: 2, descr: crypto-config-error } + - { value: 414, graph: 0, generic: 1, descr: key-exchange-auth-mismatch } + - { value: 419, graph: 0, generic: 1, descr: key-exchange-mode-mismatch } + - { value: 522, graph: 0, generic: 1, descr: rx-not-operational-sequence } + - { value: 550, graph: 0, generic: 1, descr: cross-connect-CCM } + - { value: 551, graph: 0, generic: 2, descr: error-CCM } + - { value: 552, graph: 0, generic: 3, descr: some-remote-MEPCCM } + - { value: 553, graph: 0, generic: 3, descr: some-MAC-status } + - { value: 554, graph: 0, generic: 3, descr: some-RDI } + - { value: 555, graph: 0, generic: 1, descr: eth-AIS } + - { value: 570, graph: 0, generic: 3, descr: remote-init-SAT } + - { value: 580, graph: 0, generic: 3, descr: erp-fo-PPM } + - { value: 581, graph: 0, generic: 3, descr: erp-fo-PTO } + - { value: 582, graph: 0, generic: 3, descr: erp-block-port0-RPL } + - { value: 583, graph: 0, generic: 3, descr: erp-block-port0-SF } + - { value: 584, graph: 0, generic: 3, descr: erp-block-port0-MS } + - { value: 585, graph: 0, generic: 3, descr: erp-block-port0-FS } + - { value: 586, graph: 0, generic: 3, descr: erp-block-port0-WTR } + - { value: 587, graph: 0, generic: 3, descr: erp-block-port1-RPL } + - { value: 588, graph: 0, generic: 3, descr: erp-block-port1-SF } + - { value: 589, graph: 0, generic: 3, descr: erp-block-port1-MS } + - { value: 590, graph: 0, generic: 3, descr: erp-block-port1-FS } + - { value: 591, graph: 0, generic: 3, descr: erp-block-port1-WTR } + - { value: 600, graph: 0, generic: 3, descr: avg-holdover-not-ready } + - { value: 601, graph: 0, generic: 3, descr: freerun } + - { value: 602, graph: 0, generic: 3, descr: fast-accquisition } + - { value: 603, graph: 0, generic: 3, descr: holdover } + - { value: 604, graph: 0, generic: 2, descr: loss-of-lock } + - { value: 605, graph: 0, generic: 2, descr: all-sync-ref-fail } + - { value: 606, graph: 0, generic: 3, descr: sync-ref-lock-out } + - { value: 607, graph: 0, generic: 3, descr: sync-ref-fs } + - { value: 608, graph: 0, generic: 3, descr: sync-ref-ms } + - { value: 609, graph: 0, generic: 3, descr: sync-ref-wtr } + - { value: 610, graph: 0, generic: 3, descr: sync-ref-sw } + - { value: 611, graph: 0, generic: 3, descr: sync-ref-fail } + - { value: 612, graph: 0, generic: 3, descr: sync-ref-freq-offset } + - { value: 616, graph: 0, generic: 3, descr: ais } + - { value: 617, graph: 0, generic: 2, descr: bits-loss-of-frame } + - { value: 620, graph: 0, generic: 2, descr: esmc-fail } + - { value: 621, graph: 0, generic: 2, descr: linkdown-master-slave-cfg } + - { value: 622, graph: 0, generic: 3, descr: auto-nego-master-slave-cfg } + - { value: 623, graph: 0, generic: 2, descr: squelched } + - { value: 650, graph: 0, generic: 3, descr: ptp-freerun } + - { value: 651, graph: 0, generic: 3, descr: ptp-time-free-run } + - { value: 652, graph: 0, generic: 3, descr: ptp-freq-holdover } + - { value: 653, graph: 0, generic: 3, descr: ptp-time-holdover } + - { value: 654, graph: 0, generic: 3, descr: ptp-freq-not-traceable } + - { value: 655, graph: 0, generic: 3, descr: ptp-time-not-traceable } + - { value: 656, graph: 0, generic: 3, descr: ptp-announce-timeout } + - { value: 657, graph: 0, generic: 3, descr: ptp-sync-timeout } + - { value: 658, graph: 0, generic: 3, descr: ptp-delayresp-timeout } + - { value: 659, graph: 0, generic: 3, descr: ptp-multiple-peers } + - { value: 660, graph: 0, generic: 3, descr: ptp-wrong-domain } + - { value: 661, graph: 0, generic: 3, descr: ptp-no-traffic-f-p } + - { value: 670, graph: 0, generic: 2, descr: bgp-nbr-link-down } + - { value: 680, graph: 0, generic: 3, descr: pa-auth-fail } + - { value: 880, graph: 0, generic: 2, descr: hardware-abnormal } + - { value: 881, graph: 0, generic: 1, descr: hardware-initializing } + - { value: 882, graph: 0, generic: 2, descr: ocm-fault } + - { value: 883, graph: 0, generic: 2, descr: opr-damage } + - { value: 889, graph: 0, generic: 1, descr: power-adjust-process } + - { value: 891, graph: 0, generic: 2, descr: timing-control-comm-fail } + - { value: 901, graph: 0, generic: 2, descr: link-down } + - { value: 1000, graph: 0, generic: 2, descr: eompls-dst-unresovled } + - { value: 1020, graph: 0, generic: 2, descr: traffic-arp-table-full } + - { value: 1021, graph: 0, generic: 1, descr: no-route-resources } + - { value: 1022, graph: 0, generic: 1, descr: ip-address-conflict } + - { value: 1050, graph: 0, generic: 2, descr: elmi-not-operational } + - { value: 1051, graph: 0, generic: 2, descr: elmi-sequence-number-mismatch } + - { value: 1201, graph: 0, generic: 3, descr: failure-of-protocol-provision-mismatch } + - { value: 1500, graph: 0, generic: 1, descr: ntp-loss-of-server } + - { value: 1501, graph: 0, generic: 1, descr: remote-server-unreachable } + - { value: 1502, graph: 0, generic: 1, descr: syslog-server-unreachable } + - { value: 1503, graph: 0, generic: 1, descr: target-address-unreachable } + - { value: 1504, graph: 0, generic: 1, descr: door-open } + - { value: 5103, graph: 0, generic: 2, descr: db-mirror-incompatible-sw } + - { value: 5107, graph: 0, generic: 2, descr: failure-of-protocol-no-response } + - { value: 5111, graph: 0, generic: 1, descr: failure-of-protocol-dirn-mismatch } + - { value: 5112, graph: 0, generic: 1, descr: failure-of-protocol-bridge-type-mismatch } + - { value: 5113, graph: 0, generic: 1, descr: failure-off-protocol-switch-revertive-mismatch } + - { value: 5114, graph: 0, generic: 1, descr: raman-characterization-fault } + - { value: 5115, graph: 0, generic: 3, descr: raman-characterization-support } + - { value: 5121, graph: 0, generic: 3, descr: protection-command-applied } + - { value: 5123, graph: 0, generic: 2, descr: component-temperature-high } + - { value: 5141, graph: 0, generic: 2, descr: wss-fault } + - { value: 5167, graph: 0, generic: 2, descr: group-identification-mismatch } + - { value: 5169, graph: 0, generic: 1, descr: sf-working-pds } + - { value: 5170, graph: 0, generic: 1, descr: signal-fail-protection-pds } + - { value: 5171, graph: 0, generic: 1, descr: signal-decrade-working-pds } + - { value: 5173, graph: 0, generic: 1, descr: oppm-aid-mismatch } + - { value: 5185, graph: 0, generic: 1, descr: spaneq-agates-incomplete } + - { value: 5187, graph: 0, generic: 2, descr: component-temperature-high-shutdown } + - { value: 5191, graph: 0, generic: 2, descr: peer-entity-comm-fail } + - { value: 5218, graph: 0, generic: 1, descr: tca-span-loss-rcv-hi } + - { value: 5219, graph: 0, generic: 1, descr: tca-span-loss-rcv-lo } + - { value: 5246, graph: 0, generic: 1, descr: port-fenced } + - { value: 5247, graph: 0, generic: 3, descr: tx-not-operational-sequence } + - { value: 5249, graph: 0, generic: 1, descr: dual-trigger-mismatch } + - { value: 5252, graph: 0, generic: 2, descr: epte-to-peer-comm-fail } + - { value: 5257, graph: 0, generic: 3, descr: all-lanes-summary-outage } + - { value: 5263, graph: 0, generic: 3, descr: rx-link-fault } + - { value: 5264, graph: 0, generic: 3, descr: tx-link-fault } + - { value: 5265, graph: 0, generic: 3, descr: transmit-oci } + - { value: 5272, graph: 0, generic: 1, descr: tca-fiber-loss-tmt-high } + - { value: 5279, graph: 0, generic: 1, descr: certificate-expired } + - { value: 5293, graph: 0, generic: 2, descr: port-1m-hazard-shutdown } + - { value: 5318, graph: 0, generic: 2, descr: gcc-unavailable-recoverable } + - { value: 5319, graph: 0, generic: 1, descr: pump-force-remain-on } + - { value: 18681, graph: 0, generic: 3, descr: server-signal-adjustment } diff --git a/priv/profiles/os_discovery/adva-osa.yaml b/priv/profiles/os_discovery/adva-osa.yaml new file mode 100644 index 00000000..33337813 --- /dev/null +++ b/priv/profiles/os_discovery/adva-osa.yaml @@ -0,0 +1,260 @@ +mib: CM-ENTITY-MIB:CM-COMMON-MIB:CM-SYSTEM-MIB:F3-SYNC-MIB:F3-NTP-MIB:F3-PTP-MIB:CM-FACILITY-MIB +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalName.1 + - ENTITY-MIB::entPhysicalHardwareRev.1 + hardware_template: '{{ ENTITY-MIB::entPhysicalName.1 }} {{ ENTITY-MIB::entPhysicalHardwareRev.1 }}' + serial: ENTITY-MIB::entPhysicalSerialNum.1 + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + sensors: + additional_oids: + data: + - + oid: + - f3PtpSOOCEntry + temperature: + data: + - + oid: ethernetNTEOSA5412CardTemperature + value: ethernetNTEOSA5412CardTemperature + num_oid: '.1.3.6.1.4.1.2544.1.12.3.1.102.1.6.{{ $index }}' + descr: 'Ethernet NTE card' + index: 'ethernetNTEOSA5412CardTemperature.{{ $index }}' + voltage: + data: + - + oid: ethernetNTEOSA5412CardVoltage + value: ethernetNTEOSA5412CardVoltage + num_oid: '.1.3.6.1.4.1.2544.1.12.3.1.102.1.5.{{ $index }}' + descr: 'Ethernet NTE card' + divisor: 1000 + low_limit: 10 + index: 'ethernetNTEOSA5412CardVoltage.{{ $index }}' + count: + data: + - + oid: f3GPSReceiverPortNumTrackingSatellites + value: f3GPSReceiverPortNumTrackingSatellites + num_oid: '.1.3.6.1.4.1.2544.1.12.4.1.57.1.11.{{ $index }}' + descr: 'Current number of good/usable satellites' + group: GNSS + index: 'f3GPSReceiverPortNumTrackingSatellites.{{ $index }}' + - + oid: f3NtpClockStratumLevel + value: f3NtpClockStratumLevel + num_oid: '.1.3.6.1.4.1.2544.1.12.47.1.1.1.6.{{ $index }}' + descr: 'Current stratum' + group: NTP + index: 'f3NtpClockStratumLevel.{{ $index }}' + - + oid: f3PtpSOOCEntry + value: f3PtpSOOCCurrentOffsetFromMaster + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.4.1.27.{{ $index }}' + group: PTP + descr: 'Offset from Master (ns): {{ $f3PtpSOOCMasterIpV4Address }}' + index: 'f3PtpSOOCCurrentOffsetFromMaster.{{ $index }}' + skip_values: + - + oid: f3PtpSOOCAdminState + op: '!=' + value: 1 + - + oid: f3PtpSOOCEntry + value: f3PtpSOOCRecentMeanPathDelay + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.4.1.32.{{ $index }}' + group: PTP + descr: 'Mean Path Delay Master (μs): {{ $f3PtpSOOCMasterIpV4Address }}' + index: 'f3PtpSOOCRecentMeanPathDelay.{{ $index }}' + divisor: 1000 + skip_values: + - + oid: f3PtpSOOCAdminState + op: '!=' + value: 1 + state: + data: + - + oid: psuOperationalState + value: psuOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.3.1.4.1.4.{{ $index }}' + descr: 'PSU' + index: 'psu.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: ethernetNTEOSA5412CardOperationalState + value: ethernetNTEOSA5412CardOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.3.1.102.1.3.{{ $index }}' + descr: 'Ethernet NTE card' + index: 'ethernetNTEOSA5412CardOperationalState.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: telnetEnabled + value: telnetEnabled + num_oid: '.1.3.6.1.4.1.2544.1.12.2.1.3.1.{{ $index }}' + descr: 'Telnet' + group: SERVICES + index: 'telnetEnabled.{{ $index }}' + states: + - { value: 1, descr: enable, graph: 1, generic: 0 } + - { value: 2, descr: disable, graph: 1, generic: 3 } + - + oid: sshEnabled + value: sshEnabled + num_oid: '.1.3.6.1.4.1.2544.1.12.2.1.3.2.{{ $index }}' + descr: 'SSH' + group: SERVICES + index: 'sshEnabled.{{ $index }}' + states: + - { value: 1, descr: enable, graph: 1, generic: 0 } + - { value: 2, descr: disable, graph: 1, generic: 3 } + - + oid: ftpEnabled + value: ftpEnabled + num_oid: '.1.3.6.1.4.1.2544.1.12.2.1.3.3.{{ $index }}' + descr: 'FTP' + group: SERVICES + index: 'ftpEnabled.{{ $index }}' + states: + - { value: 1, descr: enable, graph: 1, generic: 0 } + - { value: 2, descr: disable, graph: 1, generic: 3 } + - + oid: httpEnabled + value: httpEnabled + num_oid: '.1.3.6.1.4.1.2544.1.12.2.1.3.6.{{ $index }}' + descr: 'HTTP' + group: SERVICES + index: 'httpEnabled.{{ $index }}' + states: + - { value: 1, descr: enable, graph: 1, generic: 0 } + - { value: 2, descr: disable, graph: 1, generic: 3 } + - + oid: httpsEnabled + value: httpsEnabled + num_oid: '.1.3.6.1.4.1.2544.1.12.2.1.3.7.{{ $index }}' + descr: 'HTTPS' + group: SERVICES + index: 'httpsEnabled.{{ $index }}' + states: + - { value: 1, descr: enable, graph: 1, generic: 0 } + - { value: 2, descr: disable, graph: 1, generic: 3 } + - + oid: f3TimeClockOperationalState + value: f3TimeClockOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.12.1.3.1.4.{{ $index }}' + descr: 'Clock Time state' + group: TIME + index: 'f3TimeClockOperationalState.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3TimeClockClockMode + value: f3TimeClockClockMode + num_oid: '.1.3.6.1.4.1.2544.1.12.12.1.3.1.7.{{ $index }}' + descr: 'Clock Time mode' + group: TIME + index: 'f3TimeClockClockMode.{{ $index }}' + states: + - { value: 1, descr: freerun, graph: 1, generic: 2 } + - { value: 2, descr: warmup, graph: 1, generic: 1 } + - { value: 3, descr: tracking, graph: 1, generic: 1 } + - { value: 4, descr: transition, graph: 1, generic: 1 } + - { value: 5, descr: holdover, graph: 1, generic: 2 } + - { value: 6, descr: locked, graph: 1, generic: 0 } + - + oid: f3GPSReceiverPortOperationalState + value: f3GPSReceiverPortOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.4.1.57.1.5.{{ $index }}' + group: GNSS + descr: 'GPS Receiver state' + index: 'f3GPSReceiverPortOperationalState.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3GPSReceiverPortAntennaStatus + value: f3GPSReceiverPortAntennaStatus + num_oid: '.1.3.6.1.4.1.2544.1.12.4.1.57.1.9.{{ $index }}' + group: GNSS + descr: 'GPS Antenna status' + index: 'f3GPSReceiverPortAntennaStatus.{{ $index }}' + states: + - { value: 1, descr: open, graph: 1, generic: 2 } + - { value: 2, descr: short, graph: 1, generic: 2 } + - { value: 3, descr: normal, graph: 1, generic: 0 } + - { value: 4, descr: unavailable, graph: 1, generic: 3 } + - + oid: f3NtpClockOperationalState + value: f3NtpClockOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.47.1.1.1.4.{{ $index }}' + group: TIME + descr: 'NTP state' + index: 'f3NtpClockOperationalState.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3PtpMasterClockEntry + value: f3PtpMasterClockOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.12.1.4.{{ $index }}' + group: PTP + descr: 'Master PTP state / Domain: {{ $f3PtpMasterClockDomainNumber }} / Priority: {{ $f3PtpMasterClockPriority1 }}' + index: 'f3PtpMasterClockOperationalState.{{ $index }}' + skip_values: + - + oid: f3PtpMasterClockAdminState + op: '!=' + value: 1 + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3PtpTSEntry + value: f3PtpTSOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.3.1.4.{{ $index }}' + group: PTP + descr: 'Telecom Slave PTP state / Domain: {{ $f3PtpTSDomainNumber }}' + index: 'f3PtpTSOperationalState.{{ $index }}' + skip_values: + - + oid: f3PtpTSAdminState + op: '!=' + value: 1 + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3PtpSOOCEntry + value: f3PtpSOOCOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.4.1.5.{{ $index }}' + group: PTP + descr: 'Master defined state: {{ $f3PtpSOOCMasterIpV4Address }}' + index: 'f3PtpSOOCOperationalState.{{ $index }}' + skip_values: + - + oid: f3PtpSOOCAdminState + op: '!=' + value: 1 + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: f3PtpDynamicRemoteSlaveEntry + value: f3PtpDynamicRemoteSlaveOperationalState + num_oid: '.1.3.6.1.4.1.2544.1.12.18.1.16.1.4.{{ $index }}' + group: PTP + descr: 'Dynamic Slave - {{ $f3PtpDynamicRemoteSlaveIpV4Address }}' + index: 'f3PtpDynamicRemoteSlaveEntry.{{ $index }}' + skip_values: + - + oid: f3PtpDynamicRemoteSlaveAdminState + op: '!=' + value: 1 + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/adva_fsp150.yaml b/priv/profiles/os_discovery/adva_fsp150.yaml new file mode 100644 index 00000000..018900f7 --- /dev/null +++ b/priv/profiles/os_discovery/adva_fsp150.yaml @@ -0,0 +1,89 @@ +mib: F3-ERP-MIB::CM-ALARM-MIB +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalName.1 + - ENTITY-MIB::entPhysicalHardwareRev.1 + hardware_template: '{{ ENTITY-MIB::entPhysicalName.1 }} {{ ENTITY-MIB::entPhysicalHardwareRev.1 }}' + serial: ENTITY-MIB::entPhysicalSerialNum.1 + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + sensors: + state: + data: + - + oid: cmSysCondTable + value: cmSysCondType + num_oid: '.1.3.6.1.4.1.2544.1.12.6.1.3.1.3.{{ $index }}' + descr: 'Alarm(s) : {{ $index }}' + group: Alarm Condition + index: 'cmSysCondType.{{ $index }}' + state_name: cmSysCondType + states: + - { value: 9, generic: 3, graph: 0, descr: 'Primary NTP Server Failed' } + - { value: 10, generic: 3, graph: 0, descr: 'Secondary NTP Server Failed' } + - { value: 27, generic: 2, graph: 0, descr: 'Equipment Fault' } + - { value: 34, generic: 2, graph: 0, descr: 'PSU A Failed' } + - { value: 35, generic: 2, graph: 0, descr: 'PSU B Failed' } + - { value: 53, generic: 2, graph: 0, descr: 'SFP Mismatch' } + - { value: 59, generic: 2, graph: 0, descr: 'Over Temperature' } + - { value: 60, generic: 2, graph: 0, descr: 'Under Temperature' } + - { value: 65, generic: 2, graph: 0, descr: 'Input Power Fault' } + - { value: 86, generic: 3, graph: 0, descr: 'SNMP Dying Gasp - Host Unreachable' } + - { value: 90, generic: 3, graph: 0, descr: 'SFP Non Qualified' } + - { value: 93, generic: 2, graph: 0, descr: 'Power No Input Unit Fault' } + - { value: 121, generic: 1, graph: 0, descr: 'XFP Mismatch' } + - { value: 122, generic: 3, graph: 0, descr: 'XFP Non Qualified' } + - { value: 125, generic: 2, graph: 0, descr: 'LAG Member Failed' } + - { value: 135, generic: 2, graph: 0, descr: 'DB Corruption' } + - { value: 284, generic: 1, graph: 0, descr: 'XFP Wavelength Mismatch' } + - { value: 288, generic: 3, graph: 0, descr: 'Loopback Active' } + - { value: 347, generic: 2, graph: 0, descr: 'Key Exchange Failed' } + - { value: 348, generic: 2, graph: 0, descr: 'Key Exchange Auth Password Missing' } + - { value: 389, generic: 2, graph: 0, descr: 'Power No Input 2' } + - { value: 390, generic: 2, graph: 0, descr: 'Key Exchange Stop' } + - { value: 403, generic: 3, graph: 0, descr: 'HTTPS SSL Certificate Expired' } + - { value: 409, generic: 2, graph: 0, descr: 'Fan Fail' } + - { value: 417, generic: 2, graph: 0, descr: 'PSU A Input Fail' } + - { value: 418, generic: 3, graph: 0, descr: 'PSU B Input Fail' } + + - + oid: f3ErpGroupTable + value: f3ErpGroupNodeState + num_oid: '.1.3.6.1.4.1.2544.1.12.25.1.1.1.24.{{ $index }}' + descr: '{{ $f3ErpGroupUserLabel }}' + group: ERP Status + index: 'f3ErpGroupNodeState.{{ $index }}' + state_name: f3ErpGroupNodeState + states: + - { value: 1, generic: 0, graph: 0, descr: 'IDLE' } + - { value: 2, generic: 2, graph: 0, descr: 'PROTECTION' } + - { value: 3, generic: 1, graph: 0, descr: 'MANUAL' } + - { value: 4, generic: 3, graph: 0, descr: 'FORCED' } + - { value: 5, generic: 1, graph: 0, descr: 'PENDING' } + + - + oid: f3ErpUnitTable + value: f3ErpUnitPortRole + num_oid: '.1.3.6.1.4.1.2544.1.12.25.1.3.1.4.{{ $index }}' + descr: 'Port : {{ $f3ErpUnitPort }}' + group: ERP Node State + index: 'f3ErpUnitPortRole.{{ $index }}' + state_name: f3ErpUnitPortRole + states: + - { value: 1, generic: 0, graph: 0, descr: 'NONE' } + - { value: 2, generic: 0, graph: 0, descr: 'NEIGHBOR' } + - { value: 3, generic: 0, graph: 0, descr: 'RPL OWNER' } + + - + oid: f3ErpUnitTable + value: f3ErpUnitPortStatus + num_oid: '.1.3.6.1.4.1.2544.1.12.25.1.3.1.5.{{ $index }}' + descr: 'Port : {{ $f3ErpUnitPort }}' + group: ERP Port Status + index: 'f3ErpUnitPortStatus.{{ $index }}' + state_name: f3ErpUnitPortStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'unblocked' } + - { value: 4, generic: 0, graph: 0, descr: 'blocked RPL' } + - { value: 9, generic: 1, graph: 0, descr: 'blocked pending' } + - { value: 10, generic: 3, graph: 0, descr: 'subring interconnect' } diff --git a/priv/profiles/os_discovery/adva_fsp3kr7.yaml b/priv/profiles/os_discovery/adva_fsp3kr7.yaml new file mode 100644 index 00000000..3db3342f --- /dev/null +++ b/priv/profiles/os_discovery/adva_fsp3kr7.yaml @@ -0,0 +1,8 @@ +modules: + os: + hardware: + - ADVA-MIB::inventoryUnitName.33619968 + - ADVA-MIB::inventoryHardwareRev.33619968 + hardware_template: '{{ ADVA-MIB::inventoryUnitName.33619968 }} V{{ ADVA-MIB::inventoryHardwareRev.33619968 }}' + serial: ADVA-MIB::inventorySerialNum.33619968 + version: ADVA-MIB::swVersionActiveApplSw.100737280 diff --git a/priv/profiles/os_discovery/adva_xg300.yaml b/priv/profiles/os_discovery/adva_xg300.yaml new file mode 100644 index 00000000..a8b6d128 --- /dev/null +++ b/priv/profiles/os_discovery/adva_xg300.yaml @@ -0,0 +1,96 @@ +mib: OA-SFP-MIB:DEV-CFG-MIB +modules: + os: + sysDescr_regex: '/(?.+) Ver\. (?[^)]+\))/' + serial: '.1.3.6.1.4.1.629.1.50.16.4.3.2.0' + sensors: + additional_oids: + data: + - + oid: + - oaSfpInfoInstalledStatus + dbm: + data: + - + oid: oaSfpDiagnosticTxPower + num_oid: '.1.3.6.1.4.1.6926.1.18.1.1.3.1.6.{{ $index }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: 'ports' + divisor: 100 + descr: 'Port {{ $subindex1 }} Tx Power' + index: 'oaSfpDiagnosticTxPower.{{ $index }}' + skip_values: + - + oid: oaSfpInfoInstalledStatus + op: '!=' + value: '3' + - + oid: oaSfpDiagnosticRxPower + num_oid: '.1.3.6.1.4.1.6926.1.18.1.1.3.1.7.{{ $index }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: 'ports' + divisor: 100 + descr: 'Port {{ $subindex1 }} Rx Power' + index: 'oaSfpDiagnosticRxPower.{{ $index }}' + skip_values: + - + oid: oaSfpInfoInstalledStatus + op: '!=' + value: '3' + temperature: + data: + - + oid: nbsDevPhParamDevAmbientTempC + num_oid: '.1.3.6.1.4.1.629.1.50.11.1.13.1.{{ $index }}' + descr: 'Ambient Temp' + index: 'nbsDevPhParamDevAmbientTempC.{{ $index }}' + low_limit: '0' + high_limit: '50' + - + oid: nbsDevPhParamPackProcTempC + num_oid: '.1.3.6.1.4.1.629.1.50.11.1.13.2.{{ $index }}' + descr: 'Packet Processor Temp' + index: 'nbsDevPhParamPackProcTempC.{{ $index }}' + - + oid: oaSfpDiagnosticTemperature + num_oid: '.1.3.6.1.4.1.6926.1.18.1.1.3.1.3.{{ $index }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: 'ports' + divisor: 10 + descr: 'Port {{ $subindex1 }} Temp' + index: 'oaSfpDiagnosticTemperature.{{ $index }}' + skip_values: + - + oid: oaSfpInfoInstalledStatus + op: '!=' + value: '3' + voltage: + data: + - + oid: oaSfpDiagnosticVcc + num_oid: '.1.3.6.1.4.1.6926.1.18.1.1.3.1.4.{{ $index }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: 'ports' + divisor: 10000 + descr: 'Port {{ $subindex1 }} Voltage' + index: 'oaSfpDiagnosticVcc.{{ $index }}' + skip_values: + - + oid: oaSfpInfoInstalledStatus + op: '!=' + value: '3' + current: + data: + - + oid: oaSfpDiagnosticTxBias + num_oid: '.1.3.6.1.4.1.6926.1.18.1.1.3.1.5.{{ $index }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: 'ports' + divisor: 1000000 + descr: 'Port {{ $subindex1 }} Tx Bias' + index: 'oaSfpDiagnosticTxBias.{{ $index }}' + skip_values: + - + oid: oaSfpInfoInstalledStatus + op: '!=' + value: '3' diff --git a/priv/profiles/os_discovery/advantech.yaml b/priv/profiles/os_discovery/advantech.yaml new file mode 100644 index 00000000..2b578945 --- /dev/null +++ b/priv/profiles/os_discovery/advantech.yaml @@ -0,0 +1,127 @@ +modules: + os: + hardware: ADVANTECH-COMMON-MIB::sysModuleID.0 + version: ADVANTECH-COMMON-MIB::sysImageVersion.0 + sensors: + additional_oids: + data: + - + oid: + - ADVANTECH-EKI-PRONEER-MIB::sfpDMIAlarmInfoTable + - ADVANTECH-EKI-PRONEER-MIB::poeMaxPowerAvailable + temperature: + data: + - + oid: ADVANTECH-EKI-PRONEER-MIB::sfpDMIInfoTable + value: ADVANTECH-EKI-PRONEER-MIB::sfpDMITemperature + num_oid: '.1.3.6.1.4.1.10297.202.7000.2.5.2.1.2.{{ $index }}' + descr: '{{ ADVANTECH-EKI-PRONEER-MIB::sfpDMIPortIndex }} Temperature' + index: 'sfp-temp-{{ $index }}' + low_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITempLowAlarmValue + low_warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITempLowWarnValue + warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITempHighWarnValue + high_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITempHighAlarmValue + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortStatusTable + value: ADVANTECH-EKI-PRONEER-MIB::poePortTemp + num_oid: '.1.3.6.1.4.1.10297.202.7000.7.3.3.1.5.{{ $index }}' + descr: 'GE{{ ADVANTECH-EKI-PRONEER-MIB::poePortStatusIndex }} POE Temperature' + index: 'poePortTemp.{{ $index }}' + low_limit: -10 + high_limit: 60 + skip_values: + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortVoltage + op: '==' + value: "N/A" + voltage: + data: + - + oid: ADVANTECH-EKI-PRONEER-MIB::sfpDMIInfoTable + value: ADVANTECH-EKI-PRONEER-MIB::sfpDMIVoltage + num_oid: '.1.3.6.1.4.1.10297.202.7000.2.5.2.1.3.{{ $index }}' + descr: '{{ ADVANTECH-EKI-PRONEER-MIB::sfpDMIPortIndex }} Voltage' + index: 'sfp-voltage-{{ $index }}' + low_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIVoltageLowAlarmValue + low_warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIVoltageLowWarnValue + warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIVoltageHighWarnValue + high_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIVoltageHighAlarmValue + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortStatusTable + value: ADVANTECH-EKI-PRONEER-MIB::poePortVoltage + num_oid: '.1.3.6.1.4.1.10297.202.7000.7.3.3.1.3.{{ $index }}' + descr: 'GE{{ ADVANTECH-EKI-PRONEER-MIB::poePortStatusIndex }} POE Voltage' + index: 'poePortVoltage.{{ $index }}' + low_limit: 44 + high_limit: 57 + current: + data: + - + oid: ADVANTECH-EKI-PRONEER-MIB::sfpDMIInfoTable + value: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxBias + num_oid: '.1.3.6.1.4.1.10297.202.7000.2.5.2.1.4.{{ $index }}' + descr: '{{ ADVANTECH-EKI-PRONEER-MIB::sfpDMIPortIndex }} Tx Bias' + index: 'sfp-current-{{ $index }}' + divisor: 1000 + low_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxBasisLowAlarmValue + low_warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxBasisLowWarnValue + warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxBasisHighWarnValue + high_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxBasisHighAlarmValue + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortStatusTable + value: ADVANTECH-EKI-PRONEER-MIB::poePortCurrent + num_oid: '.1.3.6.1.4.1.10297.202.7000.7.3.3.1.2.{{ $index }}' + descr: 'GE{{ ADVANTECH-EKI-PRONEER-MIB::poePortStatusIndex }} POE' + index: 'poePortCurrent.{{ $index }}' + divisor: 1000 + high_limit: .5 + low_limit: 0 + skip_values: + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortVoltage + op: '==' + value: "N/A" + dbm: + data: + - + oid: ADVANTECH-EKI-PRONEER-MIB::sfpDMIInfoTable + value: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxPower + num_oid: '.1.3.6.1.4.1.10297.202.7000.2.5.2.1.5.{{ $index }}' + descr: '{{ ADVANTECH-EKI-PRONEER-MIB::sfpDMIPortIndex }} Tx Power' + index: 'sfp-tx-dbm-{{ $index }}' + low_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxPowerLowAlarmValue + low_warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxPowerLowWarnValue + warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxPowerHighWarnValue + high_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMITxPowerHighAlarmValue + - + oid: ADVANTECH-EKI-PRONEER-MIB::sfpDMIInfoTable + value: ADVANTECH-EKI-PRONEER-MIB::sfpDMIRxPower + num_oid: '.1.3.6.1.4.1.10297.202.7000.2.5.2.1.6.{{ $index }}' + descr: '{{ ADVANTECH-EKI-PRONEER-MIB::sfpDMIPortIndex }} Rx Power' + index: 'sfp-rx-dbm-{{ $index }}' + low_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIRxPowerLowAlarmValue + low_warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIRxPowerLowWarnValue + warn_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIRxPowerHighWarnValue + high_limit: ADVANTECH-EKI-PRONEER-MIB::sfpDMIRxPowerHighAlarmValue + power: + data: + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortStatusTable + value: ADVANTECH-EKI-PRONEER-MIB::poePortPower + num_oid: '.1.3.6.1.4.1.10297.202.7000.7.3.3.1.4.{{ $index }}' + descr: 'GE{{ ADVANTECH-EKI-PRONEER-MIB::poePortStatusIndex }} POE' + index: 'poePortPower.{{ $index }}' + high_limit: 30 + low_limit: 0 + skip_values: + - + oid: ADVANTECH-EKI-PRONEER-MIB::poePortVoltage + op: '==' + value: "N/A" + - + oid: ADVANTECH-EKI-PRONEER-MIB::poeActualPowerConsumption + value: ADVANTECH-EKI-PRONEER-MIB::poeActualPowerConsumption + num_oid: '.1.3.6.1.4.1.10297.202.7000.7.3.1.3.{{ $index }}' + descr: 'Total POE Power Consumption' + index: 'poeActualPowerConsumption.{{ $index }}' + high_limit: ADVANTECH-EKI-PRONEER-MIB::poeMaxPowerAvailable diff --git a/priv/profiles/os_discovery/aen.yaml b/priv/profiles/os_discovery/aen.yaml new file mode 100644 index 00000000..855489f6 --- /dev/null +++ b/priv/profiles/os_discovery/aen.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: ACD-DESC-MIB::acdDescCommercialName.0 + serial: ACD-DESC-MIB::acdDescSerialNumber.0 + version: ACD-DESC-MIB::acdDescFirmwareVersion.0 diff --git a/priv/profiles/os_discovery/airos-af-ltu.yaml b/priv/profiles/os_discovery/airos-af-ltu.yaml new file mode 100644 index 00000000..c312f1ed --- /dev/null +++ b/priv/profiles/os_discovery/airos-af-ltu.yaml @@ -0,0 +1,55 @@ +mib: UBNT-AFLTU-MIB +modules: + os: + hardware: UBNT-AFLTU-MIB::afLTUDevModel.0 + version: UBNT-AFLTU-MIB::afLTUFirmwareVersion.0 + lat: UBNT-AFLTU-MIB::afLTUgpsLat.0 + long: UBNT-AFLTU-MIB::afLTUgpsLon.0 + processors: + data: + - + oid: afLTUCpuUsage + num_oid: '.1.3.6.1.4.1.41112.1.10.1.3.6.{{ $index }}' + sensors: + state: + data: + - + oid: afLTURole + num_oid: '.1.3.6.1.4.1.41112.1.10.1.2.1.{{ $index }}' + index: afLTURole + descr: Radio Role + state_name: afLTURole + states: + - { value: 0, generic: 0, graph: 0, descr: AP } + - { value: 1, generic: 0, graph: 0, descr: CPE } + - + oid: afLTUgpsStatus + value: afLTUgpsStatus + num_oid: '.1.3.6.1.4.1.41112.1.10.1.7.1.{{ $index }}' + descr: GPS Status + states: + - { value: 0, generic: 1, graph: 0, descr: Absent } + - { value: 1, generic: 1, graph: 0, descr: Off } + - { value: 2, generic: 0, graph: 0, descr: On } + - + oid: afLTUgpsDimensions + value: afLTUgpsDimensions + num_oid: '.1.3.6.1.4.1.41112.1.10.1.7.2.{{ $index }}' + descr: GPS fix + states: + - { value: 0, generic: 1, graph: 0, descr: Unknown } + - { value: 1, generic: 1, graph: 0, descr: Nofix } + - { value: 2, generic: 0, graph: 0, descr: Fix2d } + - { value: 3, generic: 0, graph: 0, descr: Fix3d } + count: + data: + - + oid: afLTUgpsSatsVisible + num_oid: '.1.3.6.1.4.1.41112.1.10.1.7.7.{{ $index }}' + index: afLTUgpsSatsVisible + descr: Sat visible + - + oid: afLTUgpsSatsTracked + num_oid: '.1.3.6.1.4.1.41112.1.10.1.7.8.{{ $index }}' + index: afLTUgpsSatsTracked + descr: Sat tracked diff --git a/priv/profiles/os_discovery/airos-af.yaml b/priv/profiles/os_discovery/airos-af.yaml new file mode 100644 index 00000000..0c963830 --- /dev/null +++ b/priv/profiles/os_discovery/airos-af.yaml @@ -0,0 +1,56 @@ +mib: UBNT-AirFIBER-MIB +modules: + os: + hardware: IEEE802dot11-MIB::dot11manufacturerProductName.5 + hardware_template: 'Ubiquiti AF {{ IEEE802dot11-MIB::dot11manufacturerProductName.5 }}' + version: UBNT-AirFIBER-MIB::fwVersion.1 + processors: + data: + - + oid: ubntHostCpuLoad + num_oid: '.1.3.6.1.4.1.41112.1.4.8.3.{{ $index }}' + precision: 100 + sensors: + state: + data: + - + oid: curTXModRate + num_oid: '.1.3.6.1.4.1.41112.1.3.2.1.2.{{ $index }}' + index: curTXModRate + descr: Tx Modulation Rate + state_name: curTXModRate + states: + - { value: 0, generic: 1, graph: 1, descr: 'qPSK-SISO-1-4x' } + - { value: 1, generic: 1, graph: 1, descr: 'qPSK-SISO-1x' } + - { value: 2, generic: 0, graph: 1, descr: 'qPSK-MIMO-2x' } + - { value: 3, generic: 0, graph: 1, descr: 'qAM8-MIMO-3x' } + - { value: 4, generic: 0, graph: 1, descr: 'qAM16-MIMO-4x' } + - { value: 5, generic: 0, graph: 1, descr: 'qAM32-MIMO-5x' } + - { value: 6, generic: 0, graph: 1, descr: 'qAM64-MIMO-6x' } + - { value: 7, generic: 0, graph: 1, descr: 'qAM128-MIMO-7x' } + - { value: 8, generic: 0, graph: 1, descr: 'qAM256-MIMO-8x' } + - { value: 9, generic: 0, graph: 1, descr: 'qAM256-MIMO-9x' } + - { value: 10, generic: 0, graph: 1, descr: 'qAM1024-MIMO-10x' } + - { value: 11, generic: 0, graph: 1, descr: 'qAM2048-MIMO-11x' } + - + oid: gpsSync + num_oid: '.1.3.6.1.4.1.41112.1.3.1.1.8.{{ $index }}' + index: gpsSync + descr: GPS Sync + state_name: gpsSync + states: + - { value: 1, generic: 1, graph: 0, descr: off } + - { value: 2, generic: 0, graph: 0, descr: on } + temperature: + data: + - + oid: radio0TempC + num_oid: '.1.3.6.1.4.1.41112.1.3.2.1.8.{{ $index }}' + index: 0 + descr: Radio 0 Temp + - + oid: radio1TempC + num_oid: '.1.3.6.1.4.1.41112.1.3.2.1.10.{{ $index }}' + index: 1 + descr: Radio 1 Temp + diff --git a/priv/profiles/os_discovery/airos-af60.yaml b/priv/profiles/os_discovery/airos-af60.yaml new file mode 100644 index 00000000..c38e46ba --- /dev/null +++ b/priv/profiles/os_discovery/airos-af60.yaml @@ -0,0 +1,58 @@ +mib: UI-AF60-MIB +modules: + os: + hardware: UI-AF60-MIB::af60DevModel.1 + version: UI-AF60-MIB::af60FirmwareVersion.1 + version_regex: '/(?v[0-9]+\.[0-9]+\.[0-9]+[-RC]*)/' + lat: UI-AF60-MIB::af60GpsLat.1 + long: UI-AF60-MIB::af60GpsLon.1 + processors: + data: + - + oid: af60CpuUsage + num_oid: '.1.3.6.1.4.1.41112.1.11.1.2.6.{{ $index }}' + sensors: + state: + data: + - + oid: af60Role + num_oid: '.1.3.6.1.4.1.41112.1.11.1.1.1.{{ $index }}' + index: af60Role + descr: Radio Role + state_name: af60Role + states: + - { value: 0, generic: 0, graph: 0, descr: AP } + - { value: 1, generic: 0, graph: 0, descr: CPE } + - + oid: af60GpsStatus + num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.1.{{ $index }}' + index: af60GpsStatus + descr: GPS Status + state_name: af60GpsStatus + states: + - { value: 0, generic: 1, graph: 0, descr: Absent } + - { value: 1, generic: 1, graph: 0, descr: Off } + - { value: 2, generic: 0, graph: 0, descr: On } + - + oid: af60GpsFix + num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.2.{{ $index }}' + index: af60GpsFix + descr: GPS fix + state_name: af60GpsFix + states: + - { value: 0, generic: 1, graph: 0, descr: Unknown } + - { value: 1, generic: 1, graph: 0, descr: Nofix } + - { value: 2, generic: 0, graph: 0, descr: Fix2d } + - { value: 3, generic: 0, graph: 0, descr: Fix3d } + count: + data: + - + oid: af60GpsSatsVisible + num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.7.{{ $index }}' + index: af60GpsSatsVisible + descr: Sat visible + - + oid: af60GpsSatsTracked + num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.8.{{ $index }}' + index: af60GpsSatsTracked + descr: Sat tracked diff --git a/priv/profiles/os_discovery/airos.yaml b/priv/profiles/os_discovery/airos.yaml new file mode 100644 index 00000000..34adc637 --- /dev/null +++ b/priv/profiles/os_discovery/airos.yaml @@ -0,0 +1,48 @@ +mib: UBNT-AirMAX-MIB +modules: + os: + lat: UBNT-AirMAX-MIB::ubntGpsLat.0 + long: UBNT-AirMAX-MIB::ubntGpsLon.0 + processors: + data: + - + oid: ubntHostCpuLoad + num_oid: '.1.3.6.1.4.1.41112.1.4.8.3.{{ $index }}' + precision: 100 + sensors: + state: + data: + - + oid: ubntGpsFix + num_oid: '.1.3.6.1.4.1.41112.1.4.9.2.{{ $index }}' + descr: GPS Fix + state_name: ubntGpsFix + states: + - { value: 0, generic: 3, graph: 1, descr: unknown } + - { value: 1, generic: 2, graph: 1, descr: nofix } + - { value: 2, generic: 0, graph: 1, descr: fix2d } + - { value: 3, generic: 0, graph: 1, descr: fix3d } + + temperature: + data: + - + oid: ubntHostTemperature + divisor: 1 + num_oid: '.1.3.6.1.4.1.41112.1.4.8.4.{{ $index }}' + descr: Temperature + skip_values: + - + device: version + op: 'regex' + value: '/^8\.7\.[4-6]\./' + - + oid: ubntHostTemperature + divisor: 10000000 + num_oid: '.1.3.6.1.4.1.41112.1.4.8.4.{{ $index }}' + descr: Temperature + skip_values: + - + device: version + op: 'not_regex' + value: '/^8\.7\.[4-6]\./' + diff --git a/priv/profiles/os_discovery/airport.yaml b/priv/profiles/os_discovery/airport.yaml new file mode 100644 index 00000000..eea4f3be --- /dev/null +++ b/priv/profiles/os_discovery/airport.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: AIRPORT-BASESTATION-3-MIB::sysConfFirmwareVersion.0 diff --git a/priv/profiles/os_discovery/aix.yaml b/priv/profiles/os_discovery/aix.yaml new file mode 100644 index 00000000..8c77e07f --- /dev/null +++ b/priv/profiles/os_discovery/aix.yaml @@ -0,0 +1,23 @@ +modules: + os: + sysDescr_regex: + - '/Machine Type: (?\w+) Processor id: (?\w+)[^:]* version: (?[\d.]+)/' # standard snmp daemon + - '/^AIX .* (?\d+ \d+) (?\S+)$/' # net-snmp daemon + serial: IBM-AIX-MIB::aixSeSerialNumber.0 + serial_replace: + - '/IBM,/' + hardware: IBM-AIX-MIB::aixSeMachineType.0 + hardware_replace: + - '/IBM,/' + version_replace: + - '/(?<=^|\.)0+(?=[^.])/' # standard snmp daemon + - ['/(\d+) (\d+)/', '$2.$1'] # net-snmp daemon + storage: + data: + - + oid: IBM-AIX-MIB::aixFsTable + type: IBM-AIX-MIB::aixFsType + descr: IBM-AIX-MIB::aixFsMountPoint + size: IBM-AIX-MIB::aixFsSize + free: IBM-AIX-MIB::aixFsFree + units: 1048576 diff --git a/priv/profiles/os_discovery/akcp.yaml b/priv/profiles/os_discovery/akcp.yaml new file mode 100644 index 00000000..c17a6dfc --- /dev/null +++ b/priv/profiles/os_discovery/akcp.yaml @@ -0,0 +1,91 @@ +mib: SPAGENT-MIB +modules: + os: + sysDescr_regex: '/(?SP\d+)/' + hardware: + - HHMSAGENT-MIB::hhmsAgentManufName.0 + - HHMSAGENT-MIB::hhmsAgentHtmlView.0 + hardware_template: '{{ HHMSAGENT-MIB::hhmsAgentManufName.0 }} {{ HHMSAGENT-MIB::hhmsAgentHtmlView.0 }}' + sensors: + state: + data: + - + oid: spStatus + num_oid: '.1.3.6.1.4.1.3854.1.1.2.{{ $index }}' + descr: 'Probe Status' + group: Probes + states: + - { descr: noStatus, graph: 1, value: 1, generic: 3 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: critical, graph: 1, value: 4, generic: 2 } + - { descr: sensorError, graph: 1, value: 7, generic: 3 } + - + oid: sensorProbeSwitchTable + value: sensorProbeSwitchStatus + num_oid: '.1.3.6.1.4.1.3854.1.2.2.1.18.1.3.{{ $index }}' + descr: sensorProbeSwitchDescription + group: Switches + index: 'hhmsSensorArraySwitchStatus.{{ $index }}' + skip_values: + - + oid: sensorProbeSwitchOnline + op: '!=' + value: 2 + states: + - { descr: noStatus, graph: 1, value: 1, generic: 3 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: critical, graph: 1, value: 4, generic: 2 } + - { descr: sensorError, graph: 1, value: 7, generic: 3 } + humidity: + data: + - + oid: sensorProbeHumidityTable + value: sensorProbeHumidityRaw + num_oid: '.1.3.6.1.4.1.3854.1.2.2.1.17.1.13.{{ $index }}' + descr: sensorProbeHumidityDescription + divisor: 10 + low_limit: sensorProbeHumidityLowCritical + low_warn_limit: sensorProbeHumidityLowWarning + warn_limit: sensorProbeHumidityHighWarning + high_limit: sensorProbeHumidityHighCritical + skip_values: + - + oid: sensorProbeHumidityOnline + op: '!=' + value: 2 + current: + data: + - + oid: current4to20mASensorTable + value: current4to20mASensorRaw + num_oid: '.1.3.6.1.4.1.3854.2.5.5.1.20.{{ $index }}' + descr: current4to20mASensorDescription + divisor: 10 + low_limit: current4to20mASensorLowCritical + low_warn_limit: current4to20mASensorLowWarning + warn_limit: current4to20mASensorHighWarning + high_limit: current4to20mASensorHighCritical + voltage: + data: + - + oid: dcVoltageSensorTable + value: dcVoltageSensorRaw + num_oid: '.1.3.6.1.4.1.3854.2.5.6.1.20.{{ $index }}' + descr: dcVoltageSensorDescription + divisor: 10 + low_limit: dcVoltageSensorLowCritical + low_warn_limit: dcVoltageSensorLowWarning + warn_limit: dcVoltageSensorHighWarning + high_limit: dcVoltageSensorHighCritical + airflow: + data: + - + oid: airflowSensorTable + value: airflowSensorRaw + num_oid: '.1.3.6.1.4.1.3854.2.5.7.1.20.{{ $index }}' + descr: airflowSensorDescription + divisor: 10 + low_limit: airflowSensorLowCritical + low_warn_limit: airflowSensorLowWarning + warn_limit: airflowSensorHighWarning + high_limit: airflowSensorHighCritical diff --git a/priv/profiles/os_discovery/alcoma-almp.yaml b/priv/profiles/os_discovery/alcoma-almp.yaml new file mode 100644 index 00000000..af011972 --- /dev/null +++ b/priv/profiles/os_discovery/alcoma-almp.yaml @@ -0,0 +1,15 @@ +mib: ALCOMA-MIB +modules: + os: + hardware: ALCOMA-MIB::alMPModel.0 + serial: ALCOMA-MIB::alMPSerNumMW.0 + version: ALCOMA-MIB::alMPVersionSW.0 + sensors: + temperature: + data: + - + oid: alMPTemperature + value: alMPTemperature + num_oid: '.1.3.6.1.4.1.12140.2.3.9.{{ $index }}' + descr: Internal Temp + index: 'alMPTemperatur.{{ $index }}' diff --git a/priv/profiles/os_discovery/algcom-dc-ups.yaml b/priv/profiles/os_discovery/algcom-dc-ups.yaml new file mode 100644 index 00000000..8eb077f8 --- /dev/null +++ b/priv/profiles/os_discovery/algcom-dc-ups.yaml @@ -0,0 +1,169 @@ +mib: ALGPOWER-v2-MIB +modules: + sensors: + voltage: + data: + - + oid: outputVoltage + num_oid: '.1.3.6.1.4.1.49136.1.1.1.{{ $index }}' + divisor: 10 + descr: 'DC Voltage' + index: outputVoltage + - + oid: batteryVoltage + num_oid: '.1.3.6.1.4.1.49136.1.2.1.{{ $index }}' + divisor: 10 + descr: 'Battery Voltage' + index: batteryVoltage + - + oid: supplyVoltage + num_oid: '.1.3.6.1.4.1.49136.1.6.1.{{ $index }}' + divisor: 10 + descr: 'AC Voltage (Optional)' + index: supplyVoltage + - + oid: btst-volt-i + num_oid: '.1.3.6.1.4.1.49136.1.8.5.{{ $index }}' + divisor: 10 + descr: 'Bat-test initial' + index: btst-volt-i + - + oid: btst-volt-f + num_oid: '.1.3.6.1.4.1.49136.1.8.7.{{ $index }}' + divisor: 10 + descr: 'Bat-test final' + index: btst-volt-f + current: + data: + - + oid: outputCurrent + num_oid: '.1.3.6.1.4.1.49136.1.1.2.{{ $index }}' + divisor: 1000 + descr: 'Total output current' + index: outputCurrent + - + oid: batteryCurrent + num_oid: '.1.3.6.1.4.1.49136.1.2.2.{{ $index }}' + divisor: 1000 + descr: 'Battery current' + index: batteryCurrent + - + oid: btst-amp-i + num_oid: '.1.3.6.1.4.1.49136.1.8.6.{{ $index }}' + divisor: 1000 + descr: 'Bat-test initial' + index: btst-amp-i + - + oid: btst-amp-f + num_oid: '.1.3.6.1.4.1.49136.1.8.8.{{ $index }}' + divisor: 1000 + descr: 'Bat-test final' + index: btst-amp-f + temperature: + data: + - + oid: innerTemperature + num_oid: '.1.3.6.1.4.1.49136.1.4.1.{{ $index }}' + multiplier: 1 + descr: 'Internal temperature' + index: innerTemperature + - + oid: outerTemperature + num_oid: '.1.3.6.1.4.1.49136.1.4.2.{{ $index }}' + multiplier: 1 + descr: 'External probe temperature' + index: outerTemperature + - + oid: heatSinkTemperature + num_oid: '.1.3.6.1.4.1.49136.1.4.3.{{ $index }}' + multiplier: 1 + descr: 'Heatsink temperature' + index: heatSinkTemperature + state: + data: + - + oid: chargerStatus + num_oid: '.1.3.6.1.4.1.49136.1.2.3.{{ $index }}' + descr: 'Charger Status' + index: chargerStatus + states: + - { graph: 1, value: 0, generic: 2, descr: BATTERY_DISCONNECTED } + - { graph: 1, value: 1, generic: 2, descr: WRONG_BATTERY_VOLTAGE } + - { graph: 1, value: 2, generic: 1, descr: DISCHARGING } + - { graph: 1, value: 3, generic: 0, descr: CHARGING_BULK } + - { graph: 1, value: 4, generic: 0, descr: CHARGING_ABSORPTION } + - { graph: 1, value: 5, generic: 0, descr: CHARGING_FLOAT } + - { graph: 1, value: 6, generic: 2, descr: CRITICAL_LOW_VOLTAGE } + - { graph: 1, value: 7, generic: 0, descr: BATTERY_UNDER_TEST } + - + oid: alarmOnBattery + num_oid: '.1.3.6.1.4.1.49136.1.3.1.{{ $index }}' + descr: 'Operation Mode' + index: alarmOnBattery + states: + - { graph: 1, value: 0, generic: 0, descr: AC } + - { graph: 1, value: 1, generic: 1, descr: BATTERY } + - + oid: acFail + num_oid: '.1.3.6.1.4.1.49136.1.3.2.{{ $index }}' + descr: 'AC Power' + index: acFail + states: + - { graph: 1, value: 0, generic: 0, descr: OK } + - { graph: 1, value: 1, generic: 1, descr: FAIL } + - + oid: batteryCharging + num_oid: '.1.3.6.1.4.1.49136.1.3.3.{{ $index }}' + descr: 'Charging' + index: batteryCharging + states: + - { graph: 1, value: 0, generic: 0, descr: NO } + - { graph: 1, value: 1, generic: 0, descr: YES } + - + oid: batteryDischarging + num_oid: '.1.3.6.1.4.1.49136.1.3.4.{{ $index }}' + descr: 'Discharging' + index: batteryDischarging + states: + - { graph: 1, value: 0, generic: 0, descr: NO } + - { graph: 1, value: 1, generic: 0, descr: YES } + - + oid: overheat + num_oid: '.1.3.6.1.4.1.49136.1.3.5.{{ $index }}' + descr: 'Temperature Status' + index: overheat + states: + - { graph: 1, value: 0, generic: 0, descr: OK } + - { graph: 1, value: 1, generic: 2, descr: OVERHEAT } + - + oid: overload + num_oid: '.1.3.6.1.4.1.49136.1.3.6.{{ $index }}' + descr: 'Load Capacity' + index: overload + states: + - { graph: 1, value: 0, generic: 0, descr: OK } + - { graph: 1, value: 1, generic: 2, descr: OVERLOAD } + - + oid: fanAfail + num_oid: '.1.3.6.1.4.1.49136.1.3.7.{{ $index }}' + descr: 'Fan A' + index: fanAfail + states: + - { graph: 0, value: 0, generic: 0, descr: OK } + - { graph: 0, value: 1, generic: 2, descr: FAIL } + - + oid: fanBfail + num_oid: '.1.3.6.1.4.1.49136.1.3.8.{{ $index }}' + descr: 'Fan B' + index: fanBfail + states: + - { graph: 0, value: 0, generic: 0, descr: OK } + - { graph: 0, value: 1, generic: 2, descr: FAIL } + count: + data: + - + oid: upTime + num_oid: '.1.3.6.1.4.1.49136.1.3.11.{{ $index }}' + descr: 'Horimeter' + multiplier: 1 + index: upTime diff --git a/priv/profiles/os_discovery/algcom-sm.yaml b/priv/profiles/os_discovery/algcom-sm.yaml new file mode 100644 index 00000000..d0e95642 --- /dev/null +++ b/priv/profiles/os_discovery/algcom-sm.yaml @@ -0,0 +1,66 @@ +modules: + sensors: + additional_oids: + data: + - + oid: + - ALGSMXS-v0-MIB::SensorNames + - ALGSMXS-v0-MIB::SensorUnits + - ALGSMXS-v0-MIB::SensorThrMin + - ALGSMXS-v0-MIB::SensorThrMax + temperature: + data: + - + oid: ALGSMXS-v0-MIB::SensorValues + num_oid: '.1.3.6.1.4.1.49136.100.3.{{ $index }}' + descr: ALGSMXS-v0-MIB::SensorNames + high_limit: ALGSMXS-v0-MIB::SensorThrMax + low_limit: ALGSMXS-v0-MIB::SensorThrMin + user_func: fahrenheit_to_celsius + skip_values: + - + oid: ALGSMXS-v0-MIB::SensorUnits + op: '!=' + value: Fahrenheit + humidity: + data: + - + oid: ALGSMXS-v0-MIB::SensorValues + num_oid: '.1.3.6.1.4.1.49136.100.3.{{ $index }}' + descr: ALGSMXS-v0-MIB::SensorNames + high_limit: ALGSMXS-v0-MIB::SensorThrMax + low_limit: ALGSMXS-v0-MIB::SensorThrMin + skip_values: + - + oid: ALGSMXS-v0-MIB::SensorUnits + op: '!=' + value: '%' + voltage: + data: + - + oid: ALGSMXS-v0-MIB::SensorValues + num_oid: '.1.3.6.1.4.1.49136.100.3.{{ $index }}' + divisor: 1000 + descr: ALGSMXS-v0-MIB::SensorNames + high_limit: ALGSMXS-v0-MIB::SensorThrMax + low_limit: ALGSMXS-v0-MIB::SensorThrMin + skip_values: + - + oid: ALGSMXS-v0-MIB::SensorUnits + op: '!=' + value: 'mV' + state: + data: + - + oid: ALGSMXS-v0-MIB::SensorValues + num_oid: '.1.3.6.1.4.1.49136.100.3.{{ $index }}' + descr: ALGSMXS-v0-MIB::SensorNames + high_limit: ALGSMXS-v0-MIB::SensorThrMax + low_limit: ALGSMXS-v0-MIB::SensorThrMin + states: + - { value: 0, generic: 3, graph: 0, descr: open } + - { value: 1, generic: 3, graph: 0, descr: closed } + skip_values: + - oid: ALGSMXS-v0-MIB::SensorUnits + op: '!=' + value: 'Boolean' diff --git a/priv/profiles/os_discovery/allied-tq.yaml b/priv/profiles/os_discovery/allied-tq.yaml new file mode 100644 index 00000000..fc1428e6 --- /dev/null +++ b/priv/profiles/os_discovery/allied-tq.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S+) version (?\S+)/' diff --git a/priv/profiles/os_discovery/aloha.yaml b/priv/profiles/os_discovery/aloha.yaml new file mode 100644 index 00000000..9458947f --- /dev/null +++ b/priv/profiles/os_discovery/aloha.yaml @@ -0,0 +1,48 @@ +mib: EXCELIANCE-MIB +modules: + os: + hardware: EXCELIANCE-MIB::alHardwareModel + serial: EXCELIANCE-MIB::alHardwareETHID + version: EXCELIANCE-MIB::alProductSubVersion + + sensors: + state: + data: + - + oid: alFrontendTable + value: alFrontendStatus + num_oid: '.1.3.6.1.4.1.23263.4.2.1.3.2.1.13.{{ $index }}' + index: 'alFrontendStatus.{{ $index }}' + descr: alFrontendName + state_name: alFrontendStatus + group: "Frontend status" + states: + - { value: 0, generic: 0, graph: 1, descr: no } + - { value: 1, generic: 0, graph: 1, descr: OPEN } + + - + oid: alBackendTable + value: alBackendStatus + num_oid: '.1.3.6.1.4.1.23263.4.2.1.3.3.1.20.{{ $index }}' + index: 'alBackendStatus.{{ $index }}' + descr: alBackendName + group: "Backend status" + state_name: alBackendStatus + states: + - { value: 2, generic: 1, graph: 1, descr: DOWN } + - { value: 1, generic: 0, graph: 1, descr: UP } + + - + oid: alServerTable + value: alServerStatus + num_oid: '.1.3.6.1.4.1.23263.4.2.1.3.4.1.19.{{ $index }}' + index: 'alServerStatus.{{ $index }}' + descr: alServerName + #group: "{{ $alBackendTable }}.{{ $alServerBackendID }}" + group: 'Server status' + state_name: alServerStatus + states: + - { value: 0, generic: 1, graph: 1, descr: MAINT } + - { value: 1, generic: 0, graph: 1, descr: UP } + - { value: 2, generic: 2, graph: 1, descr: DOWN } + diff --git a/priv/profiles/os_discovery/alpineoe-tdcmedfa.yaml b/priv/profiles/os_discovery/alpineoe-tdcmedfa.yaml new file mode 100644 index 00000000..1336e563 --- /dev/null +++ b/priv/profiles/os_discovery/alpineoe-tdcmedfa.yaml @@ -0,0 +1,420 @@ +mib: ALPINE-GEN-CARD-TDCM-MIB:ALPINE-GEN-CARD-EDFA-MIB:ALPINE-TDCM-EDFA-MIB +modules: + + os: + sysDescr_regex: '/(?MSM\S+) .* Serial number (?\S+) - Firmware version (?\S+)/' + hardware: + - ALPINE-TDCM-EDFA-MIB::alpineTESBISlotHwVer.1 + - ALPINE-TDCM-EDFA-MIB::alpineTESBISlotHwVer.2 + hardware_template: 'TDCM {{ ALPINE-TDCM-EDFA-MIB::alpineTESBISlotHwVer.1 }} - EDFA {{ ALPINE-TDCM-EDFA-MIB::alpineTESBISlotHwVer.2 }}' + serial: + - ALPINE-TDCM-EDFA-MIB::alpineTEBISlotSN.1 + - ALPINE-TDCM-EDFA-MIB::alpineTEBISlotSN.2 + serial_template: 'TDCM : {{ ALPINE-TDCM-EDFA-MIB::alpineTEBISlotSN.1 }} - EDFA : {{ ALPINE-TDCM-EDFA-MIB::alpineTEBISlotSN.2 }}' + version: + - ALPINE-TDCM-EDFA-MIB::alpineTESBISlotFwVer.1 + - ALPINE-TDCM-EDFA-MIB::alpineTESBISlotFwVer.2 + version_template: '[TDCM {{ ALPINE-TDCM-EDFA-MIB::alpineTESBISlotFwVer.1 }} - EDFA {{ ALPINE-TDCM-EDFA-MIB::alpineTESBISlotFwVer.2 }}]' + + sensors: + + temperature: + data: + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotTemperature + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.8.{{ $index }}' + descr: 'Slot {{ $index }}' + index: 'alpineTEBISlotTemperature.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + low_limit: alpineTeatTempLowAlarmThld + low_warn_limit: alpineTeatTempLowWarningThld + warn_limit : alpineTeatTempHighWarningThld + high_limit : alpineTeatTempHighAlarmThld + + - + oid: alpineGenCardEdfa + value: gceTemperature + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.8.{{ $index }}' + descr: 'Slot {{ $index }}' + index: 'gceTemperature.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + high_limit : gceaTemperatureThld + group: 'EDFA' + state: + data: + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotPower1Status + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.9.{{ $index }}' + descr: 'Slot {{ $index }} : Power 1' + index: 'alpineTEBISlotPower1Status.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + state_name: powerAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: alarm } + + + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotPower2Status + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.11.{{ $index }}' + descr: 'Slot {{ $index }} : Power 2' + index: 'alpineTEBISlotPower2Status.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + state_name: powerAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: alarm } + + - + oid: alpineTdcmEdfaSystem + value: alpineTEPowerCardPowerInStatus + num_oid: '.1.3.6.1.4.1.52326.2.1.4.1.8.{{ $index }}' + descr: 'Slot {{ $index }} : PSU Input' + index: 'alpineTEPowerCardPowerInStatus.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + state_name: psuPresence + states: + - { value: 0, generic: 0, graph: 0, descr: 'On' } + - { value: 1, generic: 2, graph: 0, descr: 'Off' } + + - + oid: alpineTdcmEdfaSystem + value: alpineTEPowerCardPowerOutStatus + num_oid: '.1.3.6.1.4.1.52326.2.1.4.1.10.{{ $index }}' + descr: 'Slot {{ $index }} : PSU Output' + index: 'alpineTEPowerCardPowerOutStatus.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + state_name: powerOutAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: highAlarm } + - { value: 2, generic: 2, graph: 0, descr: lowAlarm } + + - + oid: alpineGenCardEdfa + value: geaiLossInputAlarm + num_oid: '.1.3.6.1.4.1.52326.1.1.2.2.1.7.{{ $index }}' + descr: 'Slot {{ $index }} : Alarm Input Loss' + index: 'geaiLossInputAlarm.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Alarm' + state_name: lossAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: alarmOk } + - { value: 1, generic: 2, graph: 0, descr: lossAlarm } + + - + oid: alpineGenCardEdfa + value: geaiLossOutputAlarm + num_oid: '.1.3.6.1.4.1.52326.1.1.2.2.1.8.{{ $index }}' + descr: 'Slot {{ $index }} : Alarm Output Loss' + index: 'geaiLossOutputAlarm.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Alarm' + state_name: lossAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: alarmOk } + - { value: 1, generic: 2, graph: 0, descr: lossAlarm } + + - + oid: alpineTdcmEdfaSystem + value: alpineTESlotStatus + num_oid: '.1.3.6.1.4.1.52326.2.1.2.1.2.{{ $index }}' + descr: 'Slot {{ $index }} : Status' + index: 'alpineTESlotStatus.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Slot' + state_name: slotStatus + states: + - { value: 0, generic: 2, graph: 0, descr: noInserted } + - { value: 1, generic: 0, graph: 0, descr: inserted } + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan1Status + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.10.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 1' + index: 'alpineTEFanCardFan1Status.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Fan' + state_name: fanStatus + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: anormal } + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan2Status + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.12.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 2' + index: 'alpineTEFanCardFan2Status.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Fan' + state_name: fanStatus + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: anormal } + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan3Status + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.14.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 3' + index: 'alpineTEFanCardFan3Status.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Fan' + state_name: fanStatus + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: anormal } + + - + oid: alpineGenCardTdcm + value: gctiWorkMode + num_oid: '.1.3.6.1.4.1.52326.1.2.1.1.2.{{ $index }}' + descr: 'Slot {{ $index }} : Work mode' + index: 'gctiWorkMode.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Mode' + state_name: workModeTDCM + states: + - { value: 1, generic: 0, graph: 0, descr: manual } + - { value: 2, generic: 0, graph: 0, descr: auto } + + - + oid: alpineGenCardTdcm + value: gctiSaveConfig + num_oid: '.1.3.6.1.4.1.52326.1.2.1.1.6.{{ $index }}' + descr: 'Slot {{ $index }} : Save config' + index: 'gctiSaveConfig.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + state_name: saveConfigStatus + group: 'Config' + states: + - { value: 0, generic: 0, graph: 0, descr: saved } + - { value: 1, generic: 1, graph: 0, descr: issueSave } + - { value: 2, generic: 1, graph: 0, descr: saving } + + - + oid: alpineGenCardEdfa + value: gceMode + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.3.{{ $index }}' + descr: 'Slot {{ $index }} : Work mode' + entPhysicalIndex: '{{ $index }}' + group: 'Mode' + index: 'gceMode.{{ $index }}' + state_name: workModeEDFA + states: + - { value: 1, generic: 0, graph: 0, descr: AGC } + - { value: 2, generic: 0, graph: 0, descr: APC } + + - + oid: alpineGenCardEdfa + value: gceSaveConfig + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.9.{{ $index }}' + descr: 'Slot {{ $index }} : Save config' + index: 'gceSaveConfig.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + state_name: saveConfigStatus + group: 'Config' + states: + - { value: 0, generic: 0, graph: 0, descr: saved } + - { value: 1, generic: 1, graph: 0, descr: issueSave } + - { value: 2, generic: 1, graph: 0, descr: saving } + + - + oid: alpineGenCardEdfa + value: geaiCommonAlarm + num_oid: '.1.3.6.1.4.1.52326.1.1.2.2.1.3.{{ $index }}' + descr: 'Slot {{ $index }} : Common alarm' + index: 'geaiCommonAlarm.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Alarm' + state_name: commonAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: alarm } + + - + oid: alpineGenCardEdfa + value: geaiPumpTemperatureAlarm + num_oid: '.1.3.6.1.4.1.52326.1.1.2.2.1.5.{{ $index }}' + descr: 'Slot {{ $index }} : Temperature alarm' + index: 'geaiPumpTemperatureAlarm.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Alarm' + state_name: tempAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: alarm } + + - + oid: alpineGenCardEdfa + value: geaiPumpBiasAlarm + num_oid: '.1.3.6.1.4.1.52326.1.1.2.2.1.6.{{ $index }}' + descr: 'Slot {{ $index }} : Bias alarm' + index: 'geaiPumpBiasAlarm.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Alarm' + state_name: biasAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: noAlarm } + - { value: 1, generic: 2, graph: 0, descr: alarm } + + + fanspeed: + data: + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan1Speed + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.9.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 1' + index: 'alpineTEFanCardFan1Speed.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan2Speed + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.11.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 2' + index: 'alpineTEFanCardFan2Speed.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFan3Speed + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.13.{{ $index }}' + descr: 'Slot {{ $index }} : Fan 3' + index: 'alpineTEFanCardFan3Speed.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + dbm: + data: + - + oid: alpineGenCardEdfa + value: gceInputPower + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.10.{{ $index }}' + descr: 'Slot {{ $index }} : Power Input' + index: 'gceInputPower.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + low_limit: gceaInputPowerThld + group: 'Input' + + - + oid: alpineGenCardEdfa + value: gceOutputPower + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.6.{{ $index }}' + descr: 'Slot {{ $index }} : Power Output' + index: 'gceOuputPower.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + low_limit: gceaOutputPowerThld + group: 'Output' + + - + oid: alpineGenCardEdfa + value: gceOutputPowerTarget + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.4.{{ $index }}' + descr: 'Slot {{ $index }} : Power Output Target' + index: 'gceOutputPowerTarget.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Output' + + quality_factor: + data: + - + oid: alpineGenCardEdfa + value: gceGain + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.7.{{ $index }}' + descr: 'Slot {{ $index }} : Gain' + index: 'gceGain.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + - + oid: alpineGenCardEdfa + value: gceGainTarget + num_oid: '.1.3.6.1.4.1.52326.1.1.1.1.5.{{ $index }}' + descr: 'Slot {{ $index }} : Gain Target' + index: 'gceGainTarget.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + voltage: + data: + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotPower1Val + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.10.{{ $index }}' + descr: 'Slot {{ $index }} : Power 1' + index: 'alpineTEBISlotPower1Val.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotPower2Val + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.12.{{ $index }}' + descr: 'Slot {{ $index }} : Power 2' + index: 'alpineTEBISlotPower2Val.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + + - + oid: alpineTdcmEdfaSystem + value: alpineTEPowerCardPowerOutVal + num_oid: '.1.3.6.1.4.1.52326.2.1.4.1.9.{{ $index }}' + descr: 'Slot {{ $index }} : PSU Ouput' + index: 'alpineTEPowerCardPowerOutVal.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardPower1Val + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.8.{{ $index }}' + descr: 'Slot {{ $index }} : Fan' + index: 'alpineTEFanCardPower1Val.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Fan' + + count: + data: + - + oid: alpineTdcmEdfaSystem + value: alpineTEFanCardFansTotalCnt + num_oid: '.1.3.6.1.4.1.52326.2.1.5.1.2.{{ $index }}' + descr: 'Slot {{ $index }} : Fans' + index: 'alpineTEFanCardFansTotalCnt.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Fan' + - + oid: alpineTdcmEdfaSystem + value: alpineTEBISlotPowerTotalCnt + num_oid: '.1.3.6.1.4.1.52326.2.1.1.1.13.{{ $index }}' + descr: 'Slot {{ $index }} : Powers' + index: 'alpineTEBISlotPowerTotalCnt.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + group: 'Power' + + chromatic_dispersion: + data: + - + oid: alpineGenCardTdcm + value: gctiDefaultDispersion + num_oid: '.1.3.6.1.4.1.52326.1.2.1.1.3.{{ $index }}' + descr: 'Slot {{ $index }} : Default' + index: 'gctiDefaultDispersion.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + + - + oid: alpineGenCardTdcm + value: gctiCurrentDispersion + num_oid: '.1.3.6.1.4.1.52326.1.2.1.1.4.{{ $index }}' + descr: 'Slot {{ $index }} : Current' + index: 'gctiCurrentDispersion.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + diff --git a/priv/profiles/os_discovery/altalabs-ap.yaml b/priv/profiles/os_discovery/altalabs-ap.yaml new file mode 100644 index 00000000..f6fc9040 --- /dev/null +++ b/priv/profiles/os_discovery/altalabs-ap.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Alta (?[^ ]+) (?.+)/' diff --git a/priv/profiles/os_discovery/altalabs.yaml b/priv/profiles/os_discovery/altalabs.yaml new file mode 100644 index 00000000..f6fc9040 --- /dev/null +++ b/priv/profiles/os_discovery/altalabs.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Alta (?[^ ]+) (?.+)/' diff --git a/priv/profiles/os_discovery/alteonos.yaml b/priv/profiles/os_discovery/alteonos.yaml new file mode 100644 index 00000000..f263f74e --- /dev/null +++ b/priv/profiles/os_discovery/alteonos.yaml @@ -0,0 +1,21 @@ +mib: ALTEON-CHEETAH-SWITCH-MIB +modules: + mempools: + data: + - + total: ALTEON-CHEETAH-SWITCH-MIB::mpMemStatsTotal + free: ALTEON-CHEETAH-SWITCH-MIB::mpMemStatsFree + descr: 'Main Memory' + os: + features: ALTEON-CHEETAH-SWITCH-MIB::agEnabledSwFeatures.0 + hardware: + - ALTEON-CHEETAH-SWITCH-MIB::hwMainBoardNumber.0 + - ALTEON-CHEETAH-SWITCH-MIB::hwMainBoardRevision.0 + hardware_template: '{{ ALTEON-CHEETAH-SWITCH-MIB::hwMainBoardNumber.0 }} Vers. {{ ALTEON-CHEETAH-SWITCH-MIB::hwMainBoardRevision.0 }}' + serial: ALTEON-CHEETAH-SWITCH-MIB::hwSerialNumber.0 + version: ALTEON-CHEETAH-SWITCH-MIB::agSoftwareVersion.0 + processors: + data: + - + oid: mpCpuStatsUtil1Second + num_oid: '.1.3.6.1.4.1.1872.2.5.1.2.2.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/anyos.yaml b/priv/profiles/os_discovery/anyos.yaml new file mode 100644 index 00000000..8bd68772 --- /dev/null +++ b/priv/profiles/os_discovery/anyos.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' + serial: .1.3.6.1.4.1.890.1.2.2.2.0 diff --git a/priv/profiles/os_discovery/aos-emu2.yaml b/priv/profiles/os_discovery/aos-emu2.yaml new file mode 100644 index 00000000..fdd12000 --- /dev/null +++ b/priv/profiles/os_discovery/aos-emu2.yaml @@ -0,0 +1,8 @@ +modules: + os: + hardware: + - PowerNet-MIB::emsIdentProductNumber.0 + - PowerNet-MIB::emsIdentHardwareRev.0 + hardware_template: '{{ PowerNet-MIB::emsIdentProductNumber.0 }} {{ PowerNet-MIB::emsIdentHardwareRev.0 }}' + serial: PowerNet-MIB::emsIdentSerialNumber.0 + version: PowerNet-MIB::emsIdentFirmwareRev.0 diff --git a/priv/profiles/os_discovery/aos.yaml b/priv/profiles/os_discovery/aos.yaml new file mode 100644 index 00000000..87610947 --- /dev/null +++ b/priv/profiles/os_discovery/aos.yaml @@ -0,0 +1,51 @@ +mib: RADLAN-rndMng:RADLAN-HWENVIROMENT +modules: + os: + sysDescr_regex: '/(?OmniStack \S+ \S+|OS\S+)? ?(?\d+\.\d+\.\S+)?/' + hardware: .1.3.6.1.4.1.89.53.4.1.6.1 # RADLAN-Physicaldescription-MIB::rlPhdStackProductID + version: .1.3.6.1.4.1.89.53.14.1.2.1 # RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamSoftwareVersion + sensors: + state: + data: + - + oid: rlEnvMonFanStatusTable + value: rlEnvMonFanState + num_oid: '.1.3.6.1.4.1.89.83.1.1.1.3.{{ $index }}' + descr: 'Fan State Sensor' + index: 'FanStatus.{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: warning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notpresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 2 } + skip_values: + - + oid: rlEnvMonFanState + op: '=' + value: 5 + - + oid: rlEnvMonSupplyStatusTable + value: rlEnvMonSupplyState + num_oid: '.1.3.6.1.4.1.89.83.1.2.1.3.{{ $index }}' + descr: 'PowerSupply State Sensor' + index: 'PowerSupply.{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: warning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notpresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 2 } + skip_values: + - + oid: rlEnvMonSupplyState + op: '=' + value: 5 + processors: + data: + - + oid: rlCpuUtilDuringLastMinute + num_oid: '.1.3.6.1.4.1.89.1.8.{{ $index }}' + index: 0 diff --git a/priv/profiles/os_discovery/aos6.yaml b/priv/profiles/os_discovery/aos6.yaml new file mode 100755 index 00000000..97d14f75 --- /dev/null +++ b/priv/profiles/os_discovery/aos6.yaml @@ -0,0 +1,175 @@ +mib: ALCATEL-IND1-CHASSIS-MIB:ALCATEL-IND1-HEALTH-MIB:ALCATEL-IND1-PORT-MIB:ALCATEL-IND1-LAG-MIB +modules: + mempools: + data: + - + total: ALCATEL-IND1-SYSTEM-MIB::systemHardwareMemorySize + percent_used: ALCATEL-IND1-HEALTH-MIB::healthDeviceMemoryLatest + descr: 'Device Memory' + + os: + sysDescr_regex: '/(?OS\S*)? ?(?\d+\.\d+\.\S*)/' + processors: + data: + - + oid: healthDeviceCpu1MinAvg + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.16.1.1.1.14.{{ $index }}' + index: 0 + sensors: + additional_oids: + data: + - + oid: + - ifName + - entPhysicalName + - alclnkaggAggNumber + - alaStackMgrSlotNINumber + temperature: + data: + - + oid: ddmInfoEntry + value: ddmTemperature + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.5.1.1.2.5.1.1.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifName }} SFP Temperature' + index: 'ddmTemperature.{{ $index }}' + low_limit: ddmTempLowAlarm + low_warn_limit: ddmTempLowWarning + high_limit: ddmTempHiAlarm + warn_limit: ddmTempHiWarning + + voltage: + data: + - + oid: ddmInfoEntry + value: ddmSupplyVoltage + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.5.1.1.2.5.1.6.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifName }} SFP Voltage' + index: 'ddmSupplyVoltage.{{ $index }}' + low_limit: ddmSupplyVoltageLowAlarm + low_warn_limit: ddmSupplyVoltageLowWarning + high_limit: ddmSupplyVoltageHiAlarm + warn_limit: ddmSupplyVoltageHiWarning + + + current: + data: + - + oid: ddmInfoEntry + value: ddmTxBiasCurrent + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.5.1.1.2.5.1.11.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifName }} Tx Bias' + index: 'ddmTxBiasCurrent.{{ $index }}' + low_limit: ddmTxBiasCurrentLowAlarm + low_warn_limit: ddmTxBiasCurrentLowWarning + high_limit: ddmTxBiasCurrentHiAlarm + warn_limit: ddmTxBiasCurrentHiWarning + + dbm: + data: + - + oid: ddmInfoEntry + value: ddmRxOpticalPower + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.5.1.1.2.5.1.21.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifName }} Rx Power' + index: 'ddmRxOpticalPower.{{ $index }}' + low_limit: ddmRxOpticalPowerLowAlarm + low_warn_limit: ddmRxOpticalPowerLowWarning + high_limit: ddmRxOpticalPowerHiAlarm + warn_limit: ddmRxOpticalPowerHiWarning + - + oid: ddmInfoEntry + value: ddmTxOutputPower + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.5.1.1.2.5.1.16.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifName }} Tx Power' + index: 'ddmTxOutputPower.{{ $index }}' + low_limit: ddmTxOutputPowerLowAlarm + low_warn_limit: ddmTxOutputPowerLowWarning + high_limit: ddmTxOutputPowerHiAlarm + warn_limit: ddmTxOutputPowerHiWarning + state: + data: + - + oid: chasControlModuleTable + value: chasControlCertifyStatus + num_oid: '.1.3.6.1.4.1.6486.800.1.1.1.3.1.1.1.1.5.{{ $index }}' + descr: 'Certify/Restore Status' + group: Chassis + index: 'chasControlCertifyStatus.1' + state_name: chasControlCertifyStatus + states: + - { value: 1, generic: 2, graph: 1, descr: Unknown } + - { value: 2, generic: 1, graph: 1, descr: Need Certify } + - { value: 3, generic: 0, graph: 1, descr: Certified } + - + oid: chasControlModuleTable + value: chasControlSynchronizationStatus + num_oid: '.1.3.6.1.4.1.6486.800.1.1.1.3.1.1.1.1.6.{{ $index }}' + descr: 'Flash Between CMMs' + group: Chassis + index: 'chasControlSynchronizationStatus.1' + state_name: chasControlSynchronizationStatus + states: + - { value: 1, generic: 2, graph: 1, descr: Unknown } + - { value: 2, generic: 1, graph: 1, descr: Mono Control Module } + - { value: 3, generic: 1, graph: 1, descr: Not Synchronized } + - { value: 4, generic: 0, graph: 1, descr: Synchronized } + - + oid: alclnkaggAggEntry + value: alclnkaggAggNbrAttachedPorts + num_oid: '.1.3.6.1.4.1.6486.800.1.2.1.13.1.1.1.1.1.19.{{ $index }}' + descr: 'LACP Number {{ $alclnkaggAggNumber }}' + index: 'alclnkaggAggNbrAttachedPorts.{{ $index }}' + group: LACP + state_name: alclnkaggAggNbrAttachedPorts + states: + - { value: 1, generic: 1, graph: 1, descr: Not Redundant } + - { value: 2, generic: 0, graph: 1, descr: Redundant (2) } + - { value: 3, generic: 0, graph: 1, descr: Redundant (3) } + - { value: 4, generic: 0, graph: 1, descr: Redundant (4) } + - { value: 5, generic: 0, graph: 1, descr: Redundant (5) } + - { value: 6, generic: 0, graph: 1, descr: Redundant (6) } + - { value: 7, generic: 0, graph: 1, descr: Redundant (7) } + - { value: 8, generic: 0, graph: 1, descr: Redundant (8) } + skip_values: + - + oid: alclnkaggAggNbrAttachedPorts + op: '=' + value: 0 + - + oid: chasEntPhysOperStatus + num_oid: '.1.3.6.1.4.1.6486.800.1.1.1.1.1.1.1.2.{{ $index }}' + descr: '{{ $entPhysicalName }}' + group: Components + index: 'chasEntPhysOperStatus.{{ $index }}' + states: + - { value: 1, generic: 0, graph: 1, descr: Up } + - { value: 2, generic: 2, graph: 1, descr: Down } + - { value: 3, generic: 3, graph: 1, descr: Testing } + - { value: 4, generic: 3, graph: 1, descr: Unknown } + - { value: 5, generic: 0, graph: 1, descr: Secondary } + - { value: 6, generic: 2, graph: 1, descr: NotPresent } + - { value: 7, generic: 2, graph: 1, descr: UnPowered } + - { value: 8, generic: 0, graph: 1, descr: Master } + - { value: 9, generic: 0, graph: 1, descr: Idle } + - { value: 10, generic: 0, graph: 1, descr: PwrSave } + skip_values: + - + oid: entPhysicalName + op: 'regex' + value: '/port|Chassis|PS-1|PS-2/' + diff --git a/priv/profiles/os_discovery/aos7.yaml b/priv/profiles/os_discovery/aos7.yaml new file mode 100755 index 00000000..f05f6438 --- /dev/null +++ b/priv/profiles/os_discovery/aos7.yaml @@ -0,0 +1,271 @@ +mib: ALCATEL-IND1-CHASSIS-MIB:ALCATEL-IND1-HEALTH-MIB:ALCATEL-IND1-PORT-MIB:ALCATEL-IND1-VIRTUAL-CHASSIS-MIB:ALCATEL-IND1-LAG-MIB +modules: + mempools: + data: + - + total: ALCATEL-IND1-SYSTEM-MIB::systemHardwareMemorySize + percent_used: ALCATEL-IND1-HEALTH-MIB::healthModuleMemory1MinAvg + precision: 1024 + descr: 'Device Memory' + skip_values: + - + oid: ALCATEL-IND1-SYSTEM-MIB::systemHardwareMemorySize + op: '<=' + value: 0 + os: + sysDescr_regex: '/(?OS\S+)? ?(?\d+\.\d+\.\S+)/' + processors: + data: + - + oid: healthModuleCpu1MinAvg + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.16.1.1.1.1.1.11.{{ $index }}' + index: 0 + # force to CMM oid + skip_values: + - {'oid': 'index', 'op': '!=', 'value': '0'} + sensors: + additional_oids: + data: + - + oid: + - ifName + - entPhysicalName + - alclnkaggAggNumber + current: + data: + - + oid: ddmPortInfoTable + value: ddmPortTxBiasCurrent + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.5.1.1.2.6.1.12.{{ $index }}' + descr: '{{ $ifName:0 }} TX Bias' + divisor: 1000 + low_limit: ddmPortTxBiasCurrentLowAlarm + low_warn_limit: ddmPortTxBiasCurrentLowWarning + high_limit: ddmPortTxBiasCurrentHiAlarm + warn_limit: ddmPortTxBiasCurrentHiWarning + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + skip_values: 0 + dbm: + data: + - + oid: ddmPortInfoTable + value: ddmPortRxOpticalPower + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.5.1.1.2.6.1.22.{{ $index }}' + descr: '{{ $ifName:0 }} RX Power' + divisor: 1000 + index: 'rx-{{ $index }}' + low_limit: ddmPortRxOpticalPowerLowAlarm + low_warn_limit: ddmPortRxOpticalPowerLowWarning + high_limit: ddmPortRxOpticalPowerHiAlarm + warn_limit: ddmPortRxOpticalPowerHiWarning + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + skip_values: + - + oid: ddmPortRxOpticalPower + op: '=' + value: -2147483648 + - + oid: ddmPortTxOutputPower + op: '=' + value: 0 + + - + oid: ddmPortInfoTable + value: ddmPortTxOutputPower + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.5.1.1.2.6.1.17.{{ $index }}' + descr: '{{ $ifName:0 }} TX Power' + divisor: 1000 + index: 'tx-{{ $index }}' + low_limit: ddmPortTxOutputPowerLowAlarm + low_warn_limit: ddmPortTxOutputPowerLowWarning + high_limit: ddmPortTxOutputPowerHiAlarm + warn_limit: ddmPortTxOutputPowerHiWarning + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + skip_values: + - + oid: ddmPortRxOpticalPower + op: '=' + value: 0 + - + oid: ddmPortTxOutputPower + op: '=' + value: 0 + fanspeed: + data: + - + oid: alaChasEntPhysFanTable + value: alaChasEntPhysFanSpeed + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.3.1.1.11.1.4.{{ $index }}' + descr: 'CHASSIS-{{ $entPhysicalName:0 }} Fan {{ $subindex1 }}' + low_limit: 1000 + high_limit: 18000 + skip_values: + - + oid: alaChasEntPhysFanAirflow + op: '=' + value: 2 + state: + data: + - + oid: chasControlModuleTable + value: chasControlCertifyStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.3.1.1.1.1.4.{{ $index }}' + descr: 'Certify/Restore Status' + group: Chassis + index: 'chasControlCertifyStatus.1' + state_name: chasControlCertifyStatus + states: + - { value: 1, generic: 2, graph: 1, descr: Unknown } + - { value: 2, generic: 1, graph: 1, descr: Need Certify } + - { value: 3, generic: 0, graph: 1, descr: Certified } + snmp_bulk: false + - + oid: chasControlModuleTable + value: chasControlSynchronizationStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.3.1.1.1.1.6.{{ $index }}' + descr: 'Flash Between CMMs' + group: Chassis + index: 'chasControlSynchronizationStatus.1' + state_name: chasControlSynchronizationStatus + states: + - { value: 1, generic: 2, graph: 1, descr: Unknown } + - { value: 2, generic: 1, graph: 1, descr: Mono Control Module } + - { value: 3, generic: 1, graph: 1, descr: Not Synchronized } + - { value: 4, generic: 0, graph: 1, descr: Synchronized } + snmp_bulk: false + - + oid: alclnkaggAggNbrAttachedPorts + value: alclnkaggAggNbrAttachedPorts + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.13.1.1.1.1.1.19.{{ $index }}' + descr: 'LACP Number {{ $alclnkaggAggNumber }}' + index: 'alclnkaggAggNbrAttachedPorts.{{ $index }}' + group: LACP + state_name: alclnkaggAggNbrAttachedPorts + states: + - { value: 1, generic: 1, graph: 1, descr: Not Redundant } + - { value: 2, generic: 0, graph: 1, descr: Redundant (2) } + - { value: 3, generic: 0, graph: 1, descr: Redundant (3) } + - { value: 4, generic: 0, graph: 1, descr: Redundant (4) } + - { value: 5, generic: 0, graph: 1, descr: Redundant (5) } + - { value: 6, generic: 0, graph: 1, descr: Redundant (6) } + - { value: 7, generic: 0, graph: 1, descr: Redundant (7) } + - { value: 8, generic: 0, graph: 1, descr: Redundant (8) } + skip_values: + - + oid: alclnkaggAggNbrAttachedPorts + op: '=' + value: 0 + + - + oid: alaChasEntPhysFanTable + value: alaChasEntPhysFanStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.3.1.1.11.1.2.{{ $index }}' + descr: 'CHASSIS-{{ $entPhysicalName:0 }} Fan {{ $subindex1 }}' + group: Fans + index: 'alaChasEntPhysFanStatus.{{ $index }}' + state_name: alaChasEntPhysFanStatus + states: + - { value: 0, generic: 2, graph: 1, descr: no-error } + - { value: 1, generic: 1, graph: 1, descr: notRunning } + - { value: 2, generic: 0, graph: 1, descr: running } + - + oid: chasEntPhysOperStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.1.1.1.1.2.{{ $index }}' + descr: '{{ $entPhysicalName:0 }}' + group: Components + index: 'chasEntPhysOperStatus.{{ $index }}' + states: + - { value: 1, generic: 0, graph: 1, descr: Up } + - { value: 2, generic: 2, graph: 1, descr: Down } + - { value: 3, generic: 3, graph: 1, descr: Testing } + - { value: 4, generic: 3, graph: 1, descr: Unknown } + - { value: 5, generic: 0, graph: 1, descr: Secondary } + - { value: 6, generic: 2, graph: 1, descr: NotPresent } + - { value: 7, generic: 2, graph: 1, descr: UnPowered } + - { value: 8, generic: 0, graph: 1, descr: Master } + - { value: 9, generic: 0, graph: 1, descr: Idle } + - { value: 10, generic: 0, graph: 1, descr: PwrSave } + skip_values: + - + oid: entPhysicalName + op: 'regex' + value: '/TRANSCEIVER/' + - + oid: virtualChassisStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.69.1.1.2.1.5.{{ $index }}' + descr: 'Virtual-Chassis Unit {{ $index }}' + group: Virtual Chassis + index: 'virtualChassisStatus.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 1, descr: Init } + - { value: 1, generic: 0, graph: 1, descr: Running } + - { value: 2, generic: 2, graph: 1, descr: Invalid Chassis Id } + - { value: 3, generic: 2, graph: 1, descr: Hello Down } + - { value: 4, generic: 2, graph: 1, descr: Duplicate Chassis Id } + - { value: 5, generic: 2, graph: 1, descr: Mismatch Image } + - { value: 6, generic: 2, graph: 1, descr: Mismatch Chassis Type } + - { value: 7, generic: 2, graph: 1, descr: Mismatch Hello Interval } + - { value: 8, generic: 2, graph: 1, descr: Mismatch Control Vlan } + - { value: 9, generic: 2, graph: 1, descr: Mismatch Group } + - { value: 10, generic: 2, graph: 1, descr: Mismatch License Config } + - { value: 11, generic: 2, graph: 1, descr: Invalid License } + - { value: 12, generic: 2, graph: 1, descr: Split Topology } + - { value: 13, generic: 2, graph: 1, descr: Command Shutdown } + - { value: 14, generic: 2, graph: 1, descr: Failure Shutdown } + - + oid: virtualChassisVflMemberPortOperStatus + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.69.1.1.7.1.3.{{ $index }}' + descr: 'Virtual-Chassis Port {{ $ifName:2 }}' + group: Virtual Chassis + index: 'virtualChassisVflMemberPortOperStatus.{{ $index }}' + states: + - { value: 0, generic: 1, graph: 1, descr: Disabled } + - { value: 2, generic: 2, graph: 1, descr: Down } + - { value: 1, generic: 0, graph: 1, descr: Up } + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex2 }}' + temperature: + data: + - + oid: chasChassisEntry + value: chasCPMAHardwareBoardTemp + num_oid: '.1.3.6.1.4.1.6486.801.1.1.1.3.1.1.3.1.8.{{ $index }}' + descr: '{{ $entPhysicalName:0 }} Temperature' + group: Chassis + index: 'chasCPMAHardwareBoardTemp.{{ $index }}' + high_limit: chasDangerTempThreshold + warn_limit: chasTempThreshold + - + oid: ddmPortInfoTable + value: ddmPortTemperature + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.5.1.1.2.6.1.2.{{ $index }}' + low_limit: ddmPortTempLowAlarm + low_warn_limit: ddmPortTempLowWarning + high_limit: ddmPortTempHiAlarm + warn_limit: ddmPortTempHiWarning + divisor: 1000 + descr: '{{ $ifName:0 }} DDM Temperature' + group: DDM + index: 'rx.{{ $index }}' + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + skip_values: 0 + voltage: + data: + - + oid: ddmPortInfoTable + value: ddmPortSupplyVoltage + num_oid: '.1.3.6.1.4.1.6486.801.1.2.1.5.1.1.2.6.1.7.{{ $index }}' + descr: '{{ $ifName:0 }} TX Voltage' + divisor: 1000 + low_limit: ddmPortSupplyVoltageLowAlarm + low_warn_limit: ddmPortSupplyVoltageLowWarning + high_limit: ddmPortSupplyVoltageHiAlarm + warn_limit: ddmPortSupplyVoltageHiWarning + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + skip_values: 0 + diff --git a/priv/profiles/os_discovery/apc-cpdu.yaml b/priv/profiles/os_discovery/apc-cpdu.yaml new file mode 100644 index 00000000..d3e5cd19 --- /dev/null +++ b/priv/profiles/os_discovery/apc-cpdu.yaml @@ -0,0 +1,120 @@ +modules: + os: + hardware: PowerNet-MIB::pduNamePlatePartNumber.1 + version: PowerNet-MIB::pduNamePlateFirmwareVersion.1 + serial: PowerNet-MIB::pduNamePlateSerialNumber.1 + features: PowerNet-MIB::pduNamePlateModelNumber.1 + sensors: + current: + data: + - oid: PowerNet-MIB::pduOutletMeteredStatusTable + value: PowerNet-MIB::pduOutletMeteredStatusCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.32.5.9.1.5.{{ $index }}' + index: 'pduOutletMeteredStatusCurrent.{{ $index }}' + descr: '{{ PowerNet-MIB::pduOutletMeteredStatusNumber }} {{ PowerNet-MIB::pduOutletMeteredStatusName }}' + divisor: 100 + multiplier: 1 + group: 'Outlets' + skip_values: + - oid: PowerNet-MIB::pduOutletMeteredStatusNumber + op: '=' + value: 0 + power: + data: + - oid: PowerNet-MIB::pduUnitStatusTable + value: PowerNet-MIB::pduUnitStatusActivePower + num_oid: '.1.3.6.1.4.1.318.1.1.32.2.4.1.4.{{ $index }}' + descr: 'Active {{ PowerNet-MIB::pduUnitStatusName }}' + index: 'pduUnitStatusActivePower.{{ $index }}' + group: 'PDU' + - oid: PowerNet-MIB::pduUnitStatusTable + value: PowerNet-MIB::pduUnitStatusPeakPower + num_oid: '.1.3.6.1.4.1.318.1.1.32.2.4.1.6.{{ $index }}' + descr: 'Peak {{ PowerNet-MIB::pduUnitStatusName }}' + index: 'pduUnitStatusPeakPower.{{ $index }}' + group: 'PDU' + - oid: PowerNet-MIB::pduOutletMeteredStatusTable + value: PowerNet-MIB::pduOutletMeteredStatusActivePower + num_oid: '.1.3.6.1.4.1.318.1.1.32.5.9.1.6.{{ $index }}' + index: 'pduOutletMeteredStatusActivePower.{{ $index }}' + descr: '{{ PowerNet-MIB::pduOutletMeteredStatusNumber }} {{ PowerNet-MIB::pduOutletMeteredStatusName }}' + group: 'Outlets' + skip_values: + - oid: PowerNet-MIB::pduOutletMeteredStatusNumber + op: '=' + value: 0 + power_factor: + data: + - oid: PowerNet-MIB::pduUnitStatusTable + value: PowerNet-MIB::pduUnitStatusPowerFactor + num_oid: '.1.3.6.1.4.1.318.1.1.32.2.4.1.13.{{ $index }}' + index: 'pduUnitStatusPowerFactor.{{ $index }}' + group: 'PDU' + descr: '{{ PowerNet-MIB::pduUnitStatusName }}' + divisor: 100 + multiplier: 1 + low_limit: -1 + low_warn_limit: 0.85 + high_limit: 1.1 + - oid: PowerNet-MIB::pduOutletMeteredStatusTable + value: PowerNet-MIB::pduOutletMeteredStatusPowerFactor + num_oid: '.1.3.6.1.4.1.318.1.1.32.5.9.1.7.{{ $index }}' + index: 'pduOutletMeteredStatusPowerFactor.{{ $index }}' + descr: '{{ PowerNet-MIB::pduOutletMeteredStatusNumber }} {{ PowerNet-MIB::pduOutletMeteredStatusName }}' + divisor: 100 + multiplier: 1 + low_limit: -1 + low_warn_limit: 0.85 + high_limit: 1.1 + group: 'Outlets' + skip_values: + - oid: PowerNet-MIB::pduOutletMeteredStatusNumber + op: '=' + value: 0 + state: + data: + - oid: PowerNet-MIB::pduUnitStatusTable + value: PowerNet-MIB::pduUnitStatusLoadState + num_oid: '.1.3.6.1.4.1.318.1.1.32.2.4.1.3.{{ $index }}' + descr: 'Load {{ PowerNet-MIB::pduUnitStatusName }}' + index: 'pduUnitStatusLoadState.{{ $index }}' + group: 'PDU' + state_name: PowerNet-MIB::pduUnitStatusLoadState + states: + - { value: 1, descr: 'Upper Critical', generic: 2, graph: 0 } + - { value: 2, descr: 'Upper Warning', generic: 1, graph: 0 } + - { value: 3, descr: 'Lower Warning', generic: 1, graph: 0 } + - { value: 4, descr: 'Lower Critical', generic: 2, graph: 0 } + - { value: 5, descr: 'Normal', generic: 0, graph: 0 } + - oid: PowerNet-MIB::pduOutletMeteredStatusTable + value: PowerNet-MIB::pduOutletMeteredStatusLoadState + num_oid: '.1.3.6.1.4.1.318.1.1.32.5.9.1.4.{{ $index }}' + index: 'pduOutletMeteredStatusLoadState.{{ $index }}' + descr: 'Load {{ PowerNet-MIB::pduOutletMeteredStatusNumber }} {{ PowerNet-MIB::pduOutletMeteredStatusName }}' + state_name: PowerNet-MIB::pduOutletMeteredStatusLoadState + group: 'Outlets' + skip_values: + - oid: PowerNet-MIB::pduOutletMeteredStatusNumber + op: '=' + value: 0 + states: + - { value: 1, descr: 'Upper Critical', generic: 2, graph: 0 } + - { value: 2, descr: 'Upper Warning', generic: 1, graph: 0 } + - { value: 3, descr: 'Lower Warning', generic: 1, graph: 0 } + - { value: 4, descr: 'Lower Critical', generic: 2, graph: 0 } + - { value: 5, descr: 'Normal', generic: 0, graph: 0 } + - oid: PowerNet-MIB::pduOutletSwitchedStatusTable + value: PowerNet-MIB::pduOutletSwitchedStatusState + num_oid: '.1.3.6.1.4.1.318.1.1.32.5.4.1.4.{{ $index }}' + index: 'pduOutletSwitchedStatusState.{{ $index }}' + descr: 'Status {{ PowerNet-MIB::pduOutletSwitchedStatusNumber }} {{ PowerNet-MIB::pduOutletSwitchedStatusName }}' + state_name: PowerNet-MIB::pduOutletSwitchedStatusState + group: 'Outlets' + skip_values: + - oid: PowerNet-MIB::pduOutletSwitchedStatusNumber + op: '=' + value: 0 + states: + - { value: 0, descr: 'off/unused', generic: 3, graph: 0 } + - { value: 1, descr: 'on', generic: 0, graph: 0 } + diff --git a/priv/profiles/os_discovery/apc-epdu.yaml b/priv/profiles/os_discovery/apc-epdu.yaml new file mode 100644 index 00000000..f34d7c2f --- /dev/null +++ b/priv/profiles/os_discovery/apc-epdu.yaml @@ -0,0 +1,38 @@ +mib: PowerNet-MIB +modules: + os: + hardware: PowerNet-MIB::ePDUDeviceStatusModelNumber.1 + version: + - PowerNet-MIB::ePDUDeviceStatusVersion.1 + - .1.3.6.1.4.1.1.1.38.1 + version_regex: '/Ver(?.*)/' + serial: PowerNet-MIB::ePDUDeviceStatusSerialNumber.1 + sensors: + current: + data: + - + oid: ePDUPhaseStatusCurrent + divisor: 100 + num_oid: .1.3.6.1.4.1.318.1.1.30.4.2.1.5.{{ $index }} + descr: "Current" + + voltage: + data: + - + oid: ePDUPhaseStatusVoltage + divisor: 10 + num_oid: .1.3.6.1.4.1.318.1.1.30.4.2.1.4.{{ $index }} + descr: "Voltage" + power: + data: + - + oid: ePDUPhaseStatusActivePower + num_oid: .1.3.6.1.4.1.318.1.1.30.4.2.1.6.{{ $index }} + descr: "Power" + power_consumed: + data: + - + oid: ePDUPhaseStatusEnergy + divisor: 1000 + num_oid: .1.3.6.1.4.1.318.1.1.30.4.2.1.10.{{ $index }} + descr: "Consumed Power" diff --git a/priv/profiles/os_discovery/apc-mgeups.yaml b/priv/profiles/os_discovery/apc-mgeups.yaml new file mode 100644 index 00000000..23b737eb --- /dev/null +++ b/priv/profiles/os_discovery/apc-mgeups.yaml @@ -0,0 +1,241 @@ +mib: MG-SNMP-UPS-MIB +modules: + os: + hardware: + - MG-SNMP-UPS-MIB::upsmgIdentFamilyName.0 + - MG-SNMP-UPS-MIB::upsmgIdentModelName.0 + hardware_template: '{{ MG-SNMP-UPS-MIB::upsmgIdentFamilyName.0 }} {{ MG-SNMP-UPS-MIB::upsmgIdentModelName.0 }}' + serial: MG-SNMP-UPS-MIB::upsmgIdentSerialNumber.0 + version: MG-SNMP-UPS-MIB::upsmgIdentFirmwareVersion.0 + sensors: + power: + data: + - + oid: upsmgOutputPhaseTable + value: mgoutputLoadPerPhase + num_oid: '.1.3.6.1.4.1.705.1.7.2.1.4.{{ $index }}' + multiplier: 1000 + descr: 'Output (VA) Phase {{ $subindex0 }}' + index: 'kva.mgoutputLoadPerPhase.{{ $index }}' + current: + data: + - + oid: upsmgInputPhaseTable + value: mginputCurrent + num_oid: '.1.3.6.1.4.1.705.1.6.2.1.6.{{ $index }}' + divisor: 10 + descr: 'Input Current Phase {{ $subindex0 }}' + index: 'mginputCurrent.{{ $index }}' + - + oid: upsmgOutputPhaseTable + value: mgoutputCurrent + num_oid: '.1.3.6.1.4.1.705.1.7.2.1.5.{{ $index }}' + divisor: 10 + descr: 'Output Current Phase {{ $subindex0 }}' + index: 'mgoutputCurrent.{{ $index }}' + - + oid: upsmgBattery + value: upsmgBatteryCurrent + num_oid: '.1.3.6.1.4.1.705.1.5.6.{{ $index }}' + divisor: 10 + descr: 'Battery' + index: 'upsmgBatteryCurrent.{{ $index }}' + temperature: + data: + - + oid: upsmgBattery + value: upsmgBatteryTemperature + num_oid: '.1.3.6.1.4.1.705.1.5.7.{{ $index }}' + descr: 'Battery' + index: 'upsmgBatteryTemperature.{{ $index }}' + frequency: + data: + - + oid: upsmgInputPhaseTable + value: mginputFrequency + num_oid: '.1.3.6.1.4.1.705.1.6.2.1.3.{{ $index }}' + divisor: 10 + descr: 'Input Frequency Phase {{ $subindex0 }}' + index: 'mginputFrequency.{{ $index }}' + - + oid: upsmgOutputPhaseTable + value: mgoutputFrequency + num_oid: '.1.3.6.1.4.1.705.1.7.2.1.3.{{ $index }}' + divisor: 10 + descr: 'Output Frequency Phase {{ $subindex0 }}' + index: 'mgoutputFrequency.{{ $index }}' + delay: + data: + - + oid: upsmgBattery + value: upsmgBatteryRemainingTime + num_oid: '.1.3.6.1.4.1.705.1.5.1.{{ $index }}' + descr: 'Remaining time' + index: 'upsmgBatteryRemainingTime.{{ $index }}' + charge: + data: + - + oid: upsmgBattery + value: upsmgBatteryLevel + num_oid: '.1.3.6.1.4.1.705.1.5.2.{{ $index }}' + descr: 'Remaining battery capacity' + index: 'upsmgBatteryLevel.{{ $index }}' + voltage: + data: + - + oid: upsmgInputPhaseTable + value: mginputVoltage + num_oid: '.1.3.6.1.4.1.705.1.6.2.1.2.{{ $index }}' + divisor: 10 + descr: 'Input Phase/Phase {{ $subindex0 }}' + index: 'mginputVoltage.{{ $index }}' + - + oid: upsmgOutputPhaseTable + value: mgoutputVoltage + num_oid: '.1.3.6.1.4.1.705.1.7.2.1.2.{{ $index }}' + divisor: 10 + descr: 'Output Phase/Phase {{ $subindex0 }}' + index: 'mgoutputVoltage.{{ $index }}' + - + oid: upsmgBattery + value: upsmgBatteryVoltage + num_oid: '.1.3.6.1.4.1.705.1.5.5.{{ $index }}' + divisor: 10 + descr: 'Battery' + index: 'upsmgBatteryVoltage.{{ $index }}' + + state: + data: + - + oid: upsmgOutputOnBattery + value: upsmgOutputOnBattery + num_oid: '.1.3.6.1.4.1.705.1.7.3.{{ $index }}' + descr: 'Input Status' + index: 'upsmgOutputOnBattery.{{ $index }}' + state_name: upsmgOutputOnBattery + states: + - { descr: On Battery, graph: 0, value: 1, generic: 2 } + - { descr: On Input Power, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOnByPass + value: upsmgOutputOnByPass + num_oid: '.1.3.6.1.4.1.705.1.7.4.{{ $index }}' + descr: 'Bypass Status' + index: 'upsmgOutputOnBypass.{{ $index }}' + state_name: upsmgOutputOnByPass + states: + - { descr: On ByPass, graph: 0, value: 1, generic: 2 } + - { descr: Not Active, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputUtilityOff + value: upsmgOutputUtilityOff + num_oid: '.1.3.6.1.4.1.705.1.7.7.{{ $index }}' + descr: 'Utility Status' + index: 'upsmgOutputUtilityOff.{{ $index }}' + state_name: upsmgOutputUtilityOff + states: + - { descr: No Voltage, graph: 0, value: 1, generic: 2 } + - { descr: Output OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputInverterOff + value: upsmgOutputInverterOff + num_oid: '.1.3.6.1.4.1.705.1.7.9.{{ $index }}' + descr: 'UPS Inverter Status' + index: 'upsmgOutputInverterOff.{{ $index }}' + state_name: upsmgOutputInverterOff + states: + - { descr: Inverter Off, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOverLoad + value: upsmgOutputOverLoad + num_oid: '.1.3.6.1.4.1.705.1.7.10.{{ $index }}' + descr: 'Output OverLoad' + index: 'upsmgOutputOverLoad.{{ $index }}' + state_name: upsmgOutputOverLoad + states: + - { descr: Yes, graph: 0, value: 1, generic: 2 } + - { descr: No, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOverTemp + value: upsmgOutputOverTemp + num_oid: '.1.3.6.1.4.1.705.1.7.11.{{ $index }}' + descr: 'Over Temperature' + index: 'upsmgOutputOverTemp.{{ $index }}' + state_name: upsmgOutputOverTemp + states: + - { descr: Over Temperature, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryFaultBattery + num_oid: '.1.3.6.1.4.1.705.1.5.9.{{ $index }}' + descr: 'Battery Fault' + index: 'upsmgBatteryFaultBattery.{{ $index }}' + state_name: upsmgBatteryFaultBattery + states: + - { descr: Fault, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryReplacement + num_oid: '.1.3.6.1.4.1.705.1.5.11.{{ $index }}' + descr: 'Battery Replacement Status' + index: 'upsmgBatteryReplacement.{{ $index }}' + state_name: upsmgBatteryReplacement + states: + - { descr: To be replaced, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryLowBattery + num_oid: '.1.3.6.1.4.1.705.1.5.14.{{ $index }}' + descr: 'Battery Charge Status' + index: 'upsmgBatteryLowBattery.{{ $index }}' + state_name: upsmgBatteryLowBattery + states: + - { descr: Low Battery, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryChargerFault + num_oid: '.1.3.6.1.4.1.705.1.5.15.{{ $index }}' + descr: 'Battery Charger Status' + index: 'upsmgBatteryChargerFault.{{ $index }}' + state_name: upsmgBatteryChargerFault + states: + - { descr: Fault, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryLowCondition + num_oid: '.1.3.6.1.4.1.705.1.5.16.{{ $index }}' + descr: 'Battery Condition' + index: 'upsmgBatteryLowCondition.{{ $index }}' + state_name: upsmgBatteryLowCondition + states: + - { descr: Low Condition, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgInputBadStatus + value: upsmgInputBadStatus + num_oid: '.1.3.6.1.4.1.705.1.6.3.{{ $index }}' + descr: 'Input Status' + index: 'upsmgInputBadStatus.{{ $index }}' + state_name: upsmgInputBadStatus + states: + - { descr: Bad Status, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgInputLineFailCause + value: upsmgInputLineFailCause + num_oid: '.1.3.6.1.4.1.705.1.6.4.{{ $index }}' + descr: 'Input Line Fail Cause' + index: 'upsmgInputLineFailCause.{{ $index }}' + state_name: upsmgInputLineFailCause + states: + - { descr: 'No Failure', graph: 0, value: 1, generic: 0 } + - { descr: 'Tolerance Volt. Out', graph: 0, value: 2, generic: 2 } + - { descr: 'Tolerance Freq. Out', graph: 0, value: 3, generic: 2 } + - { descr: 'No Voltage', graph: 0, value: 4, generic: 2 } + diff --git a/priv/profiles/os_discovery/apc-netbotz.yaml b/priv/profiles/os_discovery/apc-netbotz.yaml new file mode 100644 index 00000000..43a8d89f --- /dev/null +++ b/priv/profiles/os_discovery/apc-netbotz.yaml @@ -0,0 +1,34 @@ +modules: + os: + # there are no Symbolic object names in current MIBs for these + version: .1.3.6.1.4.1.318.1.4.2.4.1.4.1 + hardware: .1.3.6.1.4.1.318.1.4.2.2.1.2.1 + serial: .1.3.6.1.4.1.318.1.4.2.2.1.3.1 + sensors: + temperature: + data: + - oid: NetBotz50-MIB::tempSensorTable + value: NetBotz50-MIB::tempSensorValueInt + num_oid: '.1.3.6.1.4.1.52674.500.4.1.1.1.8.{{ $index }}' + descr: NetBotz50-MIB::tempSensorLabel + index: '{{ $index }}' + humidity: + data: + - oid: NetBotz50-MIB::humiSensorTable + value: NetBotz50-MIB::humiSensorValueInt + num_oid: '.1.3.6.1.4.1.52674.500.4.1.2.1.8.{{ $index }}' + descr: NetBotz50-MIB::humiSensorLabel + index: '{{ $index }}' + state: + data: + - oid: NetBotz50-MIB::smokeSensorTable + value: NetBotz50-MIB::smokeSensorValue + num_oid: '.1.3.6.1.4.1.52674.500.4.2.12.1.2.{{ $index }}' + descr: NetBotz50-MIB::smokeSensorLabel + index: '{{ $index }}' + high_limit: 1 + state_name: NetBotz50-MIB::smokeSensor + states: + - { value: -1, descr: 'undefined', generic: 3, graph: 0 } + - { value: 0, descr: 'no smoke', generic: 0, graph: 0 } + - { value: 1, descr: 'smoke detected', generic: 2, graph: 0 } diff --git a/priv/profiles/os_discovery/apc.yaml b/priv/profiles/os_discovery/apc.yaml new file mode 100644 index 00000000..19e17714 --- /dev/null +++ b/priv/profiles/os_discovery/apc.yaml @@ -0,0 +1,1383 @@ +mib: PowerNet-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - airIRG2RDT2ThresholdsRackInletHighTempMetric + - airIRG2RDT2ThresholdsSupplyAirHighTempMetric + - airIRG2RDT2ThresholdsReturnAirHighTempMetric + state: + data: + - + oid: upsBasicOutputStatus + value: upsBasicOutputStatus + num_oid: '.1.3.6.1.4.1.318.1.1.1.4.1.1.{{ $index }}' + descr: Output Status + index: '{{ $index }}' + state_name: upsBasicOutputStatus + states: + - { descr: unknown, graph: 0, value: 1, generic: 3 } + - { descr: onLine, graph: 0, value: 2, generic: 0 } + - { descr: onBattery, graph: 0, value: 3, generic: 1 } + - { descr: onSmartBoost, graph: 0, value: 4, generic: 0 } + - { descr: timedSleeping, graph: 0, value: 5, generic: 0 } + - { descr: softwareBypass, graph: 0, value: 6, generic: 1 } + - { descr: off, graph: 0, value: 7, generic: 2 } + - { descr: rebooting, graph: 0, value: 8, generic: 1 } + - { descr: switchedBypass, graph: 0, value: 9, generic: 1 } + - { descr: hardwareFailureBypass, graph: 0, value: 10, generic: 2 } + - { descr: sleepingUntilPowerReturn, graph: 0, value: 11, generic: 1 } + - { descr: onSmartTrim, graph: 0, value: 12, generic: 1 } + - { descr: ecoMode, graph: 0, value: 13, generic: 0 } + - { descr: hotStandby, graph: 0, value: 14, generic: 0 } + - { descr: onBatteryTest, graph: 0, value: 15, generic: 1 } + - { descr: emergencyStaticBypass, graph: 0, value: 16, generic: 2 } + - { descr: staticBypassStandby, graph: 0, value: 17, generic: 1 } + - { descr: powerSavingMode, graph: 0, value: 18, generic: 0 } + - { descr: spotMode, graph: 0, value: 19, generic: 0 } + - { descr: eConversion, graph: 0, value: 20, generic: 0 } + - { descr: chargerSpotmode, graph: 0, value: 21, generic: 0 } + - { descr: inverterSpotmode, graph: 0, value: 22, generic: 0 } + - + oid: memInputsConfigTable + state_name: memInputNormalState + value: memInputNormalState + num_oid: '.1.3.6.1.4.1.318.1.1.10.4.3.4.1.7.{{ $index }}' + index: 'memInputNormalState.{{ $index }}' + descr: 'Normal state: {{ $memInputName }}' + states: + - { descr: Closed, graph: 1, value: 1, generic: 0 } + - { descr: Open, graph: 1, value: 2, generic: 0 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - { descr: No State, graph: 1, value: 4, generic: 0 } + - + oid: memInputsStatusTable + state_name: memInputsStatusAlarmStatus + value: memInputsStatusAlarmStatus + num_oid: '.1.3.6.1.4.1.318.1.1.10.4.3.2.1.7.{{ $index }}' + index: 'memInputStatusAlarmState.{{ $index }}' + descr: memInputsStatusInputName + states: + - { descr: Ok, graph: 1, value: 1, generic: 0 } + - { descr: Alarm, graph: 1, value: 2, generic: 1 } + - { descr: Critical, graph: 1, value: 3, generic: 2 } + - + oid: airIRRP100UnitStatusOperateMode + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.1.{{ $index }}' + descr: Unit Status + states: + - { descr: standby, graph: 1, value: 1, generic: 1 } + - { descr: on, graph: 1, value: 2, generic: 0 } + - { descr: idle, graph: 1, value: 3, generic: 1 } + - { descr: prestart, graph: 1, value: 4, generic: 1 } + - { descr: service, graph: 1, value: 5, generic: 1 } + - { descr: backup, graph: 1, value: 6, generic: 1 } + - { descr: assist, graph: 1, value: 7, generic: 1 } + - + oid: airIRRP100UnitStatusInputState + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.21.{{ $index }}' + descr: Input State + states: + - { descr: open, graph: 1, value: 1, generic: 0 } + - { descr: closed, graph: 1, value: 2, generic: 2 } + - + oid: airIRRP100UnitStatusOutputState + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.22.{{ $index }}' + descr: Output State + states: + - { descr: open, graph: 1, value: 1, generic: 0 } + - { descr: closed, graph: 1, value: 2, generic: 2 } + - + oid: airIRRP500UnitStatusOperateMode + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.1.{{ $index }}' + descr: Unit Status + states: + - { descr: standby, graph: 1, value: 1, generic: 1 } + - { descr: on, graph: 1, value: 2, generic: 0 } + - { descr: idle, graph: 1, value: 3, generic: 1 } + - { descr: prestart, graph: 1, value: 4, generic: 1 } + - { descr: backup, graph: 1, value: 5, generic: 1 } + - { descr: assist, graph: 1, value: 6, generic: 1 } + - + oid: airIRRP500UnitStatusInputState + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.21.{{ $index }}' + descr: Input State + states: + - { descr: open, graph: 1, value: 1, generic: 0 } + - { descr: closed, graph: 1, value: 2, generic: 2 } + - + oid: airIRRP500UnitStatusOutputState + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.22.{{ $index }}' + descr: Output State + states: + - { descr: open, graph: 1, value: 1, generic: 0 } + - { descr: closed, graph: 1, value: 2, generic: 2 } + - + oid: rPDU2PhaseStatusTable + state_name: rPDU2PhaseStatusLoadState + value: rPDU2PhaseStatusLoadState + num_oid: '.1.3.6.1.4.1.318.1.1.26.6.3.1.4.{{ $index }}' + index: 'rPDU2PhaseStatusLoadState.{{ $index }}' + descr: 'Load State, Phase #{{ $index }}' + states: + - { descr: lowLoad, graph: 1, value: 1, generic: 0 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: nearOverload, graph: 1, value: 3, generic: 1 } + - { descr: overload, graph: 1, value: 4, generic: 2 } + - + oid: rPDU2DeviceStatusTable + state_name: rPDU2DeviceStatusLoadState + value: rPDU2DeviceStatusLoadState + num_oid: '.1.3.6.1.4.1.318.1.1.26.4.3.1.4.{{ $index }}' + index: 'rPDU2DeviceStatusLoadState.{{ $index }}' + descr: 'Device State' + states: + - { descr: lowLoad, graph: 1, value: 1, generic: 0 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: nearOverload, graph: 1, value: 3, generic: 1 } + - { descr: overload, graph: 1, value: 4, generic: 2 } + - { descr: notsupported, graph: 1, value: 5, generic: 3 } + - + oid: rPDU2DeviceStatusTable + state_name: rPDU2DeviceStatusPowerSupplyAlarm + value: rPDU2DeviceStatusPowerSupplyAlarm + num_oid: '.1.3.6.1.4.1.318.1.1.26.4.3.1.12.{{ $index }}' + index: 'rPDU2DeviceStatusPowerSupplyAlarm.{{ $index }}' + descr: 'Power Supply State' + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: alarm, graph: 1, value: 2, generic: 2 } + - + oid: rPDU2SensorTempHumidityStatusTable + state_name: rPDU2SensorTempHumidityStatusTempStatus + value: rPDU2SensorTempHumidityStatusTempStatus + num_oid: '.1.3.6.1.4.1.318.1.1.26.10.2.2.1.9.{{ $index }}' + index: 'rPDU2SensorTempHumidityStatusTempStatus.{{ $index }}' + descr: 'Temperature Probe Status' + states: + - { descr: notPresent, graph: 1, value: 1, generic: 3 } + - { descr: belowMin, graph: 1, value: 2, generic: 2 } + - { descr: belowLow, graph: 1, value: 3, generic: 1 } + - { descr: normal, graph: 1, value: 4, generic: 0 } + - { descr: aboveHigh, graph: 1, value: 5, generic: 1 } + - { descr: aboveMax, graph: 1, value: 6, generic: 2 } + skip_values: + - + oid: rPDU2SensorTempHumidityStatusTempStatus + op: '=' + value: 1 + + - + oid: rPDU2SensorTempHumidityStatusTable + state_name: rPDU2SensorTempHumidityStatusHumidityStatus + value: rPDU2SensorTempHumidityStatusHumidityStatus + num_oid: '.1.3.6.1.4.1.318.1.1.26.10.2.2.1.11.{{ $index }}' + index: 'rPDU2SensorTempHumidityStatusHumidityStatus.{{ $index }}' + descr: 'Humidity Probe Status' + states: + - { descr: notPresent, graph: 1, value: 1, generic: 3 } + - { descr: belowMin, graph: 1, value: 2, generic: 2 } + - { descr: belowLow, graph: 1, value: 3, generic: 1 } + - { descr: normal, graph: 1, value: 4, generic: 0 } + - { descr: aboveHigh, graph: 1, value: 5, generic: 1 } + - { descr: aboveMax, graph: 1, value: 6, generic: 2 } + skip_values: + - + oid: rPDU2SensorTempHumidityStatusHumidityStatus + op: '=' + value: 1 + - + oid: atsStatusSourceAStatus + value: atsStatusSourceAStatus + state_name: atsStatusSourceAStatus + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.12.{{ $index }}' + index: 'atsStatusSourceAStatus.{{ $index }}' + descr: Source A Status + states: + - { descr: Fail, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: atsStatusSourceBStatus + value: atsStatusSourceBStatus + state_name: atsStatusSourceBStatus + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.13.{{ $index }}' + index: 'atsStatusSourceBStatus.{{ $index }}' + descr: Source B Status + states: + - { descr: Fail, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: atsStatusSwitchStatus + value: atsStatusSwitchStatus + state_name: atsStatusSwitchStatus + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.10.{{ $index }}' + index: 'atsStatusSwitchStatus.{{ $index }}' + descr: Global Switch Status + states: + - { descr: Fail, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: atsStatusSelectedSource + value: atsStatusSelectedSource + state_name: atsStatusSelectedSource + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.2.{{ $index }}' + index: 'atsStatusSelectedSource.{{ $index }}' + descr: Selected Source + states: + - { descr: Source A, graph: 0, value: 1, generic: 3 } + - { descr: Source B, graph: 0, value: 2, generic: 3 } + - + oid: atsStatusRedundancyState + value: atsStatusRedundancyState + state_name: atsStatusRedundancyState + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.3.{{ $index }}' + index: 'atsStatusRedundancyState.{{ $index }}' + descr: Redundancy State + states: + - { descr: Redundancy Lost, graph: 0, value: 1, generic: 2 } + - { descr: Fully Redundant, graph: 0, value: 2, generic: 0 } + - + oid: atsStatusPhaseSyncStatus + value: atsStatusPhaseSyncStatus + state_name: atsStatusPhaseSyncStatus + num_oid: '.1.3.6.1.4.1.318.1.1.8.5.1.14.{{ $index }}' + index: 'atsStatusPhaseSyncStatus.{{ $index }}' + descr: Phase Sync Status + states: + - { descr: In Sync, graph: 0, value: 1, generic: 0 } + - { descr: Out Of Sync, graph: 0, value: 2, generic: 2 } + - + oid: sPDUOutletControlTable + value: sPDUOutletCtl + num_oid: '.1.3.6.1.4.1.318.1.1.4.4.2.1.3.{{ $index }}' + descr: '#{{ $subindex0 }} : {{ sPDUOutletCtlName }}' + index: 'sPDUOutletCtl.{{ $index }}' + state_name: sPDUOutletCtl + states: + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - { value: 2, generic: 3, graph: 0, descr: outletOff } + - { value: 3, generic: 1, graph: 0, descr: outletReboot } + - { value: 4, generic: 2, graph: 0, descr: outletUnknown } + - { value: 5, generic: 0, graph: 0, descr: outletOnWithDelay } + - { value: 6, generic: 3, graph: 0, descr: outletOffWithDelay } + - { value: 7, generic: 1, graph: 0, descr: outletRebootWithDelay } + - + oid: airFMGroup + value: airFMGroupSysStatus + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.3.1.{{ $index }}' + descr: 'airFM Group Status' + index: 'airFMGroupSysStatus.{{ $index }}' + state_name: airFMGroupSysStatus + states: + - { value: 1, generic: 0, graph: 0, descr: Online } + - { value: 2, generic: 3, graph: 0, descr: Idle } + - { value: 3, generic: 0, graph: 0, descr: LoadShare } + - { value: 4, generic: 1, graph: 0, descr: Offline } + - { value: 5, generic: 2, graph: 0, descr: Failed } + - { value: 6, generic: 3, graph: 0, descr: Disabled } + - { value: 7, generic: 1, graph: 0, descr: Undefined } + - + oid: AirFMModCoolEntry + value: airFMModComp1 + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.4.2.1.2.{{ $index }}' + descr: 'Compressor 1' + index: 'airFMModComp1.{{ $index }}' + state_name: airFMModComp1 + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: On } + - { value: 3, generic: 0, graph: 0, descr: Off } + - + oid: AirFMModCoolEntry + value: airFMModComp2 + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.4.2.1.3.{{ $index }}' + descr: 'Compressor 2' + index: 'airFMModComp2.{{ $index }}' + state_name: airFMModComp2 + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: On } + - { value: 3, generic: 0, graph: 0, descr: Off } + - + oid: airFMSysCoolState + value: airFMSysCoolState + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.5.8.{{ $index }}' + descr: 'Cooling' + index: 'airFMSysCoolState.{{ $index }}' + state_name: airFMSysCoolState + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: Disabled } + - { value: 3, generic: 0, graph: 0, descr: Enabled } + - + oid: airFMSysHumState + value: airFMSysHumState + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.6.1.{{ $index }}' + descr: 'Humidifier' + index: 'airFMSysHumState.{{ $index }}' + state_name: airFMSysHumState + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: Disabled } + - { value: 3, generic: 0, graph: 0, descr: Enabled } + - + oid: airFMSysDehumState + value: airFMSysDehumState + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.7.1.{{ $index }}' + descr: 'Dehumidifier' + index: 'airFMSysDehumState.{{ $index }}' + state_name: airFMSysDehumState + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: Disabled } + - { value: 3, generic: 0, graph: 0, descr: Enabled } + - + oid: airFMSysReheatState + value: airFMSysReheatState + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.8.1.{{ $index }}' + descr: 'Heating' + index: 'airFMSysReheatState.{{ $index }}' + state_name: airFMSysReheatState + skip_values: 1 + states: + - { value: 2, generic: 0, graph: 0, descr: Disabled } + - { value: 3, generic: 0, graph: 0, descr: Enabled } + - + oid: xATSSwitchStatusSelectedSource + value: xATSSwitchStatusSelectedSource + num_oid: '.1.3.6.1.4.1.318.1.1.17.3.1.1.{{ $index }}' + descr: 'ATS Source' + index: 'xATSSwitchStatusSelectedSource.{{ $index }}' + state_name: xATSSwitchStatusSelectedSource + states: + - { value: 1, generic: 2, graph: 0, descr: none } + - { value: 2, generic: 0, graph: 0, descr: source1 } + - { value: 3, generic: 1, graph: 0, descr: source2 } + - { value: 4, generic: 2, graph: 0, descr: fault } + - { value: 5, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSwitchStatusOperationalMode + value: xATSSwitchStatusOperationalMode + num_oid: '.1.3.6.1.4.1.318.1.1.17.3.1.2.{{ $index }}' + descr: 'ATS Operation Mode' + index: 'xATSSwitchStatusOperationalMode.{{ $index }}' + state_name: xATSSwitchStatusOperationalMode + states: + - { value: 1, generic: 0, graph: 0, descr: automatic } + - { value: 2, generic: 2, graph: 0, descr: notInAutoAbnormal } + - { value: 3, generic: 1, graph: 0, descr: notInAuto } + - { value: 4, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSwitchStatusEngineStartSignal + value: xATSSwitchStatusEngineStartSignal + num_oid: '.1.3.6.1.4.1.318.1.1.17.3.1.4.{{ $index }}' + descr: 'Engine Start Signal' + index: 'xATSSwitchStatusEngineStartSignal.{{ $index }}' + state_name: xATSSwitchStatusEngineStartSignal + states: + - { value: 1, generic: 1, graph: 0, descr: run } + - { value: 2, generic: 0, graph: 0, descr: stop } + - { value: 3, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSource1Position + value: xATSSource1Position + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.1.2.{{ $index }}' + descr: 'Source1 Switch Position' + index: 'xATSSource1Position.{{ $index }}' + state_name: xATSSource1Position + states: + - { value: 1, generic: 0, graph: 0, descr: open } + - { value: 2, generic: 0, graph: 0, descr: closed } + - { value: 3, generic: 2, graph: 0, descr: tripped } + - { value: 4, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSource2Position + value: xATSSource2Position + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.2.2.{{ $index }}' + descr: 'Source2 Switch Position' + index: 'xATSSource2Position.{{ $index }}' + state_name: xATSSource2Position + states: + - { value: 1, generic: 0, graph: 0, descr: open } + - { value: 2, generic: 0, graph: 0, descr: closed } + - { value: 3, generic: 2, graph: 0, descr: tripped } + - { value: 4, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSource1Quality + value: xATSSource1Quality + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.1.4.{{ $index }}' + descr: 'Source1 Quality' + index: 'xATSSource1Quality.{{ $index }}' + state_name: xATSSource1Quality + states: + - { value: 1, generic: 0, graph: 0, descr: sourceGood } + - { value: 2, generic: 1, graph: 0, descr: lowVoltage } + - { value: 3, generic: 1, graph: 0, descr: highVoltage } + - { value: 4, generic: 1, graph: 0, descr: phaseImbalance } + - { value: 5, generic: 1, graph: 0, descr: freqOutOfRange } + - { value: 6, generic: 1, graph: 0, descr: badRotation } + - { value: 7, generic: 3, graph: 0, descr: unknown } + - + oid: xATSSource2Quality + value: xATSSource2Quality + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.2.4.{{ $index }}' + descr: 'Source2 Quality' + index: 'xATSSource2Quality.{{ $index }}' + state_name: xATSSource2Quality + states: + - { value: 1, generic: 0, graph: 0, descr: sourceGood } + - { value: 2, generic: 1, graph: 0, descr: lowVoltage } + - { value: 3, generic: 1, graph: 0, descr: highVoltage } + - { value: 4, generic: 1, graph: 0, descr: phaseImbalance } + - { value: 5, generic: 1, graph: 0, descr: freqOutOfRange } + - { value: 6, generic: 1, graph: 0, descr: badRotation } + - { value: 7, generic: 3, graph: 0, descr: unknown } + - + oid: xATSTestingStatusTestStatus + value: xATSTestingStatusTestStatus + num_oid: '.1.3.6.1.4.1.318.1.1.17.5.1.2.{{ $index }}' + descr: 'Test Status' + index: 'xATSTestingStatusTestStatus.{{ $index }}' + state_name: xATSTestingStatusTestStatus + group: Test + states: + - { value: 1, generic: 0, graph: 0, descr: noTestInProcess } + - { value: 2, generic: 0, graph: 0, descr: testPending } + - { value: 3, generic: 0, graph: 0, descr: startingEngine } + - { value: 4, generic: 0, graph: 0, descr: engineWarmingUp } + - { value: 5, generic: 0, graph: 0, descr: awaitingTransferToS2 } + - { value: 6, generic: 0, graph: 0, descr: testingWithLoad } + - { value: 7, generic: 0, graph: 0, descr: awaitingRetransferToS1 } + - { value: 8, generic: 0, graph: 0, descr: testingWithoutLoad } + - { value: 9, generic: 0, graph: 0, descr: stoppingEngine } + - { value: 10, generic: 0, graph: 0, descr: holdingOnGenerator } + - + oid: xATSTestingResultsLastResult + value: xATSTestingResultsLastResult + num_oid: '.1.3.6.1.4.1.318.1.1.17.5.2.2.{{ $index }}' + descr: 'Last Test Result' + index: 'xATSTestingResultsLastResult.{{ $index }}' + state_name: xATSTestingResultsLastResult + group: Test + states: + - { value: 1, generic: 0, graph: 0, descr: noResultsAvailable } + - { value: 2, generic: 0, graph: 0, descr: startTestPassed } + - { value: 3, generic: 0, graph: 0, descr: loadTestPassed } + - { value: 4, generic: 2, graph: 0, descr: startSignalFailure } + - { value: 5, generic: 1, graph: 0, descr: failedGenNotInAuto } + - { value: 6, generic: 2, graph: 0, descr: failedGenEmerStop } + - { value: 7, generic: 2, graph: 0, descr: failedGenShutdown } + - { value: 8, generic: 2, graph: 0, descr: failedGenDidNotStart } + - { value: 9, generic: 2, graph: 0, descr: failedS2NeverGood } + - { value: 10, generic: 2, graph: 0, descr: genFailedDuringWarmup } + - { value: 11, generic: 2, graph: 0, descr: failureOnXferToS1 } + - { value: 12, generic: 2, graph: 0, descr: genFailedLoaded } + - { value: 13, generic: 2, graph: 0, descr: failureOnRexferToS2 } + - { value: 14, generic: 1, graph: 0, descr: failedOnCooldown } + - { value: 15, generic: 1, graph: 0, descr: genFailedToStop } + - { value: 16, generic: 2, graph: 0, descr: failedAtsInternalFault } + - { value: 17, generic: 1, graph: 0, descr: failedAtsNotInAuto } + - { value: 18, generic: 3, graph: 0, descr: canceledManualTest } + - { value: 19, generic: 3, graph: 0, descr: canceledScheduledTest } + - + oid: xATSGeneratorStatusOperational + value: xATSGeneratorStatusOperational + num_oid: '.1.3.6.1.4.1.318.1.1.18.1.2.2.{{ $index }}' + descr: 'Generator Status' + index: 'xATSGeneratorStatusOperational.{{ $index }}' + state_name: xATSGeneratorStatusOperational + group: Generator + states: + - { value: 1, generic: 1, graph: 0, descr: nocomm } + - { value: 2, generic: 1, graph: 0, descr: off } + - { value: 3, generic: 0, graph: 0, descr: ready } + - { value: 4, generic: 0, graph: 0, descr: starting } + - { value: 5, generic: 0, graph: 0, descr: idle } + - { value: 6, generic: 0, graph: 0, descr: running } + - { value: 7, generic: 0, graph: 0, descr: normalStop } + - { value: 8, generic: 2, graph: 0, descr: emergencyStop } + - { value: 9, generic: 1, graph: 0, descr: notInAuto } + - { value: 10, generic: 1, graph: 0, descr: shutdown } + - { value: 11, generic: 3, graph: 0, descr: unknown } + - + oid: xATSGeneratorStatusModeSwitchPosition + value: xATSGeneratorStatusModeSwitchPosition + num_oid: '.1.3.6.1.4.1.318.1.1.18.1.2.2.{{ $index }}' + descr: 'Mode Switch' + index: 'xATSGeneratorStatusModeSwitchPosition.{{ $index }}' + state_name: xATSGeneratorStatusModeSwitchPosition + group: Generator + states: + - { value: 1, generic: 1, graph: 0, descr: off } + - { value: 2, generic: 1, graph: 0, descr: manual } + - { value: 3, generic: 0, graph: 0, descr: automatic } + - { value: 4, generic: 3, graph: 0, descr: unknown } + - + oid: xATSGeneratorAdvStatusOilLevel + value: xATSGeneratorAdvStatusOilLevel + num_oid: '.1.3.6.1.4.1.318.1.1.18.1.3.5.{{ $index }}' + descr: 'Oil Level' + index: 'xATSGeneratorAdvStatusOilLevel.{{ $index }}' + state_name: xATSGeneratorAdvStatusOilLevel + group: Generator + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 1, graph: 0, descr: low } + - { value: 3, generic: 3, graph: 0, descr: unknown } + - + oid: xATSGeneratorAdvStatusCoolantLevel + value: xATSGeneratorAdvStatusCoolantLevel + num_oid: '.1.3.6.1.4.1.318.1.1.18.1.3.5.{{ $index }}' + descr: 'Coolant Level' + index: 'xATSGeneratorAdvStatusCoolantLevel.{{ $index }}' + state_name: xATSGeneratorAdvStatusCoolantLevel + group: Generator + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 1, graph: 0, descr: low } + - { value: 3, generic: 3, graph: 0, descr: unknown } + - + oid: xPDUSystemBreakerTable + value: xPDUSystemBreakerPosition + num_oid: '.1.3.6.1.4.1.318.1.1.15.4.1.2.1.3.{{ $index }}' + descr: 'Breaker - {{ $xPDUSystemBreakerDescription }}' + index: 'xPDUSystemBreakerPosition.{{ $index }}' + state_name: xPDUSystemBreakerPosition + states: + - { descr: open, graph: 0, value: 1, generic: 0 } + - { descr: closed, graph: 0, value: 2, generic: 0 } + - { descr: unknown, graph: 0, value: 3, generic: 3 } + - + oid: xPDUEPOMode + value: xPDUEPOMode + num_oid: '.1.3.6.1.4.1.318.1.1.15.7.1.{{ $index }}' + descr: 'Emergency Power Off (EPO)' + index: 'xPDUEPOMode.{{ $index }}' + state_name: xPDUEPOMode + states: + - { descr: armed, graph: 0, value: 1, generic: 0 } + - { descr: disarmed, graph: 0, value: 2, generic: 1 } + - { descr: unknown, graph: 0, value: 3, generic: 3 } + - + oid: xPDUTransformTempStatus + value: xPDUTransformTempStatus + num_oid: '.1.3.6.1.4.1.318.1.1.15.7.2.{{ $index }}' + descr: 'Transformer Temperature' + index: 'xPDUTransformTempStatus.{{ $index }}' + state_name: xPDUTransformTempStatus + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: overtemp, graph: 0, value: 2, generic: 1 } + - { descr: noTransformerPresent, graph: 0, value: 3, generic: 0 } + - { descr: unknown, graph: 0, value: 4, generic: 3 } + skip_values: 3 + - + oid: xPDUCoolingFanStatus + value: xPDUCoolingFanStatus + num_oid: '.1.3.6.1.4.1.318.1.1.15.7.3.{{ $index }}' + descr: 'Cooling Fan' + index: 'xPDUCoolingFanStatus.{{ $index }}' + state_name: xPDUCoolingFanStatus + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: failed, graph: 0, value: 2, generic: 2 } + - { descr: noCoolingFansPresent, graph: 0, value: 3, generic: 0 } + - { descr: unknown, graph: 0, value: 4, generic: 3 } + skip_values: 3 + - + oid: upsAdvInputLineFailCause + value: upsAdvInputLineFailCause + num_oid: '.1.3.6.1.4.1.318.1.1.1.3.2.5.{{ $index }}' + descr: 'Last failure cause' + index: 'upsAdvInputLineFailCause.{{ $index }}' + state_name: upsAdvInputLineFailCause + states: + - { descr: noTransfer, graph: 0, value: 1, generic: 0 } + - { descr: highLineVoltage, graph: 0, value: 2, generic: 0 } + - { descr: brownout, graph: 0, value: 3, generic: 0 } + - { descr: blackout, graph: 0, value: 4, generic: 0 } + - { descr: smallMomentarySag, graph: 0, value: 5, generic: 0 } + - { descr: deepMomentarySag, graph: 0, value: 6, generic: 0 } + - { descr: smallMomentarySag, graph: 0, value: 7, generic: 0 } + - { descr: largeMomentarySpike, graph: 0, value: 8, generic: 0 } + - { descr: selfTest, graph: 0, value: 9, generic: 0 } + - { descr: rateOfVoltageChange, graph: 0, value: 10, generic: 0 } + - + oid: upsAdvTestDiagnosticsResults + num_oid: '.1.3.6.1.4.1.318.1.1.1.7.2.3.{{ $index }}' + descr: UPS diagnostics status + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: failed, graph: 0, value: 2, generic: 3 } + - { descr: invalidTest, graph: 0, value: 3, generic: 1 } + - { descr: testInProgress, graph: 0, value: 4, generic: 1 } + - + oid: upsOutletGroupControlTable + value: upsOutletGroupControlCommand + num_oid: '.1.3.6.1.4.1.318.1.1.1.12.3.2.1.3.{{ $index }}' + group: 'UPS Outlet Group Status' + descr: 'Main: {{ $upsOutletGroupControlName }}' + index: 'upsOutletGroupControlCommand.{{ $index }}' + state_name: upsOutletGroupControlCommand + states: + - { value: 1, graph: 0, generic: 0, descr: Immediate On} + - { value: 2, graph: 0, generic: 1, descr: Immediate Off} + - { value: 3, graph: 0, generic: 1, descr: Immediate Reboot With Or Without AC} + - { value: 4, graph: 0, generic: 1, descr: Delayed On} + - { value: 5, graph: 0, generic: 1, descr: Delayed Off} + - { value: 6, graph: 0, generic: 1, descr: Delayed Reboot With Or Without AC} + - { value: 7, graph: 0, generic: 1, descr: Cancel Pending Command} + - { value: 8, graph: 0, generic: 3, descr: Control Unknown} + - { value: 9, graph: 0, generic: 1, descr: Immediate Reboot Shutdown} + - { value: 10, graph: 0, generic: 1, descr: Delayed Reboot Shutdown} + skip_values: + - + oid: upsOutletGroupControlOutletType + op: '!=' + value: 2 + - + oid: upsOutletGroupControlTable + value: upsOutletGroupControlCommand + num_oid: '.1.3.6.1.4.1.318.1.1.1.12.3.2.1.3.{{ $index }}' + group: 'UPS Outlet Group Status' + descr: '{{ $upsOutletGroupControlName }}' + index: 'upsOutletGroupControlCommand.{{ $index }}' + state_name: upsOutletGroupControlCommand + states: + - { value: 1, graph: 0, generic: 0, descr: Immediate On} + - { value: 2, graph: 0, generic: 1, descr: Immediate Off} + - { value: 3, graph: 0, generic: 1, descr: Immediate Reboot With Or Without AC} + - { value: 4, graph: 0, generic: 1, descr: Delayed On} + - { value: 5, graph: 0, generic: 1, descr: Delayed Off} + - { value: 6, graph: 0, generic: 1, descr: Delayed Reboot With Or Without AC} + - { value: 7, graph: 0, generic: 1, descr: Cancel Pending Command} + - { value: 8, graph: 0, generic: 3, descr: Control Unknown} + - { value: 9, graph: 0, generic: 1, descr: Immediate Reboot Shutdown} + - { value: 10, graph: 0, generic: 1, descr: Delayed Reboot Shutdown} + skip_values: + - + oid: upsOutletGroupControlOutletType + op: '!=' + value: 1 + + temperature: + data: + - + oid: airIRRP100UnitStatusRackInletTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.3.{{ $index }}' + index: 'airIRRP100UnitStatusRackInletTempMetric.{{ $index }}' + descr: Rack Inlet + divisor: 10 + - + oid: airIRRP100UnitStatusSupplyAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.5.{{ $index }}' + index: 'airIRRP100UnitStatusSupplyAirTempMetric.{{ $index }}' + descr: Supply Air + divisor: 10 + - + oid: airIRRP100UnitStatusReturnAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.7.{{ $index }}' + index: 'airIRRP100UnitStatusReturnAirTempMetric.{{ $index }}' + descr: Return Air + divisor: 10 + - + oid: airIRRP100UnitStatusRackInletTemperature1Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.24.{{ $index }}' + index: 'airIRRP100UnitStatusRackInletTemperature1Metric.{{ $index }}' + descr: 'Inlet #1' + divisor: 10 + - + oid: airIRRP100UnitStatusRackInletTemperature2Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.26.{{ $index }}' + index: 'airIRRP100UnitStatusRackInletTemperature2Metric.{{ $index }}' + descr: 'Inlet #2' + divisor: 10 + - + oid: airIRRP100UnitStatusRackInletTemperature3Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.28.{{ $index }}' + index: 'airIRRP100UnitStatusRackInletTemperature3Metric.{{ $index }}' + descr: 'Inlet #3' + divisor: 10 + - + oid: airIRRP100UnitStatusCompressorDriveHeatSinkTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.41.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveHeatSinkTempMetric.{{ $index }}' + descr: 'Compressor Drive Heatsink' + divisor: 10 + - + oid: airIRRP100UnitStatusCompressorDriveControlCardTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.43.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveControlCardTempMetric.{{ $index }}' + descr: 'Compressor Drive Control Card' + divisor: 10 + - + oid: airIRRP500UnitStatusSupplyAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.5.{{ $index }}' + index: 'airIRRP500UnitStatusSupplyAirTempMetric.{{ $index }}' + descr: Supply Air + divisor: 10 + - + oid: airIRRP500UnitStatusReturnAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.7.{{ $index }}' + index: 'airIRRP500UnitStatusReturnAirTempMetric.{{ $index }}' + descr: Return Air + divisor: 10 + - + oid: airIRRP500UnitStatusRackInletTemperature1Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.24.{{ $index }}' + index: 'airIRRP500UnitStatusRackInletTemperature1Metric.{{ $index }}' + descr: 'Inlet #1' + divisor: 10 + - + oid: airIRRP500UnitStatusRackInletTemperature2Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.26.{{ $index }}' + index: 'airIRRP500UnitStatusRackInletTemperature2Metric.{{ $index }}' + descr: 'Inlet #2' + divisor: 10 + - + oid: airIRRP500UnitStatusRackInletTemperature3Metric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.28.{{ $index }}' + index: 'airIRRP500UnitStatusRackInletTemperature3Metric.{{ $index }}' + descr: 'Inlet #3' + divisor: 10 + - + oid: airIRG2RDT2StatusRackInletTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.7.{{ $index }}' + index: 'airIRG2RDT2StatusRackInletTempMetric.{{ $index }}' + descr: 'Rack Inlet' + divisor: 10 + high_limit: airIRG2RDT2ThresholdsRackInletHighTempMetric + - + oid: airIRG2RDT2StatusSupplyAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.9.{{ $index }}' + index: 'airIRG2RDT2StatusSupplyAirTempMetric.{{ $index }}' + descr: 'Supply Air' + divisor: 10 + high_limit: airIRG2RDT2ThresholdsSupplyAirHighTempMetric + - + oid: airIRG2RDT2StatusReturnAirTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.11.{{ $index }}' + index: 'airIRG2RDT2StatusReturnAirTempMetric.{{ $index }}' + descr: 'Return Air' + divisor: 10 + high_limit: airIRG2RDT2ThresholdsReturnAirHighTempMetric + - + oid: airIRG2RDT2StatusSuctionTempMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.13.{{ $index }}' + index: 'airIRG2RDT2StatusSuctionTempMetric.{{ $index }}' + descr: 'Suction' + divisor: 10 + - + oid: rPDU2SensorTempHumidityStatusTable + value: rPDU2SensorTempHumidityStatusTempC + num_oid: '.1.3.6.1.4.1.318.1.1.26.10.2.2.1.8.{{ $index }}' + index: 'rPDU2SensorTempHumidityStatusTempC.{{ $index }}' + descr: 'Temperature Probe' + divisor: 10 + skip_values: + - + oid: rPDU2SensorTempHumidityStatusType + op: '=' + value: 4 + - + oid: airFMModSupplyTempC + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.2.{{ $index }}' + index: 'airFMModSupplyTempC.{{ $index }}' + descr: 'Supply Air' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMModReturnTempC + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.5.{{ $index }}' + index: 'airFMModReturnTempC.{{ $index }}' + descr: 'Return Air' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMSysCoolSetpointC + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.5.10.{{ $index }}' + index: 'airFMSysCoolSetpointC.{{ $index }}' + descr: 'Cooling Setpoint' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMSysReheatSetpointC + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.8.3.{{ $index }}' + index: 'airFMSysReheatSetpointC.{{ $index }}' + descr: 'Heating Setpoint' + divisor: 10 + skip_values: -2147483648 + humidity: + data: + - + oid: airIRRP100UnitStatusSupplyHumidity + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.8.{{ $index }}' + index: 'airIRRP100UnitStatusSupplyHumidity.{{ $index }}' + descr: Supply + divisor: 10 + - + oid: airIRRP100UnitStatusReturnHumidity + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.8.{{ $index }}' + index: 'airIRRP100UnitStatusReturnHumidity.{{ $index }}' + descr: Return + divisor: 10 + - + oid: airIRRP500UnitStatusSupplyHumidity + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.8.{{ $index }}' + index: 'airIRRP500UnitStatusSupplyHumidity.{{ $index }}' + descr: Supply + divisor: 10 + - + oid: airIRRP500UnitStatusReturnHumidity + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.8.{{ $index }}' + index: 'airIRRP500UnitStatusSupplyHumidity.{{ $index }}' + descr: Return + divisor: 10 + - + oid: rPDU2SensorTempHumidityStatusTable + value: rPDU2SensorTempHumidityStatusRelativeHumidity + num_oid: '.1.3.6.1.4.1.318.1.1.26.10.2.2.1.10.{{ $index }}' + index: 'rPDU2SensorTempHumidityStatusRelativeHumidity.{{ $index }}' + descr: 'Humidity Probe' + skip_values: + - + oid: rPDU2SensorTempHumidityStatusType + op: '=' + value: 4 + - + oid: rPDU2SensorTempHumidityStatusRelativeHumidity + op: '<' + value: 0 + - + oid: airFMModSupplyHum + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.4.{{ $index }}' + index: 'airFMModSupplyHum.{{ $index }}' + descr: 'Supply Air' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMModReturnHum + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.7.{{ $index }}' + index: 'airFMModReturnHum.{{ $index }}' + descr: 'Return Air' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMSysHumSetpoint + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.6.3.{{ $index }}' + index: 'airFMSysHumSetpoint.{{ $index }}' + descr: 'Humidifier Setpoint' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMSysDehumSetpoint + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.7.3.{{ $index }}' + index: 'airFMSysDehumSetpoint.{{ $index }}' + descr: 'Dehumidifier Setpoint' + divisor: 10 + skip_values: -2147483648 + airflow: + data: + - + oid: airIRRP100UnitStatusAirFlowMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.11.{{ $index }}' + index: 'airIRRP100UnitStatusAirFlowMetric.{{ $index }}' + descr: Air Flow + divisor: 10 + - + oid: airIRRP500UnitStatusAirFlowMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.11.{{ $index }}' + index: 'airIRRP500UnitStatusAirFlowMetric.{{ $index }}' + descr: Air Flow + divisor: 10 + - + oid: airIRG2RDT2StatusAirFlowMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.5.{{ $index }}' + index: 'airIRG2RDT2StatusAirFlowMetric.{{ $index }}' + descr: Air Flow + voltage: + data: + # rPDUIdentDeviceLinetoLineVoltage is done in includes/discovery/sensors/voltage/apc.inc.php:141 + - + oid: airIRRP100UnitStatusCompressorDriveVoltage + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.37.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveVoltage.{{ $index }}' + descr: Compressor Drive + divisor: 10 + - + oid: airIRRP100UnitStatusCompressorDriveDCLinkVoltage + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.39.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveDCLinkVoltage.{{ $index }}' + descr: Compressor Drive DC Link + divisor: 10 + - + oid: airFMModBlwr1Vlt + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.10.{{ $index }}' + index: 'airFMModBlwr1Vlt.{{ $index }}' + descr: 'Blower 1 Voltage' + divisor: 10 + - + oid: airFMModBlwr2Vlt + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.10.{{ $index }}' + index: 'airFMModBlwr2Vlt.{{ $index }}' + descr: 'Blower 2 Voltage' + divisor: 10 + - + oid: xATSSource1VoltageLtoL + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.1.7.1.2.{{ $index }}' + index: 'xATSSource1VoltageLtoL.{{ $index }}' + descr: 'Source1 {{ $index }} L-L' + divisor: 10 + skip_values: -1 + - + oid: xATSSource1VoltageLtoN + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.1.7.1.3.{{ $index }}' + index: 'xATSSource1VoltageLtoN.{{ $index }}' + descr: 'Source1 {{ $index }} L-N' + divisor: 10 + skip_values: -1 + - + oid: xATSSource2VoltageLtoL + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.2.7.1.2.{{ $index }}' + index: 'xATSSource2VoltageLtoL.{{ $index }}' + descr: 'Source2 {{ $index }} L-L' + divisor: 10 + skip_values: -1 + - + oid: xATSSource2VoltageLtoN + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.2.7.1.3.{{ $index }}' + index: 'xATSSource2VoltageLtoN.{{ $index }}' + descr: 'Source2 {{ $index }} L-N' + divisor: 10 + skip_values: -1 + - + oid: xATSSystemOutputVoltageLtoL + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.3.12.1.2.{{ $index }}' + index: 'xATSSystemOutputVoltageLtoL.{{ $index }}' + descr: 'Output {{ $index }} L-L' + divisor: 10 + skip_values: -1 + - + oid: xATSSystemOutputVoltageLtoN + num_oid: '.1.3.6.1.4.1.318.1.1.17.4.3.12.1.3.{{ $index }}' + index: 'xATSSystemOutputVoltageLtoN.{{ $index }}' + descr: 'Output {{ $index }} L-N' + divisor: 10 + skip_values: -1 + - + oid: xATSGeneratorAdvStatusBatteryVoltage + num_oid: '.1.3.6.1.4.1.318.1.1.18.1.3.1.{{ $index }}' + index: 'xATSGeneratorAdvStatusBatteryVoltage.{{ $index }}' + descr: 'Generator Battery' + divisor: 10 + skip_values: -1 + - + oid: xPDUMainInputVoltagePhaseTable + value: xPDUMainInputVoltageLtoL + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.1.4.1.2.{{ $index }}' + index: 'xPDUMainInputVoltageLtoL.{{ $index }}' + descr: 'Input - Phase {{ $index }} L-L' + divisor: 10 + skip_values: -1 + - + oid: xPDUMainInputVoltagePhaseTable + value: xPDUMainInputVoltageLtoN + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.1.4.1.3.{{ $index }}' + index: 'xPDUMainInputVoltageLtoN.{{ $index }}' + descr: 'Input - Phase {{ $index }} L-N' + divisor: 10 + skip_values: -1 + - + oid: xPDUSystemOutputPhaseTable + value: xPDUSystemOutputVoltageLtoL + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.14.1.2.{{ $index }}' + index: 'xPDUSystemOutputVoltageLtoL.{{ $index }}' + descr: 'Output - Phase {{ $index }} L-L' + divisor: 10 + skip_values: -1 + - + oid: xPDUSystemOutputPhaseTable + value: xPDUSystemOutputVoltageLtoN + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.14.1.3.{{ $index }}' + index: 'xPDUSystemOutputVoltageLtoN.{{ $index }}' + descr: 'Output - Phase {{ $index }} L-N' + divisor: 10 + skip_values: -1 + current: + data: + # rPDULoadStatusLoad and rPDU2PhaseStatusCurrent at OID .1.3.6.1.4.1.318.1.1.26.6.3.1.5 is done in the includes/discovery/sensors/current/apc.inc.php:19 file + - + oid: airIRRP100UnitStatusHumidifierCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.33.{{ $index }}' + index: 'airIRRP100UnitStatusHumidifierCurrent.{{ $index }}' + descr: Humidifier + divisor: 10 + - + oid: airIRRP100UnitStatusCompressorDriveCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.38.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveCurrent.{{ $index }}' + descr: Compressor Drive + divisor: 10 + - + oid: airIRRP500UnitStatusHumidifierCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.33.{{ $index }}' + index: 'airIRRP100UnitStatusHumidifierCurrent.{{ $index }}' + descr: Humidifier + divisor: 10 + - + oid: airFMModElectrodeCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.5.2.1.3.{{ $index }}' + index: 'airFMModElectrodeCurrent.{{ $index }}' + descr: Humidifier + divisor: 10 + skip_values: -2147483648 + - + oid: xPDUSystemOutputPhaseTable + value: xPDUSystemOutputPhaseCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.14.1.4.{{ $index }}' + index: 'xPDUSystemOutputPhaseCurrent.{{ $index }}' + descr: 'Output - Phase {{ $index }}' + divisor: 10 + skip_values: -1 + - + oid: xPDUSystemOutput + value: xPDUSystemOutputNeutralCurrent + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.2.{{ $index }}' + index: 'xPDUSystemOutputNeutralCurrent.{{ $index }}' + descr: 'Neutral Current' + divisor: 10 + skip_values: -1 + fanspeed: + data: + - + oid: airIRRP100UnitStatusFanSpeed + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.12.{{ $index }}' + index: 'airIRRP100UnitStatusFanSpeed.{{ $index }}' + descr: 'Fan Speed (%)' + divisor: 10 + - + oid: airIRRP500UnitStatusFanSpeed + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.12.{{ $index }}' + index: 'airIRRP500UnitStatusFanSpeed.{{ $index }}' + descr: 'Fan Speed (%)' + divisor: 10 + frequency: + data: + - + oid: airIRRP100UnitStatusCompressorDriveSpeed + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.35.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDriveSpeed.{{ $index }}' + descr: 'Drive Speed' + divisor: 10 + - + oid: airFMModBlwr1CmdFreq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.3.{{ $index }}' + index: 'airFMModBlwr1CmdFreq.{{ $index }}' + descr: 'Blower 1 Requested Frequency' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMModBlwr1ActFreq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.4.{{ $index }}' + index: 'airFMModBlwr1ActFreq.{{ $index }}' + descr: 'Blower 1 Actual Frequency' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMModBlwr2CmdFreq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.3.{{ $index }}' + index: 'airFMModBlwr2CmdFreq.{{ $index }}' + descr: 'Blower 2 Requested Frequency' + divisor: 10 + skip_values: -2147483648 + - + oid: airFMModBlwr2ActFreq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.4.{{ $index }}' + index: 'airFMModBlwr2ActFreq.{{ $index }}' + descr: 'Blower 2 Actual Frequency' + divisor: 10 + skip_values: -2147483648 + - + oid: xPDUSystemOutput + value: xPDUSystemOutputFrequency + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.1.{{ $index }}' + index: 'xPDUSystemOutputFrequency.{{ $index }}' + descr: 'System Output' + divisor: 10 + skip_values: -1 + power: + data: + - + oid: upsAdvOutputActivePower + num_oid: '.1.3.6.1.4.1.318.1.1.1.4.2.8.{{ $index }}' + index: 'PowerNet-MIB::upsAdvOutputActivePower.{{ $index }}' + descr: 'Active Power' + - + oid: airIRRP100UnitStatusCompressorDrivePower + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.35.{{ $index }}' + index: 'airIRRP100UnitStatusCompressorDrivePower.{{ $index }}' + descr: 'Drive Power' + multiplier: 10 + - + oid: airIRRP100UnitStatusCoolDemand + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.13.{{ $index }}' + index: 'airIRRP100UnitStatusCoolDemand.{{ $index }}' + descr: 'Cooling Demand' + multiplier: 100 + - + oid: airIRRP100UnitStatusCoolOutput + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.14.{{ $index }}' + index: 'airIRRP100UnitStatusCoolOutput.{{ $index }}' + descr: 'Cooling Output' + multiplier: 100 + - + oid: airIRRP500UnitStatusCoolDemand + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.13.{{ $index }}' + index: 'airIRRP500UnitStatusCoolDemand.{{ $index }}' + descr: 'Cooling Demand' + multiplier: 100 + - + oid: airIRRP500UnitStatusCoolOutput + num_oid: '.1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.14.{{ $index }}' + index: 'airIRRP500UnitStatusCoolOutput.{{ $index }}' + descr: 'Cooling Output' + multiplier: 100 + - + oid: rPDU2DeviceStatusTable + value: rPDU2DeviceStatusPower + num_oid: '.1.3.6.1.4.1.318.1.1.26.4.3.1.5.{{ $index }}' + multiplier: 10 + index: 'rPDU2DeviceStatusPower.{{ $index }}' + descr: 'Power, Total' + skip_value_lt: 0 + - + oid: xPDUSystemOutput + value: xPDUSystemOutputTotalPower + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.3.{{ $index }}' + index: 'xPDUSystemOutputTotalPower.{{ $index }}' + descr: 'Real Power - Total' + multiplier: 100 + skip_values: -1 + - + oid: xPDUSystemOutput + value: xPDUSystemOutputTotalApparentPower + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.4.{{ $index }}' + index: 'xPDUSystemOutputTotalApparentPower.{{ $index }}' + descr: 'Apparent Power - Total' + multiplier: 100 + skip_values: -1 + - + oid: xPDUSystemOutputPhaseTable + value: xPDUSystemOutputPower + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.14.1.5.{{ $index }}' + index: 'xPDUSystemOutputPower.{{ $index }}' + descr: 'Real Power - Phase {{ $index }}' + multiplier: 100 + skip_values: -1 + - + oid: xPDUSystemOutputPhaseTable + value: xPDUSystemOutputApparentPower + num_oid: '.1.3.6.1.4.1.318.1.1.15.3.4.14.1.6.{{ $index }}' + index: 'xPDUSystemOutputApparentPower.{{ $index }}' + descr: 'Apparent Power - Phase {{ $index }}' + multiplier: 100 + skip_values: -1 + - + oid: rPDUIdentDevicePowerWatts + num_oid: '.1.3.6.1.4.1.318.1.1.12.1.16.{{ $index }}' + index: 'rPDUIdentDevicePowerWatts.{{ $index }}' + descr: 'Total power' + skip_values: + - + device: hardware + op: 'not_starts' + value: 'AP7' + power_consumed: + data: + - + oid: rPDU2DeviceStatusTable + value: rPDU2DeviceStatusEnergy + num_oid: '.1.3.6.1.4.1.318.1.1.26.4.3.1.9.{{ $index }}' + divisor: 10 + index: 'rPDU2DeviceStatusEnergy.{{ $index }}' + descr: 'Energy since {{ rPDU2DeviceStatusEnergyStartTime }}' + skip_value_lt: 0 + pressure: + data: + - + oid: airIRG2RDT2StatusSuctionPressureMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.19.{{ $index }}' + index: 'airIRG2RDT2StatusSuctionPressureMetric.{{ $index }}' + descr: Suction Pressure + - + oid: airIRG2RDT2StatusDischargePressureMetric + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.21.{{ $index }}' + index: 'airIRG2RDT2StatusDischargePressureMetric.{{ $index }}' + descr: Discharge Pressure + - + oid: airFMModFilterDiffPresPa + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.8.{{ $index }}' + index: 'airFMModFilterDiffPresPa.{{ $index }}' + descr: 'Filter Air Pressure Differential' + divisor: 1000 + skip_values: -2147483648 + - + oid: airFMModCoilDiffPresPa + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.2.2.1.10.{{ $index }}' + index: 'airFMModCoilDiffPresPa.{{ $index }}' + descr: 'Coil Air Pressure Differential' + divisor: 1000 + skip_values: -2147483648 + - + oid: airFMModSuctPresKPa + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.4.2.1.4.{{ $index }}' + index: 'airFMModSuctPresKPa.{{ $index }}' + descr: 'Refrigerant Pressure - Inlet' + skip_values: -2147483648 + - + oid: airFMModDischPresKPa + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.4.2.1.6.{{ $index }}' + index: 'airFMModDischPresKPa.{{ $index }}' + descr: 'Refrigerant Pressure - Discharge' + skip_values: -2147483648 + cooling: + data: + - + oid: airIRG2RDT2StatusCoolOutput + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.2.{{ $index }}' + index: 'airIRG2RDT2StatusCoolOutput.{{ $index }}' + descr: Output + multiplier: 100 + - + oid: airIRG2RDT2StatusCoolDemand + num_oid: '.1.3.6.1.4.1.318.1.1.13.4.5.2.1.3.{{ $index }}' + index: 'airIRG2RDT2StatusCoolDemand.{{ $index }}' + descr: Demand + multiplier: 100 + percent: + data: + - + oid: airFMModHumActualOutput + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.5.2.1.4.{{ $index }}' + index: 'airFMModHumActualOutput.{{ $index }}' + descr: 'Humidifier Output' + skip_values: -2147483648 + - + oid: airFMSysDXCoolingDmd + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.1.{{ $index }}' + index: 'airFMSysDXCoolingDmd.{{ $index }}' + descr: 'Cooling Demand' + skip_values: -2147483648 + - + oid: airFMSysDXDehumDmd + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.2.{{ $index }}' + index: 'airFMSysDXDehumDmd.{{ $index }}' + descr: 'Dehumidification Demand' + skip_values: -2147483648 + - + oid: airFMSysDXActualCoolDehum + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.3.{{ $index }}' + index: 'airFMSysDXActualCoolDehum.{{ $index }}' + descr: 'Cooling/Dehumidification Output' + skip_values: -2147483648 + - + oid: airFMSysElectricReheatDmd + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.7.{{ $index }}' + index: 'airFMSysElectricReheatDmd.{{ $index }}' + descr: 'Heating Demand' + skip_values: -2147483648 + - + oid: airFMSysActualElectricReheat + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.8.{{ $index }}' + index: 'airFMSysActualElectricReheat.{{ $index }}' + descr: 'Heating Output' + skip_values: -2147483648 + - + oid: airFMSysSteamElectrodeHumDmd + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.4.2.11.{{ $index }}' + index: 'airFMSysSteamElectrodeHumDmd.{{ $index }}' + descr: 'Humidification Demand' + skip_values: -2147483648 + - + oid: airFMModBlwr1ActTorq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.8.{{ $index }}' + index: 'airFMModBlwr1ActTorq.{{ $index }}' + descr: 'Blower 1 Torque' + divisor: 100 + skip_values: -2147483648 + - + oid: airFMModBlwr1Current + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.9.{{ $index }}' + index: 'airFMModBlwr1Current.{{ $index }}' + descr: 'Blower 1 Current' + divisor: 100 + skip_values: -2147483648 + - + oid: airFMModBlwr2ActTorq + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.8.{{ $index }}' + index: 'airFMModBlwr2ActTorq.{{ $index }}' + descr: 'Blower 2 Torque' + divisor: 100 + skip_values: -2147483648 + - + oid: airFMModBlwr2Current + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.9.{{ $index }}' + index: 'airFMModBlwr2Current.{{ $index }}' + descr: 'Blower 2 Current' + divisor: 100 + skip_values: -2147483648 + - + oid: airFMModBlwr1CapLife + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.6.2.1.14.{{ $index }}' + index: 'airFMModBlwr1CapLife.{{ $index }}' + descr: 'Blower 1 Capacitor Life Remaining' + divisor: 10 + skip_values: -2147483648 + low_limit: 0 + - + oid: airFMModBlwr2CapLife + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.5.7.2.1.14.{{ $index }}' + index: 'airFMModBlwr2CapLife.{{ $index }}' + descr: 'Blower 2 Capacitor Life Remaining' + divisor: 10 + skip_values: -2147483648 + low_limit: 0 + count: + data: + - + oid: airFMAlarmConditionsTableSize + num_oid: '.1.3.6.1.4.1.318.1.1.13.1.6.3.{{ $index }}' + index: 'airFMAlarmConditionsTableSize.{{ $index }}' + descr: 'Active Alarms' + warn_limit: 1 + high_limit: 3 + - + oid: upsAdvBatteryNumOfBattPacks + num_oid: '.1.3.6.1.4.1.318.1.1.1.2.2.5.{{ $index }}' + index: 'upsAdvBatteryNumOfBattPacks.{{ $index }}' + descr: 'Installed batteries' + low_limit: 0 + - + oid: upsAdvBatteryNumOfBadBattPacks + num_oid: '.1.3.6.1.4.1.318.1.1.1.2.2.6.{{ $index }}' + index: 'upsAdvBatteryNumOfBadBattPacks.{{ $index }}' + descr: 'Bad batteries' + high_limit: 1 + runtime: + data: + - + oid: upsAdvBatteryRecommendedReplaceDate + num_oid: '.1.3.6.1.4.1.318.1.1.1.2.2.21.{{ $index }}' + index: 'upsAdvBatteryRecommendedReplaceDate.{{ $index }}' + descr: 'Battery Recommended Days Remaining' + user_func: dateToRuntime + low_warn_limit: 43200 # 30 Days + low_limit: 0 + - + oid: upsBasicBatteryLastReplaceDate + num_oid: '.1.3.6.1.4.1.318.1.1.1.2.1.3.{{ $index }}' + index: 'upsBasicBatteryLastReplaceDate.{{ $index }}' + descr: 'Last Battery Replacement' + user_func: dateToRuntime diff --git a/priv/profiles/os_discovery/apex-lynx.yaml b/priv/profiles/os_discovery/apex-lynx.yaml new file mode 100644 index 00000000..f0cc471f --- /dev/null +++ b/priv/profiles/os_discovery/apex-lynx.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' + version: .1.3.6.1.4.1.5454.1.80.1.1.2.0 diff --git a/priv/profiles/os_discovery/apex-plus.yaml b/priv/profiles/os_discovery/apex-plus.yaml new file mode 100644 index 00000000..f0cc471f --- /dev/null +++ b/priv/profiles/os_discovery/apex-plus.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' + version: .1.3.6.1.4.1.5454.1.80.1.1.2.0 diff --git a/priv/profiles/os_discovery/apic.yaml b/priv/profiles/os_discovery/apic.yaml new file mode 100644 index 00000000..82644908 --- /dev/null +++ b/priv/profiles/os_discovery/apic.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/VERSION (?[^;]+); PID (?[^;]+); Serial (?[^;]+)/' diff --git a/priv/profiles/os_discovery/apsoluteos.yaml b/priv/profiles/os_discovery/apsoluteos.yaml new file mode 100644 index 00000000..c19eb6cc --- /dev/null +++ b/priv/profiles/os_discovery/apsoluteos.yaml @@ -0,0 +1,16 @@ +mib: RADWARE-MIB +modules: + processors: + data: + - + oid: rsWSDRSResourceUtilization + num_oid: '.1.3.6.1.4.1.89.35.1.54.{{ $index }}' + sensors: + temperature: + data: + - + oid: rsHWCPUTemperatureTable + value: rsHWCPUTemperatureValue + num_oid: '.1.3.6.1.4.1.89.35.1.165.1.2.{{ $index }}' + descr: CPU {{ $index }} + index: '{{ $index }}' diff --git a/priv/profiles/os_discovery/arbos.yaml b/priv/profiles/os_discovery/arbos.yaml new file mode 100644 index 00000000..e07902ee --- /dev/null +++ b/priv/profiles/os_discovery/arbos.yaml @@ -0,0 +1,48 @@ +mib: PEAKFLOW-SP-MIB:PEAKFLOW-TMS-MIB +modules: + mempools: + data: + - + percent_used: PEAKFLOW-TMS-MIB::devicePhysicalMemoryUsage + class: system + descr: 'Physical Memory' + index: 0 + - + percent_used: PEAKFLOW-TMS-MIB::deviceSwapSpaceUsage + class: swap + descr: 'Swap' + index: 1 + - + total: PEAKFLOW-SP-MIB::devicePhysicalMemory + used: PEAKFLOW-SP-MIB::devicePhysicalMemoryInUse + percent_used: PEAKFLOW-SP-MIB::devicePhysicalMemoryUsage + precision: 1024 + class: system + descr: 'Physical' + index: 0 + - + total: PEAKFLOW-SP-MIB::deviceSwapSpace + used: PEAKFLOW-SP-MIB::deviceSwapSpaceInUse + percent_used: PEAKFLOW-SP-MIB::deviceSwapSpaceUsage + precision: 1024 + class: swap + descr: 'Swap' + index: 1 + processors: + data: + - + oid: PEAKFLOW-SP-MIB::deviceCpuLoadAvg5min + num_oid: '.1.3.6.1.4.1.9694.1.4.2.1.2.{{ $index }}' + descr: 'Load Average' + index: 0 + - + oid: PEAKFLOW-TMS-MIB::deviceCpuLoadAvg5min + num_oid: '.1.3.6.1.4.1.9694.1.5.2.4.{{ $index }}' + descr: 'Load Average' + index: 0 + storage: + data: + - + descr: 'Internal Storage' + percent_used: PEAKFLOW-TMS-MIB::deviceDiskUsage + diff --git a/priv/profiles/os_discovery/areca.yaml b/priv/profiles/os_discovery/areca.yaml new file mode 100644 index 00000000..e58b45b2 --- /dev/null +++ b/priv/profiles/os_discovery/areca.yaml @@ -0,0 +1,7 @@ +modules: + os: + hardware: + - .1.3.6.1.4.1.18928.1.1.1.1.0 + - .1.3.6.1.4.1.18928.1.2.1.1.0 + serial: .1.3.6.1.4.1.18928.1.2.1.3.0 + version: .1.3.6.1.4.1.18928.1.2.1.4.0 diff --git a/priv/profiles/os_discovery/arista-mos.yaml b/priv/profiles/os_discovery/arista-mos.yaml new file mode 100644 index 00000000..cd647cd3 --- /dev/null +++ b/priv/profiles/os_discovery/arista-mos.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: SNMPv2-MIB::snmpSetSerialNo.0 + sysDescr_regex: '/release (?[\d\.]+).*?running\son\sa\s(?.*)$/' diff --git a/priv/profiles/os_discovery/arista_eos.yaml b/priv/profiles/os_discovery/arista_eos.yaml new file mode 100644 index 00000000..5cc33aec --- /dev/null +++ b/priv/profiles/os_discovery/arista_eos.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/ version (?.+) running on .+ (?\S+)$/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/arrayos.yaml b/priv/profiles/os_discovery/arrayos.yaml new file mode 100644 index 00000000..7d71918f --- /dev/null +++ b/priv/profiles/os_discovery/arrayos.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/Hardware: (?.*) - Software: ArrayOS Rel\.APV\.(?[\d.]+)/' + serial: CA-SNMP-MIB8::serialNumber.0 diff --git a/priv/profiles/os_discovery/arris-apex.yaml b/priv/profiles/os_discovery/arris-apex.yaml new file mode 100644 index 00000000..4d2a9632 --- /dev/null +++ b/priv/profiles/os_discovery/arris-apex.yaml @@ -0,0 +1,283 @@ +mib: APEX-MIB +modules: + os: + hardware: BCS-IDENT-MIB::identUnitModel.0 + serial: BCS-IDENT-MIB::identSerialNumber.0 + version: BCS-IDENT-MIB::identSoftwareVersion.0 + sensors: + fanspeed: + data: + - + oid: apexPsStatusTable + value: apexPsStatusFanSpeed + num_oid: '.1.3.6.1.4.1.1166.1.31.4.2.2.1.5.{{ $index }}' + descr: 'Power Supply {{ $index }}' + index: 'apexPsStatusFanSpeed.{{ $index }}' + current: + data: + - + oid: apexPsStatusTable + value: apexPsStatusOutputCurrent + num_oid: '.1.3.6.1.4.1.1166.1.31.4.2.2.1.4.{{ $index }}' + descr: 'Power Supply Output {{ $index }}' + index: 'apexPsStatusOutputCurrent.{{ $index }}' + divisor: 1000 + voltage: + data: + - + oid: apexPsStatusTable + value: apexPsStatusOutputVoltage + num_oid: '.1.3.6.1.4.1.1166.1.31.4.2.2.1.3.{{ $index }}' + descr: 'Power Supply Output {{ $index }}' + index: 'apexPsStatusOutputVoltage.{{ $index }}' + divisor: 1000 + temperature: + data: + - + oid: apexMainBoardTempFrontIntake + num_oid: '.1.3.6.1.4.1.1166.1.31.3.2.2.1.{{ $index }}' + descr: 'Main Board Front Intake' + index: 1 + - + oid: apexMainBoardTempMuxFpga + num_oid: '.1.3.6.1.4.1.1166.1.31.3.2.2.2.{{ $index }}' + descr: 'Main Board Mux FPGA' + index: 2 + - + oid: apexMainBoardTempAcpModule + num_oid: '.1.3.6.1.4.1.1166.1.31.3.2.2.3.{{ $index }}' + descr: 'Main Board ACP Module' + index: 3 + - + oid: apexMainBoardTempHostProcessor + num_oid: '.1.3.6.1.4.1.1166.1.31.3.2.2.4.{{ $index }}' + descr: 'Main Board Host Processor' + index: 4 + load: + data: + - + oid: apexGbeFrameBufferStatsTable + value: apexGbeFrameBufferCurrPercentFull + num_oid: '.1.3.6.1.4.1.1166.1.31.7.2.7.2.1.4.{{ $index }}' + descr: 'Gigabit Frame Buffer Fullness {{ $index }}' + index: 'apexGbeFrameBufferCurrPercentFull.{{ $index }}' + group: 'Input' + - + oid: apexOutputTsUtilizationTable + value: apexOutputTsUtilizCurPercent + num_oid: '.1.3.6.1.4.1.1166.1.31.14.2.2.2.1.6.{{ $index }}' + descr: 'QAM Port Utilization #{{ $index }}' + index: 'apexOutputTsUtilizCurPercent.{{ $index }}' + skip_values: 0 + group: 'Output' + state: + data: + - + oid: apexAlarmHardwareFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8000.{{ $index }}' + descr: Hardware Fault + index: 'apexAlarmHardwareFault.{{ $index }}' + state_name: apexAlarmHardwareFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmInvalidInitData + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8001.{{ $index }}' + descr: Invalid Init Data + index: 'apexAlarmInvalidInitData.{{ $index }}' + state_name: apexAlarmInvalidInitData + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmTemperatureFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8002.{{ $index }}' + descr: Temperature Fault + index: 'apexAlarmTemperatureFault.{{ $index }}' + state_name: apexAlarmTemperatureFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmFanFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8003.{{ $index }}' + descr: Fan Fault + index: 'apexAlarmFanFault.{{ $index }}' + state_name: apexAlarmFanFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmPowerFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8004.{{ $index }}' + descr: Power Fault + index: 'apexAlarmPowerFault.{{ $index }}' + state_name: apexAlarmPowerFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmGbeLossOfPhysicalInput + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8020.{{ $index }}' + descr: Gigabit Ethernet Physical Input + index: 'apexAlarmGbeLossOfPhysicalInput.{{ $index }}' + state_name: apexAlarmGbeLossOfPhysicalInput + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmGbeBufferFullness + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8021.{{ $index }}' + descr: Gigabit Ethernet Buffer Fullness + index: 'apexAlarmGbeBufferFullness.{{ $index }}' + state_name: apexAlarmGbeBufferFullness + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmServiceInError + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8026.{{ $index }}' + descr: Service In Error + index: 'apexAlarmServiceInError.{{ $index }}' + state_name: apexAlarmServiceInError + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmGbeLossOfInputStream + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8027.{{ $index }}' + descr: Loss of Input Stream + index: 'apexAlarmGbeLossOfInputStream.{{ $index }}' + state_name: apexAlarmGbeLossOfInputStream + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmOutputOverflow + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8041.{{ $index }}' + descr: Transport Stream Output Overflow + index: 'apexAlarmOutputOverflow.{{ $index }}' + state_name: apexAlarmOutputOverflow + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmQamModuleFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8042.{{ $index }}' + descr: QAM Module Fault + index: 'apexAlarmQamModuleFault.{{ $index }}' + state_name: apexAlarmQamModuleFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmQamRfPortFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8043.{{ $index }}' + descr: QAM RF Port Fault + index: 'apexAlarmQamRfPortFault.{{ $index }}' + state_name: apexAlarmQamRfPortFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmQamChannelFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8044.{{ $index }}' + descr: QAM Channel Fault + index: 'apexAlarmQamChannelFault.{{ $index }}' + state_name: apexAlarmQamChannelFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmRdsCommFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8060.{{ $index }}' + descr: RDS Communication Fault + index: 'apexAlarmRdsCommFault.{{ $index }}' + state_name: apexAlarmRdsCommFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmRemCommFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8070.{{ $index }}' + descr: REM Communication Fault + index: 'apexAlarmRemCommFault.{{ $index }}' + state_name: apexAlarmRemCommFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + - + oid: apexAlarmRemFault + num_oid: '.1.3.6.1.4.1.1166.1.31.100.8071.{{ $index }}' + descr: REM Fault + index: 'apexAlarmRemFault.{{ $index }}' + state_name: apexAlarmRemFault + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 2, generic: 0, graph: 0, descr: 'Indeterminate' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 4, generic: 1, graph: 0, descr: 'Minor' } + - { value: 5, generic: 2, graph: 0, descr: 'Major' } + - { value: 6, generic: 2, graph: 0, descr: 'Critical' } + diff --git a/priv/profiles/os_discovery/arris-c3.yaml b/priv/profiles/os_discovery/arris-c3.yaml new file mode 100644 index 00000000..a84d0ee5 --- /dev/null +++ b/priv/profiles/os_discovery/arris-c3.yaml @@ -0,0 +1,122 @@ +mib: ARRIS-C3-FPD-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifName + temperature: + data: + - + oid: dcxFPDTemp1Status + divisor: 100 + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.4.{{ $index }}' + descr: 'CPU card closest to the CPU' + index: 'dcxFPDTemp1Status.{{ $index }}' + - + oid: dcxFPDTemp2Status + divisor: 100 + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.5.{{ $index }}' + descr: 'CPU card, on the right hand side.' + index: 'dcxFPDTemp2Status.{{ $index }}' + - + oid: dcxFPDTemp3Status + divisor: 100 + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.6.{{ $index }}' + descr: 'Kanga, under Roo cards between RX4 and RX5.' + index: 'dcxFPDTemp3Status.{{ $index }}' + - + oid: dcxFPDTemp4Status + divisor: 100 + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.7.{{ $index }}' + descr: 'Kanga, under Roo cards between RX2 and RX3.' + index: 'dcxFPDTemp4Status.{{ $index }}' + state: + data: + - + oid: dcxFPDFan1Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.8.{{ $index }}' + descr: 'Fan 1' + index: 'dcxFPDFan1Status.{{ $index }}' + state_name: dcxFPDFan1Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDFan2Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.9.{{ $index }}' + descr: 'Fan 2' + index: 'dcxFPDFan2Status.{{ $index }}' + state_name: dcxFPDFan2Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDFan3Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.10.{{ $index }}' + descr: 'Fan 3' + index: 'dcxFPDFan3Status.{{ $index }}' + state_name: dcxFPDFan3Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDFan4Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.11.{{ $index }}' + descr: 'Fan 4' + index: 'dcxFPDFan4Status.{{ $index }}' + state_name: dcxFPDFan4Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDFan5Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.12.{{ $index }}' + descr: 'Fan 5' + index: 'dcxFPDFan5Status.{{ $index }}' + state_name: dcxFPDFan5Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDFan6Status + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.13.{{ $index }}' + descr: 'Fan 6' + index: 'dcxFPDFan6Status.{{ $index }}' + state_name: dcxFPDFan6Status + states: + - { descr: rotating, graph: 0, value: 1, generic: 0 } + - { descr: bad Rotating, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDPowerStatus2 + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.3.{{ $index }}' + descr: 'Power status' + index: 'dcxFPDPowerStatus2.{{ $index }}' + state_name: dcxFPDPowerStatus2 + states: + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 2 } + - + oid: dcxFPDAttachedStatus + num_oid: '.1.3.6.1.4.1.4115.1.4.3.3.1.2.1.{{ $index }}' + descr: 'Front panel' + index: 'dcxFPDAttachedStatus.{{ $index }}' + state_name: dcxFPDAttachedStatus + states: + - { descr: attached, graph: 0, value: 1, generic: 0 } + - { descr: detached, graph: 0, value: 2, generic: 2 } + snr: + data: + - + oid: DOCS-IF-MIB::docsIfSignalQualityTable + value: DOCS-IF-MIB::docsIfSigQSignalNoise + num_oid: '.1.3.6.1.2.1.10.127.1.1.4.1.5.{{ $index }}' + descr: 'Channel - {{ $IF-MIB::ifName }}' + index: 'docsIfSigQSignalNoise.{{ $index }}' + divisor: 10 + skip_values: + - + oid: IF-MIB::ifName + op: not_regex + value: '/.0$/' diff --git a/priv/profiles/os_discovery/arris-dsr4410md.yaml b/priv/profiles/os_discovery/arris-dsr4410md.yaml new file mode 100644 index 00000000..056d1eb5 --- /dev/null +++ b/priv/profiles/os_discovery/arris-dsr4410md.yaml @@ -0,0 +1,19 @@ +mib: DSR4410MD-MIB +modules: + os: + hardware: DSR4410MD-MIB::identUnitModel.0 + serial: DSR4410MD-MIB::unitAddress.0 + version: DSR4410MD-MIB::firmwareVersion.0 + sensors: + state: + data: + - + oid: signalStatus + value: acquisitionState + num_oid: '.1.3.6.1.4.1.1166.1.621.11.1.{{ $index }}' + descr: 'Acquisition State' + state_name: acquisitionState + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 1, generic: 2, graph: 1, descr: 'Un-Locked' } + - { value: 0, generic: 0, graph: 1, descr: 'Locked' } diff --git a/priv/profiles/os_discovery/aruba-instant.yaml b/priv/profiles/os_discovery/aruba-instant.yaml new file mode 100644 index 00000000..8f23b59e --- /dev/null +++ b/priv/profiles/os_discovery/aruba-instant.yaml @@ -0,0 +1,42 @@ +mib: AI-AP-MIB +modules: + mempools: + additional_oids: + oids: + - AI-AP-MIB::aiAPSerialNum + - AI-AP-MIB::aiAPName + data: + - + total: AI-AP-MIB::aiAPTotalMemory + free: AI-AP-MIB::aiAPMemoryFree + index: '{{ AI-AP-MIB::aiAPSerialNum }}' + descr: '{{ AI-AP-MIB::aiAPName }} [{{ AI-AP-MIB::aiAPSerialNum }}]' + os: + sysDescr_regex: '/\(MODEL: (?\S+)\), Version (?\S+)/' + sensors: + additional_oids: + data: + - + oid: + - aiAPName + - aiAPSerialNum + state: + data: + - + oid: aiAPStatus + num_oid: '.1.3.6.1.4.1.14823.2.3.3.1.2.1.1.11.{{ $index }}' + descr: '{{ $aiAPName }} ({{ $aiAPSerialNum }})' + group: 'Cluster APs' + state_name: aiAPStatus + states: + - { value: 1, generic: 0, graph: 0, descr: up } + - { value: 2, generic: 2, graph: 0, descr: down } + - + oid: aiRadioStatus + num_oid: '.1.3.6.1.4.1.14823.2.3.3.1.2.2.1.20.{{ $index }}' + descr: '{{ $aiAPName:0-5 }} ({{ $aiAPSerialNum:0-5 }}) Radio {{ $subindex6 }}' + group: 'Cluster Radios' + state_name: aiRadioStatus + states: + - { value: 1, generic: 0, graph: 0, descr: up } + - { value: 2, generic: 3, graph: 0, descr: down } diff --git a/priv/profiles/os_discovery/arubaos-cx.yaml b/priv/profiles/os_discovery/arubaos-cx.yaml new file mode 100644 index 00000000..67edfeb5 --- /dev/null +++ b/priv/profiles/os_discovery/arubaos-cx.yaml @@ -0,0 +1,189 @@ +mib: ENTITY-MIB:ENTITY-SENSOR-MIB:ARUBAWIRED-VSX-MIB:ARUBAWIRED-TEMPSENSOR-MIB:ARUBAWIRED-POWERSUPPLY-MIB +modules: + os: + sysDescr_regex: + - '/ (?\d{4,}.*) Swch (?\D{2}\.\d{2}\.\d{2}\.\d{4})/' + - '/ (?\d{4,}) (?\D{2}\.\d{2}\.\d{2}\.\d{4})/' + - '/(?\D{2}\.\d{2}\.\d{2}\.\d{4})/' + serial: + - ENTITY-MIB::entPhysicalSerialNum.1 + - ENTITY-MIB::entPhysicalSerialNum.101001 + version: + - ENTITY-MIB::entPhysicalSoftwareRev.1 + - ENTITY-MIB::entPhysicalSoftwareRev.101001 + hardware: + - ENTITY-MIB::entPhysicalDescr.1 + - ENTITY-MIB::entPhysicalDescr.101001 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - IF-MIB::ifName + - ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTable + temperature: + data: + - + oid: arubaWiredTempSensorTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.11.3.1.1.7.{{ $index }}' + descr: arubaWiredTempSensorName + divisor: 1000 + value: arubaWiredTempSensorTemperature + high_limit: arubaWiredTempSensorMaxTemp + low_limit: arubaWiredTempSensorMinTemp + + - + oid: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.27.1.2.1.1.2.{{ $index }}' + descr: '{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomPortDesc }} Temperature' + value: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTemp + group: transceiver + index: 'arubaWiredPmXcvrDomTemp.{{ $index }}' + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + high_limit: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTempHiAlarmThreshold + warn_limit: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTempHiWarnThreshold + low_warn_limit: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTempLoWarnThreshold + low_limit: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTempLoAlarmThreshold + power: + data: + - + oid: arubaWiredPowerSupplyTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.11.2.1.1.7.{{ $index }}' + descr: 'Power Supply {{ $arubaWiredPSUName }}' + value: arubaWiredPSUInstantaneousPower + high_limit: arubaWiredPSUMaximumPower + voltage: + data: + - + oid: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.27.1.2.1.1.11.{{ $index }}' + value: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomVoltage + descr: '{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomPortDesc }} Voltage' + group: transceiver + index: 'arubaWiredPmXcvrDomVoltage.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + current: + data: + - + oid: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.27.1.2.2.1.2.{{ $index }}' + value: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomTxBias + descr: '{{ IF-MIB::ifName:0 }} TX Bias' + divisor: 1000 + group: transceiver + index: 'arubaWiredPmXcvrLaneDomTxBias.{{ $subindex0 }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + dbm: + data: + - + oid: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.27.1.2.2.1.12.{{ $index }}' + value: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomRxPower + descr: "{{ IF-MIB::ifName:0 }} Lane {{ $subindex1 }} RX Power" + group: transceiver + index: 'arubaWiredPmXcvrLaneDomRxPower.{{ $index }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + user_func: 'mw_to_dbm' + high_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomRxPwrHiAlarmThreshold:0 }}" + warn_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomRxPwrHiWarnThreshold:0 }}" + low_warn_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomRxPwrLoWarnThreshold:0 }}" + low_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomRxPwrLoAlarmThreshold:0 }}" + + - + oid: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.27.1.2.2.1.7.{{ $index }}' + value: ARUBAWIRED-PM-MIB::arubaWiredPmXcvrLaneDomTxPower + descr: "{{ IF-MIB::ifName:0 }} Lane {{ $subindex1 }} TX Power" + group: transceiver + index: 'arubaWiredPmXcvrLaneDomTxPower.{{ $index }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + user_func: 'mw_to_dbm' + high_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTxPwrHiAlarmThreshold:0 }}" + warn_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTxPwrHiWarnThreshold:0 }}" + low_warn_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTxPwrLoWarnThreshold:0 }}" + low_limit: "{{ ARUBAWIRED-PM-MIB::arubaWiredPmXcvrDomTxPwrLoAlarmThreshold:0 }}" + state: + data: + - + oid: entPhySensorTable + num_oid: '.1.3.6.1.2.1.99.1.1.1.5.{{ $index }}' + descr: entPhysicalName + value: entPhySensorOperStatus + skip_values: + - + oid: entPhySensorType + op: '!=' + value: 6 + states: + - { value: 1, descr: OK, graph: 1, generic: 0 } + - { value: 3, descr: Not OK, graph: 1, generic: 2 } + - + oid: arubaWiredPowerSupplyTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.11.2.1.1.11.{{ $index }}' + descr: 'Power Supply {{ $arubaWiredPSUName }}' + value: arubaWiredPSUStateEnum + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: Absent, graph: 1, generic: 2 } + - { value: 3, descr: Fault Input, graph: 1, generic: 2 } + - { value: 4, descr: Fault Output, graph: 1, generic: 2 } + - { value: 5, descr: Fault POE, graph: 1, generic: 2 } + - { value: 6, descr: Fault No Recovery, graph: 1, generic: 2 } + - { value: 7, descr: alert, graph: 1, generic: 2 } + - { value: 8, descr: unknown, graph: 1, generic: 3 } + - { value: 9, descr: unsuppored, graph: 1, generic: 3 } + - { value: 10, descr: warning, graph: 1, generic: 1 } + - { value: 11, descr: init, graph: 1, generic: 3 } + - { value: 12, descr: Empty, graph: 1, generic: 2 } + - { value: 13, descr: Fault Airflow, graph: 1, generic: 2 } + - { value: 14, descr: Fault Redundancy, graph: 1, generic: 2 } + - { value: 15, descr: Fault Mixed Input, graph: 1, generic: 2 } + - { value: 16, descr: Over Voltage, graph: 1, generic: 2 } + - { value: 17, descr: Under Voltage, graph: 1, generic: 2 } + - + oid: arubaWiredVsxIslOperState + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.7.2.1.1.{{ $index }}' + descr: ISL + value: arubaWiredVsxIslOperState + states: + - { value: 1, descr: init, graph: 1, generic: 3 } + - { value: 2, descr: out Sync, graph: 1, generic: 2 } + - { value: 3, descr: in Sync, graph: 1, generic: 0 } + - + oid: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2Topology + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.15.1.1.2.{{ $index }}' + descr: 'VSF Topology' + value: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2Topology + index: 'arubaWiredVsfv2Topology.{{ $index }}' + states: + - { value: 0, descr: standalone, graph: 1, generic: 0 } + - { value: 1, descr: ring, graph: 1, generic: 0 } + - { value: 2, descr: chain, graph: 1, generic: 2 } + - + oid: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2OperStatus + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.15.1.1.1.{{ $index }}' + descr: 'VSF Status' + value: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2OperStatus + index: '{{ $index }}' + states: + - { value: 0, descr: no_split, graph: 1, generic: 0 } + - { value: 1, descr: fragment_active, graph: 1, generic: 1 } + - { value: 2, descr: fragment_inactive, graph: 1, generic: 2 } + - + oid: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2MemberTable + num_oid: '.1.3.6.1.4.1.47196.4.1.1.3.15.1.2.1.3.{{ $index }}' + descr: 'Member {{ $ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2MemberSerialNum }} Status' + value: ARUBAWIRED-VSFv2-MIB::arubaWiredVsfv2MemberStatus + index: '{{ $index }}' + group: VSF + states: + - { value: 10, descr: not_present, graph: 1, generic: 2 } + - { value: 11, descr: booting, graph: 1, generic: 1 } + - { value: 12, descr: ready, graph: 1, generic: 0 } + - { value: 13, descr: version_mismatch, graph: 1, generic: 1 } diff --git a/priv/profiles/os_discovery/arubaos.yaml b/priv/profiles/os_discovery/arubaos.yaml new file mode 100644 index 00000000..c33411d4 --- /dev/null +++ b/priv/profiles/os_discovery/arubaos.yaml @@ -0,0 +1,35 @@ +mib: ARUBA-MIB:WLSX-SYSTEMEXT-MIB +modules: + os: + sysDescr_regex: '/(\(MODEL: (?.+)\),)? Version (?\S+)/' + mempools: + data: + - + total: WLSX-SWITCH-MIB::sysXMemorySize + used: WLSX-SWITCH-MIB::sysXMemoryUsed + free: WLSX-SWITCH-MIB::sysXMemoryFree + precision: 1024 + type: arubaos + index: 0 + processors: + data: + - + oid: WLSX-SYSTEMEXT-MIB::wlsxSysExtProcessorTable + value: WLSX-SYSTEMEXT-MIB::sysExtProcessorLoad + num_oid: '.1.3.6.1.4.1.14823.2.2.1.2.1.13.1.3.{{ $index }}' + descr: WLSX-SYSTEMEXT-MIB::sysExtProcessorDescr + sensors: + count: + data: + - + oid: WLSX-USER-MIB::wlsxNumOfUsersVPN + num_oid: '.1.3.6.1.4.1.14823.2.2.1.4.1.4.2.{{ $index }}' + descr: 'Active VPN sessions' + index: 'vpnsessions{{ $index }}' + temperature: + data: + - + oid: WLSX-SYSTEMEXT-MIB::wlsxSysExtInternalTemparature + value: WLSX-SYSTEMEXT-MIB::wlsxSysExtInternalTemparature + num_oid: '.1.3.6.1.4.1.14823.2.2.1.2.1.10.{{ $index }}' + descr: 'CPU temperature C' diff --git a/priv/profiles/os_discovery/asa.yaml b/priv/profiles/os_discovery/asa.yaml new file mode 100644 index 00000000..2457b93f --- /dev/null +++ b/priv/profiles/os_discovery/asa.yaml @@ -0,0 +1,85 @@ +modules: + os: + sysDescr_regex: '/Version (?.*)/' + version: + - ENTITY-MIB::entPhysicalSoftwareRev.1 + - ENTITY-MIB::entPhysicalSoftwareRev.4 + serial: + - ENTITY-MIB::entPhysicalSerialNum.1 + - ENTITY-MIB::entPhysicalSerialNum.4 + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - ENTITY-MIB::entPhysicalModelName.4 + hardware_mib: CISCO-PRODUCTS-MIB + sensors: + count: + data: + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasEmailNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.23.{{ $index }}' + descr: 'Active Email proxy sync sessions' + index: crasEmailNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasIPSecNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.26.{{ $index }}' + descr: 'Active IPSec sessions' + index: crasIPSecNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasL2LNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.29.{{ $index }}' + descr: 'Active LAN to LAN sessions' + index: crasL2LNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasLBNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.32.{{ $index }}' + descr: 'Active Load Balancing sessions' + index: crasLBNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasSVCNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.35.{{ $index }}' + descr: 'Active SVC sessions' + index: crasSVCNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasWebvpnNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.38.{{ $index }}' + descr: 'Active Webvpn sessions' + index: crasWebvpnNumSessions.{{ $index }} + - + oid: CISCO-FIREWALL-MIB::cfwConnectionStatValue.protoIp.currentInUse + value: CISCO-FIREWALL-MIB::cfwConnectionStatValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.2.2.1.5.{{ $index }}' + descr: 'Current In Use Connections' + index: currentInUse + - + oid: CISCO-FIREWALL-MIB::cfwConnectionStatValue.protoIp.high + value: CISCO-FIREWALL-MIB::cfwConnectionStatValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.2.2.1.5.{{ $index }}' + descr: 'Highest Connections' + index: high + state: + data: + - + oid: CISCO-FIREWALL-MIB::cfwHardwareStatusTable + value: CISCO-FIREWALL-MIB::cfwHardwareStatusValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.1.1.1.3.{{ $index }}' + descr: '{{ CISCO-FIREWALL-MIB::cfwHardwareInformation }}' + entPhysicalIndex: '{{ $index }}' + skip_values: + - { oid: CISCO-FIREWALL-MIB::cfwHardwareStatusDetail, op: '=', value: 'not Configured' } + state_name: cfwHardwareStatus + states: + - { descr: other, graph: 0, value: 1, generic: 2 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - { descr: down, graph: 0, value: 3, generic: 2 } + - { descr: error, graph: 0, value: 4, generic: 2 } + - { descr: overTemp, graph: 0, value: 5, generic: 2 } + - { descr: busy, graph: 0, value: 6, generic: 2 } + - { descr: noMedia, graph: 0, value: 7, generic: 2 } + - { descr: backup, graph: 0, value: 8, generic: 2 } + - { descr: active, graph: 0, value: 9, generic: 0 } + - { descr: standby, graph: 0, value: 10, generic: 0 } diff --git a/priv/profiles/os_discovery/ascom.yaml b/priv/profiles/os_discovery/ascom.yaml new file mode 100644 index 00000000..db220888 --- /dev/null +++ b/priv/profiles/os_discovery/ascom.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?IPBS[2|3]\[[^\]]+], Bootcode\[[^\]]+]), Hardware\[(?[^\]]+)]/' diff --git a/priv/profiles/os_discovery/asyncos.yaml b/priv/profiles/os_discovery/asyncos.yaml new file mode 100644 index 00000000..f9351db0 --- /dev/null +++ b/priv/profiles/os_discovery/asyncos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Model (?.*), AsyncOS Version: (?[^,]+).*Serial #: (?.*)/' diff --git a/priv/profiles/os_discovery/atenpdu.yaml b/priv/profiles/os_discovery/atenpdu.yaml new file mode 100644 index 00000000..7c73c383 --- /dev/null +++ b/priv/profiles/os_discovery/atenpdu.yaml @@ -0,0 +1,40 @@ +mib: ATEN-PE-CFG +modules: + sensors: + power: + data: + - + oid: outlet + skip_value_lt: -200 + value: outletIntegerPower + num_oid: '.1.3.6.1.4.1.21317.1.3.2.2.2.2.99.1.4.{{ $index }}' + divisor: 1000 + descr: 'Port {{ $outletName }}' + index: 'outletIntegerValueIndex.{{ $index }}' + low_limit: 0 + high_limit: 2400 + current: + data: + - + oid: outlet + value: outletIntegerCurrent + skip_value_lt: -200 + num_oid: '.1.3.6.1.4.1.21317.1.3.2.2.2.2.99.1.2.{{ $index }}' + divisor: 1000 + descr: 'Port {{ $outletName }}' + index: 'outletIntegerValueIndex.{{ $index }}' + low_limit: 0 + high_limit: 10 + voltage: + data: + - + oid: outlet + value: outletIntegerVoltage + skip_value_lt: -200 + num_oid: '.1.3.6.1.4.1.21317.1.3.2.2.2.2.99.1.3.{{ $index }}' + divisor: 1000 + descr: 'Port {{ $outletName }}' + index: 'outletIntegerValueIndex.{{ $index }}' + low_limit: 190 + high_limit: 260 + diff --git a/priv/profiles/os_discovery/ats.yaml b/priv/profiles/os_discovery/ats.yaml new file mode 100755 index 00000000..da7c68cc --- /dev/null +++ b/priv/profiles/os_discovery/ats.yaml @@ -0,0 +1,108 @@ +mib: ATS-MIB +modules: + os: + sysDescr_regex: '/v(?[\d.]+) \(SN (?[^)]+)\)/' + hardware: ATS-MIB::atsIdentGroupFirmwareRevision.0 + sensors: + additional_oids: + data: + - + oid: + - atsMiscellaneousGroupSystemMaxCurrent + - atsInputGroupSourceAvoltageUpperLimit + - atsInputGroupSourceAvoltageLowerLimit + - atsInputGroupSourceBvoltageUpperLimit + - atsInputGroupSourceBvoltageLowerLimit + - atsInputGroupSourceAfrequencyUpperLimit + - atsInputGroupSourceAfrequencyLowerLimit + - atsInputGroupSourceBfrequencyUpperLimit + - atsInputGroupSourceBfrequencyLowerLimit + current: + data: + - + oid: atsOutputGroupOutputCurrent + value: atsOutputGroupOutputCurrent + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.3.4.{{ $index }}' + divisor: 10 + descr: 'Output' + index: 'atsOutputGroupOutputCurrent.{{ $index }}' + high_limit: 'atsMiscellaneousGroupSystemMaxCurrent' + load: + data: + - + oid: atsOutputGroupLoad + value: atsOutputGroupLoad + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.3.5.{{ $index }}' + descr: 'Output' + index: 'atsOutputGroupLoad.{{ $index }}' + high_limit: 100 + voltage: + data: + - + oid: atsInputGroupSourceAinputVoltage + value: atsInputGroupSourceAinputVoltage + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.3.{{ $index }}' + descr: 'Input A' + index: 'atsInputGroupSourceAinputVoltage.{{ $index }}' + high_limit: 'atsInputGroupSourceAvoltageUpperLimit' + low_limit: 'atsInputGroupSourceAvoltageLowerLimit' + - + oid: atsInputGroupSourceBinputVoltage + value: atsInputGroupSourceBinputVoltage + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.6.{{ $index }}' + descr: 'Input B' + index: 'atsInputGroupSourceBinputVoltage.{{ $index }}' + high_limit: 'atsInputGroupSourceBvoltageUpperLimit' + low_limit: 'atsInputGroupSourceBvoltageLowerLimit' + frequency: + data: + - + oid: atsInputGroupSourceAinputFrequency + value: atsInputGroupSourceAinputFrequency + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.4.{{ $index }}' + divisor: 10 + descr: 'Input A' + index: 'atsInputGroupSourceAinputFrequency.{{ $index }}' + high_limit: 'atsInputGroupSourceAfrequencyUpperLimit' + low_limit: 'atsInputGroupSourceAfrequencyLowerLimit' + - + oid: atsInputGroupSourceBinputFrequency + value: atsInputGroupSourceBinputFrequency + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.4.{{ $index }}' + divisor: 10 + descr: 'Input B' + index: 'atsInputGroupSourceBinputFrequency.{{ $index }}' + high_limit: 'atsInputGroupSourceBfrequencyUpperLimit' + low_limit: 'atsInputGroupSourceBfrequencyLowerLimit' + state: + data: + - + oid: atsInputGroupSourceAstatus + value: atsInputGroupSourceAstatus + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.2.{{ $index }}' + descr: 'Input A' + index: 'atsInputGroupSourceAstatus.{{ $index }}' + state_name: atsInputGroupSourceAstatus + states: + - { descr: Ok, graph: 0, value: 2, generic: 0 } + - { descr: Fail, graph: 0, value: 1, generic: 2 } + - + oid: atsInputGroupSourceBstatus + value: atsInputGroupSourceBstatus + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.2.5.{{ $index }}' + descr: 'Input B' + index: 'atsInputGroupSourceBstatus.{{ $index }}' + state_name: atsInputGroupSourceBstatus + states: + - { descr: Ok, graph: 0, value: 2, generic: 0 } + - { descr: Fail, graph: 0, value: 1, generic: 2 } + - + oid: atsHmiSwitchGroupBuzzer + value: atsHmiSwitchGroupBuzzer + num_oid: '.1.3.6.1.4.1.37662.1.2.2.1.1.4.1.{{ $index }}' + descr: 'Buzzer' + index: 'atsHmiSwitchGroupBuzzer.{{ $index }}' + state_name: atsHmiSwitchGroupBuzzer + states: + - { descr: Disabled, graph: 0, value: 1, generic: 0 } + - { descr: Enabled, graph: 0, value: 2, generic: 0 } diff --git a/priv/profiles/os_discovery/audiocodes.yaml b/priv/profiles/os_discovery/audiocodes.yaml new file mode 100644 index 00000000..99a284c5 --- /dev/null +++ b/priv/profiles/os_discovery/audiocodes.yaml @@ -0,0 +1,221 @@ +modules: + os: + hardware: AC-SYSTEM-MIB::acSysIdName.0 + serial: AC-SYSTEM-MIB::acSysIdSerialNumber.0 + version: AC-SYSTEM-MIB::acSysVersionSoftware.0 + sensors: + additional_oids: + data: + - + oid: + - AcGateway::callerDisplayCallerDisplay + - AcGateway::channelsStartingPhoneNum + - AC-ANALOG-MIB::acAnalogFxsFxoType + - AC-PSTN-MIB::acTrunkDialPlanName + - DS1-MIB::dsx1CircuitIdentifier + count: + data: + - + oid: 'AC-KPI-MIB::acKpiSbcCallStatsCurrentSrdActiveCallsIn' # MIB not supplied by vendor + value: 'AC-KPI-MIB::acKpiSbcCallStatsCurrentSrdActiveCallsIn' + num_oid: '.1.3.6.1.4.1.5003.15.3.1.1.2.2.1.3.{{ $index }}' + index: 'acKpiSbcCallStatsCurrentSrdActiveCallsIn.{{ $index }}' + descr: 'Active Calls' + state: + data: + - + oid: AcGateway::accountTable + value: AcGateway::accountRowStatus + num_oid: '.1.3.6.1.4.1.5003.9.10.3.1.1.22.21.1.2.{{ $index }}' + index: 'accountTable.{{ $index }}.2' + descr: 'System Account Status {{ $index }}' + state_name: accountRowStatus + states: + - { descr: active, graph: 0, value: 1, generic: 0 } + - { descr: notInService, graph: 0, value: 2, generic: 2 } + - { descr: notReady, graph: 0, value: 3, generic: 2 } + - { descr: createAndGo, graph: 0, value: 4, generic: 1 } + - { descr: createAndWait, graph: 0, value: 5, generic: 1 } + - { descr: destroy, graph: 0, value: 6, generic: 2 } + - + oid: AC-SYSTEM-MIB::acSysStateOperational + value: AC-SYSTEM-MIB::acSysStateOperational + num_oid: '.1.3.6.1.4.1.5003.9.10.10.2.5.2.{{ $index }}' + descr: 'System operational' + state_name: acSysStateOperational + states: + - { descr: disabled, graph: 0, value: 1, generic: 2 } + - { descr: enabled, graph: 0, value: 2, generic: 0 } + - + oid: AC-SYSTEM-MIB::acSysStateGWSeverity + value: AC-SYSTEM-MIB::acSysStateGWSeverity + num_oid: '.1.3.6.1.4.1.5003.9.10.10.2.5.4.{{ $index }}' + descr: 'System GW status' + state_name: acSysStateGWSeverity + states: + - { descr: noAlarm, graph: 0, value: 0, generic: 0 } + - { descr: indeterminate, graph: 0, value: 1, generic: 0 } + - { descr: warning, graph: 0, value: 2, generic: 1 } + - { descr: minor, graph: 0, value: 3, generic: 1 } + - { descr: major, graph: 0, value: 4, generic: 2 } + - { descr: critical, graph: 0, value: 5, generic: 2 } + - + oid: AC-SYSTEM-MIB::acSysHAStatusReady + value: AC-SYSTEM-MIB::acSysHAStatusReady + num_oid: '.1.3.6.1.4.1.5003.9.10.10.2.10.1.{{ $index }}' + descr: 'System HA status ready' + state_name: acSysHAStatusReady + states: + - { descr: no, graph: 0, value: 3, generic: 2 } + - { descr: yes, graph: 0, value: 2, generic: 0 } + - { descr: notApplicable, graph: 0, value: 1, generic: 3 } + - + oid: AcBoard::channelStatusTable + value: AcBoard::rTPActive + num_oid: '.1.3.6.1.4.1.5003.9.10.1.4.1.1.1.{{ $index }}' + descr: 'SBC SIP Channel {{ $index }} active' + index: 'hookStatus{{ $index }}' + state_name: channelHookState + states: + - { descr: offHook, graph: 0, value: 0, generic: 0 } + - { descr: onHook, graph: 0, value: 1, generic: 0 } + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoTable + value: AC-ANALOG-MIB::acAnalogFxsFxoHookState + num_oid: '.1.3.6.1.4.1.5003.9.10.1.4.1.1.18.{{ $index }}' + descr: 'FXO {{ $index }} ({{ AcGateway::callerDisplayCallerDisplay }}, {{ AcGateway::channelsStartingPhoneNum }})' + index: 'hookStatus{{ $index }}' + state_name: acAnalogFxsFxoHookState + states: + - { descr: offHook, graph: 0, value: 0, generic: 0 } + - { descr: onHook, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoType + op: '!=' + value: 0 + + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoTable + value: AC-ANALOG-MIB::acAnalogFxsFxoHookState + num_oid: '.1.3.6.1.4.1.5003.9.10.1.4.1.1.18.{{ $index }}' + descr: 'FXS {{ $index }} ({{ AcGateway::callerDisplayCallerDisplay }}, {{ AcGateway::channelsStartingPhoneNum }})' + index: 'hookStatus{{ $index }}' + state_name: acAnalogFxsFxoHookState + states: + - { descr: offHook, graph: 0, value: 0, generic: 0 } + - { descr: onHook, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoType + op: '!=' + value: 1 + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoTable + value: AC-ANALOG-MIB::acAnalogFxsFxoHookState + num_oid: '.1.3.6.1.4.1.5003.9.10.1.4.1.1.18.{{ $index }}' + descr: 'E&M {{ $index }} ({{ AcGateway::callerDisplayCallerDisplay }}, {{ AcGateway::channelsStartingPhoneNum }})' + index: 'hookStatus{{ $index }}' + state_name: acAnalogFxsFxoHookState + states: + - { descr: offHook, graph: 0, value: 0, generic: 0 } + - { descr: onHook, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: AC-ANALOG-MIB::acAnalogFxsFxoType + op: '!=' + value: 2 + - + oid: AC-PSTN-MIB::acTrunkTable + value: AC-PSTN-MIB::acTrunkAdministrativeState + num_oid: '.1.3.6.1.4.1.5003.9.10.9.1.1.1.1.1.2.{{ $index }}' + descr: 'Trunk {{ $index }} AdminStatus ({{ AC-PSTN-MIB::acTrunkDialPlanName }})' + index: 'trunkAdminStatus{{ $index }}' + state_name: acTrunkAdministrativeState + states: + - { descr: locked, graph: 0, value: 0, generic: 0 } + - { descr: unLocked, graph: 0, value: 1, generic: 0 } + - + oid: AC-PSTN-MIB::acTrunkTable + value: AC-PSTN-MIB::acTrunkProtocolType + num_oid: '.1.3.6.1.4.1.5003.9.10.9.1.1.1.1.1.3.{{ $index }}' + descr: 'Trunk {{ $index }} Type ({{ AC-PSTN-MIB::acTrunkDialPlanName }})' + index: 'trunkProtocolType{{ $index }}' + state_name: acTrunkProtocolType + states: + - { descr: NONE , graph: 0, value: 0 , generic: 0 } + - { descr: E1_EURO_ISDN , graph: 0, value: 1 , generic: 0 } + - { descr: T1_CAS , graph: 0, value: 2 , generic: 0 } + - { descr: T1_RAW_CAS , graph: 0, value: 3 , generic: 0 } + - { descr: T1_TRANSPARENT , graph: 0, value: 4 , generic: 0 } + - { descr: E1_TRANSPARENT_31 , graph: 0, value: 5 , generic: 0 } + - { descr: E1_TRANSPARENT_30 , graph: 0, value: 6 , generic: 0 } + - { descr: E1_MFCR2 , graph: 0, value: 7 , generic: 0 } + - { descr: E1_CAS , graph: 0, value: 8 , generic: 0 } + - { descr: E1_RAW_CAS , graph: 0, value: 9 , generic: 0 } + - { descr: T1_NI2_ISDN , graph: 0, value: 10 , generic: 0 } + - { descr: T1_4ESS_ISDN , graph: 0, value: 11 , generic: 0 } + - { descr: T1_5ESS_9_ISDN , graph: 0, value: 12 , generic: 0 } + - { descr: T1_5ESS_10_ISDN , graph: 0, value: 13 , generic: 0 } + - { descr: T1_DMS100_ISDN , graph: 0, value: 14 , generic: 0 } + - { descr: J1_TRANSPARENT , graph: 0, value: 15 , generic: 0 } + - { descr: T1_NTT_ISDN , graph: 0, value: 16 , generic: 0 } + - { descr: E1_AUSTEL_ISDN , graph: 0, value: 17 , generic: 0 } + - { descr: E1_HKT_ISDN , graph: 0, value: 18 , generic: 0 } + - { descr: E1_KOR_ISDN , graph: 0, value: 19 , generic: 0 } + - { descr: T1_HKT_ISDN , graph: 0, value: 20 , generic: 0 } + - { descr: E1_QSIG , graph: 0, value: 21 , generic: 0 } + - { descr: E1_TNZ_ISDN , graph: 0, value: 22 , generic: 0 } + - { descr: T1_QSIG , graph: 0, value: 23 , generic: 0 } + - { descr: T1_IUA , graph: 0, value: 28 , generic: 0 } + - { descr: E1_IUA , graph: 0, value: 29 , generic: 0 } + - { descr: E1_FRENCH_VN6_ISDN , graph: 0, value: 30 , generic: 0 } + - { descr: E1_FRENCH_VN3_ISDN , graph: 0, value: 31 , generic: 0 } + - { descr: T1_EURO_ISDN , graph: 0, value: 34 , generic: 0 } + - { descr: T1_DMS100_MERIDIAN_ISDN , graph: 0, value: 35 , generic: 0 } + - { descr: T1_NI1_ISDN , graph: 0, value: 36 , generic: 0 } + - { descr: E1_DUA , graph: 0, value: 37 , generic: 0 } + - { descr: E1_Q931_PACKETS , graph: 0, value: 38 , generic: 0 } + - { descr: T1_Q931_PACKETS , graph: 0, value: 39 , generic: 0 } + - { descr: E1_NI2_ISDN , graph: 0, value: 40 , generic: 0 } + - { descr: E1-CAS-R15 , graph: 0, value: 41 , generic: 0 } + - { descr: V5 , graph: 0, value: 43 , generic: 0 } + - { descr: BRI-EURO-ISDN, graph: 0, value: 50 , generic: 0 } + - { descr: BRI-NI-2, graph: 0, value: 51 , generic: 0 } + - { descr: BRI-DMS100, graph: 0, value: 52 , generic: 0 } + - { descr: BRI-5ESS, graph: 0, value: 53 , generic: 0 } + - { descr: BRI-QSIG , graph: 0, value: 54 , generic: 0 } + - { descr: BRI-VNG, graph: 0, value: 55 , generic: 0 } + - { descr: BRI-NTT, graph: 0, value: 56 , generic: 0 } + - { descr: BRI-IUA, graph: 0, value: 57 , generic: 0 } + - + oid: AC-PSTN-MIB::acTrunkStatusTable + value: AC-PSTN-MIB::acTrunkStatusAlarm + num_oid: '.1.3.6.1.4.1.5003.9.10.9.2.1.1.1.7.{{ $index }}' + descr: 'Trunk Status {{ $index }})' + index: 'trunkStatus{{ $index }}' + high_limit: AC-PM-PSTN-MIB::acPMTrunkUtilizationAttributesHighThreshold + low_limit: -1 + state_name: acTrunkUtilization + states: + - { descr: Disabled , graph: 0, value: 0 , generic: 3 } + - { descr: Active , graph: 0, value: 1 , generic: 0 } + - { descr: LosLof , graph: 0, value: 2 , generic: 2 } + - { descr: Ais , graph: 0, value: 3 , generic: 2 } + - { descr: Rai , graph: 0, value: 4 , generic: 2 } + - { descr: DChannel , graph: 0, value: 5 , generic: 2 } + - { descr: LowerLayerDown , graph: 0, value: 6 , generic: 2 } + - + oid: DS1-MIB::dsx1ConfigTable + value: DS1-MIB::dsx1LoopbackConfig + num_oid: '.1.3.6.1.2.1.10.18.6.1.9.{{ $index }}' + descr: 'DS1 LoopbackConfig ({{ DS1-MIB::dsx1CircuitIdentifier }}){{ $index }}' + index: 'DS1loopback{{ $index }}' + state_name: dsx1LoopbackConfig + states: + - { descr: No Loop , graph: 0, value: 1 , generic: 0 } + - { descr: Payload Loop , graph: 0, value: 2 , generic: 3 } + - { descr: Line Loop , graph: 0, value: 3 , generic: 3 } + - { descr: Other Loop , graph: 0, value: 4 , generic: 3 } + - { descr: Inward Loop , graph: 0, value: 5 , generic: 3 } + - { descr: Dual Loop , graph: 0, value: 6 , generic: 3 } diff --git a/priv/profiles/os_discovery/avaya-ipo.yaml b/priv/profiles/os_discovery/avaya-ipo.yaml new file mode 100644 index 00000000..768d2f10 --- /dev/null +++ b/priv/profiles/os_discovery/avaya-ipo.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: ENTITY-MIB::entPhysicalDescr.1 + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/aviat-wtm.yaml b/priv/profiles/os_discovery/aviat-wtm.yaml new file mode 100644 index 00000000..bfc01dc6 --- /dev/null +++ b/priv/profiles/os_discovery/aviat-wtm.yaml @@ -0,0 +1,30 @@ +mib: AVIAT-MODEM-MIB +modules: + os: + hardware: ENTITY-MIB::entPhysicalModelName.2 + serial: ENTITY-MIB::entPhysicalSerialNum.2 + version: ENTITY-MIB::entPhysicalSoftwareRev.2 + sensors: + state: + data: + - + oid: aviatModemCurModulationRx + num_oid: '.1.3.6.1.4.1.2509.9.3.2.1.1.14.{{ $index }}' + descr: Tx Mod Rate (Carrier1/{{ $index }}) + index: '{{ $index }}' + state_name: aviatModemCurModulationRx + states: + - { value: 1, generic: 1, graph: 1, descr: 'N/A' } + - { value: 2, generic: 0, graph: 1, descr: 'QPSK' } + - { value: 3, generic: 0, graph: 1, descr: '16-QAM' } + - { value: 4, generic: 0, graph: 1, descr: '32-QAM' } + - { value: 5, generic: 0, graph: 1, descr: '64-QAM' } + - { value: 6, generic: 0, graph: 1, descr: '128-QAM' } + - { value: 7, generic: 0, graph: 1, descr: '256-QAM' } + - { value: 8, generic: 0, graph: 1, descr: '512-QAM' } + - { value: 9, generic: 0, graph: 1, descr: '1024-QAM' } + - { value: 10, generic: 0, graph: 1, descr: '256-QAM-HG' } + - { value: 11, generic: 0, graph: 1, descr: '512-QAM-HD' } + - { value: 12, generic: 0, graph: 1, descr: '1024-QAM-HD' } + - { value: 13, generic: 0, graph: 1, descr: '2048-QAM' } + - { value: 14, generic: 0, graph: 1, descr: '4096-QAM' } diff --git a/priv/profiles/os_discovery/avocent-mp.yaml b/priv/profiles/os_discovery/avocent-mp.yaml new file mode 100644 index 00000000..369ded66 --- /dev/null +++ b/priv/profiles/os_discovery/avocent-mp.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S+)\s(?\S+)/' diff --git a/priv/profiles/os_discovery/avocent.yaml b/priv/profiles/os_discovery/avocent.yaml new file mode 100644 index 00000000..2e2864d2 --- /dev/null +++ b/priv/profiles/os_discovery/avocent.yaml @@ -0,0 +1,248 @@ +mib: PM-MIB:ACS-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - ACS-MIB::acsSerialPortTableName + voltage: + options: + skip_values: 0 + data: + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.70.{{ $index }}' + value: pmPowerMgmtPDUTableVoltageValue + descr: PDU + index: 'pmPowerMgmtPDUTableVoltageValue.{{ $index }}' + - + oid: pmPowerMgmtOutletsTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.5.1.70.{{ $index }}' + value: pmPowerMgmtOutletsTableVoltageValue + descr: 'Outlet {{ $pmPowerMgmtOutletsTableName }}' + index: 'pmPowerMgmtOutletsTableName.{{ $index }}' + - + oid: pmPowerMgmtPhasesTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.9.1.70.{{ $index }}' + value: pmPowerMgmtPhasesTableVoltageValue + descr: 'Phase {{ $pmPowerMgmtPhasesTableName }}' + index: 'pmPowerMgmtPhasesTableVoltageValue.{{ $index }}' + - + oid: pmPowerMgmtBanksTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.11.1.70.{{ $index }}' + value: pmPowerMgmtBanksTableVoltageValue + descr: 'Bank {{ $pmPowerMgmtBanksTableName }}' + index: 'pmPowerMgmtBanksTableVoltageValue.{{ $index }}' + power: + options: + divisor: 10 + skip_values: 0 + data: + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.60.{{ $index }}' + value: pmPowerMgmtPDUTablePowerValue + descr: PDU + index: 'pmPowerMgmtPDUTablePowerValue.{{ $index }}' + - + oid: pmPowerMgmtOutletsTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.5.1.60.{{ $index }}' + value: pmPowerMgmtOutletsTablePowerValue + descr: 'Outlet {{ $pmPowerMgmtOutletsTableName }}' + index: 'pmPowerMgmtOutletsTablePowerValue.{{ $index }}' + - + oid: pmPowerMgmtPhasesTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.9.1.60.{{ $index }}' + value: pmPowerMgmtPhasesTablePowerValue + descr: 'Phase {{ $pmPowerMgmtPhasesTableName }}' + index: 'pmPowerMgmtPhasesTablePowerValue.{{ $index }}' + - + oid: pmPowerMgmtBanksTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.11.1.60.{{ $index }}' + value: pmPowerMgmtBanksTablePowerValue + descr: 'Bank {{ $pmPowerMgmtBanksTableName }}' + index: 'pmPowerMgmtBanksTablePowerValue.{{ $index }}' + current: + options: + divisor: 10 + skip_values: 0 + data: + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.10.{{ $index }}' + value: pmPowerMgmtPDUTableCurrent1Value + descr: Current #1 + index: 'pmPowerMgmtPDUTableCurrent1Value.{{ $index }}' + low_limit: pmPowerMgmtPDUTableCurrentLowCritical + low_warn_limit: pmPowerMgmtPDUTableCurrentLowWarning + warn_limit: pmPowerMgmtPDUTableCurrentHighWarning + high_limit: pmPowerMgmtPDUTableCurrentHighCritical + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.12.{{ $index }}' + value: pmPowerMgmtPDUTableCurrent2Value + descr: Current #2 + index: 'pmPowerMgmtPDUTableCurrent2Value.{{ $index }}' + low_limit: pmPowerMgmtPDUTableCurrentLowCritical + low_warn_limit: pmPowerMgmtPDUTableCurrentLowWarning + warn_limit: pmPowerMgmtPDUTableCurrentHighWarning + high_limit: pmPowerMgmtPDUTableCurrentHighCritical + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.14.{{ $index }}' + value: pmPowerMgmtPDUTableCurrent3Value + descr: Current #3 + index: 'pmPowerMgmtPDUTableCurrent3Value.{{ $index }}' + low_limit: pmPowerMgmtPDUTableCurrentLowCritical + low_warn_limit: pmPowerMgmtPDUTableCurrentLowWarning + warn_limit: pmPowerMgmtPDUTableCurrentHighWarning + high_limit: pmPowerMgmtPDUTableCurrentHighCritical + - + oid: pmPowerMgmtOutletsTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.5.1.50.{{ $index }}' + value: pmPowerMgmtOutletsTableCurrentValue + descr: 'Outlet {{ $pmPowerMgmtOutletsTableName }}' + index: 'pmPowerMgmtOutletsTableCurrentValue.{{ $index }}' + low_limit: pmPowerMgmtOutletsTableCurrentLowCritical + low_warn_limit: pmPowerMgmtOutletsTableCurrentLowWarning + warn_limit: pmPowerMgmtOutletsTableCurrentHighWarning + high_limit: pmPowerMgmtOutletsTableCurrentHighCritical + - + oid: pmPowerMgmtPhasesTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.9.1.50.{{ $index }}' + value: pmPowerMgmtPhasesTableCurrentValue + descr: 'Phase {{ $pmPowerMgmtPhasesTableName }}' + index: 'pmPowerMgmtPhasesTableCurrentValue.{{ $index }}' + low_limit: pmPowerMgmtPhasesTableCurrentLowCritical + low_warn_limit: pmPowerMgmtPhasesTableCurrentLowWarning + warn_limit: pmPowerMgmtPhasesTableCurrentHighWarning + high_limit: pmPowerMgmtPhasesTableCurrentHighCritical + - + oid: pmPowerMgmtBanksTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.11.1.50.{{ $index }}' + value: pmPowerMgmtBanksTableCurrentValue + descr: 'Bank {{ $pmPowerMgmtBanksTableName }}' + index: 'pmPowerMgmtBanksTableCurrentValue.{{ $index }}' + low_limit: pmPowerMgmtBanksTableCurrentLowCritical + low_warn_limit: pmPowerMgmtBanksTableCurrentLowWarning + warn_limit: pmPowerMgmtBanksTableCurrentHighWarning + high_limit: pmPowerMgmtBanksTableCurrentHighCritical + temperature: + options: + divisor: 10 + skip_values: 0 + data: + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.17.{{ $index }}' + value: pmPowerMgmtPDUTableTemperature1Value + descr: Temp #1 + index: 'pmPowerMgmtPDUTableTemperature1Value.{{ $index }}' + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.19.{{ $index }}' + value: pmPowerMgmtPDUTableTemperature2Value + descr: Temp #2 + index: 'pmPowerMgmtPDUTableTemperature2Value.{{ $index }}' + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.19.{{ $index }}' + value: pmPowerMgmtPDUTableTemperature3Value + descr: Temp #3 + index: 'pmPowerMgmtPDUTableTemperature3Value.{{ $index }}' + state: + data: + - + oid: acsPowerSupplyStatePw1 + num_oid: '.1.3.6.1.4.1.10418.16.2.1.8.2.{{ $index }}' + descr: Power Supply 1 + states: + - { value: 1, generic: 0, graph: 1, descr: Power On } + - { value: 2, generic: 2, graph: 1, descr: Power Off } + - { value: 9999, generic: 1, graph: 1, descr: Not Installed } + - + oid: acsPowerSupplyStatePw2 + num_oid: '.1.3.6.1.4.1.10418.16.2.1.8.3.{{ $index }}' + descr: Power Supply 1 + states: + - { value: 1, generic: 0, graph: 1, descr: Power On } + - { value: 2, generic: 2, graph: 1, descr: Power Off } + - { value: 9999, generic: 1, graph: 1, descr: Not Installed } + - + oid: acsSerialPortTable + num_oid: '.1.3.6.1.4.1.10418.16.2.3.2.1.3.{{ $index }}' + index: 'acsSerialPortTableStatus.{{ $index }}' + descr: "{{ $ACS-MIB::acsSerialPortTableName }} Status" + group: Serial Ports + value: acsSerialPortTableStatus + states: + - { value: 1, descr: Disabled, graph: 0, generic: 0 } + - { value: 2, descr: Idle, graph: 0, generic: 0 } + - { value: 3, descr: In Use, graph: 0, generic: 0 } + - + oid: pmPowerMgmtPDUTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.3.1.45.{{ $index }}' + value: pmPowerMgmtPDUTableAlarm + descr: PDU + index: 'pmPowerMgmtPDUTableAlarm.{{ $index }}' + state_name: pmPowerMgmtPDUTableAlarm + states: + - { value: 1, generic: 0, graph: 1, descr: normal } + - { value: 2, generic: 2, graph: 1, descr: blow-fuse } + - { value: 3, generic: 1, graph: 1, descr: hw-ocp } + - { value: 4, generic: 2, graph: 1, descr: high-critical } + - { value: 5, generic: 1, graph: 1, descr: high-warning } + - { value: 6, generic: 1, graph: 1, descr: low-warning } + - { value: 7, generic: 2, graph: 1, descr: low-critical } + - + oid: pmPowerMgmtOutletsTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.5.1.45.{{ $index }}' + value: pmPowerMgmtOutletsTableAlarm + descr: 'Outlet {{ $pmPowerMgmtOutletsTableName }}' + index: 'pmPowerMgmtOutletsTableAlarm.{{ $index }}' + state_name: pmPowerMgmtOutletsTableAlarm + states: + - { value: 1, generic: 0, graph: 1, descr: normal } + - { value: 2, generic: 2, graph: 1, descr: blow-fuse } + - { value: 3, generic: 1, graph: 1, descr: hw-ocp } + - { value: 4, generic: 2, graph: 1, descr: high-critical } + - { value: 5, generic: 1, graph: 1, descr: high-warning } + - { value: 6, generic: 1, graph: 1, descr: low-warning } + - { value: 7, generic: 2, graph: 1, descr: low-critical } + - + oid: pmPowerMgmtPhasesTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.9.1.45.{{ $index }}' + value: pmPowerMgmtPhasesTableAlarm + descr: 'Phase {{ $pmPowerMgmtPhasesTableName }}' + index: 'pmPowerMgmtPhasesTableAlarm.{{ $index }}' + state_name: pmPowerMgmtPhasesTableAlarm + states: + - { value: 1, generic: 0, graph: 1, descr: normal } + - { value: 2, generic: 2, graph: 1, descr: blow-fuse } + - { value: 3, generic: 1, graph: 1, descr: hw-ocp } + - { value: 4, generic: 2, graph: 1, descr: high-critical } + - { value: 5, generic: 1, graph: 1, descr: high-warning } + - { value: 6, generic: 1, graph: 1, descr: low-warning } + - { value: 7, generic: 2, graph: 1, descr: low-critical } + - + oid: pmPowerMgmtBanksTable + num_oid: '.1.3.6.1.4.1.10418.17.2.5.11.1.45.{{ $index }}' + value: pmPowerMgmtBanksTableAlarm + descr: 'Bank {{ $pmPowerMgmtBanksTableName }}' + index: 'pmPowerMgmtBanksTableAlarm.{{ $index }}' + state_name: pmPowerMgmtBanksTableAlarm + states: + - { value: 1, generic: 0, graph: 1, descr: normal } + - { value: 2, generic: 2, graph: 1, descr: blow-fuse } + - { value: 3, generic: 1, graph: 1, descr: hw-ocp } + - { value: 4, generic: 2, graph: 1, descr: high-critical } + - { value: 5, generic: 1, graph: 1, descr: high-warning } + - { value: 6, generic: 1, graph: 1, descr: low-warning } + - { value: 7, generic: 2, graph: 1, descr: low-critical } + count: + data: + - + oid: acsActiveSessionsNumberOfSession + num_oid: '.1.3.6.1.4.1.10418.16.2.2.1.{{ $index }}' + descr: 'Active Sessions' diff --git a/priv/profiles/os_discovery/avr-hd.yaml b/priv/profiles/os_discovery/avr-hd.yaml new file mode 100644 index 00000000..d3d16a6a --- /dev/null +++ b/priv/profiles/os_discovery/avr-hd.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/avr-hd \[(?.*?)\]/' + hardware: .1.3.6.1.4.1.28194.1.37.0 diff --git a/priv/profiles/os_discovery/avtech.yaml b/priv/profiles/os_discovery/avtech.yaml new file mode 100644 index 00000000..696866ed --- /dev/null +++ b/priv/profiles/os_discovery/avtech.yaml @@ -0,0 +1,333 @@ +modules: + os: + sysDescr_regex: '/(?.*) v(?[\d.]+)/' + sensors: + temperature: + options: + divisor: 100 + skip_values: 0 + data: + - # RoomAlert 3E internal + oid: .1.3.6.1.4.1.20916.1.9.1.1.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.9.1.1.1.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.9.1.1.1.3.0 + - # RoomAlert 3E sen1 + oid: .1.3.6.1.4.1.20916.1.9.1.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.9.1.1.2.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.9.1.1.2.6.0 + + - # RoomAlert 3S internal + oid: .1.3.6.1.4.1.20916.1.13.1.1.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.13.1.1.1.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.13.1.1.1.3.0 + - # RoomAlert 3S sen1 + oid: .1.3.6.1.4.1.20916.1.9.1.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.9.1.1.2.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.9.1.1.2.6.0 + + - # RoomAlert 4E internal + oid: .1.3.6.1.4.1.20916.1.6.1.1.1.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.6.1.1.1.2.{{ $index }}' + divisor: 1 + index: 0 + descr: .1.3.6.1.4.1.20916.1.6.1.1.2.1.0 + - # RoomAlert 4E sen1 + oid: .1.3.6.1.4.1.20916.1.6.1.2.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.6.1.2.1.1.{{ $index }}' + divisor: 1 + index: 1 + descr: .1.3.6.1.4.1.20916.1.6.1.2.1.8.0 + - # RoomAlert 4E sen2 + oid: .1.3.6.1.4.1.20916.1.6.1.2.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.6.1.2.2.1.{{ $index }}' + divisor: 1 + index: 2 + descr: .1.3.6.1.4.1.20916.1.6.1.2.2.8.0 + + - # RoomAlert 11E sensor 2 + oid: .1.3.6.1.4.1.20916.1.3.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.3.1.2.1.{{ $index }}' + divisor: 1 + index: 2 + descr: .1.3.6.1.4.1.20916.1.3.1.2.6.0 + - # RoomAlert 11E sensor 3 + oid: .1.3.6.1.4.1.20916.1.3.1.3.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.3.1.3.1.{{ $index }}' + divisor: 1 + index: 3 + descr: .1.3.6.1.4.1.20916.1.3.1.3.6.0 + - # RoomAlert 11E sensor 4 + oid: .1.3.6.1.4.1.20916.1.3.1.4.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.3.1.4.1.{{ $index }}' + divisor: 1 + index: 4 + descr: .1.3.6.1.4.1.20916.1.3.1.4.6.0 + + - # RoomAlert 12E internal + oid: .1.3.6.1.4.1.20916.1.10.1.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.1.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.10.1.1.3.0 + - # RoomAlert 12E sen1 + oid: .1.3.6.1.4.1.20916.1.10.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.2.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.10.1.2.8.0 + - # RoomAlert 12E sen2 + oid: .1.3.6.1.4.1.20916.1.10.1.3.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.3.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.10.1.3.8.0 + - # RoomAlert 12E sen3 + oid: .1.3.6.1.4.1.20916.1.10.1.4.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.4.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.10.1.4.8.0 + + - # RoomAlert 32E/W internal temp + oid: .1.3.6.1.4.1.20916.1.8.1.1.1.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.1.2.{{ $index }}' + index: 0 + descr: Internal Temperature + - # RoomAlert 32E/W internal heat + oid: .1.3.6.1.4.1.20916.1.8.1.1.4.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.4.2.{{ $index }}' + index: 1 + descr: Internal Heat Index + - # RoomAlert 32E/W ext temp + oid: ra32-ext-temp + num_oid: '.1.3.6.1.4.1.20916.1.8.1.2.{{ $index }}' + value: value + descr: Sensor {{ $id }} + - # RoomAlert 32W wish temp + oid: ra32-wish-temp + num_oid: '.1.3.6.1.4.1.20916.1.8.1.4.{{ $index }}' + value: value + descr: WiSH {{ $id }} Internal + + - # RoomAlert 32S internal temp + oid: .1.3.6.1.4.1.20916.1.11.1.1.1.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.1.2.{{ $index }}' + index: 0 + descr: Internal Temperature + - # RoomAlert 32S internal heat + oid: .1.3.6.1.4.1.20916.1.11.1.1.4.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.4.2.{{ $index }}' + index: 1 + descr: Internal Heat Index + - # RoomAlert 32S ext temp + oid: ra32s-ext-temp + num_oid: '.1.3.6.1.4.1.20916.1.11.1.2.{{ $index }}' + value: value + descr: Sensor {{ $id }} + + - # TemPageR 3E internal + oid: .1.3.6.1.4.1.20916.1.7.1.1.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.7.1.1.1.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.7.1.1.2.0 + - # TemPageR 3E sen1 + oid: .1.3.6.1.4.1.20916.1.7.1.2.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.7.1.2.1.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.7.1.2.1.3.0 + - # TemPageR 3E sen2 + oid: .1.3.6.1.4.1.20916.1.7.1.2.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.7.1.2.2.1.{{ $index }}' + index: 2 + descr: .1.3.6.1.4.1.20916.1.7.1.2.2.3.0 + + - # TemPageR 4E internal + oid: .1.3.6.1.4.1.20916.1.1.1.1.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.1.1.1.1.{{ $index }}' + index: 0 + descr: Internal + high_limit: .1.3.6.1.4.1.20916.1.1.3.1.0 + low_limit: .1.3.6.1.4.1.20916.1.1.3.2.0 + - # TemPageR 4E sen1 + oid: .1.3.6.1.4.1.20916.1.1.1.1.2.0 + num_oid: '.1.3.6.1.4.1.20916.1.1.1.1.2.{{ $index }}' + index: 1 + descr: Sensor 1 + high_limit: .1.3.6.1.4.1.20916.1.1.3.3.0 + low_limit: .1.3.6.1.4.1.20916.1.1.3.4.0 + - # TemPageR 4E sen2 + oid: .1.3.6.1.4.1.20916.1.1.1.1.3.0 + num_oid: '.1.3.6.1.4.1.20916.1.1.1.1.3.{{ $index }}' + index: 2 + descr: Sensor 2 + high_limit: .1.3.6.1.4.1.20916.1.1.3.5.0 + low_limit: .1.3.6.1.4.1.20916.1.1.3.6.0 + - # TemPageR 4E sen3 + oid: .1.3.6.1.4.1.20916.1.1.1.1.4.0 + num_oid: '.1.3.6.1.4.1.20916.1.1.1.1.4.{{ $index }}' + index: 3 + descr: Sensor 3 + high_limit: .1.3.6.1.4.1.20916.1.1.3.7.0 + low_limit: .1.3.6.1.4.1.20916.1.1.3.8.0 + humidity: + options: + divisor: 100 + data: + - # RoomAlert 32E/W + oid: .1.3.6.1.4.1.20916.1.8.1.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.2.1.{{ $index }}' + index: 0 + descr: Internal Humidity + - # RoomAlert 32S + oid: .1.3.6.1.4.1.20916.1.11.1.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.2.1.{{ $index }}' + index: 0 + descr: Internal Humidity + - # RoomAlert 12E sen1 + oid: .1.3.6.1.4.1.20916.1.10.1.2.3.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.2.3.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.10.1.2.8.0 + - # RoomAlert 12E sen2 + oid: .1.3.6.1.4.1.20916.1.10.1.3.3.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.3.3.{{ $index }}' + index: 2 + descr: .1.3.6.1.4.1.20916.1.10.1.3.8.0 + - # RoomAlert 12E sen3 + oid: .1.3.6.1.4.1.20916.1.10.1.4.3.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.4.3.{{ $index }}' + index: 3 + descr: .1.3.6.1.4.1.20916.1.10.1.4.8.0 + voltage: + data: + - # RoomAlert 32E/W analog + oid: ra32-analog + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.5.{{ $index }}' + value: value + low_limit: 0 + high_limit: 5 + descr: Analog {{ $id }} + - # RoomAlert 32S analog + oid: ra32s-analog + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.5.{{ $index }}' + value: value + low_limit: 0 + high_limit: 5 + descr: Analog {{ $id }} + state: + data: + - # RoomAlert 3E switch + oid: .1.3.6.1.4.1.20916.1.9.1.2.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.9.1.2.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.9.1.2.2.0 + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 4E switch + oid: .1.3.6.1.4.1.20916.1.6.1.3.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.6.1.3.1.{{ $index }}' + index: 0 + descr: .1.3.6.1.4.1.20916.1.6.1.3.2.0 + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 12E sen sw 1 + oid: .1.3.6.1.4.1.20916.1.10.1.5.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.5.1.{{ $index }}' + index: 1 + descr: .1.3.6.1.4.1.20916.1.10.1.5.2.0 + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 12E sen sw 2 + oid: .1.3.6.1.4.1.20916.1.10.1.6.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.6.1.{{ $index }}' + index: 2 + descr: .1.3.6.1.4.1.20916.1.10.1.6.2.0 + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 12E sen sw 3 + oid: .1.3.6.1.4.1.20916.1.10.1.7.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.7.1.{{ $index }}' + index: 3 + descr: .1.3.6.1.4.1.20916.1.10.1.7.2.0 + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 12E sen sw 4 + oid: .1.3.6.1.4.1.20916.1.10.1.8.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.10.1.8.1.{{ $index }}' + index: 4 + descr: .1.3.6.1.4.1.20916.1.10.1.8.2.0 + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 32E/W power + oid: .1.3.6.1.4.1.20916.1.8.1.1.3.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.3.1.{{ $index }}' + index: 0 + descr: Power Source + state_name: power + states: + - { value: 0, generic: 1, graph: 1, descr: Battery } + - { value: 1, generic: 0, graph: 1, descr: AC } + - # RoomAlert 32E/W relays + oid: ra32-relay + value: value + num_oid: '.1.3.6.1.4.1.20916.1.8.1.1.6.{{ $index }}' + descr: Relay {{ $id }} + state_name: relay + states: + - { value: 0, generic: 0, graph: 1, descr: Open } + - { value: 1, generic: 0, graph: 1, descr: Closed } + - # RoomAlert 32E/W switches + oid: ra32-switch + value: value + num_oid: '.1.3.6.1.4.1.20916.1.8.1.3.{{ $index }}' + descr: Switch {{ $id }} + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + + - # RoomAlert 32S power + oid: .1.3.6.1.4.1.20916.1.11.1.1.3.1.0 + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.3.1.{{ $index }}' + index: 0 + descr: Power Source + state_name: power + states: + - { value: 0, generic: 1, graph: 1, descr: Battery } + - { value: 1, generic: 0, graph: 1, descr: AC } + - # RoomAlert 32S relays + oid: ra32s-relay + value: value + num_oid: '.1.3.6.1.4.1.20916.1.11.1.1.6.{{ $index }}' + descr: Relay {{ $id }} + state_name: relay + states: + - { value: 0, generic: 0, graph: 1, descr: Open } + - { value: 1, generic: 0, graph: 1, descr: Closed } + - # RoomAlert 32S switches + oid: ra32s-switch + value: value + num_oid: '.1.3.6.1.4.1.20916.1.11.1.3.{{ $index }}' + descr: Switch {{ $id }} + state_name: switch + states: + - { value: 0, generic: -1, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + diff --git a/priv/profiles/os_discovery/awplus.yaml b/priv/profiles/os_discovery/awplus.yaml new file mode 100644 index 00000000..fe1071d6 --- /dev/null +++ b/priv/profiles/os_discovery/awplus.yaml @@ -0,0 +1,171 @@ +mib: AT-ENVMONv2-MIB:AT-SYSINFO-MIB +modules: + processors: + data: + - + oid: cpuUtilisationStackEntry + value: cpuUtilisationStackAvgLastMinute + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.3.8.1.4.{{ $index }}' + descr: 'Processor {{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifName + fanspeed: + options: + skip_values: 0 + data: + - + oid: atEnvMonv2FanTable + value: atEnvMonv2FanCurrentSpeed + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.1.1.5.{{ $index }}' + descr: atEnvMonv2FanDescription + index: 'atEnvMonv2FanIndex.{{ $index }}' + low_limit: atEnvMonv2FanLowerThreshold + voltage: + data: + - + oid: atEnvMonv2VoltageTable + value: atEnvMonv2VoltageCurrent + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.2.1.5.{{ $index }}' + descr: atEnvMonv2VoltageDescription + index: 'atEnvMonv2VoltageIndex.{{ $index }}' + divisor: 1000 + low_limit: atEnvMonv2VoltageLowerThreshold + high_limit: atEnvMonv2VoltageUpperThreshold + - + oid: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccTable + value: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccStatusReading + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.28.1.2.1.3.{{ $index }}' + descr: 'Voltage {{ IF-MIB::ifName:0 }} CH: {{ $subindex1 }}' + divisor: 10000 + index: 'atPluggableDiagVccStatusReading.{{ $index }}' + high_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccAlarmMax + warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccWarningMax + low_warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccWarningMin + low_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagVccAlarmMin + group: transceiver + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + temperature: + options: + skip_values: [128, -128] + data: + - + oid: atEnvMonv2TemperatureTable + value: atEnvMonv2TemperatureCurrent + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.3.1.5.{{ $index }}' + descr: atEnvMonv2TemperatureDescription + index: 'atEnvMonv2TemperatureIndex.{{ $index }}' + high_limit: atEnvMonv2TemperatureUpperThreshold + - + oid: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempTable + value: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempStatusReading + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.28.1.1.1.3.{{ $index }}' + descr: 'Temp {{ IF-MIB::ifName:0 }} CH: {{ $subindex1 }}' + divisor: 1000 + index: 'atPluggableDiagTempStatusReading.{{ $index }}' + high_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempAlarmMax + warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempWarningMax + low_warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempWarningMin + low_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTempAlarmMin + group: transceiver + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + current: + data: + - + oid: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasTable + value: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasStatusReading + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.28.1.3.1.3.{{ $index }}' + descr: 'TX Bias {{ IF-MIB::ifName:0 }} CH: {{ $subindex1 }}' + divisor: 1000000 + index: 'atPluggableDiagTxBiasStatusReading.{{ $index }}' + high_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasAlarmMax + warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasWarningMax + low_warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasWarningMin + low_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxBiasAlarmMin + group: transceiver + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + dbm: + data: + - + oid: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerTable + value: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerStatusReading + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.28.1.4.1.3.{{ $index }}' + descr: 'TX Power {{ IF-MIB::ifName:0 }} CH: {{ $subindex1 }}' + divisor: 10000 + index: 'atPluggableDiagTxPowerStatusReading.{{ $index }}' + high_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerAlarmMax + warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerWarningMax + low_warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerWarningMin + low_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagTxPowerAlarmMin + user_func: mw_to_dbm + group: transceiver + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + - + oid: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerTable + value: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerStatusReading + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.28.1.5.1.3.{{ $index }}' + descr: 'RX Power {{ IF-MIB::ifName:0 }} CH: {{ $subindex1 }}' + divisor: 10000 + index: 'atPluggableDiagRxPowerStatusReading.{{ $index }}' + high_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerAlarmMax + warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerWarningMax + low_warn_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerWarningMin + low_limit: AT-PLUGGABLE-DIAGNOSTICS-MIB::atPluggableDiagRxPowerAlarmMin + user_func: mw_to_dbm + group: transceiver + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + state: + data: + - + oid: atEnvMonv2FanTable + value: atEnvMonv2FanStatus + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.1.1.7.{{ $index }}' + descr: atEnvMonv2FanDescription + index: 'atEnvMonv2FanIndex.{{ $index }}' + state_name: 'AtFanState' + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: failed, graph: 0, value: 1, generic: 2 } + - { descr: good, graph: 0, value: 2, generic: 0 } + - + oid: atEnvMonv2VoltageTable + value: atEnvMonv2VoltageStatus + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.2.1.8.{{ $index }}' + descr: atEnvMonv2VoltageDescription + index: 'atEnvMonv2VoltageIndex.{{ $index }}' + state_name: 'AtVoltageState' + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: outOfRange, graph: 0, value: 1, generic: 2 } + - { descr: inRange, graph: 0, value: 2, generic: 0 } + - + oid: atEnvMonv2TemperatureTable + value: atEnvMonv2TemperatureStatus + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.3.1.7.{{ $index }}' + descr: atEnvMonv2TemperatureDescription + index: 'atEnvMonv2TemperatureIndex.{{ $index }}' + state_name: 'AtTemperatureState' + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: outOfRange, graph: 0, value: 1, generic: 2 } + - { descr: inRange, graph: 0, value: 2, generic: 0 } + - + oid: atEnvMonv2PsbSensorTable + value: atEnvMonv2PsbSensorStatus + num_oid: '.1.3.6.1.4.1.207.8.4.4.3.12.4.2.1.6.{{ $index }}' + descr: atEnvMonv2PsbSensorDescription + index: 'atEnvMonv2PsbSensorIndex.{{ $index }}' + state_name: 'AtPowerSupplyState' + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: failed, graph: 0, value: 1, generic: 2 } + - { descr: good, graph: 0, value: 2, generic: 0 } + - { descr: notPowered, graph: 0, value: 3, generic: 3 } diff --git a/priv/profiles/os_discovery/axisaudio.yaml b/priv/profiles/os_discovery/axisaudio.yaml new file mode 100644 index 00000000..1ab47506 --- /dev/null +++ b/priv/profiles/os_discovery/axisaudio.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?[^;]+); [^;]+; (?[^;]+)/' diff --git a/priv/profiles/os_discovery/axiscam.yaml b/priv/profiles/os_discovery/axiscam.yaml new file mode 100644 index 00000000..094b556d --- /dev/null +++ b/priv/profiles/os_discovery/axiscam.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/(?[^;]+); [^;]+; (?[^;]+)/' + serial: + - IF-MIB::ifPhysAddress.2 diff --git a/priv/profiles/os_discovery/axos.yaml b/priv/profiles/os_discovery/axos.yaml new file mode 100644 index 00000000..9ff5edad --- /dev/null +++ b/priv/profiles/os_discovery/axos.yaml @@ -0,0 +1,182 @@ +mib: CALIX-PRODUCT-MIB:AXOS-ALARM-MIB:Axos-Card-MIB:Axos-Ont-MIB:Axos-System-MIB:Axos-Trap-MIB +modules: + os: + serial: Axos-System-MIB::axosSystemChassisSerialNumber.0 + sysDescr_regex: '/(?.*)/' + sensors: + temperature: + data: + - + oid: AxosOltPonPortEntry + value: axosOltPonPortTemperature + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.4.{{ $index }}' + group: transceiver + descr: '{{ $axosOltPonPortName }} Temperature' + index: 'axosOltPonPortTemperature.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: axosOltPonPortStatus + op: '=' + value: 0 + voltage: + data: + - + oid: AxosOltPonPortEntry + value: axosOltPonPortVoltage + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.8.{{ $index }}' + group: transceiver + descr: '{{ $axosOltPonPortName }} Voltage' + index: 'axosOltPonPortVoltage.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: axosOltPonPortStatus + op: '=' + value: 0 + current: + data: + - + oid: AxosOltPonPortEntry + value: axosOltPonPortTxBias + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.5.{{ $index }}' + group: transceiver + descr: '{{ $axosOltPonPortName }} TX Bias' + index: 'axosOltPonPortTxBias.{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: axosOltPonPortStatus + op: '=' + value: 0 + + state: + data: + - + oid: AxosOltPonPortEntry + value: axosOltPonPortStatus + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.3.{{ $index }}' + descr: '{{ $axosOltPonPortName }} Status' + index: axosOltPonPortStatus.{{ $index }} + group: transceiver + entPhysicalIndex: '{{ $index }}' + state_name: axosOltPonPortStatus + states: + - { value: 0, generic: 3, graph: 0, descr: Invalid } + - { value: 1, generic: 0, graph: 0, descr: Up } + - { value: 2, generic: 1, graph: 0, descr: Down } + + - + oid: axosCardTable + value: axosCardAdminStatus + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.1.1.3.{{ $index }}' + descr: '{{ $axosCardSerialNumber }}' + index: axosCardAdminStatus.{{ $index }} + state_name: axosCardAdminStatus + states: + - { value: 0, generic: 3, graph: 0, descr: Unknown } + - { value: 1, generic: 0, graph: 0, descr: Enabled } + - { value: 2, generic: 1, graph: 0, descr: Alarm Suppress } + - { value: 3, generic: 0, graph: 0, descr: Disabled } + - + oid: axosOntTable + value: axosOntOperStatus + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.6.1.1.4.{{ $index }}' + descr: 'ONT {{ $axosOntID }} Oper Status' + index: axosOntOperStatus.{{ $index }} + state_name: axosOntOperStatus + states: + - { value: 0, generic: 3, graph: 0, descr: Unknown } + - { value: 1, generic: 0, graph: 0, descr: Enabled } + - { value: 2, generic: 0, graph: 0, descr: Disabled } + - + oid: axosOntTable + value: axosOntAdminStatus + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.6.1.1.3.{{ $index }}' + descr: 'ONT {{ $axosOntID }} Admin Status' + index: axosOntAdminStatus.{{ $index }} + state_name: axosOntAdminStatus + states: + - { value: 0, generic: 3, graph: 0, descr: Unknown } + - { value: 1, generic: 0, graph: 0, descr: Enabled } + - { value: 2, generic: 0, graph: 0, descr: Disabled } + + dbm: + data: + - + oid: AxosOltPonPortEntry + value: axosOltPonPortRxPower + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.7.{{ $index }}' + group: transceiver + descr: '{{ $axosOltPonPortName }} Rx Power' + index: 'axosOltPonPortRxPower.{{ $index }}' + divisor: 10000 + user_func: 'mw_to_dbm' + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: axosOltPonPortStatus + op: '=' + value: 0 + - + oid: AxosOltPonPortEntry + value: axosOltPonPortTxPower + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.4.2.1.6.{{ $index }}' + group: transceiver + descr: '{{ $axosOltPonPortName }} Tx Power' + index: 'axosOltPonPortTxPower.{{ $index }}' + divisor: 10000 + user_func: 'mw_to_dbm' + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: axosOltPonPortStatus + op: '=' + value: 0 + + - + oid: AxosOntTable + value: axosOntRxOpticalLevel + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.6.1.1.6.{{ $index }}' + descr: "ONT {{ $axosOntID }} RX Power" + group: 'ONT {{ $axosOntID }}' + index: 'axosOntRxOpticalLevel.{{ $index }}' + divisor: 10000 + user_func: 'mw_to_dbm' + skip_values: + - + oid: axosOntAdminStatus + op: '=' + value: 2 + - + oid: AxosOntTable + value: axosOntFarEndRxOpticalLevel + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.6.1.1.6.{{ $index }}' + descr: "ONT {{ $axosOntID }} OLT RX Signal Level" + group: 'ONT {{ $axosOntID }}' + index: 'axosOntFarEndRxOpticalLevel.{{ $index }}' + divisor: 10000 + user_func: 'mw_to_dbm' + skip_values: + - + oid: axosOntAdminStatus + op: '=' + value: 2 + - + oid: AxosOntTable + value: axosOntTxOpticalLevel + num_oid: '.1.3.6.1.4.1.6321.1.2.4.2.6.1.1.7.{{ $index }}' + descr: "ONT {{ $axosOntID }} TX Power" + group: 'ONT {{ $axosOntID }}' + index: 'axosOntTxOpticalLevel.{{ $index }}' + divisor: 10000 + user_func: 'mw_to_dbm' + skip_values: + - + oid: axosOntAdminStatus + op: '=' + value: 2 + diff --git a/priv/profiles/os_discovery/baicells-od04.yaml b/priv/profiles/os_discovery/baicells-od04.yaml new file mode 100644 index 00000000..764080d2 --- /dev/null +++ b/priv/profiles/os_discovery/baicells-od04.yaml @@ -0,0 +1,152 @@ +mib: BAICELLS-MIB +modules: + os: + hardware: BAICELLS-MIB::HardwareVersion.0 + serial: BAICELLS-MIB::SerialNumber.0 + version: BAICELLS-MIB::SoftwareVersion.0 + sensors: + runtime: + data: + - + oid: ConnectionTime + num_oid: .1.3.6.1.4.1.53058.2.3.5.{{ $index }} + index: 'ConnectionTime' + descr: 'Connection time' + user_func: hhmmssToMinutes + dbm: + data: + - + oid: AntRSRP0 + num_oid: .1.3.6.1.4.1.53058.2.2.7.{{ $index }} + descr: 'Ant0 RSRP' + index: 'RSRP.0' + group: 'RSPR' + - + oid: AntRSRP1 + num_oid: .1.3.6.1.4.1.53058.2.2.8.{{ $index }} + descr: 'Ant1 RSRP' + index: 'RSRP.1' + group: 'RSPR' + - + oid: TxPower + num_oid: .1.3.6.1.4.1.53058.2.2.13.{{ $index }} + index: 'TxPower.0' + descr: 'Tx power' + quality_factor: + data: + - + oid: AntRSRQ + num_oid: .1.3.6.1.4.1.53058.2.2.9.{{ $index }} + descr: 'Ant RSRQ' + index: 'RSRQ.0' + group: 'RSRQ' + - + oid: AntSINR + num_oid: .1.3.6.1.4.1.53058.2.2.10.{{ $index }} + descr: 'Ant SINR' + index: 'SINR.1' + group: 'RSRQ' + - + oid: AntCINR0 + num_oid: .1.3.6.1.4.1.53058.2.2.11.{{ $index }} + descr: 'Ant0 CINR' + index: 'CINR.0' + group: 'CINR' + - + oid: AntCINR1 + num_oid: .1.3.6.1.4.1.53058.2.2.12.{{ $index }} + descr: 'Ant1 CINR' + index: 'CINR.1' + group: 'CINR' + frequency: + data: + - + oid: DownLinkFrequency + num_oid: .1.3.6.1.4.1.53058.2.2.3.{{ $index }} + index: DownLinkFrequency + descr: 'Downlink Freq' + multiplier: 1000 + skip_values: + - + oid: DownLinkFrequency + op: '=' + value: '65535' + - + oid: UpLinkFrequency + num_oid: .1.3.6.1.4.1.53058.2.2.4.{{ $index }} + index: UpLinkFrequency + descr: 'Uplink Freq' + multiplier: 1000 + skip_values: + - + oid: UpLinkFrequency + op: '=' + value: '65535' + - + oid: BandWidth + num_oid: .1.3.6.1.4.1.53058.2.2.5.{{ $index }} + index: BandWidth + descr: 'Bandwidth' + multiplier: 1000 + skip_values: + - + oid: BandWidth + op: '=' + value: '65535' + bitrate: + data: + - + oid: DownloadRate + num_oid: .1.3.6.1.4.1.53058.2.3.12.{{ $index }} + index: DownloadRate + descr: 'Rx Rate' + - + oid: UploadRate + num_oid: .1.3.6.1.4.1.53058.2.3.15.{{ $index }} + index: UploadRate + descr: 'Tx Rate' + count: + data: + - + oid: IMSI + num_oid: .1.3.6.1.4.1.53058.2.3.3.{{ $index }} + index: IMSI + descr: 'CPE IMSI' + group: Mobile + skip_values: + - + oid: IMSI + op: '=' + value: '0' + - + oid: eNBID + num_oid: .1.3.6.1.4.1.53058.2.2.15.{{ $index }} + index: eNBID + descr: 'eNodeB ID' + group: Mobile + skip_values: + - + oid: eNBID + op: '=' + value: '65535' + - + oid: CellID + num_oid: .1.3.6.1.4.1.53058.2.2.16.{{ $index }} + index: CellID + descr: 'Cell ID' + group: Mobile + skip_values: + - + oid: CellID + op: '=' + value: '65535' + - + oid: SendPackages + num_oid: .1.3.6.1.4.1.53058.2.3.20.{{ $index }} + index: SendPackages + descr: 'Tx Packets' + - + oid: RecvPakcages # yes, 'RecvPakcages' + num_oid: .1.3.6.1.4.1.53058.2.3.21.{{ $index }} + index: RecvPakcages # yes, 'RecvPakcages' + descr: 'Rx Packets' diff --git a/priv/profiles/os_discovery/barracudaspamfirewall.yaml b/priv/profiles/os_discovery/barracudaspamfirewall.yaml new file mode 100644 index 00000000..fac3cf6a --- /dev/null +++ b/priv/profiles/os_discovery/barracudaspamfirewall.yaml @@ -0,0 +1,16 @@ +mib: UCD-SNMP-MIB +modules: + sensors: + count: + data: + - + oid: extEntry + value: extResult + num_oid: '.1.3.6.1.4.1.2021.8.1.100.{{ $index }}' + descr: '{{ $extNames }}' + index: 'ucd{{ $index }}' + skip_values: + - + oid: extErrFix + op: '!=' + value: '0' diff --git a/priv/profiles/os_discovery/barracudawafirewall.yaml b/priv/profiles/os_discovery/barracudawafirewall.yaml new file mode 100644 index 00000000..6057965e --- /dev/null +++ b/priv/profiles/os_discovery/barracudawafirewall.yaml @@ -0,0 +1,5 @@ +modules: + os: + serial: BWS-MIB::systemSerialNumber.0 + version: BWS-MIB::currentFirmwareVersion.0 + version_regex: '/(?\S+)/' diff --git a/priv/profiles/os_discovery/bats.yaml b/priv/profiles/os_discovery/bats.yaml new file mode 100644 index 00000000..da98a252 --- /dev/null +++ b/priv/profiles/os_discovery/bats.yaml @@ -0,0 +1,155 @@ +mib: AATS-MIB +modules: + sensors: + temperature: + data: + - + oid: aatsDot1 + value: cpuTemp + num_oid: '.1.3.6.1.4.1.37069.1.1.4.{{ $index }}' + descr: 'System CPU' + index: 'cpuTemp.{{ $index }}' + count: + options: + skip_value_lt: 0 + data: + - + oid: aatsDot1 + value: status + group: Positioner + num_oid: '.1.3.6.1.4.1.37069.1.1.1.{{ $index }}' + descr: 'Link distance (km)' + index: 'status.{{ $index }}' + - + oid: aatsDot1 + value: currentHeading360ScaleFloat + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.7.2.5.{{ $index }}' + descr: 'GPS Heading' + index: 'currentHeading360ScaleFloat.{{ $index }}' + - + oid: aatsDot1 + value: currentHeading360ScaleInt + group: 'Currently used GPS / Heading' + divisor: 100 + num_oid: '.1.3.6.1.4.1.37069.1.4.7.2.4.{{ $index }}' + descr: 'GPS Heading / 100' + index: 'currentHeading360ScaleInt.{{ $index }}' + - + oid: aatsDot1 + value: azimuth360ScaleFloat + group: Positioner + num_oid: '.1.3.6.1.4.1.37069.1.3.1.3.5.{{ $index }}' + descr: 'Azimuth' + index: 'azimuth360ScaleFloat.{{ $index }}' + - + oid: aatsDot1 + value: antennaHeading360ScaleFloat + group: Positioner + num_oid: '.1.3.6.1.4.1.37069.1.3.1.5.5.{{ $index }}' + descr: 'Antenna heading' + index: 'antennaHeading360ScaleFloat.{{ $index }}' + - + oid: aatsDot1 + value: currentGPSAltitudeFloat + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.6.3.{{ $index }}' + descr: 'GPS height (m)' + index: 'currentGPSAltitudeFloat.{{ $index }}' + - + oid: aatsDot1 + value: currentPitchFloat + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.8.1.3.{{ $index }}' + descr: 'Pitch' + index: 'currentPitchFloat.{{ $index }}' + - + oid: aatsDot1 + value: currentRollFloat + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.8.2.3.{{ $index }}' + descr: 'Roll' + index: 'currentRollFloat.{{ $index }}' + state: + data: + - + oid: aatsDot1 + value: linkStatusInt + group: Radio + num_oid: '.1.3.6.1.4.1.37069.1.2.3.2.{{ $index }}' + descr: 'Link status' + index: 'linkStatusInt.{{ $index }}' + state_name: linkStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Disconnected } + - { value: 1, generic: 1, graph: 0, descr: Marginal } + - { value: 2, generic: 0, graph: 0, descr: Connected } + - + oid: aatsDot1 + value: currentGPSStatusInt + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.2.2.{{ $index }}' + descr: 'Overall GPS status' + index: 'currentGPSStatusInt.{{ $index }}' + state_name: GPSLinkStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Invalid } + - { value: 1, generic: 0, graph: 0, descr: Valid } + - + oid: aatsDot1 + value: localGPSStatusInt + group: 'Local GPS' + num_oid: '.1.3.6.1.4.1.37069.1.5.2.2.{{ $index }}' + descr: 'Local GPS status' + index: 'localGPSStatusInt.{{ $index }}' + state_name: LocalGPSLinkStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Invalid } + - { value: 1, generic: 0, graph: 0, descr: Valid } + - + oid: aatsDot1 + value: networkGPSStatusInt + group: 'Network GPS' + num_oid: '.1.3.6.1.4.1.37069.1.6.2.2.{{ $index }}' + descr: 'Network GPS status' + index: 'networkGPSStatusInt.{{ $index }}' + state_name: NetworkGPSLinkStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Invalid } + - { value: 1, generic: 0, graph: 0, descr: Valid } + - + oid: aatsDot1 + value: positionerConnected + group: Positioner + num_oid: '.1.3.6.1.4.1.37069.1.3.1.1.{{ $index }}' + descr: 'Positioner Connection' + index: 'positionerConnected.{{ $index }}' + state_name: PositionerConnection + states: + - { value: 0, generic: 2, graph: 0, descr: Disconnected } + - { value: 1, generic: 0, graph: 0, descr: Connected } + - + oid: aatsDot1 + value: positionerMoving + group: Positioner + num_oid: '.1.3.6.1.4.1.37069.1.3.1.2.{{ $index }}' + descr: 'Positioner Movement' + index: 'positionerMoving.{{ $index }}' + state_name: PositionerMovement + states: + - { value: 0, generic: 0, graph: 0, descr: Stopped } + - { value: 1, generic: 0, graph: 0, descr: Moving } + - + oid: aatsDot1 + value: currentHeadingStatusInt + group: 'Currently used GPS / Heading' + num_oid: '.1.3.6.1.4.1.37069.1.4.7.1.2.{{ $index }}' + descr: 'Heading status' + index: 'currentHeadingStatusInt.{{ $index }}' + state_name: PositionerHeadingState + states: + - { value: 0, generic: 2, graph: 0, descr: Invalid } + - { value: 1, generic: 0, graph: 0, descr: Valid } + os: + sysDescr_regex: '/ radio;(?.*) v(?[0-9.]*);.*;SN: (?[0-9]+);/' + diff --git a/priv/profiles/os_discovery/bdcom.yaml b/priv/profiles/os_discovery/bdcom.yaml new file mode 100644 index 00000000..07a4ef20 --- /dev/null +++ b/priv/profiles/os_discovery/bdcom.yaml @@ -0,0 +1,366 @@ +# Transceiver thresholds and vendorPN have been added in firmware version 2.2.0F Build 127804. +mib: NMS-CHASSIS:NMS-FAN-TRAP:NMS-POWER-MIB:NMS-GPON-MIB:NMS-EPON-OLT-PON:NMS-IF-MIB:IF-MIB +modules: + mempools: + data: + - + percent_used: NMS-CHASSIS::nmscardMEMUtilization + descr: 'Memory Usage' + os: + hardware: + - NMS-CHASSIS::nmscardDescr.0 + - NMS-CHASSIS::nmscardDescr.1 + version: + - NMS-CHASSIS::nmscardSwVersion.0 + - NMS-CHASSIS::nmscardSwVersion.1 + serial: + - NMS-CHASSIS::nmscardSerial.0 + - NMS-CHASSIS::nmscardSerial.1 + sysDescr_regex: '/BDCOM\(tm\) (?[A-Z0-9]+) Software, Version (?.*)\nCompiled: .*\n.*,Serial num:(?[0-9]+)/' + additional_oids: + data: + - + oid: + - gponOltPonPortPortIndex + - ponIfIndex + - gponOltPonPortPortActiveOnuNum + - gponOltPonPortPortInactiveOnuNum + processors: + data: + - + oid: nmscardCPUUtilization + num_oid: '.1.3.6.1.4.1.3320.3.6.10.1.11.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifName + temperature: + data: + - + oid: nmscardTemperature + num_oid: '.1.3.6.1.4.1.3320.3.6.10.1.13.{{ $index }}' + descr: 'Temperature {{ $index }}' + - + oid: ifSfpParameterTable + value: temperature + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifName }} temperature' + index: 'ifSfpParameterTable.temperature.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 256 + skip_values: -65535 + low_limit: temperatureLowAlarm + low_warn_limit: temperatureLowWarning + warn_limit: temperatureHighWarning + high_limit: temperatureHighAlarm + voltage: + data: + - + oid: nmscardVoltage + num_oid: '.1.3.6.1.4.1.3320.3.6.10.1.14.{{ $index }}' + descr: 'Voltage {{ $index }}' + - + oid: ifSfpParameterTable + value: vlotage + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifName }} voltage' + index: 'ifSfpParameterTable.vlotage.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 10000 + skip_values: -65535 + low_limit: voltageLowAlarm + low_warn_limit: voltageLowWarning + warn_limit: voltageHighWarning + high_limit: voltageHighAlarm + current: + data: + - + oid: ifSfpParameterTable + value: curr1 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.6.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current1' + index: 'ifSfpParameterTable.curr1.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr2 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.10.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current2' + index: 'ifSfpParameterTable.curr2.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr3 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.13.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current3' + index: 'ifSfpParameterTable.curr3.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr4 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.16.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current4' + index: 'ifSfpParameterTable.curr4.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + dbm: + data: + - + oid: ifSfpParameterTable + value: rxPower1 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.3.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower1' + index: 'ifSfpParameterTable.rxPower1.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower2 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.9.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower2' + index: 'ifSfpParameterTable.rxPower2.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower3 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.12.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower3' + index: 'ifSfpParameterTable.rxPower3.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower4 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.15.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower4' + index: 'ifSfpParameterTable.rxPower4.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower1 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower1' + index: 'ifSfpParameterTable.txPower1.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower2 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.8.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower2' + index: 'ifSfpParameterTable.txPower2.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower3 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.11.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower3' + index: 'ifSfpParameterTable.txPower3.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower4 + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.14.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower4' + index: 'ifSfpParameterTable.txPower4.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + humidity: + data: + - + oid: nmsHumidity + num_oid: '.1.3.6.1.4.1.3320.3.6.17.{{ $index }}' + descr: 'Humidity {{ $index }}' + state: + data: + - + oid: nmsSysErrorNum + num_oid: '.1.3.6.1.4.1.3320.3.6.18.{{ $index }}' + descr: 'Sys Errors' + states: + - { descr: sys_ok, graph: 0, value: 0, generic: 0 } + - { descr: TLB_modification_exception, graph: 0, value: 1, generic: 1 } + - { descr: load_or_instruction_fetch_TLB_miss_exception, graph: 0, value: 2, generic: 2 } + - { descr: store_TLB_miss_exception, graph: 0, value: 3, generic: 2 } + - { descr: load_instruction_fetch_address_error_exception, graph: 0, value: 4, generic: 2 } + - { descr: store_address_error_exception, graph: 0, value: 5, generic: 2 } + - { descr: for_instruction_fetch_bus_error, graph: 0, value: 6, generic: 2 } + - { descr: data_load_or_store_bus_error, graph: 0, value: 7, generic: 2 } + - { descr: arithmetic_overflow_exception, graph: 0, value: 12, generic: 2 } + - { descr: trap_exception, graph: 0, value: 13, generic: 2 } + - { descr: deadlock_software_exception, graph: 0, value: 16, generic: 2 } + - + oid: ifSfpParameterTable + value: sfpLostStatus + num_oid: '.1.3.6.1.4.1.3320.9.63.1.7.1.21.{{ $index }}' + descr: '{{ IF-MIB::ifName }} LOS' + index: 'ifSfpParameterTable.sfpLostStatus.{{ $index }}' + group: transceiver + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: lost, graph: 2, value: 2, generic: 2 } + skip_values: + - # skip ports with no tansceiver inserted + oid: sfpPresentStatus + op: '=' + value: 2 + - + oid: FanStatus + num_oid: '.1.3.6.1.4.1.3320.9.187.4.1.2.{{ $index }}' + descr: 'Fan {{ $index }} status' + state_name: FanStatus + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Stop, graph: 1, value: 2, generic: 2 } + - { descr: Unused, graph: 1, value: 3, generic: 1 } + - + oid: powerStatus + num_oid: '.1.3.6.1.4.1.3320.9.189.1.{{ $index }}' + descr: 'Power status' + states: + - { descr: power-A-normal, graph: 1, value: 1, generic: 2 } + - { descr: power-B-normal, graph: 1, value: 2, generic: 2 } + - { descr: power-A-B-normal, graph: 1, value: 3, generic: 0 } + - { descr: other, graph: 1, value: 4, generic: 3 } + count: + data: + - + oid: gponOltPonPortConfigTable + value: gponOltPonPortPortActiveOnuNum + num_oid: '.1.3.6.1.4.1.3320.10.2.1.1.4.{{ $index }}' + group: "GPON Active Onu Num" + descr: "{{ $gponOltPonPortPortIndex }}" + index: "gponOltPonPortPortActiveOnuNum.{{ $index }}" + low_limit: 0 + warn_limit: 120 + high_limit: 128 + - + oid: gponOltPonPortConfigTable + value: gponOltPonPortPortInactiveOnuNum + num_oid: '.1.3.6.1.4.1.3320.10.2.1.1.5.{{ $index }}' + group: "GPON Inactive Onu Num" + descr: "{{ $gponOltPonPortPortIndex }}" + index: "gponOltPonPortPortInactiveOnuNum.{{ $index }}" + - + oid: nmseponoltponTable + value: activeOnuNum + num_oid: '.1.3.6.1.4.1.3320.101.6.1.1.21.{{ $index }}' + group: "EPON Active Onu Num" + descr: "{{ $ponIfIndex }}" + index: "activeOnuNum.{{ $index }}" + low_limit: 0 + warn_limit: 60 + high_limit: 64 + - + oid: nmseponoltponTable + value: inactiveOnuNum + num_oid: '.1.3.6.1.4.1.3320.101.6.1.1.22.{{ $index }}' + group: "EPON Inactive Onu Num" + descr: "{{ $ponIfIndex }}" + index: "inactiveOnuNum.{{ $index }}" + + fanspeed: + data: + - + oid: FanSpeed + num_oid: '.1.3.6.1.4.1.3320.9.187.4.1.3.{{ $index }}' + descr: 'Fan {{ $index }} speed' diff --git a/priv/profiles/os_discovery/benuos.yaml b/priv/profiles/os_discovery/benuos.yaml new file mode 100644 index 00000000..9a0ba6d9 --- /dev/null +++ b/priv/profiles/os_discovery/benuos.yaml @@ -0,0 +1,17 @@ +mib: BENU-HOST-MIB +modules: + os: + serial: BENU-CHASSIS-MIB::benuChassisId.0 + sysDescr_regex: '/BenuOS\, (?.*)\n.Product\:(?.*)\n.*\n.*\n Chassis Type \:(?.*)/' + mempools: + data: + - + total: BENU-HOST-MIB::bSysTotalMem + used: BENU-HOST-MIB::bSysMemUsed + precision: 1024 + processors: + data: + - + oid: bSysAvgCPUUtil5Min + num_oid: '.1.3.6.1.4.1.39406.1.5.1.8.{{ $index }}' + index: 1 diff --git a/priv/profiles/os_discovery/binos.yaml b/priv/profiles/os_discovery/binos.yaml new file mode 100644 index 00000000..ef073e33 --- /dev/null +++ b/priv/profiles/os_discovery/binos.yaml @@ -0,0 +1,16 @@ +mib: PRVT-SYS-MON-MIB +modules: + os: + hardware: .1.3.6.1.4.1.738.1.5.100.1.3.2.0 + serial: .1.3.6.1.4.1.738.1.5.100.1.3.1.0 + version: .1.3.6.1.4.1.738.1.111.1.1.4.0 + mempools: + data: + - + used: PRVT-SYS-INFO-MIB::numBytesAlloc + free: PRVT-SYS-INFO-MIB::numBytesFree + processors: + data: + - + oid: monCpuUtilization + num_oid: '.1.3.6.1.4.1.738.1.111.3.1.2.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/binox.yaml b/priv/profiles/os_discovery/binox.yaml new file mode 100644 index 00000000..29c3ea24 --- /dev/null +++ b/priv/profiles/os_discovery/binox.yaml @@ -0,0 +1,18 @@ +mib: PRVT-INTERWORKING-OS-MIB:PRVT-SYS-MON-MIB +modules: + mempools: + data: + - + percent_used: PRVT-SYS-MON-MIB::prvtSysMonCurrentRamUsage + os: + hardware: PRVT-SWITCH-MIB::sysPartNumber.0 + serial: PRVT-SWITCH-MIB::sysSerialNumber.0 + version: PRVT-INTERWORKING-OS-MIB::oSversionNumber.0 + processors: + data: + - + oid: cpuMonitoringUtilization + num_oid: '.1.3.6.1.4.1.738.10.111.1.1.3.1.1.{{ $index }}' + - + oid: prvtSysMonCurrentCpuUsage + num_oid: '.1.3.6.1.4.1.738.10.111.3.1.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/bintec-beip-plus.yaml b/priv/profiles/os_discovery/bintec-beip-plus.yaml new file mode 100644 index 00000000..82221dd7 --- /dev/null +++ b/priv/profiles/os_discovery/bintec-beip-plus.yaml @@ -0,0 +1,29 @@ +modules: + os: + version: BIANCA-BRICK-MIB::biboAdmSWVersion.0 + version_regex: '/(?[V]{1}[.0-9]+)/' + serial: BIANCA-BRICK-MIB::biboABrdSerialNo.0.0.0 + hardware: + - BIANCA-BRICK-MIB::biboABrdPartNo.0.0.0 + - BIANCA-BRICK-MIB::biboABrdHWRelease.0.0.0 + hardware_template: '{{ BIANCA-BRICK-MIB::biboABrdPartNo.0.0.0 }} {{ BIANCA-BRICK-MIB::biboABrdHWRelease.0.0.0 }}' + mempools: + data: + - + oid: BIANCA-BRICK-MIBRES-MIB::memoryTable + total: BIANCA-BRICK-MIBRES-MIB::memoryTotal + used: BIANCA-BRICK-MIBRES-MIB::memoryInuse + descr: Main Memory + skip_values: + - + oid: BIANCA-BRICK-MIBRES-MIB::memoryType + op: '!=' + value: 'dram' # Only include DRAM in mempools + processors: + data: + - + oid: BIANCA-BRICK-MIBRES-MIB::cpuLoadIdle60s + num_oid: '.1.3.6.1.4.1.272.4.17.4.1.1.18.{{ $index }}' + precision: -1 + descr: 'Load Average' + type: bintec-cpu diff --git a/priv/profiles/os_discovery/bintec-smart.yaml b/priv/profiles/os_discovery/bintec-smart.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/bintec-smart.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/bison.yaml b/priv/profiles/os_discovery/bison.yaml new file mode 100644 index 00000000..4fa19d32 --- /dev/null +++ b/priv/profiles/os_discovery/bison.yaml @@ -0,0 +1,16 @@ +mib: BISON-ROUTER-MIB +modules: + sensors: + state: + data: + - + oid: licStatus + num_oid: '.1.3.6.1.4.1.2238.240.1.9.1.{{ $index }}' + descr: License Status + index: '{{ $index }}' + states: + - { descr: Starting, graph: 0, value: 0, generic: 1 } + - { descr: DMI_OK, graph: 0, value: 1, generic: 1 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - { descr: Failed, graph: 0, value: 3, generic: 2 } + diff --git a/priv/profiles/os_discovery/bke.yaml b/priv/profiles/os_discovery/bke.yaml new file mode 100644 index 00000000..1845a914 --- /dev/null +++ b/priv/profiles/os_discovery/bke.yaml @@ -0,0 +1,97 @@ +mib: PNETMOD-MIB +modules: + sensors: + temperature: + data: + - + oid: accuTemperature + num_oid: '.1.3.6.1.4.1.27533.5.3.3.{{ $index }}' + index: 'accuTemperature.{{ $index }}' + descr: Temperature + divisor: 10 + + skip_values: + - + oid: accuTemperature + op: '>=' + value: 100000 + + state: + data: + - + oid: powerSourceState + num_oid: '.1.3.6.1.4.1.27533.5.2.1.{{ $index }}' + index: 'powerSourceState.{{ $index }}' + descr: 'Power state' + states: + - { descr: Battery, graph: 0, value: 1, generic: 1 } + - { descr: Online, graph: 0, value: 0, generic: 0 } + - + oid: gridState + num_oid: '.1.3.6.1.4.1.27533.5.1.1.{{ $index }}' + index: 'gridState.{{ $index }}' + descr: 'Grid state' + states: + - { descr: Fail, graph: 0, value: 1, generic: 1 } + - { descr: Ok, graph: 0, value: 0, generic: 0 } + - + oid: gridFuse + num_oid: '.1.3.6.1.4.1.27533.5.1.2.{{ $index }}' + index: 'gridFuse.{{ $index }}' + descr: 'Grid fuse state' + states: + - { descr: Fail, graph: 0, value: 1, generic: 1 } + - { descr: Ok, graph: 0, value: 0, generic: 0 } + - + oid: outState + num_oid: '.1.3.6.1.4.1.27533.5.4.2.{{ $index }}' + index: 'outState.{{ $index }}' + descr: 'Output state' + states: + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 1 } + - + oid: outFuse + num_oid: '.1.3.6.1.4.1.27533.5.4.1.{{ $index }}' + index: 'outFuse.{{ $index }}' + descr: 'Output fuse state' + states: + - { descr: Fail, graph: 0, value: 1, generic: 1 } + - { descr: Ok, graph: 0, value: 0, generic: 0 } + - + oid: accuFuse + num_oid: '.1.3.6.1.4.1.27533.5.3.4.{{ $index }}' + index: 'accuFuse.{{ $index }}' + descr: 'Accumulator fuse state' + states: + - { descr: Fail, graph: 0, value: 1, generic: 1 } + - { descr: Ok, graph: 0, value: 0, generic: 0 } + + current: + data: + - + oid: powerSourceCurrent + num_oid: '.1.3.6.1.4.1.27533.5.2.2.{{ $index }}' + index: 'powerSourceCurrent.{{ $index }}' + descr: 'Power source current' + divisor: 10 + - + oid: accuCurrent + num_oid: '.1.3.6.1.4.1.27533.5.3.2.{{ $index }}' + index: 'accuCurrent.{{ $index }}' + descr: 'Charge current' + divisor: 10 + + voltage: + data: + - + oid: accuVoltage + num_oid: '.1.3.6.1.4.1.27533.5.3.1.{{ $index }}' + index: 'accuVoltage.{{ $index }}' + descr: 'Voltage' + divisor: 10 + low_warn_limit: 42 + low_limit: 41 + warn_limit: 57 + high_limit: 60 + diff --git a/priv/profiles/os_discovery/bktel-oa.yaml b/priv/profiles/os_discovery/bktel-oa.yaml new file mode 100644 index 00000000..c4e49694 --- /dev/null +++ b/priv/profiles/os_discovery/bktel-oa.yaml @@ -0,0 +1,86 @@ +mib: BKTEL-HFC862-OA-V01-MIB + +modules: + os: + version: '.1.3.6.1.4.1.7501.1.1.1.16.1.3.49' + hardware: '.1.3.6.1.4.1.7501.1.2.116.1.2.1.2.50' + + sensors: + additional_oids: + data: + - + oid: + - oaTemperatureLo + - oaTemperatureLoLo + - oaTemperatureHi + - oaTemperatureHiHi + - oaInputPowerLoLo + - oaInputPowerLo + - oaInputPowerHiHi + - oaInputPowerHi + - oaOutputPwrOrGainLoLo + - oaOutputPwrOrGainLo + - oaOutputPwrOrGainHiHi + - oaOutputPwrOrGainHi + - oaInputVoltageLoLo + - oaInputVoltageLo + - oaInputVoltageHiHi + - oaInputVoltageHi + + temperature: + data: + - + oid: oaMeasuringValuesTable + value: oaTemperatureValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.7501.1.2.116.5.1.1.3.{{ $index }}' + descr: 'OA Temperature' + group: OA Temperature + high_limit: oaTemperatureHiHi + low_limit: oaTemperatureLoLo + warn_limit: oaTemperatureHi + low_warn_limit: oaTemperatureLo + + dbm: + options: + skip_values: 0 + data: + - + oid: oaMeasuringValuesTable + value: oaInputPowerValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.7501.1.2.116.5.1.1.8.{{ $index }}' + descr: 'Input Power dBm' + group: Input Power dBm + index: oa-in-dbm.{{ $index }} + high_limit: oaInputPowerHiHi + low_limit: oaInputPowerLoLo + warn_limit: oaInputPowerHi + low_warn_limit: oaInputPowerLo + + - + oid: oaMeasuringValuesTable + value: oaOutputPwrOrGainValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.7501.1.2.116.5.1.1.13.{{ $index }}' + descr: 'Output Power dBm' + group: Output Power dBm + index: oa-out-dbm.{{ $index }} + high_limit: oaOutputPwrOrGainHiHi + low_limit: oaOutputPwrOrGainLoLo + warn_limit: oaOutputPwrOrGainHi + low_warn_limit: oaOutputPwrOrGainLo + + voltage: + data: + - + oid: oaMeasuringValuesTable + value: oaInputVoltageValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.7501.1.2.116.5.1.1.23.{{ $index }}' + descr: 'Amplifier Input voltage' + group: Amplifier Input voltage + high_limit: oaInputVoltageHiHi + low_limit: oaInputVoltageLoLo + warn_limit: oaInputVoltageHi + low_warn_limit: oaInputVoltageLo diff --git a/priv/profiles/os_discovery/bluecatnetworks.yaml b/priv/profiles/os_discovery/bluecatnetworks.yaml new file mode 100755 index 00000000..11a4f6b9 --- /dev/null +++ b/priv/profiles/os_discovery/bluecatnetworks.yaml @@ -0,0 +1,82 @@ +mib: BCN-HA-MIB:BCN-DHCPV4-MIB:BCN-DNS-MIB:BCN-NTP-MIB +modules: + os: + version: BCN-SYSTEM-MIB::bcnSysIdOSRelease.0 + hardware: BCN-SYSTEM-MIB::bcnSysIdPlatform.0 + serial: BCN-SYSTEM-MIB::bcnSysIdSerial.0 + sensors: + state: + data: + - + oid: BCN-HA-MIB:bcnHaServiceStatus + value: bcnHaSerOperState + num_oid: '.1.3.6.1.4.1.13315.3.1.5.2.1.1.{{ $index }}' + descr: HA Status + group: HA Cluster Status + index: 'bcnHaSerOperState.{{ $index }}' + state_name: bcnHaSerOperState + states: + - { value: 1, generic: 0, graph: 0, descr: 'standalone' } + - { value: 2, generic: 0, graph: 0, descr: 'active' } + - { value: 3, generic: 0, graph: 0, descr: 'passive' } + - { value: 4, generic: 1, graph: 0, descr: 'stopped' } + - { value: 5, generic: 1, graph: 0, descr: 'stopping' } + - { value: 6, generic: 0, graph: 0, descr: 'becomingActive' } + - { value: 7, generic: 0, graph: 0, descr: 'becomingPassive' } + - { value: 8, generic: 2, graph: 0, descr: 'fault' } + - + oid: BCN-HA-MIB:bcnHaServiceStatus + value: bcnHaSerReplicationState + num_oid: '.1.3.6.1.4.1.13315.3.1.5.2.1.2.{{ $index }}' + descr: Replication Status + group: HA Cluster Status + index: 'bcnHaSerReplicationState.{{ $index }}' + state_name: bcnHaSerReplicationState + states: + - { value: 1, generic: 0, graph: 0, descr: 'notConfigured' } + - { value: 2, generic: 1, graph: 0, descr: 'replicating' } + - { value: 3, generic: 0, graph: 0, descr: 'synchronized' } + - + oid: BCN-DHCPV4-MIB:bcnDhcpv4ServiceStatus + value: bcnDhcpv4SerOperState + num_oid: '.1.3.6.1.4.1.13315.3.1.1.2.1.1.{{ $index }}' + descr: DHCP Status + group: HA Services Status + index: 'bcnDhcpv4SerOperState.{{ $index }}' + state_name: bcnDhcpv4SerOperState + states: + - { value: 1, generic: 0, graph: 0, descr: 'running' } + - { value: 2, generic: 0, graph: 0, descr: 'notRunning' } + - { value: 3, generic: 1, graph: 0, descr: 'starting' } + - { value: 4, generic: 1, graph: 0, descr: 'stopping' } + - { value: 5, generic: 2, graph: 0, descr: 'stopped' } + - { value: 6, generic: 2, graph: 0, descr: 'fault' } + - + oid: BCN-DNS-MIB:bcnDnsServiceStatus + value: bcnDnsSerOperState + num_oid: '.1.3.6.1.4.1.13315.3.1.2.2.1.1.{{ $index }}' + descr: DNS Status + group: HA Services Status + index: 'bcnDnsSerOperState.{{ $index }}' + state_name: bcnDnsSerOperState + states: + - { value: 1, generic: 0, graph: 0, descr: 'running' } + - { value: 2, generic: 0, graph: 0, descr: 'notRunning' } + - { value: 3, generic: 1, graph: 0, descr: 'starting' } + - { value: 4, generic: 1, graph: 0, descr: 'stopping' } + - { value: 5, generic: 2, graph: 0, descr: 'stopped' } + - + oid: BCN-NTP-MIB:bcnNtpServiceStatus + value: bcnNtpSerOperState + num_oid: '.1.3.6.1.4.1.13315.3.1.2.2.1.1.{{ $index }}' + descr: NTP Status + group: HA Services Status + index: 'bcnNtpSerOperState.{{ $index }}' + state_name: bcnNtpSerOperState + states: + - { value: 1, generic: 0, graph: 0, descr: 'running' } + - { value: 2, generic: 0, graph: 0, descr: 'notRunning' } + - { value: 3, generic: 1, graph: 0, descr: 'starting' } + - { value: 4, generic: 1, graph: 0, descr: 'stopping' } + - { value: 5, generic: 2, graph: 0, descr: 'stopped' } + diff --git a/priv/profiles/os_discovery/bnt.yaml b/priv/profiles/os_discovery/bnt.yaml new file mode 100644 index 00000000..cdda4665 --- /dev/null +++ b/priv/profiles/os_discovery/bnt.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/BNT (?.*Module)/' diff --git a/priv/profiles/os_discovery/boss.yaml b/priv/profiles/os_discovery/boss.yaml new file mode 100644 index 00000000..1d599003 --- /dev/null +++ b/priv/profiles/os_discovery/boss.yaml @@ -0,0 +1,10 @@ +modules: + mempools: + data: + - + total: S5-CHASSIS-MIB::s5ChasUtilMemoryTotalMB + free: S5-CHASSIS-MIB::s5ChasUtilMemoryAvailableMB + descr: 'Unit {{ $count }} Memory' + precision: 1048576 + index: '.{{ $index }}' + type: avaya-ers diff --git a/priv/profiles/os_discovery/breeze.yaml b/priv/profiles/os_discovery/breeze.yaml new file mode 100644 index 00000000..c93786ab --- /dev/null +++ b/priv/profiles/os_discovery/breeze.yaml @@ -0,0 +1,4 @@ +modules: + os: + version: ALVARION-DOT11-WLAN-MIB::brzaccVLRunningSoftwareVersion.0 + sysDescr_regex: '/Alvarion - (?.*) , Version: (?\S+)/' diff --git a/priv/profiles/os_discovery/broadworks.yaml b/priv/profiles/os_discovery/broadworks.yaml new file mode 100755 index 00000000..7a238a0d --- /dev/null +++ b/priv/profiles/os_discovery/broadworks.yaml @@ -0,0 +1,125 @@ +mib: BW-BroadworksApplicationServer:BW-BroadworksMediaServer:BW-BroadworksNetworkServer:BroadworksMaintenance +modules: + sensors: + count: + data: + - + oid: bwCallpCallsPerSecond + num_oid: '.1.3.6.1.4.1.6431.1.2.7.1.12.{{ $index }}' + index: bwCallpCallsPerSecond.{{ $index }} + descr: 'Call per second' + - + oid: bwCallpEmergencyCallAttempts + num_oid: '.1.3.6.1.4.1.6431.1.2.7.1.7.{{ $index }}' + index: bwCallpEmergencyCallAttempts.{{ $index }} + descr: 'Emergency Call Attempt' + - + oid: bwCallpEmergencyCallAlarms + num_oid: '.1.3.6.1.4.1.6431.1.2.7.1.8.{{ $index }}' + index: bwCallpEmergencyCallAlarms.{{ $index }} + descr: 'Emergency Call Attempt Failures' + - + oid: bwSMTPTotalPrimaryEmailSendAttempts + num_oid: '.1.3.6.1.4.1.6431.1.2.8.1.1.{{ $index }}' + index: bwSMTPTotalPrimaryEmailSendAttempts.{{ $index }} + descr: 'Primary SMTP Server delivery failures' + - + oid: bwCallpActiveCalls + num_oid: '.1.3.6.1.4.1.6431.1.2.7.1.10.{{ $index }}' + index: bwCallpActiveCalls.{{ $index }} + descr: 'Active callP session' + - + oid: bwUserLocationRequests + num_oid: '.1.3.6.1.4.1.6431.1.11.1.1.1.{{ $index }}' + index: bwUserLocationRequests.{{ $index }} + descr: 'Total user location requests' + - + oid: bwUserLocationRequestSuccess + num_oid: '.1.3.6.1.4.1.6431.1.11.1.1.2.{{ $index }}' + index: bwUserLocationRequestSuccess.{{ $index }} + descr: 'Total user location succesful requests' + - + oid: bwUserLocationRequestUnknownUser + num_oid: '.1.3.6.1.4.1.6431.1.11.1.1.3.{{ $index }}' + index: bwUserLocationRequestUnknownUser.{{ $index }} + descr: 'Total unknown user location requests' + - + oid: bwUserLocationRequestFailures + num_oid: '.1.3.6.1.4.1.6431.1.11.1.1.4.{{ $index }}' + index: bwUserLocationRequestFailures.{{ $index }} + descr: 'Total failed user location requests' + - + oid: nbOfMigratedUsers + num_oid: '.1.3.6.1.4.1.6431.1.2.18.1.1.{{ $index }}' + index: nbOfMigratedUsers.{{ $index }} + descr: 'Migrated Users' + - + oid: psOciStatsActiveSessions + num_oid: '.1.3.6.1.4.1.6431.1.6.8.1.9.{{ $index }}' + index: psOciStasActiveSessions.{{ $index }} + descr: 'Provisioning OCI Connections' + - + oid: psPerNbFailedTransactions + num_oid: '.1.3.6.1.4.1.6431.1.6.1.1.4.{{ $index }}' + index: psPerNbFailedTransactions.{{ $index }} + descr: 'Provisioning Failed transactions' + - + oid: psPerNbCriticalErrors + num_oid: '.1.3.6.1.4.1.6431.1.6.1.1.5.{{ $index }}' + index: psPerNbCriticalErrors.{{ $index }} + descr: 'Provisioning Critical errors' + - + oid: msNoPortAvailableErrors + num_oid: '.1.3.6.1.4.1.6431.1.3.1.6.{{ $index }}' + index: msNoPortAvailableErrors.{{ $index }} + descr: 'No ports available' + - + oid: systemNbEnterprises + num_oid: '.1.3.6.1.4.1.6431.1.9.1.7.{{ $index }}' + index: systemNbEnterprises.{{ $index }} + descr: 'Total number of provisioned enterprises' + - + oid: systemNbGrps + num_oid: '.1.3.6.1.4.1.6431.1.9.1.1.{{ $index }}' + index: systemNbGrps.{{ $index }} + descr: 'Total number of provisioned groups' + - + oid: systemNbDNs + num_oid: '.1.3.6.1.4.1.6431.1.9.1.2.{{ $index }}' + index: systemNbDNs.{{ $index }} + descr: 'Total number of provisioned numbers' + - + oid: systemNbUnassignedDNs + num_oid: '.1.3.6.1.4.1.6431.1.9.1.8.{{ $index }}' + index: systemNbUnassignedDNs.{{ $index }} + descr: 'Total number of provisioned numbers which are unassigned' + - + oid: msPortsInUse + num_oid: '.1.3.6.1.4.1.6431.1.3.1.5.{{ $index }}' + index: msPortsInUse.{{ $index }} + descr: 'Total ports in use' + - + oid: msPrimarySmtpErrors + num_oid: '.1.3.6.1.4.1.6431.1.3.3.1.2.{{ $index }}' + index: msPrimarySmtpErrors.{{ $index }} + descr: 'Primary SMTP server errrors' + - + oid: msRtpSessionsInUse + num_oid: '.1.3.6.1.4.1.6431.1.3.2.4.{{ $index }}' + index: msRtpSessionsInUse.{{ $index }} + descr: 'Rtp sessions in use' + state: + data: + - + oid: bwAdminState + num_oid: '.1.3.6.1.4.1.6431.1.1.2.1.4.{{ $index }}' + index: bwAdminState.{{ $index }} + descr: 'Broadworks lock status' + states: + - {value: 0, generic: 1, graph: 0, descr: 'Lock'} + - {value: 1, generic: 1, graph: 0, descr: 'Locking'} + - {value: 2, generic: 0, graph: 0, descr: 'Unlock'} + - {value: 3, generic: 2, graph: 0, descr: 'ShuttingDown'} + - {value: 4, generic: 2, graph: 0, descr: 'Stopped'} + - {value: 5, generic: 1, graph: 0, descr: 'Forced Lock'} + diff --git a/priv/profiles/os_discovery/bti800.yaml b/priv/profiles/os_discovery/bti800.yaml new file mode 100644 index 00000000..d4f66527 --- /dev/null +++ b/priv/profiles/os_discovery/bti800.yaml @@ -0,0 +1,44 @@ +mib: BTI8xx-MIB:BTI8xx-SYSTEM-MIB:BTI8xx-TC-MIB:BTI8xx-SFP-MIB +modules: + os: + hardware: + - BTI8xx-SYSTEM-MIB::systemProductName.0 + - BTI8xx-SYSTEM-MIB::systemHWVersion.0 + hardware_template: '{{ BTI8xx-SYSTEM-MIB::systemProductName.0 }} {{ BTI8xx-SYSTEM-MIB::systemHWVersion.0 }}' + serial: BTI8xx-TC-MIB::fruBaseInfoserialNumber.1 + version: BTI8xx-SYSTEM-MIB::systemSWVersion.0 + sensors: + dbm: + data: + - + oid: sfpDiagnosticTable + value: sfpDiagnosticRxPowerDbm + num_oid: '.1.3.6.1.4.1.30005.1.7.100.1.2.6.3.1.8.{{ $index }}' + skip_values: 0 + index: 'sfpDiagnosticRxPowerDbm.{{ $index }}' + descr: 'eth-0-{{ $sfpDiagnosticIndex }} Rx Power' + entPhysicalIndex: sfpDiagnosticIndex + entPhysicalIndex_measured: ports + - + oid: sfpDiagnosticTable + value: sfpDiagnosticTxPowerDbm + num_oid: '.1.3.6.1.4.1.30005.1.7.100.1.2.6.3.1.7.{{ $index }}' + skip_values: 0 + index: 'sfpDiagnosticTxPowerDbm.{{ $index }}' + descr: 'eth-0-{{ $sfpDiagnosticIndex }} Tx Power' + entPhysicalIndex: sfpDiagnosticIndex + entPhysicalIndex_measured: ports + temperature: + data: + - + oid: systemManagement + value: systemTemperature + num_oid: '.1.3.6.1.4.1.30005.1.7.100.1.2.1.1.1.7.{{ $index }}' + descr: systemProductName + low_limit: tempLowThreshold + high_limit: tempHighThreshold + - + oid: sfpDiagnosticTable + value: sfpDiagnosticTemperature + num_oid: '.1.3.6.1.4.1.30005.1.7.100.1.2.6.3.1.4.{{ $index }}' + descr: 'eth-0-{{ $sfpDiagnosticIndex }}' diff --git a/priv/profiles/os_discovery/buffalo.yaml b/priv/profiles/os_discovery/buffalo.yaml new file mode 100644 index 00000000..ce00a66d --- /dev/null +++ b/priv/profiles/os_discovery/buffalo.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/BUFFALO (?.*) Ver\.?(?\S+)/' diff --git a/priv/profiles/os_discovery/calix.yaml b/priv/profiles/os_discovery/calix.yaml new file mode 100644 index 00000000..7cde69be --- /dev/null +++ b/priv/profiles/os_discovery/calix.yaml @@ -0,0 +1,20 @@ +modules: + os: + hardware: + - E5-121-IESCOMMON-MIB::iesSlotModuleDescr.0.0 + - E5-120-IESCOMMON-MIB::iesSlotModuleDescr.0.0 + - E5-111-IESCOMMON-MIB::iesSlotModuleDescr.0.0 + - E5-110-IESCOMMON-MIB::iesSlotModuleDescr.0.0 + - AE-ALARM-TABLE-MIB::aeOntModelNum.0 + serial: + - E5-121-IESCOMMON-MIB::iesChassisSerialNumber.0 + - E5-120-IESCOMMON-MIB::iesChassisSerialNumber.0 + - E5-111-IESCOMMON-MIB::iesChassisSerialNumber.0 + - E5-110-IESCOMMON-MIB::iesChassisSerialNumber.0 + - AE-ALARM-TABLE-MIB::aeOntFsanSerNum.0 + version: + - E5-121-IESCOMMON-MIB::iesSlotModuleFWVersion.0.0 + - E5-120-IESCOMMON-MIB::iesSlotModuleFWVersion.0.0 + - E5-111-IESCOMMON-MIB::iesSlotModuleFWVersion.0.0 + - E5-110-IESCOMMON-MIB::iesSlotModuleFWVersion.0.0 + - AE-ALARM-TABLE-MIB::aeOntFirmwareVersion.0 diff --git a/priv/profiles/os_discovery/canonprinter.yaml b/priv/profiles/os_discovery/canonprinter.yaml new file mode 100644 index 00000000..36721767 --- /dev/null +++ b/priv/profiles/os_discovery/canonprinter.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.1602.1.1.1.1.0 + hardware_regex: '/(?.+)( Series)?/' + version: .1.3.6.1.4.1.1602.1.1.1.4.0 diff --git a/priv/profiles/os_discovery/cat1900.yaml b/priv/profiles/os_discovery/cat1900.yaml new file mode 100644 index 00000000..84d475c2 --- /dev/null +++ b/priv/profiles/os_discovery/cat1900.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: '1900' + sysDescr_regex: '/,(?V[\d.]+)/' diff --git a/priv/profiles/os_discovery/catos.yaml b/priv/profiles/os_discovery/catos.yaml new file mode 100644 index 00000000..a89397fc --- /dev/null +++ b/priv/profiles/os_discovery/catos.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?WS-[\w-]+).*Version (?[\w.()]+)/s' + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/cdata.yaml b/priv/profiles/os_discovery/cdata.yaml new file mode 100644 index 00000000..bc5da238 --- /dev/null +++ b/priv/profiles/os_discovery/cdata.yaml @@ -0,0 +1,44 @@ +mib: FD-SYSTEM-MIB:CDATA-EPON-MIB:NSCRTV-FTTX-EPON-MIB:NSCRTV-PON-TREE-EXT-MIB +modules: + mempools: + data: + - + total: NSCRTV-PON-TREE-EXT-MIB::memTotalSize + free: NSCRTV-PON-TREE-EXT-MIB::memFreeSize + os: + hardware: + - .1.3.6.1.4.1.17409.2.3.1.3.1.1.7.1.0 + - .1.3.6.1.4.1.34592.1.3.1.5.2.1.1.4.0 + serial: .1.3.6.1.4.1.17409.2.3.1.1.13.0 + version: + - .1.3.6.1.4.1.17409.2.3.1.3.1.1.9.1.0 + - .1.3.6.1.4.1.34592.1.3.1.5.2.1.1.5.0 + processors: + data: + - + oid: cpuUsage + num_oid: '.1.3.6.1.4.1.34592.1.3.100.1.8.1.{{ $index }}' + sensors: + temperature: + data: + - + oid: temperature + num_oid: '.1.3.6.1.4.1.34592.1.3.100.1.8.6.{{ $index }}' + divisor: 10 + descr: 'Temperature {{ $index }}' + state: + data: + - + oid: ponCardRunningStatus + num_oid: '.1.3.6.1.4.1.34592.1.3.1.5.2.1.1.7.{{ $index }}' + descr: 'Pon Card {{ $index }} status' + states: + - { descr: Normal, graph: 0, value: 0, generic: 0 } + - { descr: Abnormal, graph: 0, value: 1, generic: 2 } + - + oid: sysServices + num_oid: '.1.3.6.1.2.1.1.7.0.{{ $index }}' + descr: 'System services status' + states: + - { descr: Normal, graph: 0, value: 0, generic: 0 } + - { descr: Abnormal, graph: 0, value: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/ceraos.yaml b/priv/profiles/os_discovery/ceraos.yaml new file mode 100644 index 00000000..4a490cd9 --- /dev/null +++ b/priv/profiles/os_discovery/ceraos.yaml @@ -0,0 +1,55 @@ +mib: MWRM-UNIT-MIB:MWRM-RADIO-MIB +modules: + sensors: + state: + data: + - + oid: genEquipUnitInfoNtpStatusLockState + num_oid: .1.3.6.1.4.1.2281.10.1.1.11.6.6.1.4.{{ $index }} + descr: NTP Client Lock Status + state_name: genEquipUnitInfoNtpStatusLockState + states: + - { value: 0, generic: 0, graph: 0, descr: None } + - { value: 1, generic: 0, graph: 0, descr: Local } + - { value: 2, generic: 0, graph: 0, descr: Locked } + - + oid: genEquipRfuStatusTxMute + num_oid: .1.3.6.1.4.1.2281.10.5.1.1.25.{{ $index }} + descr: TX Mute Status + state_name: genEquipRfuStatusTxMute + states: + - { value: 0, generic: 0, graph: 0, descr: Disabled } + - { value: 1, generic: 0, graph: 0, descr: Enabled } + - + oid: genEquipRadioCfgRadioOperationalStatus + num_oid: .1.3.6.1.4.1.2281.10.7.2.1.9.{{ $index }} + descr: Radio Operational Status + state_name: genEquipRadioCfgRadioOperationalStatus + states: + - { value: 0, generic: 0, graph: 0, descr: Inactive } + - { value: 1, generic: 0, graph: 0, descr: Active } + - + oid: genEquipRemoteRadioRemoteCommunication + num_oid: .1.3.6.1.4.1.2281.10.7.3.1.1.2.{{ $index }} + descr: Remote Radio Operational Status + state_name: genEquipRemoteRadioRemoteCommunication + states: + - { value: 0, generic: 0, graph: 0, descr: Inactive } + - { value: 1, generic: 0, graph: 0, descr: Active } + temperature: + data: + - + oid: genEquipUnitIduTemperature + num_oid: .1.3.6.1.4.1.2281.10.1.1.9.{{ $index }} + descr: IDU Temperature + - + oid: genEquipRfuStatusPATemp + num_oid: .1.3.6.1.4.1.2281.10.5.1.1.24.{{ $index }} + descr: Power Amplifier Temperature + voltage: + data: + - + oid: MWRM-UNIT-MIB::genEquipUnitIduVoltageInput + num_oid: .1.3.6.1.4.1.2281.10.1.1.10.{{ $index }} + index: .1.3.6.1.4.1.2281.10.1.1.10.{{ $index }} + descr: System voltage diff --git a/priv/profiles/os_discovery/cetpower.yaml b/priv/profiles/os_discovery/cetpower.yaml new file mode 100644 index 00000000..49237962 --- /dev/null +++ b/priv/profiles/os_discovery/cetpower.yaml @@ -0,0 +1,64 @@ +mib: CET-TSI-MIB +modules: + os: + serial: CET-TSI-MIB::tsiT2SSerialNumber + sensors: + load: + options: + skip_value_lt: 1 + data: + - + oid: tsiPhaseTable + value: tsiPhaseAvailablePowerRatioW + num_oid: '.1.3.6.1.4.1.12551.4.1.2.2.1.2.{{ $index }}' + index: 'tsiPhaseAvailablePowerRatio.{{ $index }}' + descr: 'Available Power Ratio {{ $index }}' + power: + options: + skip_value_lt: 1 + data: + - + oid: tsiPhaseTable + value: tsiPhaseCurrentPowerInW + num_oid: '.1.3.6.1.4.1.12551.4.1.2.2.1.12.{{ $index }}' + index: 'tsiPhaseCurrentPowerInW.{{ $index }}' + descr: 'Current Power In {{ $index }}' + - + oid: tsiPhaseTable + value: tsiPhaseInstalledPowerInW + num_oid: '.1.3.6.1.4.1.12551.4.1.2.2.1.14.{{ $index }}' + index: 'tsiPhaseInstalledPowerInW.{{ $index }}' + descr: 'Installed Power In {{ $index }}' + voltage: + options: + skip_value_lt: 1 + divisor: 10 + data: + - + oid: tsiModuleTable + value: tsiModuleVinAC + num_oid: '.1.3.6.1.4.1.12551.4.1.1.1.1.20.{{ $index }}' + index: 'tsiModuleVinAC.{{ $index }}' + descr: 'Module Voltage in AC {{ $index }}' + - + oid: tsiModuleTable + value: tsiModuleVout + num_oid: '.1.3.6.1.4.1.12551.4.1.1.1.1.16.{{ $index }}' + index: 'tsiModuleVout.{{ $index }}' + descr: 'Module Voltage Out {{ $index }}' + - + oid: tsiModuleTable + value: tsiModuleVinDC + num_oid: '.1.3.6.1.4.1.12551.4.1.1.1.1.25.{{ $index }}' + index: 'tsiModuleVinDC.{{ $index }}' + descr: 'Module Voltage in DC {{ $index }}' + temperature: + options: + skip_value_lt: 1 + data: + - + oid: tsiModuleTable + value: tsiModuleTemperature + num_oid: '.1.3.6.1.4.1.12551.4.1.1.1.1.28.{{ $index }}' + index: 'tsiModuleTemperature.{{ $index }}' + descr: 'Module Temperature {{ $index }}' \ No newline at end of file diff --git a/priv/profiles/os_discovery/chatsworth-pdu.yaml b/priv/profiles/os_discovery/chatsworth-pdu.yaml new file mode 100644 index 00000000..96f0c2fb --- /dev/null +++ b/priv/profiles/os_discovery/chatsworth-pdu.yaml @@ -0,0 +1,94 @@ +modules: + os: + serial: CPI-UNITY-MIB::modelCode.0 + version: CPI-UNITY-MIB::version.0 + sensors: + additional_oids: + data: + - + oid: + - CPI-UNITY-MIB::cpiPduOutletName + - CPI-UNITY-MIB::cpiPduBranchId + current: + data: + - + oid: CPI-UNITY-MIB::cpiPduOutletCurrent + value: CPI-UNITY-MIB::cpiPduOutletCurrent + num_oid: '.1.3.6.1.4.1.30932.1.10.1.4.10.1.6.{{ $index }}' + descr: '{{ CPI-UNITY-MIB::cpiPduOutletName }}' + index: '{{ $index }}' + divisor: 100 + - + oid: CPI-UNITY-MIB::cpiPduBranchCurrent + value: CPI-UNITY-MIB::cpiPduBranchCurrent + num_oid: '.1.3.6.1.4.1.30932.1.10.1.3.110.1.3.{{ $index }}' + descr: 'CB{{ CPI-UNITY-MIB::cpiPduBranchId }}' + index: '{{ $index }}' + divisor: 100 + voltage: + data: + - + oid: CPI-UNITY-MIB::cpiPduOutletVoltage + value: CPI-UNITY-MIB::cpiPduOutletVoltage + num_oid: '.1.3.6.1.4.1.30932.1.10.1.4.10.1.7.{{ $index }}' + descr: '{{ CPI-UNITY-MIB::cpiPduOutletName }}' + index: '{{ $index }}' + divisor: 10 + - + oid: CPI-UNITY-MIB::cpiPduBranchVoltage + value: CPI-UNITY-MIB::cpiPduBranchVoltage + num_oid: '.1.3.6.1.4.1.30932.1.10.1.3.110.1.5.{{ $index }}' + descr: 'CB{{ CPI-UNITY-MIB::cpiPduBranchId }}' + index: '{{ $index }}' + divisor: 10 + power: + data: + - + oid: CPI-UNITY-MIB::cpiPduOutletPower + value: CPI-UNITY-MIB::cpiPduOutletPower + num_oid: '.1.3.6.1.4.1.30932.1.10.1.4.10.1.8.{{ $index }}' + descr: '{{ CPI-UNITY-MIB::cpiPduOutletName }}' + index: '{{ $index }}' + - + oid: CPI-UNITY-MIB::cpiPduBranchPower + value: CPI-UNITY-MIB::cpiPduBranchPower + num_oid: '.1.3.6.1.4.1.30932.1.10.1.3.110.1.6.{{ $index }}' + descr: 'CB{{ CPI-UNITY-MIB::cpiPduBranchId }}' + index: '{{ $index }}' + power_consumed: + data: + - + oid: CPI-UNITY-MIB::cpiPduOutletEnergy + value: CPI-UNITY-MIB::cpiPduOutletEnergy + num_oid: '.1.3.6.1.4.1.30932.1.10.1.4.10.1.10.{{ $index }}' + descr: '{{ CPI-UNITY-MIB::cpiPduOutletName }}' + index: '{{ $index }}' + divisor: 360000 + - + oid: CPI-UNITY-MIB::cpiPduBranchEnergy + value: CPI-UNITY-MIB::cpiPduBranchEnergy + num_oid: '.1.3.6.1.4.1.30932.1.10.1.3.110.1.9.{{ $index }}' + descr: 'CB{{ CPI-UNITY-MIB::cpiPduBranchId }}' + index: '{{ $index }}' + divisor: 360000 + state: + data: + - + oid: CPI-UNITY-MIB::cpiPduOutletControl + value: CPI-UNITY-MIB::cpiPduOutletControl + num_oid: '.1.3.6.1.4.1.30932.1.10.1.4.10.1.11.{{ $index }}' + descr: '{{ CPI-UNITY-MIB::cpiPduOutletName }}' + state_name: cpiPduOutletControl + states: + - { descr: Off, graph: 1, value: 0, generic: 0 } + - { descr: On, graph: 1, value: 1, generic: 0 } + - + oid: CPI-UNITY-MIB::cpiPduBranchStatus + value: CPI-UNITY-MIB::cpiPduBranchStatus + num_oid: '.1.3.6.1.4.1.30932.1.10.1.3.110.1.8.{{ $index }}' + descr: 'CB{{ CPI-UNITY-MIB::cpiPduBranchId }} Status' + state_name: cpiPduBranchStatus + states: + - { descr: NoAlarm, graph: 1, value: 0, generic: 0 } + - { descr: Warning, graph: 1, value: 1, generic: 1 } + - { descr: Alarm, graph: 1, value: 2, generic: 2 } diff --git a/priv/profiles/os_discovery/christie-projector.yaml b/priv/profiles/os_discovery/christie-projector.yaml new file mode 100644 index 00000000..68f8bcc9 --- /dev/null +++ b/priv/profiles/os_discovery/christie-projector.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.25766.1.12.1.1.2.1.0 + version: .1.3.6.1.4.1.25766.1.12.1.1.2.7.0 + serial: .1.3.6.1.4.1.25766.1.12.1.1.2.4.0 diff --git a/priv/profiles/os_discovery/ciena-rls.yaml b/priv/profiles/os_discovery/ciena-rls.yaml new file mode 100644 index 00000000..ced43220 --- /dev/null +++ b/priv/profiles/os_discovery/ciena-rls.yaml @@ -0,0 +1,127 @@ +modules: + os: + sysDescr_regex: '/(?.+)/' + version: CIENA-PRO-SOFTWARE-MIB::cienaProSoftwareRunningVersion.0 + + sensors: + additional_oids: + data: + - + oid: + - CIENA-6500R-INVENTORY-MIB::rlsCircuitPackCtype + temperature: + data: + - + oid: CIENA-6500R-INVENTORY-MIB::rlsCircuitPackCurrTemprature + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.1.1.1.29.{{ $index }}' + index: 'rlsCircuitPackCurrTemprature.{{ $index }}' + descr: '{{ CIENA-6500R-INVENTORY-MIB::rlsCircuitPackCtype }} Slot {{ $index_string }}' + state: + data: + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsAmpMode + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.3.{{ $index }}' + index: 'rlsInventoryAmpsAmpMode.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Mode' + state_name: rlsInventoryAmpsAmpMode + states: + - { descr: Power, graph: 0, value: 1, generic: 0 } + - { descr: Gain, graph: 0, value: 2, generic: 0 } + - { descr: GainClamp, graph: 0, value: 3, generic: 0 } + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsState + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.4.{{ $index }}' + index: 'rlsInventoryAmpsState.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier State' + state_name: rlsInventoryAmpsState + states: + - { descr: Unknown, graph: 0, value: 0, generic: 3 } + - { descr: Off, graph: 0, value: 1, generic: 1 } + - { descr: APR, graph: 0, value: 2, generic: 1 } + - { descr: Normal, graph: 0, value: 3, generic: 0 } + - { descr: Clamped, graph: 0, value: 4, generic: 0 } + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsGainMode + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.5.{{ $index }}' + index: 'rlsInventoryAmpsGainMode.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Gain Mode' + state_name: rlsInventoryAmpsGainMode + states: + - { descr: Low, graph: 0, value: 1, generic: 0 } + - { descr: High, graph: 0, value: 2, generic: 0 } + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsForcedShutdown + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.6.{{ $index }}' + index: 'rlsInventoryAmpsForcedShutdown.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Forced Shutdown State' + state_name: rlsInventoryAmpsForcedShutdown + states: + - { descr: Disabled, graph: 0, value: 1, generic: 0 } + - { descr: Enabled, graph: 0, value: 2, generic: 1 } + dbm: + data: + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsInCurrPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.48.{{ $index }}' + index: 'rlsInventoryAmpsInCurrPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Input - Current' + low_limit: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsInputLosThreshold + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsInMinPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.49.{{ $index }}' + index: 'rlsInventoryAmpsInMinPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Input - Minimum' + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsInMaxPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.50.{{ $index }}' + index: 'rlsInventoryAmpsInMaxPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Input - Maximum' + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsOutCurrPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.51.{{ $index }}' + index: 'rlsInventoryAmpsOutCurrPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Output - Current' + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsOutMinPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.52.{{ $index }}' + index: 'rlsInventoryAmpsOutMinPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Output - Minimum' + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsOutMaxPower + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.53.{{ $index }}' + index: 'rlsInventoryAmpsOutMaxPower.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Output - Maximum' + - + oid: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsTable + value: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsOpticalReturnLoss + num_oid: '.1.3.6.1.4.1.1271.4.1.1.1.2.1.1.1.54.{{ $index }}' + index: 'rlsInventoryAmpsOpticalReturnLoss.{{ $index }}' + descr: 'Slot {{ $subindex0 }} {{ $index_string:nns }}' + group: 'Amplifier Optical Return Loss' + low_warn_limit: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsOrlThreshold + low_limit: CIENA-6500R-INVENTORY-AMPS-MIB::rlsInventoryAmpsAprThreshold + skip_values: + - + oid: index + op: 'contains' + value: '7.80.114.101.45.65.109.112' # Pre-Amp diff --git a/priv/profiles/os_discovery/ciena-saos.yaml b/priv/profiles/os_discovery/ciena-saos.yaml new file mode 100644 index 00000000..1b5da265 --- /dev/null +++ b/priv/profiles/os_discovery/ciena-saos.yaml @@ -0,0 +1,282 @@ +mib: BRIDGE-MIB:NORTEL-OPTICAL-PM-MIB:CIENA-CES-PORT-XCVR-MIB:CIENA-CES-PORT-MIB:BRIDGE-MIB:CIENA-SMI:CIENA-CES-CHASSIS-MIB:CIENA-CES-FEATURE-LICENSE-MIB:CIENA-CES-PORT-MIB:CIENA-CES-PORT-XCVR-MIB:WWP-PRODUCTS-MIB:WWP-LEOS-PORT-XCVR-MIB:WWP-LEOS-SYSTEM-CONFIG-MIB:CIENA-CES-RAPS-MIB +modules: + os: + sysDescr_regex: + - '/(?.*)SW:(?\S+)/' + - '/Ciena Corporation, (?.*) SAOS Operating System, Version saos-(?.*+)/' + additional_oids: + data: + - + oid: nnOpticalPmRecentTable + - oid: ifName + sensors: + count: + data: + - + oid: nnOpticalPmRecentTable + value: nnOpticalPmCurr15MinValue + num_oid: .1.3.6.1.4.1.562.68.10.1.1.1.1.1.6.{{ $index }} + descr: nnOpticalPmRecentMonTypeDescr + index: 'nnOpticalPmRecentTable.{{ $index }}' + skip_values: + - + oid: nnOpticalPmRecentUnits + op: 'not_in_array' + value: [1] + - + oid: nnOpticalPmRecentMonTypeDescr + op: 'regex' + value: (.*(LOW|HIGH).*) + group: nnOpticalPmRecentIfIndexDescr + dbm: + data: + - + oid: nnOpticalPmRecentTable + value: nnOpticalPmCurr15MinValue + num_oid: .1.3.6.1.4.1.562.68.10.1.1.1.1.1.6.{{ $index }} + descr: nnOpticalPmRecentMonTypeDescr + index: 'nnOpticalPmRecentTable.{{ $index }}' + skip_values: + - + oid: nnOpticalPmRecentUnits + op: 'not_in_array' + value: [2, 3] + - + oid: nnOpticalPmRecentMonTypeDescr + op: 'regex' + value: (.*(LOW|HIGH).*) + group: nnOpticalPmRecentIfIndexDescr + percent: + data: + - + oid: nnOpticalPmRecentTable + value: nnOpticalPmCurr15MinValue + num_oid: .1.3.6.1.4.1.562.68.10.1.1.1.1.1.6.{{ $index }} + descr: nnOpticalPmRecentMonTypeDescr + index: 'nnOpticalPmRecentTable.{{ $index }}' + skip_values: + - + oid: nnOpticalPmRecentUnits + op: 'not_in_array' + value: [4] + - + oid: nnOpticalPmRecentMonTypeDescr + op: 'regex' + value: (.*(LOW|HIGH).*) + group: nnOpticalPmRecentIfIndexDescr + ber: + data: + - + oid: nnOpticalPmRecentTable + value: nnOpticalPmCurr15MinValue + num_oid: .1.3.6.1.4.1.562.68.10.1.1.1.1.1.6.{{ $index }} + descr: nnOpticalPmRecentMonTypeDescr + index: 'nnOpticalPmRecentTable.{{ $index }}' + skip_values: + - + oid: nnOpticalPmRecentUnits + op: 'not_in_array' + value: [5] + - + oid: nnOpticalPmRecentMonTypeDescr + op: 'regex' + value: (.*(LOW|HIGH).*) + group: nnOpticalPmRecentIfIndexDescr + runtime: + data: + - + oid: nnOpticalPmRecentTable + value: nnOpticalPmCurr15MinValue + num_oid: .1.3.6.1.4.1.562.68.10.1.1.1.1.1.6.{{ $index }} + descr: nnOpticalPmRecentMonTypeDescr + index: 'nnOpticalPmRecentTable.{{ $index }}' + skip_values: + - + oid: nnOpticalPmRecentUnits + op: 'not_in_array' + value: [6] + - + oid: nnOpticalPmRecentMonTypeDescr + op: 'regex' + value: (.*(LOW|HIGH).*) + group: nnOpticalPmRecentIfIndexDescr + temperature: + data: + - oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTemperature + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.3.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + low_limit: cienaCesPortXcvrLowTempAlarmThreshold + high_limit: cienaCesPortXcvrHighTempAlarmThreshold + skip_values: + - oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [ 4 ] + voltage: + data: + - oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrVcc + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.4.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver Vcc' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + low_limit: cienaCesPortXcvrLowVccAlarmThreshold + high_limit: cienaCesPortXcvrHighVccAlarmThreshold + divisor: 1000 + index: 'xcvr-vcc-{{ $index }}' + skip_values: + - oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [ 4 ] + current: + data: + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrBias + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.5.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver Bias Current' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + low_limit: 0 + high_limit: cienaCesPortXcvrHighBiasAlarmThreshold + divisor: 1000 + group: 'Transceivers' + index: 'xcvr-i-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + power: + data: + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrRxPower + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.6.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver Rx Power' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + low_limit: cienaCesPortXcvrLowRxPwAlarmThreshold + high_limit: cienaCesPortXcvrHighRxPwAlarmThreshold + divisor: 1000000 + index: 'rx-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [1,4] + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTxOutputPower + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.35.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver Tx Power' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + low_limit: cienaCesPortXcvrLowTxPwAlarmThreshold + high_limit: cienaCesPortXcvrHighTxPwAlarmThreshold + divisor: 1000000 + index: 'tx-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + - + oid: cienaCesPortXcvrTxState + op: 'in_array' + value: [2] + state: + data: + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrFecMode + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.36.{{ $index }}' + descr: 'Port {{ $ifName }} Transceiver FEC Mode' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + state_name: cienaCesPortXcvrFecMode + skip_values: + - + oid: cienaCesPortXcvrFecMode + op: 'in_array' + value: [1] + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + states: + - { value: 1, generic: 0, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: generic } + - { value: 3, generic: 0, graph: 0, descr: enhanced } + group: 'Transceiver FEC Mode' + - + oid: cienaCesModuleTable + value: cienaCesModuleAdminState + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.7.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Admin State - {{ $cienaCesModuleModel }}' + state_name: cienaCesModuleAdminState + states: + - { value: 1, generic: 0, graph: 0, descr: enabled } + - { value: 2, generic: 0, graph: 0, descr: disabled } + - { value: 3, generic: 0, graph: 0, descr: shutdown } + group: 'Module Admin State' + - + oid: cienaCesModuleTable + value: cienaCesModuleOperState + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.8.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Oper State - {{ $cienaCesModuleModel }}' + entPhysicalIndex: '55{{ $subindex2 }}' + state_name: cienaCesModuleOperState + states: + - { value: 1, generic: 0, graph: 0, descr: uninstalled } + - { value: 2, generic: 0, graph: 0, descr: unequipped } + - { value: 3, generic: 1, graph: 0, descr: init } + - { value: 4, generic: 0, graph: 0, descr: disabled } + - { value: 5, generic: 0, graph: 0, descr: enabled } + - { value: 6, generic: 2, graph: 0, descr: faulted } + - { value: 7, generic: 0, graph: 0, descr: hotswap } + - { value: 8, generic: 1, graph: 0, descr: poweroff } + - { value: 9, generic: 1, graph: 0, descr: hitlessInit } + - { value: 10, generic: 1, graph: 0, descr: fastReload } + - { value: 11, generic: 1, graph: 0, descr: krnInit } + - { value: 12, generic: 2, graph: 0, descr: unsupported } + - { value: 13, generic: 1, graph: 0, descr: installing } + - { value: 14, generic: 2, graph: 0, descr: failed } + - { value: 15, generic: 1, graph: 0, descr: krnDisable } + - { value: 16, generic: 2, graph: 0, descr: appFault } + - { value: 17, generic: 1, graph: 0, descr: booting } + - { value: 18, generic: 1, graph: 0, descr: powerdown } + group: 'Module Operational State' + - + oid: cienaCesModuleTable + value: cienaCesModuleLastRebootReason + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.11.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Reboot Reason' + state_name: cienaCesModuleLastRebootReason + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: snmp } + - { value: 3, generic: 0, graph: 0, descr: pwrFail } + - { value: 4, generic: 0, graph: 0, descr: appLoad } + - { value: 5, generic: 0, graph: 0, descr: errorHandler } + - { value: 6, generic: 0, graph: 0, descr: watchdog } + - { value: 7, generic: 0, graph: 0, descr: upgrade } + - { value: 8, generic: 0, graph: 0, descr: cli } + - { value: 9, generic: 0, graph: 0, descr: resetButton } + - { value: 10, generic: 0, graph: 0, descr: failOver } + - { value: 11, generic: 0, graph: 0, descr: faultManager } + - { value: 12, generic: 0, graph: 0, descr: communicationFailure } + - { value: 13, generic: 0, graph: 0, descr: configurationRevert } + - { value: 14, generic: 0, graph: 0, descr: unprotectedFailure } + - { value: 15, generic: 0, graph: 0, descr: bootFailure } + - { value: 16, generic: 0, graph: 0, descr: softwareRevert } + - { value: 17, generic: 0, graph: 0, descr: processorWarmRestart } + - { value: 18, generic: 0, graph: 0, descr: coldRestart } + - { value: 19, generic: 0, graph: 0, descr: primaryRestart } + group: 'Module Last Reboot Reason' diff --git a/priv/profiles/os_discovery/ciena-sds.yaml b/priv/profiles/os_discovery/ciena-sds.yaml new file mode 100644 index 00000000..51521174 --- /dev/null +++ b/priv/profiles/os_discovery/ciena-sds.yaml @@ -0,0 +1,970 @@ +mib: BRIDGE-MIB:CIENA-SMI:CIENA-CES-CHASSIS-MIB:CIENA-CES-FEATURE-LICENSE-MIB:CIENA-CES-PORT-MIB:CIENA-CES-PORT-XCVR-MIB:WWP-PRODUCTS-MIB:WWP-LEOS-PORT-XCVR-MIB:WWP-LEOS-SYSTEM-CONFIG-MIB:CIENA-CES-RAPS-MIB +modules: + os: + features: CIENA-CES-MODULE-MIB::cienaCesModuleDescription.1.1 + hardware: CIENA-CES-CHASSIS-MIB::cienaCesChassisPartNumber.0 + serial: CIENA-CES-CHASSIS-MIB::cienaCesChassisSerialNumber.0 + version: CIENA-CES-MODULE-MIB::cienaCesModuleSwRunningRelease.1.1.31 + processors: + data: + - + oid: cienaCesChassisCPUHealthCurrMeasurement.1 + value: cienaCesChassisCPUHealthCurrMeasurement + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.5.1.4.{{ $index }}' + descr: 'Slot {{ $subindex1 }} CPU' + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast5Seconds + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.1.{{ $index }}' + descr: 'CPU Utilization 5' + index: cpu5.{{ $index }} + #low_limit: wwpLeosSystemCpuUtilizationLast5SecondsMinimum + #high_limit: wwpLeosSystemCpuUtilizationLast5SecondsMaximum + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast10Seconds + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.5.{{ $index }}' + descr: 'CPU Utilization 10' + index: cpu10.{{ $index }} + #low_limit: wwpLeosSystemCpuUtilizationLast10SecondsMinimum + #high_limit: wwpLeosSystemCpuUtilizationLast10SecondsMaximum + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast60Seconds + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.9.{{ $index }}' + descr: 'CPU Utilization 60' + index: cpu60.{{ $index }} + #low_limit: wwpLeosSystemCpuUtilizationLast60SecondsMinimum + #high_limit: wwpLeosSystemCpuUtilizationLast60SecondsMaximum + sensors: + additional_oids: + data: + - oid: + - dot1dBasePortIfIndex + - cienaCesLogicalPortConfigPortName + - cienaCesChassisPowerSupplySlotName + dbm: + data: + - + oid: wwpLeosPortXcvrTable + value: wwpLeosPortXcvrRxDbmPower + num_oid: '.1.3.6.1.4.1.6141.2.60.4.1.1.1.1.105.{{ $index }}' + descr: 'Rx Port {{ $index }} - Optic SN: {{ $wwpLeosPortXcvrSerialNum }}' + divisor: 10000 + index: wwpLeosPortXcvrRxDbmPower.{{ $index }} + group: 'Rx dBm' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: wwpLeosPortXcvrLowRxDbmPwAlarmThreshold + high_limit: wwpLeosPortXcvrHighRxDbmPwAlarmThreshold + skip_values: + - + oid: wwpLeosPortXcvrWaveLength + op: '=' + value: 0 + - + oid: wwpLeosPortXcvrTable + value: wwpLeosPortXcvrTxDbmPower + num_oid: '.1.3.6.1.4.1.6141.2.60.4.1.1.1.1.106.{{ $index }}' + descr: 'Tx Port {{ $index }} - Optic SN: {{ $wwpLeosPortXcvrSerialNum }}' + divisor: 10000 + index: wwpLeosPortXcvrTxDbmPower.{{ $index }} + group: 'Tx dBm' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: wwpLeosPortXcvrLowTxDbmPwAlarmThreshold + high_limit: wwpLeosPortXcvrHighTxDbmPwAlarmThreshold + skip_values: + - + oid: wwpLeosPortXcvrWaveLength + op: '=' + value: 0 + temperature: + data: + - + oid: cienaCesChassisFanTempTable + value: cienaCesChassisFanTemp + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.3.2.1.4.{{ $index }}' + entPhysicalIndex: '52{{ $subindex1 }}' + descr: cienaCesChassisFanTempName + low_limit: cienaCesChassisFanTempLoThreshold + high_limit: cienaCesChassisFanTempHiThreshold + group: 'Fans' + - + oid: cienaCesChassisIomTempHealthTable + value: cienaCesChassisIomTempHealthCurrMeasurement + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.35.1.4.{{ $index }}' + descr: 'Slot {{ $subindex1 }} I/O Module' + low_limit: cienaCesChassisIomTempHealthMinThreshold + high_limit: cienaCesChassisIomTempHealthMaxThreshold + group: 'I/O Modules' + - + oid: cienaCesModuleTempSensorTable + value: cienaCesModuleSensorCurrentTemp + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.3.1.3.{{ $index }}' + descr: cienaCesModuleSensorDescription + low_limit: cienaCesModuleSensorLowTempThreshold + high_limit: cienaCesModuleSensorHighTempThreshold + index: 'module-temp-{{ $index }}' + group: 'Modules' + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTemperature + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.3.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: cienaCesPortXcvrLowTempAlarmThreshold + high_limit: cienaCesPortXcvrHighTempAlarmThreshold + group: 'Transceivers' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + - + oid: wwpLeosPortXcvrTable + value: wwpLeosPortXcvrTemperature + num_oid: '.1.3.6.1.4.1.6141.2.60.4.1.1.1.1.16.{{ $index }}' + descr: 'Port {{ $subindex0 }} - Optic SN: {{ $wwpLeosPortXcvrSerialNum }}' + index: wwpLeosPortXcvrTemperature.{{ $index }} + group: 'Ports' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: wwpLeosPortXcvrLowTempAlarmThreshold + high_limit: wwpLeosPortXcvrHighTempAlarmThreshold + skip_values: + - + oid: wwpLeosPortXcvrWaveLength + op: '=' + value: 0 + fanspeed: + data: + - + oid: cienaCesChassisFanTable + value: cienaCesChassisFanCurrentSpeed + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.2.1.1.5.{{ $index }}' + entPhysicalIndex: '51{{ $subindex1 }}' + descr: cienaCesChassisFanName + low_limit: cienaCesChassisFanMinSpeed + voltage: + data: + - + oid: cienaCesChassisPowerOutputVoltageHealthTable + value: cienaCesChassisPowerOutputVoltageHealthCurrMeasurement + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.37.1.4.{{ $index }}' + entPhysicalIndex: '50{{ $subindex1 }}' + descr: 'Power Supply {{ $subindex1 }} Output' + low_limit: cienaCesChassisPowerOutputVoltageHealthMinThreshold + high_limit: cienaCesChassisPowerOutputVoltageHealthMaxThreshold + divisor: 1000 + group: 'Power Supplies' + index: 'psu-v-{{ $index }}' + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrVcc + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.4.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Vcc' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: cienaCesPortXcvrLowVccAlarmThreshold + high_limit: cienaCesPortXcvrHighVccAlarmThreshold + divisor: 1000 + group: 'Transceivers' + index: 'xcvr-vcc-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + current: + data: + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrBias + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.5.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Bias Current' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: 0 + high_limit: cienaCesPortXcvrHighBiasAlarmThreshold + divisor: 1000 + group: 'Transceivers' + index: 'xcvr-i-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + power: + data: + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrRxPower + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.6.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Rx Power' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: cienaCesPortXcvrLowRxPwAlarmThreshold + high_limit: cienaCesPortXcvrHighRxPwAlarmThreshold + divisor: 1000000 + group: 'Transceiver Rx Power' + index: 'rx-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [1,4] + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrRxPower + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.6.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Rx Power' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: -1 + high_limit: cienaCesPortXcvrHighRxPwAlarmThreshold + divisor: 1000000 + group: 'Transceiver Rx Power' + index: 'rx2-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'not_in_array' + value: [1] + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTxOutputPower + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.35.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Tx Power' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + low_limit: cienaCesPortXcvrLowTxPwAlarmThreshold + high_limit: cienaCesPortXcvrHighTxPwAlarmThreshold + divisor: 1000000 + group: 'Transceiver Tx Power' + index: 'tx-{{ $index }}' + skip_values: + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + - + oid: cienaCesPortXcvrTxState + op: 'in_array' + value: [2] + count: + data: + - + oid: cienaCesChassisMACHealthTable + value: cienaCesChassisMACHealthCurrMeasurement + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.25.1.4.{{ $index }}' + descr: 'Slot {{ $subindex1 }} MAC Table Entries' + low_limit: 0 + high_limit: cienaCesChassisMACHealthMaxThreshold + group: 'Service Line Modules' + state: + data: + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast5SecondsState + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.4.{{ $index }}' + descr: '5 Second CPU State' + state_name: wwpLeosSystemCpuUtilizationLast5SecondsState + states: + - { value: 1, generic: 0, graph: 0, descr: normal } + - { value: 2, generic: 1, graph: 0, descr: warning } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 1, graph: 0, descr: faulted } + group: 'CPU' + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast10SecondsState + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.8.{{ $index }}' + descr: '10 Second CPU State' + state_name: wwpLeosSystemCpuUtilizationLast10SecondsState + states: + - { value: 1, generic: 0, graph: 0, descr: normal } + - { value: 2, generic: 1, graph: 0, descr: warning } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 1, graph: 0, descr: faulted } + group: 'CPU' + - + oid: wwpLeosSystemCpuUtilization + value: wwpLeosSystemCpuUtilizationLast60SecondsState + num_oid: '.1.3.6.1.4.1.6141.2.60.12.1.11.12.{{ $index }}' + descr: '60 Second CPU State' + state_name: wwpLeosSystemCpuUtilizationLast60SecondsState + states: + - { value: 1, generic: 0, graph: 0, descr: normal } + - { value: 2, generic: 1, graph: 0, descr: warning } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 1, graph: 0, descr: faulted } + group: 'CPU' + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrFecMode + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.36.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver FEC Mode' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + state_name: cienaCesPortXcvrFecMode + skip_values: + - + oid: cienaCesPortXcvrFecMode + op: 'in_array' + value: [1] + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + states: + - { value: 1, generic: 0, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: generic } + - { value: 3, generic: 0, graph: 0, descr: enhanced } + group: 'Transceiver FEC Mode' + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTxState + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.32.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Tx State' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + state_name: cienaCesPortXcvrTxState + skip_values: + - + oid: cienaCesPortXcvrTxState + op: 'in_array' + value: [0] + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + states: + - { value: 1, generic: 0, graph: 0, descr: enabled } + - { value: 2, generic: 0, graph: 0, descr: disabled } + group: 'Transceiver Tx State' + - + oid: cienaCesPortXcvrTable + value: cienaCesPortXcvrTxFaultStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.9.1.1.1.1.33.{{ $index }}' + descr: 'Port {{ $cienaCesLogicalPortConfigPortName }} Transceiver Tx Fault' + entPhysicalIndex: '{{ $dot1dBasePortIfIndex }}' + entPhysicalIndex_measured: 'ports' + state_name: cienaCesPortXcvrTxFaultStatus + skip_values: + - + oid: cienaCesPortXcvrTxFaultStatus + op: 'in_array' + value: [0] + - + oid: cienaCesPortXcvrOperState + op: 'in_array' + value: [4] + states: + - { value: 1, generic: 2, graph: 0, descr: fault } + - { value: 2, generic: 0, graph: 0, descr: noFault } + group: 'Transceiver Tx Fault' + - + oid: cienaCesPremiumFeatureStatusTable + value: cienaCesPremiumFeatureOperStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.11.1.1.1.1.3.{{ $index }}' + descr: 'License {{ $cienaCesPremiumFeatureName }}' + state_name: cienaCesPremiumFeatureOperStatus + skip_values: 1 + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: restrictedUse } + - { value: 3, generic: 0, graph: 0, descr: fullyActive } + - { value: 4, generic: 1, graph: 0, descr: someLicenseKeyMissing } + - { value: 5, generic: 1, graph: 0, descr: licenseViolation } + group: 'License Status' + - + oid: cienaCesChassisProcessHealthTable + value: cienaCesChassisProcessHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.41.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Process Health' + state_name: cienaCesChassisProcessHealthState + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Process Health' + - + oid: cienaCesChassisThreadHealthTable + value: cienaCesChassisThreadHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.42.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Thread Health' + state_name: cienaCesChassisThreadHealthState + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Thread Health' + - + oid: cienaCesChassisFanTrayTable + value: cienaCesChassisFanTrayStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.2.2.1.1.{{ $index }}' + descr: cienaCesChassisFanTrayName + entPhysicalIndex: '530' + state_name: cienaCesChassisFanTrayStatus + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 1, graph: 0, descr: pending } + - { value: 3, generic: 2, graph: 0, descr: rpm-warning } + - { value: 4, generic: 2, graph: 0, descr: uninstalled } + - { value: 5, generic: 3, graph: 0, descr: unknown } + group: 'Fan Trays' + - + oid: cienaCesChassisFanTable + value: cienaCesChassisFanStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.2.1.1.3.{{ $index }}' + descr: cienaCesChassisFanName + state_name: cienaCesChassisFanStatus + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 1, graph: 0, descr: pending } + - { value: 3, generic: 2, graph: 0, descr: rpm-warning } + - { value: 4, generic: 2, graph: 0, descr: uninstalled } + - { value: 5, generic: 3, graph: 0, descr: unknown } + group: 'Fans' + - + oid: cienaCesChassisPowerOutputVoltageHealthTable + value: cienaCesChassisPowerOutputVoltageHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.37.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Output Voltage' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + - + oid: cienaCesChassisPowerTable + value: cienaCesChassisPowerSupplyType + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.1.1.1.3.{{ $index }}' + descr: 'PS {{ $index }} Type' + state_name: cienaCesChassisPowerSupplyType + states: + - { value: 1, generic: 0, graph: 0, descr: ac } + - { value: 2, generic: 0, graph: 0, descr: dc } + - { value: 3, generic: 1, graph: 0, descr: unequipped } + - { value: 99, generic: 3, graph: 0, descr: unknown } + skip_values: 99 + group: 'Power Supplies' + - + oid: cienaCesChassisPowerTable + value: cienaCesChassisPowerSupplyState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.1.1.1.2.{{ $index }}' + descr: 'PS {{ $index }} State' + state_name: cienaCesChassisPowerSupplyState + states: + - { value: 1, generic: 0, graph: 0, descr: online } + - { value: 2, generic: 2, graph: 0, descr: faulted } + - { value: 3, generic: 2, graph: 0, descr: offline } + - { value: 4, generic: 2, graph: 0, descr: uninstalled } + group: 'Power Supplies' + - + oid: cienaCesModuleTable + value: cienaCesModuleAdminState + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.7.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Admin State - {{ $cienaCesModuleModel }}' + state_name: cienaCesModuleAdminState + states: + - { value: 1, generic: 0, graph: 0, descr: enabled } + - { value: 2, generic: 0, graph: 0, descr: disabled } + - { value: 3, generic: 0, graph: 0, descr: shutdown } + group: 'Module Admin State' + - + oid: cienaCesModuleTable + value: cienaCesModuleOperState + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.8.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Oper State - {{ $cienaCesModuleModel }}' + entPhysicalIndex: '55{{ $subindex2 }}' + state_name: cienaCesModuleOperState + states: + - { value: 1, generic: 0, graph: 0, descr: uninstalled } + - { value: 2, generic: 0, graph: 0, descr: unequipped } + - { value: 3, generic: 1, graph: 0, descr: init } + - { value: 4, generic: 0, graph: 0, descr: disabled } + - { value: 5, generic: 0, graph: 0, descr: enabled } + - { value: 6, generic: 2, graph: 0, descr: faulted } + - { value: 7, generic: 0, graph: 0, descr: hotswap } + - { value: 8, generic: 1, graph: 0, descr: poweroff } + - { value: 9, generic: 1, graph: 0, descr: hitlessInit } + - { value: 10, generic: 1, graph: 0, descr: fastReload } + - { value: 11, generic: 1, graph: 0, descr: krnInit } + - { value: 12, generic: 2, graph: 0, descr: unsupported } + - { value: 13, generic: 1, graph: 0, descr: installing } + - { value: 14, generic: 2, graph: 0, descr: failed } + - { value: 15, generic: 1, graph: 0, descr: krnDisable } + - { value: 16, generic: 2, graph: 0, descr: appFault } + - { value: 17, generic: 1, graph: 0, descr: booting } + - { value: 18, generic: 1, graph: 0, descr: powerdown } + group: 'Module Operational State' + - + oid: cienaCesModuleTable + value: cienaCesModuleLastRebootReason + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.11.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Reboot Reason' + state_name: cienaCesModuleLastRebootReason + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: snmp } + - { value: 3, generic: 0, graph: 0, descr: pwrFail } + - { value: 4, generic: 0, graph: 0, descr: appLoad } + - { value: 5, generic: 0, graph: 0, descr: errorHandler } + - { value: 6, generic: 0, graph: 0, descr: watchdog } + - { value: 7, generic: 0, graph: 0, descr: upgrade } + - { value: 8, generic: 0, graph: 0, descr: cli } + - { value: 9, generic: 0, graph: 0, descr: resetButton } + - { value: 10, generic: 0, graph: 0, descr: failOver } + - { value: 11, generic: 0, graph: 0, descr: faultManager } + - { value: 12, generic: 0, graph: 0, descr: communicationFailure } + - { value: 13, generic: 0, graph: 0, descr: configurationRevert } + - { value: 14, generic: 0, graph: 0, descr: unprotectedFailure } + - { value: 15, generic: 0, graph: 0, descr: bootFailure } + - { value: 16, generic: 0, graph: 0, descr: softwareRevert } + - { value: 17, generic: 0, graph: 0, descr: processorWarmRestart } + - { value: 18, generic: 0, graph: 0, descr: coldRestart } + - { value: 19, generic: 0, graph: 0, descr: primaryRestart } + group: 'Module Last Reboot Reason' + - + oid: cienaCesModuleTable + value: cienaCesModuleProtectionRole + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.9.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Protection Role - {{ $cienaCesModuleModel }}' + state_name: cienaCesModuleProtectionRole + skip_values: 1 + states: + - { value: 1, generic: 0, graph: 0, descr: none } + - { value: 2, generic: 0, graph: 0, descr: primary } + - { value: 3, generic: 0, graph: 0, descr: secondary } + group: 'Module Protection Role' + - + oid: cienaCesModuleTable + value: cienaCesModuleStandbyStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.2.1.2.1.1.10.{{ $index }}' + descr: 'Slot {{ $subindex2 }} Standby Status - {{ $cienaCesModuleModel }}' + state_name: cienaCesModuleStandbyStatus + skip_values: 0 + states: + - { value: 0, generic: 0, graph: 0, descr: none } + - { value: 1, generic: 0, graph: 0, descr: cold } + - { value: 2, generic: 0, graph: 0, descr: warm } + - { value: 3, generic: 0, graph: 0, descr: hot } + - { value: 4, generic: 0, graph: 0, descr: protected } + group: 'Module Standby Status' + - + oid: cienaCesChassisDiskHealthTable + value: cienaCesChassisDiskHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.12.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Disk Health - Flash0' + state_name: cienaCesChassisDiskHealthStateFlash0 + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Disk' + skip_values: + - + oid: cienaCesChassisDiskHealthSubCategory + op: '!=' + value: 1 + - + oid: cienaCesChassisDiskHealthTable + value: cienaCesChassisDiskHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.12.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Disk Health - RAM' + state_name: cienaCesChassisDiskHealthStateRAM + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Disk' + skip_values: + - + oid: cienaCesChassisDiskHealthSubCategory + op: '!=' + value: 2 + - + oid: cienaCesChassisDiskHealthTable + value: cienaCesChassisDiskHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.12.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Disk Health - USB' + state_name: cienaCesChassisDiskHealthStateUSB + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Disk' + skip_values: + - + oid: cienaCesChassisDiskHealthSubCategory + op: '!=' + value: 3 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Load Fuse' + state_name: cienaCesChassisPowerParamsHealthStateLoadFuse + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 1 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Internal Fuse' + state_name: cienaCesChassisPowerParamsHealthStateInternalFuse + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 2 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Voltage Regulator' + state_name: cienaCesChassisPowerParamsHealthStateVoltageRegulator + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 3 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Temperature' + state_name: cienaCesChassisPowerParamsHealthStateTemperature + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 4 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} AC Input' + state_name: cienaCesChassisPowerParamsHealthStateACInput + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 5 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Overload Protection' + state_name: cienaCesChassisPowerParamsHealthStateOverloadProtection + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 6 + - + oid: cienaCesChassisPowerParamsHealthTable + value: cienaCesChassisPowerParamsHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.36.1.3.{{ $index }}' + descr: 'PS {{ $subindex1 }} Fan' + state_name: cienaCesChassisPowerParamsHealthStateOverloadFan + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Power Supplies' + skip_values: + - + oid: cienaCesChassisPowerParamsHealthSubCategory + op: '!=' + value: 7 + - + oid: cienaCesChassisSMFabricHealthTable + value: cienaCesChassisSMFabricHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.32.1.3.{{ $index }}' + descr: 'SM {{ $subindex1 }} Fabric Status' + state_name: cienaCesChassisSMFabricHealthState + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Switch Modules' + - + oid: cienaCesChassisSMHealthTable + value: cienaCesChassisSMHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.9.1.4.{{ $index }}' + descr: 'SM {{ $subindex1 }} Status' + state_name: cienaCesChassisSMHealthState + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Switch Modules' + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Global Heap' + state_name: cienaCesChassisMemoryHealthStateGlobalHeap + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthSubCategory + op: '!=' + value: 1 + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Heap1' + state_name: cienaCesChassisMemoryHealthStateHeap1 + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthSubCategory + op: '==' + value: 1 + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Heap2' + state_name: cienaCesChassisMemoryHealthSubCategory + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthSubCategory + op: '!=' + value: 3 + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Pool1' + state_name: cienaCesChassisMemoryHealthStatePool1 + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthOriginIndex + op: '!=' + value: 4 + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Pool2' + state_name: cienaCesChassisMemoryHealthStatePool2 + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthOriginIndex + op: '!=' + value: 5 + - + oid: cienaCesChassisMemoryHealthTable + value: cienaCesChassisMemoryHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.24.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} Heap' + state_name: cienaCesChassisMemoryHealthStateHeap + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'Memory' + skip_values: + - + oid: cienaCesChassisMemoryHealthOriginIndex + op: '!=' + value: 6 + - + oid: cienaCesChassisCPUHealthTable + value: cienaCesChassisCPUHealthState + num_oid: '.1.3.6.1.4.1.1271.2.1.5.1.2.1.4.5.1.3.{{ $index }}' + descr: 'Slot {{ $subindex1 }} CPU Status' + state_name: cienaCesChassisCPUHealthStateCPUUsage + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: normal } + - { value: 3, generic: 1, graph: 0, descr: warning } + - { value: 4, generic: 1, graph: 0, descr: degraded } + - { value: 5, generic: 2, graph: 0, descr: faulted } + group: 'CPU' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingState + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.7.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} State' + state_name: cienaCesRapsVirtualRingState + states: + - { value: 1, generic: 3, graph: 0, descr: adminDisabled } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 2, graph: 0, descr: protecting } + - { value: 4, generic: 1, graph: 0, descr: recovering } + - { value: 5, generic: 1, graph: 0, descr: init } + - { value: 6, generic: 3, graph: 0, descr: none } + group: 'G.8032' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.8.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} Status' + state_name: cienaCesRapsVirtualRingStatus + states: + - { value: 1, generic: 0, graph: 0, descr: clear } + - { value: 2, generic: 1, graph: 0, descr: localSignalFail } + - { value: 3, generic: 1, graph: 0, descr: localForceSwitch } + - { value: 4, generic: 1, graph: 0, descr: remoteOrOtherPortSignalFail } + - { value: 5, generic: 1, graph: 0, descr: remoteOrOtherPortForceSwitch } + - { value: 6, generic: 1, graph: 0, descr: provisioningMismatch } + - { value: 7, generic: 1, graph: 0, descr: noRapsPduReceived } + - { value: 8, generic: 1, graph: 0, descr: noRplOwnerDetected } + group: 'G.8032' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingWestPortState + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.14.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} Port State - West' + state_name: cienaCesRapsVirtualRingWestPortState + states: + - { value: 1, generic: 1, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: forwarding } + - { value: 3, generic: 0, graph: 0, descr: blocked } + group: 'G.8032' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingEastPortState + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.25.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} Port State - East' + state_name: cienaCesRapsVirtualRingEastPortState + states: + - { value: 1, generic: 1, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: forwarding } + - { value: 3, generic: 0, graph: 0, descr: blocked } + group: 'G.8032' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingWestPortStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.15.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} Port Status - West' + state_name: cienaCesRapsVirtualRingWestPortStatus + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 2, graph: 0, descr: down } + - { value: 3, generic: 1, graph: 0, descr: ccmFailure } + - { value: 4, generic: 0, graph: 0, descr: localForceSwitch } + - { value: 5, generic: 0, graph: 0, descr: remoteForceSwitch } + - { value: 6, generic: 1, graph: 0, descr: remoteSignalFailure } + group: 'G.8032' + - + oid: cienaCesRapsVirtualRingTable + value: cienaCesRapsVirtualRingEastPortStatus + num_oid: '.1.3.6.1.4.1.1271.2.1.20.1.3.1.1.26.{{ $index }}' + descr: 'Virtual Ring {{ $cienaCesRapsVirtualRingName }} Port Status - East' + state_name: cienaCesRapsVirtualRingEastPortStatus + states: + - { value: 1, generic: 0, graph: 0, descr: ok } + - { value: 2, generic: 2, graph: 0, descr: down } + - { value: 3, generic: 1, graph: 0, descr: ccmFailure } + - { value: 4, generic: 0, graph: 0, descr: localForceSwitch } + - { value: 5, generic: 0, graph: 0, descr: remoteForceSwitch } + - { value: 6, generic: 1, graph: 0, descr: remoteSignalFailure } + group: 'G.8032' diff --git a/priv/profiles/os_discovery/ciena-waveserver.yaml b/priv/profiles/os_discovery/ciena-waveserver.yaml new file mode 100644 index 00000000..c9adb6bd --- /dev/null +++ b/priv/profiles/os_discovery/ciena-waveserver.yaml @@ -0,0 +1,129 @@ +mib: CIENA-WS-XCVR-MIB:CIENA-WS-PLATFORM-PM-MIB:CIENA-WS-PLATFORM-ALARM-MIB +modules: + os: + hardware: CIENA-WS-CHASSIS-MIB::cwsChassisChassisidentificationDescription.0 + version: CIENA-WS-SOFTWARE-MIB::cwsSoftwareStatusActiveVersion.0 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + sensors: + additional_oids: + data: + - + oid: + - cwsXcvrTemperatureThresholdLowAlarmThreshold + - cwsXcvrTemperatureThresholdHighAlarmThreshold + - cwsXcvrCienaIdDescription + - + oid: + - pmOpticalPower24HrIfIndexDescr + - pmOpticalPower24HrMonTypeDescr + - pmOpticalPower24HrMonValue + - pmOpticalPower24HrMonSupported + - definedAlarmActive + - definedAlarmDescription + - definedAlarmInstance + - definedAlarmSeverity + - alarmStatisticsCount + - alarmStatisticsType + count: + data: + - + oid: alarmStatisticsCount + value: alarmStatisticsCount + num_oid: '.1.3.6.1.4.1.1271.3.5.4.6.1.4.{{ $index }}' + descr: '{{ $alarmStatisticsType }}' + low_limit: -1 + high_limit: 0 + group: 'Active Alarms' + temperature: + data: + - + oid: cwsXcvrTemperatureTable + value: cwsXcvrTemperatureActual + num_oid: '.1.3.6.1.4.1.1271.3.4.15.13.1.2.{{ $index }}' + descr: 'Module {{ $subindex0 }} - {{ $cwsXcvrCienaIdDescription }}' + index: 'cwsXcvrTemperatureTable.{{ $index }}' + group: 'Modules' + low_limit: cwsXcvrTemperatureThresholdLowAlarmThreshold + high_limit: cwsXcvrTemperatureThresholdHighAlarmThreshold + skip_values: + - + oid: cwsXcvrTemperatureThresholdHighAlarmThreshold + op: '<=' + value: 0 + dbm: + data: + - + oid: pmOpticalPower24HrMonValue + num_oid: '.1.3.6.1.4.1.1271.3.5.22.25.1.5.{{ $index }}' + descr: '24 hrs - {{ $pmOpticalPower24HrIfIndexDescr }} Lane {{ $subindex1 }} {{ $pmOpticalPower24HrMonTypeDescr }}' + low_limit: -40 + group: 'Optical Power - Last 24 Hours' + index: 'pmOpticalPower24HrMonValue-{{ $index }}' + skip_values: + - + oid: pmOpticalPower24HrMonSupported + op: '=' + value: 0 + state: + data: + - + oid: definedAlarmActive + value: definedAlarmActive + num_oid: '.1.3.6.1.4.1.1271.3.5.4.5.1.4.{{ $index }}' + descr: '{{ $definedAlarmDescription }} (Critical)' + state_name: '{{ $definedAlarmActive }}-critical' + skip_values: + - + oid: definedAlarmSeverity + op: '!=' + value: 3 + states: + - { value: 1, generic: 2, graph: 0, descr: alarm } + - { value: 2, generic: 0, graph: 0, descr: ok } + group: 'Alarms - {{ $definedAlarmInstance }}' + - + oid: definedAlarmActive + value: definedAlarmActive + num_oid: '.1.3.6.1.4.1.1271.3.5.4.5.1.4.{{ $index }}' + descr: '{{ $definedAlarmDescription }} (Major)' + state_name: '{{ $definedAlarmActive }}-major' + skip_values: + - + oid: definedAlarmSeverity + op: '!=' + value: 4 + states: + - { value: 1, generic: 2, graph: 0, descr: alarm } + - { value: 2, generic: 0, graph: 0, descr: ok } + group: 'Alarms - {{ $definedAlarmInstance }}' + - + oid: definedAlarmActive + value: definedAlarmActive + num_oid: '.1.3.6.1.4.1.1271.3.5.4.5.1.4.{{ $index }}' + descr: '{{ $definedAlarmDescription }} (Minor)' + state_name: '{{ $definedAlarmActive }}-minor' + skip_values: + - + oid: definedAlarmSeverity + op: '!=' + value: 5 + states: + - { value: 1, generic: 2, graph: 0, descr: alarm } + - { value: 2, generic: 0, graph: 0, descr: ok } + group: 'Alarms - {{ $definedAlarmInstance }}' + - + oid: definedAlarmActive + value: definedAlarmActive + num_oid: '.1.3.6.1.4.1.1271.3.5.4.5.1.4.{{ $index }}' + descr: '{{ $definedAlarmDescription }} (Severity {{ $definedAlarmSeverity }})' + state_name: '{{ $definedAlarmActive }}-other' + skip_values: + - + oid: definedAlarmSeverity + op: '>=' + value: 3 + states: + - { value: 1, generic: 2, graph: 0, descr: alarm } + - { value: 2, generic: 0, graph: 0, descr: ok } + group: 'Alarms - {{ $definedAlarmInstance }}' + diff --git a/priv/profiles/os_discovery/cimc.yaml b/priv/profiles/os_discovery/cimc.yaml new file mode 100644 index 00000000..5a2269b3 --- /dev/null +++ b/priv/profiles/os_discovery/cimc.yaml @@ -0,0 +1,287 @@ +mib: CISCO-UNIFIED-COMPUTING-COMPUTE-MIB:CISCO-UNIFIED-COMPUTING-PROCESSOR-MIB:CISCO-UNIFIED-COMPUTING-MEMORY-MIB:CISCO-UNIFIED-COMPUTING-STORAGE-MIB:CISCO-UNIFIED-COMPUTING-EQUIPMENT-MIB +modules: + os: + sysDescr_regex: '/Firmware Version (?[^\s]+\))/' + hardware: + - CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardModel.1 + - CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardModel.0 + serial: + - CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardSerial.1 + - CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardSerial.0 + sensors: + current: + data: + - + oid: cucsComputeMbPowerStatsTable + value: cucsComputeMbPowerStatsInputCurrent + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.14.1.8.{{ $index }}' + descr: MB Input Current + index: 'mb-input-current' + voltage: + data: + - + oid: cucsComputeMbPowerStatsTable + value: cucsComputeMbPowerStatsInputVoltage + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.14.1.12.{{ $index }}' + descr: MB Input Voltage + index: 'mb-input-voltage' + power: + data: + - + oid: cucsComputeMbPowerStatsTable + value: cucsComputeMbPowerStatsConsumedPower + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.14.1.4.{{ $index }}' + descr: MB Input Power + index: 'mb-input-power' + temperature: + data: + - + oid: cucsComputeRackUnitMbTempStatsTable + value: cucsComputeRackUnitMbTempStatsAmbientTemp + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.44.1.4.{{ $index }}' + descr: 'Rack Unit Ambient Temperature' + index: 'ambient.{{ $index }}' + - + oid: cucsComputeRackUnitMbTempStatsTable + value: cucsComputeRackUnitMbTempStatsIoh1Temp + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.44.1.13.{{ $index }}' + descr: 'IO Hub 1 Temperature' + index: 'ioh1.{{ $index }}' + - + oid: cucsComputeRackUnitMbTempStatsTable + value: cucsComputeRackUnitMbTempStatsIoh2Temp + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.44.1.17.{{ $index }}' + descr: 'IO Hub 2 Temperature' + index: 'ioh2.{{ $index }}' + - + oid: cucsComputeRackUnitMbTempStatsTable + value: cucsComputeRackUnitMbTempStatsFrontTemp + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.44.1.8.{{ $index }}' + descr: 'Rack Unit Front Temperature' + index: 'front.{{ $index }}' + - + oid: cucsComputeRackUnitMbTempStatsTable + value: cucsComputeRackUnitMbTempStatsRearTemp + num_oid: '.1.3.6.1.4.1.9.9.719.1.9.44.1.21.{{ $index }}' + descr: 'Rack Unit Rear Temperature' + index: 'rear.{{ $index }}' + - + oid: cucsMemoryUnitEnvStatsTable + value: cucsMemoryUnitEnvStatsTemperature + num_oid: '.1.3.6.1.4.1.9.9.719.1.30.12.1.6.{{ $index }}' + warn_limit: 40 + descr: 'Memory {{ $index }} Temperature' + index: 'mem.{{ $index }}' + - + oid: cucsProcessorEnvStatsTable + value: cucsProcessorEnvStatsTemperature + num_oid: '.1.3.6.1.4.1.9.9.719.1.41.2.1.10.{{ $index }}' + warn_limit: 40 + descr: 'CPU {{ $index }} Temperature' + index: 'cpu.{{ $index }}' + state: + data: + - + oid: cucsStorageLocalDiskTable + value: cucsStorageLocalDiskOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.45.4.1.9.{{ $index }}' + descr: 'Physical Drive {{ $cucsStorageLocalDiskRn }}' + index: 'local-disk-operability.{{ $index }}' + group: 'Local Storage' + skip_values: + - + oid: cucsStorageLocalDiskOperability + op: '=' + value: '6' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsStorageLocalLunTable + value: cucsStorageLocalLunOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.45.8.1.9.{{ $index }}' + descr: 'Virtual Drive {{ $cucsStorageLocalLunRn }}' + index: 'virtual-drive-operability.{{ $index }}' + group: 'Local Storage' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsStorageControllerTable + value: cucsStorageControllerOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.45.1.1.7.{{ $index }}' + descr: 'Storage Controller {{ $index }}' + index: 'storage-controller-operability.{{ $index }}' + group: 'Storage Controller' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsStorageFlexFlashControllerTable + value: cucsStorageFlexFlashControllerOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.45.35.1.11.{{ $index }}' + descr: 'Flex Flash Controller {{ $index }}' + index: 'flexflash-controller-operability.{{ $index }}' + group: 'Storage Controller' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsStorageRaidBatteryTable + value: cucsStorageRaidBatteryOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.45.11.1.9.{{ $index }}' + descr: 'RAID Battery {{ $index }}' + index: 'raid-battery-operability.{{ $index }}' + group: 'Storage Controller' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsEquipmentFanTable + value: cucsEquipmentFanOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.15.12.1.10.{{ $index }}' + descr: 'Module {{ $cucsEquipmentFanModule }}/{{ $cucsEquipmentFanRn }}' + index: 'fan-operability.{{ $index }}' + group: 'Fans' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsEquipmentPsuTable + value: cucsEquipmentPsuOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.15.56.1.8.{{ $index }}' + descr: 'Power Supply {{ $index }}' + index: 'power-supply-operability.{{ $index }}' + group: 'Power Supply' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsMemoryUnitTable + value: cucsMemoryUnitOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.30.11.1.14.{{ $index }}' + descr: '{{ $cucsMemoryUnitLocation }}' + index: 'memory-operability.{{ $index }}' + group: 'Memory' + skip_values: + - + oid: cucsMemoryUnitOperability + op: '=' + value: '0' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } + - + oid: cucsProcessorUnitTable + value: cucsProcessorUnitOperability + num_oid: '.1.3.6.1.4.1.9.9.719.1.41.9.1.10.{{ $index }}' + descr: 'Proccessor {{ $cucsProcessorUnitRn }}' + index: 'proccessor-operability.{{ $index }}' + group: 'Proccessor' + skip_values: + - + oid: cucsProcessorUnitPresence + op: '=' + value: '11' + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: operable } + - { value: 2, generic: 2, graph: 0, descr: inoperable } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: poweroff } + - { value: 5, generic: 2, graph: 0, descr: powerproblem } + - { value: 6, generic: 3, graph: 0, descr: removed } + - { value: 7, generic: 2, graph: 0, descr: voltage problem } + - { value: 8, generic: 2, graph: 0, descr: thermal problem } + - { value: 9, generic: 2, graph: 0, descr: performance problem } + - { value: 10, generic: 2, graph: 0, descr: accessibility problem } + - { value: 11, generic: 2, graph: 0, descr: identity Unestablishable } + - { value: 13, generic: 1, graph: 0, descr: disabled } \ No newline at end of file diff --git a/priv/profiles/os_discovery/cips.yaml b/priv/profiles/os_discovery/cips.yaml new file mode 100644 index 00000000..3d8c8037 --- /dev/null +++ b/priv/profiles/os_discovery/cips.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Version (?.*) Platform: (?.*)/' diff --git a/priv/profiles/os_discovery/cirpack.yaml b/priv/profiles/os_discovery/cirpack.yaml new file mode 100644 index 00000000..73b6aeff --- /dev/null +++ b/priv/profiles/os_discovery/cirpack.yaml @@ -0,0 +1,21 @@ +mib: KMIB +modules: + sensors: + state: + data: + - + oid: kDevTable + value: kStatus + num_oid: '.1.3.6.1.4.1.9193.3.1.7.{{ $index }}' + index: 'kKey.{{ $index }}' + descr: '{{ $kKey }}, {{ $kName }}, {{ $kDesc }}' + state_name: Status + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 3, graph: 0, descr: 'starting' } + - { value: 2, generic: 0, graph: 0, descr: 'ok' } + - { value: 3, generic: 3, graph: 0, descr: 'aborting' } + - { value: 4, generic: 1, graph: 0, descr: 'misbehav' } + - { value: 5, generic: 2, graph: 0, descr: 'down' } + - { value: 6, generic: 3, graph: 0, descr: 'nopoll' } + - { value: 7, generic: 3, graph: 0, descr: 'testing' } diff --git a/priv/profiles/os_discovery/ciscoepc.yaml b/priv/profiles/os_discovery/ciscoepc.yaml new file mode 100644 index 00000000..9c40cd69 --- /dev/null +++ b/priv/profiles/os_discovery/ciscoepc.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: SA-HARDWARE-MIB::saHwDescrModel.0 + serial: SA-HARDWARE-MIB::saHwDescrSerialNumber.0 diff --git a/priv/profiles/os_discovery/ciscosat.yaml b/priv/profiles/os_discovery/ciscosat.yaml new file mode 100644 index 00000000..64514804 --- /dev/null +++ b/priv/profiles/os_discovery/ciscosat.yaml @@ -0,0 +1,32 @@ +mib: CISCO-DMN-DSG-TUNING-MIB:CISCO-DMN-DSG-DIAG-MIB +modules: + os: + version: .1.3.6.1.4.1.1429.2.2.5.1.1.1.0 + hardware: .1.3.6.1.4.1.1429.2.2.5.1.1.4.0 + serial: .1.3.6.1.4.1.1429.2.2.5.42.2.1.1.6.1 + sensors: + state: + data: + - + oid: inputStatusTable + value: inputStatusSatLock + num_oid: '.1.3.6.1.4.1.1429.2.2.5.5.3.2.1.3.{{ $index }}' + descr: 'Sat Lock {{ $index }}' + index: 'inputStatusSatLock.{{ $index }}' + state_name: inputStatusSatLock + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 1, generic: 2, graph: 1, descr: 'No Lock' } + - { value: 2, generic: 1, graph: 1, descr: 'Lock - Signal' } + - { value: 3, generic: 0, graph: 1, descr: 'Lock + Signal' } + fanspeed: + options: + # Some Models such as D9854 do not report fanspeed, but respond to OID with 0. + skip_values: 0 + data: + - + oid: diagFanRPMTable + value: diagFanRPMValue + num_oid: '.1.3.6.1.4.1.1429.2.2.5.18.2.2.1.3.{{ $index }}' + descr: 'Fan Speed {{ $index }}' + index: 'diagFanRPMValue.{{ $index }}' diff --git a/priv/profiles/os_discovery/ciscosb.yaml b/priv/profiles/os_discovery/ciscosb.yaml new file mode 100644 index 00000000..625e82f0 --- /dev/null +++ b/priv/profiles/os_discovery/ciscosb.yaml @@ -0,0 +1,103 @@ +mib: CISCOSB-rndMng:CISCOSB-HWENVIROMENT:CISCOSB-POE-MIB +modules: + os: + sysDescr_regex: + - '/(?S.+-\d+) \d/' + - '/(?CBS[^\s]+) /' + hardware: CISCOSB-Physicaldescription-MIB::rlPhdUnitGenParamModelName.1 + serial: CISCOSB-Physicaldescription-MIB::rlPhdUnitGenParamSerialNum.1 + features: CISCOSB-Physicaldescription-MIB::rlPhdUnitGenParamServiceTag.1 + processors: + data: + - + oid: rlCpuUtilDuringLastMinute + num_oid: '.1.3.6.1.4.1.9.6.1.101.1.8.{{ $index }}' + descr: CPU + sensors: + state: + data: + - + oid: rlEnvMonFanState + value: rlEnvMonFanState + num_oid: '.1.3.6.1.4.1.9.6.1.101.83.1.1.1.3.{{ $index }}' + descr: 'FAN {{ $index }} Status' + index: '{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: wrning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notPresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 2 } + skip_values: + - + oid: rlEnvMonFanState + op: '==' + value: 5 + - + oid: rlEnvMonSupplyState + value: rlEnvMonSupplyState + num_oid: '.1.3.6.1.4.1.9.6.1.101.83.1.2.1.3.{{ $index }}' + descr: 'PSU {{ $index }} Status' + index: '{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: wrning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notPresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 2 } + skip_values: + - + oid: rlEnvMonSupplyState + op: '==' + value: 5 +# power: +# data: +# - +# oid: rlPethPsePortOutputPower +# value: rlPethPsePortOutputPower +# num_oid: '.1.3.6.1.4.1.9.6.1.101.108.1.1.5.{{ $index }}' +# index: '{{ $index }}' +# descr: 'POE Usage Port {{ $index }}' +# divisor: 1000 +# high_limit: rlPethPsePortOperPowerLimit + temperature: + data: + - + oid: rlEnvFanDataTemp + value: rlEnvFanDataTemp + num_oid: '.1.3.6.1.4.1.9.6.1.101.83.5.1.1.2.{{ $index }}' + index: '{{ $index }}' + descr: 'FAN {{ $index }} Temperature' +# user_func: fahrenheit_to_celsius + warn_limit: 91 + high_limit: 95 +# true for all switches, got data from cli output "show system sensors" on a SG350-8F8T, +# temperature seems to be the cpu/processing unit temperature, not the fan-in temperature. +# See CLI-output. All other temperatures are not accessable via SNMP (to my research). SG350X-24P and CBS250-4X have higher values + low_limit: 0 # true for CBS250-8T-D and CBS250-8PP-D, all other tolerate -5 + skip_values: + - + oid: rlEnvFanDataTemp + op: '==' + value: 0 +# - +# oid: rlEnvFanDataTemp +# op: '==' +# value: -17.78 # Fahrenheit = 0 + fanspeed: + data: + - + oid: rlEnvFanDataSpeed + value: rlEnvFanDataSpeed + num_oid: '.1.3.6.1.4.1.9.6.1.101.83.5.1.1.3.{{ $index }}' + index: '{{ $index }}' + descr: 'FAN {{ $index }} Speed' + high_limit: 10000 + low_limit: 500 + skip_values: + - + oid: rlEnvFanDataSpeed + op: '==' + value: 0 \ No newline at end of file diff --git a/priv/profiles/os_discovery/ciscosce.yaml b/priv/profiles/os_discovery/ciscosce.yaml new file mode 100644 index 00000000..b79c866a --- /dev/null +++ b/priv/profiles/os_discovery/ciscosce.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Version (?\S*).*HW version: (?.*)/' diff --git a/priv/profiles/os_discovery/ciscosrp.yaml b/priv/profiles/os_discovery/ciscosrp.yaml new file mode 100644 index 00000000..520975a8 --- /dev/null +++ b/priv/profiles/os_discovery/ciscosrp.yaml @@ -0,0 +1,9 @@ +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - ENTITY-MIB::entPhysicalModelName.1001 + - ENTITY-MIB::entPhysicalName.1 + hardware_mib: CISCO-PRODUCTS-MIB + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/ciscowap.yaml b/priv/profiles/os_discovery/ciscowap.yaml new file mode 100644 index 00000000..4c553293 --- /dev/null +++ b/priv/profiles/os_discovery/ciscowap.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?WAP[\w-]+)( \((?WAP[^)]+)\))?, Version (?[\w.()]+)/' diff --git a/priv/profiles/os_discovery/ciscowlc.yaml b/priv/profiles/os_discovery/ciscowlc.yaml new file mode 100644 index 00000000..e23b49dc --- /dev/null +++ b/priv/profiles/os_discovery/ciscowlc.yaml @@ -0,0 +1,20 @@ +mib: AIRESPACE-SWITCHING-MIB +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - ENTITY-MIB::entPhysicalName.1 + hardware_mib: CISCO-PRODUCTS-MIB + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + mempools: + data: + - + free: AIRESPACE-SWITCHING-MIB::agentFreeMemory + total: AIRESPACE-SWITCHING-MIB::agentTotalMemory + precision: 1024 + processors: + data: + - + oid: agentCurrentCPUUtilization + num_oid: '.1.3.6.1.4.1.14179.1.1.5.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/clearpass.yaml b/priv/profiles/os_discovery/clearpass.yaml new file mode 100644 index 00000000..2601d02d --- /dev/null +++ b/priv/profiles/os_discovery/clearpass.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.14823.1.6.1.1.1.1.1.1.0 + serial: .1.3.6.1.4.1.14823.1.6.1.1.1.1.1.2.0 + version: .1.3.6.1.4.1.14823.1.6.1.1.1.1.1.3.0 diff --git a/priv/profiles/os_discovery/clickshare.yaml b/priv/profiles/os_discovery/clickshare.yaml new file mode 100644 index 00000000..685f2f8f --- /dev/null +++ b/priv/profiles/os_discovery/clickshare.yaml @@ -0,0 +1,30 @@ +mib: BARCO-CLICKSHARE-MIB +modules: + os: + serial: BARCO-CLICKSHARE-MIB::diSerialNumber.0 + location: BARCO-CLICKSHARE-MIB::diRoomName.0 + features: BARCO-CLICKSHARE-MIB::diArticleCode.0 + sensors: + fanspeed: + data: + - + oid: sensors + value: sensorCaseFanSpeed + num_oid: '.1.3.6.1.4.1.7312.2468.1.2.1.{{ $index }}' + index: sensorCaseFanSpeed + descr: 'Case' + - + oid: sensors + value: sensorCpuFanSpeed + num_oid: '.1.3.6.1.4.1.7312.2468.1.2.2.{{ $index }}' + index: sensorCpuFanSpeed + descr: 'CPU' + temperature: + data: + - + oid: sensors + value: sensorCpuTemperature + high_limit: sensorCpuTemperatureThreshold + num_oid: '.1.3.6.1.4.1.7312.2468.1.2.3.{{ $index }}' + descr: 'Case' + diff --git a/priv/profiles/os_discovery/cmm.yaml b/priv/profiles/os_discovery/cmm.yaml new file mode 100644 index 00000000..f5872d7c --- /dev/null +++ b/priv/profiles/os_discovery/cmm.yaml @@ -0,0 +1,12 @@ +modules: + sensors: + state: + data: + - + oid: CMM3-MIB::powerStatus + num_oid: '.1.3.6.1.4.1.161.19.3.4.4.1.1.5.{{ $index }}' + index: powerStatus.{{ $index }} + descr: Power Status {{ $index }} + states: + - { value: 0, generic: 2, graph: 1, descr: Power Off } + - { value: 1, generic: 0, graph: 1, descr: Power On } diff --git a/priv/profiles/os_discovery/cmm4.yaml b/priv/profiles/os_discovery/cmm4.yaml new file mode 100644 index 00000000..c0f071dd --- /dev/null +++ b/priv/profiles/os_discovery/cmm4.yaml @@ -0,0 +1,14 @@ +modules: + sensors: + state: + data: + - + oid: CMM4-MIB::cmm4PortPowerStatus + value: cmm4PortPowerStatus + num_oid: '.1.3.6.1.4.1.161.19.3.6.3.1.1.4.{{ $index }}' + index: cmm4PortPowerStatus.{{ $index }} + descr: Power Status {{ $index }} + states: + - { value: -1, generic: 1, graph: 1, descr: POE Fault } + - { value: 0, generic: 2, graph: 1, descr: Power Off } + - { value: 1, generic: 0, graph: 1, descr: Power On } diff --git a/priv/profiles/os_discovery/cms.yaml b/priv/profiles/os_discovery/cms.yaml new file mode 100644 index 00000000..cd778115 --- /dev/null +++ b/priv/profiles/os_discovery/cms.yaml @@ -0,0 +1,90 @@ +modules: + sensors: + state: + data: + - + oid: CORERO-CMS-SYSTEM-STATUS-MIB::protection + num_oid: '.1.3.6.1.4.1.41036.4.1.6.1.{{ $index }}' + descr: Protection Status + group: System Status + states: + - { value: 0, descr: Normal, graph: 0, generic: 0 } + - { value: 1, descr: Warning, graph: 0, generic: 1 } + - { value: 2, descr: Error, graph: 0, generic: 2 } + - + oid: CORERO-CMS-SYSTEM-STATUS-MIB::analytics + num_oid: '.1.3.6.1.4.1.41036.4.1.6.5.{{ $index }}' + descr: Analytics Status + group: System Status + states: + - { value: 0, descr: Normal, graph: 0, generic: 0 } + - { value: 1, descr: Warning, graph: 0, generic: 1 } + - { value: 2, descr: Error, graph: 0, generic: 2 } + - + oid: CORERO-CMS-SEGMENTS-MIB::segmentTable + num_oid: '.1.3.6.1.4.1.41036.4.1.4.1.1.11.{{ $index }}' + index: 'CORERO-CMS-SEGMENTS-MIB::segmentNtdExternalInterfaceStatus.{{ $index }}' + group: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentDevice }} Interface Status" + descr: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentName }} NTD External" + value: CORERO-CMS-SEGMENTS-MIB::segmentNtdExternalInterfaceStatus + states: + - { value: 0, descr: Up, graph: 0, generic: 0 } + - { value: 1, descr: Down, graph: 0, generic: 2 } + - { value: 2, descr: Down - Link State Propagation, graph: 0, generic: 2 } + - { value: 3, descr: Disabled, graph: 0, generic: 0 } + - { value: 4, descr: Unknown, graph: 0, generic: 3 } + - { value: 5, descr: Unused, graph: 0, generic: 0 } + - { value: 6, descr: Partially Down, graph: 0, generic: 1 } + - { value: 7, descr: Down - Remote Fault, graph: 0, generic: 1 } + - { value: 8, descr: Down - Local Fault, graph: 0, generic: 2 } + - + oid: CORERO-CMS-SEGMENTS-MIB::segmentTable + num_oid: '.1.3.6.1.4.1.41036.4.1.4.1.1.14.{{ $index }}' + index: 'CORERO-CMS-SEGMENTS-MIB::segmentNtdInternalInterfaceStatus.{{ $index }}' + group: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentDevice }} Interface Status" + descr: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentName }} NTD Internal" + value: CORERO-CMS-SEGMENTS-MIB::segmentNtdInternalInterfaceStatus + states: + - { value: 0, descr: Up, graph: 0, generic: 0 } + - { value: 1, descr: Down, graph: 0, generic: 2 } + - { value: 2, descr: Down - Link State Propagation, graph: 0, generic: 2 } + - { value: 3, descr: Disabled, graph: 0, generic: 0 } + - { value: 4, descr: Unknown, graph: 0, generic: 3 } + - { value: 5, descr: Unused, graph: 0, generic: 0 } + - { value: 6, descr: Partially Down, graph: 0, generic: 1 } + - { value: 7, descr: Down - Remote Fault, graph: 0, generic: 1 } + - { value: 8, descr: Down - Local Fault, graph: 0, generic: 2 } + - + oid: CORERO-CMS-SEGMENTS-MIB::segmentTable + num_oid: '.1.3.6.1.4.1.41036.4.1.4.1.1.17.{{ $index }}' + index: 'segmentNbaExternalInterfaceStatus.{{ $index }}' + group: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentDevice }} Interface Status" + descr: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentName }} NBA External" + value: CORERO-CMS-SEGMENTS-MIB::segmentNbaExternalInterfaceStatus + states: + - { value: 0, descr: Up, graph: 0, generic: 0 } + - { value: 1, descr: Down, graph: 0, generic: 2 } + - { value: 2, descr: Down - Link State Propagation, graph: 0, generic: 2 } + - { value: 3, descr: Disabled, graph: 0, generic: 0 } + - { value: 4, descr: Unknown, graph: 0, generic: 3 } + - { value: 5, descr: Unused, graph: 0, generic: 0 } + - { value: 6, descr: Partially Down, graph: 0, generic: 1 } + - { value: 7, descr: Down - Remote Fault, graph: 0, generic: 1 } + - { value: 8, descr: Down - Local Fault, graph: 0, generic: 2 } + - + oid: CORERO-CMS-SEGMENTS-MIB::segmentTable + num_oid: '.1.3.6.1.4.1.41036.4.1.4.1.1.20.{{ $index }}' + index: 'CORERO-CMS-SEGMENTS-MIB::segmentNbaInternalInterfaceStatus.{{ $index }}' + group: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentDevice }} Interface Status" + descr: "{{ $CORERO-CMS-SEGMENTS-MIB::segmentName }} NBA Internal" + value: CORERO-CMS-SEGMENTS-MIB::segmentNbaInternalInterfaceStatus + states: + - { value: 0, descr: Up, graph: 0, generic: 0 } + - { value: 1, descr: Down, graph: 0, generic: 2 } + - { value: 2, descr: Down - Link State Propagation, graph: 0, generic: 2 } + - { value: 3, descr: Disabled, graph: 0, generic: 0 } + - { value: 4, descr: Unknown, graph: 0, generic: 3 } + - { value: 5, descr: Unused, graph: 0, generic: 0 } + - { value: 6, descr: Partially Down, graph: 0, generic: 1 } + - { value: 7, descr: Down - Remote Fault, graph: 0, generic: 1 } + - { value: 8, descr: Down - Local Fault, graph: 0, generic: 2 } diff --git a/priv/profiles/os_discovery/cnmatrix.yaml b/priv/profiles/os_discovery/cnmatrix.yaml new file mode 100644 index 00000000..df8b040c --- /dev/null +++ b/priv/profiles/os_discovery/cnmatrix.yaml @@ -0,0 +1,50 @@ +modules: + os: + hardware: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocModelName.0 + version: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocSoftwareRev.0 + serial: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocSerialNum.0 + processors: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentCPUThreshold + num_oid: '.1.3.6.1.4.1.2076.81.1.68.{{ $index }}' + type: cpuUsage + mempools: + data: + - + percent_used: ARICENT-ISS-MIB::issSwitchCurrentRAMUsage + sensors: + temperature: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentTemperature + num_oid: '.1.3.6.1.4.1.2076.81.1.66.{{ $index }}' + index: 'issSwitchCurrentTemperature.{{ $index }}' + descr: 'System Temperature' + voltage: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsVoltage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.4.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsVoltage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Voltage' + divisor: 10 + current: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsAmperage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.3.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsAmperage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Amperage' + divisor: 1000 + power: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsWattage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.5.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsWattage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Wattage' + divisor: 1000 diff --git a/priv/profiles/os_discovery/cnos.yaml b/priv/profiles/os_discovery/cnos.yaml new file mode 100644 index 00000000..1b8fc741 --- /dev/null +++ b/priv/profiles/os_discovery/cnos.yaml @@ -0,0 +1,55 @@ +mib: LENOVO-ENV-MIB +modules: + sensors: + state: + data: + - + oid: lenovoEnvMibPowerSupplyEntry + value: lenovoEnvMibPowerSupplyState + num_oid: '.1.3.6.1.4.1.19046.2.3.11.1.1.1.5.{{ $index }}' + descr: 'PS{{ $lenovoEnvMibPowerSupplyID }}' + index: 'lenovoEnvMibPowerSupplyState.{{ $index }}' + states: + - { value: 0, descr: off, graph: 1, generic: 1 } + - { value: 1, descr: on, graph: 1, generic: 0 } + - { value: 2, descr: absent, graph: 1, generic: 1 } + - { value: 3, descr: outputFault, graph: 1, generic: 2 } + - { value: -1, descr: unknown, graph: 1, generic: 3 } + - + oid: lenovoEnvMibFanEntry + value: lenovoEnvMibFanState + num_oid: '.1.3.6.1.4.1.19046.2.3.11.1.2.1.1.5.{{ $index }}' + descr: lenovoEnvMibFanName + index: 'lenovoEnvMibFanState.{{ $index }}' + states: + - { value: 0, descr: ok, graph: 1, generic: 0 } + - { value: 1, descr: absent, graph: 1, generic: 1 } + - { value: 2, descr: fault, graph: 1, generic: 2 } + - { value: -1, descr: unknown, graph: 1, generic: 3 } + - + oid: lenovoEnvMibTempSensorEntry + value: lenovoEnvMibTempSensorState + num_oid: '.1.3.6.1.4.1.19046.2.3.11.1.3.1.1.5.{{ $index }}' + descr: lenovoEnvMibTempSensorDesc + index: 'lenovoEnvMibTempSensorState.{{ $index }}' + states: + - { value: 0, descr: ok, graph: 1, generic: 0 } + - { value: 1, descr: fault, graph: 1, generic: 2 } + - { value: -1, descr: unknown, graph: 1, generic: 3 } + fanspeed: + data: + - + oid: lenovoEnvMibFanEntry + value: lenovoEnvMibFanSpeedRPM + num_oid: '.1.3.6.1.4.1.19046.2.3.11.1.2.1.8.{{ $index }}' + index: 'lenovoEnvMibFanSpeedRPM.{{ $index }}' + descr: lenovoEnvMibFanName + + temperature: + data: + - + oid: lenovoEnvMibTempSensorEntry + value: lenovoEnvMibTempSensorTemperature + num_oid: '.1.3.6.1.4.1.19046.2.3.11.1.3.1.6.{{ $index }}' + index: 'lenovoEnvTempSensorTemperature.{{ $index }}' + descr: lenovoEnvMibTempSensorName diff --git a/priv/profiles/os_discovery/cnpilote.yaml b/priv/profiles/os_discovery/cnpilote.yaml new file mode 100644 index 00000000..f49aef7e --- /dev/null +++ b/priv/profiles/os_discovery/cnpilote.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: CAMBIUM-MIB::cambiumAPHWType.0 + serial: CAMBIUM-MIB::cambiumAPSerialNum.0 diff --git a/priv/profiles/os_discovery/cnpilotr.yaml b/priv/profiles/os_discovery/cnpilotr.yaml new file mode 100644 index 00000000..f100d7de --- /dev/null +++ b/priv/profiles/os_discovery/cnpilotr.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: CAMBIUM-MIB::productName.0 + serial: CAMBIUM-MIB::serialNumber.0 + version: CAMBIUM-MIB::hardwareVersion.0 diff --git a/priv/profiles/os_discovery/cnwave60.yaml b/priv/profiles/os_discovery/cnwave60.yaml new file mode 100644 index 00000000..8e93da2c --- /dev/null +++ b/priv/profiles/os_discovery/cnwave60.yaml @@ -0,0 +1,45 @@ +mib: TERRAGRAPH-RADIO-MIB +modules: + os: + sysDescr_regex: '/^Cambium cnWave (?.*) (?:Client|Distribution) Node, Version (?.*)$/' + sensors: + dbm: + data: + - + oid: tgRadioInterfacesTable + value: rssi + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.7.{{ $index }}' + descr: '{{ $ifName }} RSSI' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'rssi.{{ $index }}' + - + oid: tgRadioInterfacesTable + value: snr + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.6.{{ $index }}' + descr: '{{ $ifName }} SNR' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'snr.{{ $index }}' + state: + data: + - + oid: tgRadioInterfacesTable + value: mcs + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.5.{{ $index }}' + descr: '{{ $ifName }} MCS' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'mcs.{{ $index }}' + states: + - { value: 0, descr: mcs0, graph: 1, generic: 1 } + - { value: 1, descr: mcs1, graph: 1, generic: 1 } + - { value: 2, descr: mcs2, graph: 1, generic: 1 } + - { value: 3, descr: mcs3, graph: 1, generic: 1 } + - { value: 4, descr: mcs4, graph: 1, generic: 2 } + - { value: 5, descr: mcs5, graph: 1, generic: 2 } + - { value: 6, descr: mcs6, graph: 1, generic: 2 } + - { value: 7, descr: mcs7, graph: 1, generic: 2 } + - { value: 8, descr: mcs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10, graph: 1, generic: 0 } + - { value: 11, descr: mcs10, graph: 1, generic: 0 } + - { value: 12, descr: mcs12, graph: 1, generic: 0 } + - { value: 13, descr: mcs13, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/compas.yaml b/priv/profiles/os_discovery/compas.yaml new file mode 100644 index 00000000..1a02e5db --- /dev/null +++ b/priv/profiles/os_discovery/compas.yaml @@ -0,0 +1,92 @@ +modules: + os: + version: SITE-MONITORING-MIB::siteV1DescControllerSoftwareRevision.0 + + sensors: + voltage: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataDCBusBusVoltage + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.11.{{ $index }}' + descr: 'DC Bus #{{ $index }} Voltage' + + charge: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataBatBatChargeCapacity + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.91.{{ $index }}' + descr: 'Battery #{{ $index }} Charge' + + runtime: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataBatCalculatedAutonomy + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.92.{{ $index }}' + descr: 'Runtime' + + temperature: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataBatBatTemp + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.71.{{ $index }}' + descr: 'Battery #{{ $index }} Temperature' + + current: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataRectifiersRectifiersOutCurrent + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.22.{{ $index }}' + index: 'es1dc1DataRectifiersRectifiersOutCurrent.{{ $index }}' + descr: 'Output #{{ $index }} Current' + high_limit: SITE-MONITORING-MIB::es1dc1DataRectifiersRectifiersOutCurrentMax + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataLoadLoadCurrent + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.52.{{ $index }}' + index: 'es1dc1DataLoadLoadCurrent.{{ $index }}' + descr: 'Load #{{ $index }} Current' + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataBatBatInputCurrent + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.61.{{ $index }}' + index: 'es1dc1DataBatBatInputCurrent.{{ $index }}' + descr: 'Battery #{{ $index }} Input Current' + + state: + data: + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataBatBatTestState + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.72.{{ $index }}' + descr: 'Battery #{{ $index }} Test Status' + state_name: 'es1dc1DataBatBatTestState' + index: 'es1dc1DataBatBatTestState.{{ $index }}' + states: + - { value: 0, descr: 'Never Tested', graph: 0, generic: 0 } + - { value: 1, descr: 'Success', graph: 0, generic: 0 } + - { value: 2, descr: 'On Going', graph: 0, generic: 1 } + - { value: 3, descr: 'Failed: Timeout', graph: 0, generic: 1 } + - { value: 4, descr: 'Failed: Vbus Too Low', graph: 0, generic: 1 } + - { value: 5, descr: 'Failed: Load Too Low', graph: 0, generic: 1 } + - { value: 6, descr: 'Failed: AC Failure', graph: 0, generic: 2 } + - { value: 7, descr: 'Failed: Canceled', graph: 0, generic: 1 } + - { value: 8, descr: 'Failed: LVD Opened', graph: 0, generic: 1 } + - { value: 9, descr: 'Failed: No Battery', graph: 0, generic: 1 } + - + oid: SITE-MONITORING-MIB::es1dc1DataList + value: SITE-MONITORING-MIB::es1dc1DataSystemDCMode + num_oid: '.1.3.6.1.4.1.26854.3.2.1.20.1.20.1.13.3.1.{{ $index }}' + descr: 'System DC #{{ $index }} Mode' + state_name: 'es1dc1DataSystemDCMode' + index: 'es1dc1DataSystemDCMode.{{ $index }}' + states: + - { value: 0, descr: 'Float', graph: 0, generic: 0 } + - { value: 1, descr: 'Equalize', graph: 0, generic: 0 } + - { value: 2, descr: 'Battery Test', graph: 0, generic: 1 } + - { value: 3, descr: 'AC Failure', graph: 0, generic: 2 } + - { value: 5, descr: 'Safe', graph: 0, generic: 0 } diff --git a/priv/profiles/os_discovery/comware.yaml b/priv/profiles/os_discovery/comware.yaml new file mode 100644 index 00000000..55c9e145 --- /dev/null +++ b/priv/profiles/os_discovery/comware.yaml @@ -0,0 +1,44 @@ +mib: HH3C-LswDEVM-MIB:HH3C-ENTITY-EXT-MIB +modules: + os: + sysDescr_regex: '/Version (?[0-9.]+).*(Release|ESS) (?[R0-9P]+).*[\n ](HPE |HPE FF |HP |H3C )(?.*)[\r ][\n ]/' + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + state: + data: + - + oid: hh3cdevMFanStatusTable + value: hh3cDevMFanStatus + num_oid: '.1.3.6.1.4.1.25506.8.35.9.1.1.1.2.{{ $index }}' + descr: 'Fan {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: active, graph: 1, generic: 0 } + - { value: 2, descr: deactive, graph: 1, generic: 2 } + - { value: 3, descr: not-install, graph: 1, generic: 3 } + - { value: 4, descr: unsupport, graph: 1, generic: 1 } + - + oid: hh3cdevMPowerStatusTable + value: hh3cDevMPowerStatus + num_oid: '.1.3.6.1.4.1.25506.8.35.9.1.2.1.2.{{ $index }}' + descr: 'Power Supply {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: active, graph: 1, generic: 0 } + - { value: 2, descr: deactive, graph: 1, generic: 2 } + - { value: 3, descr: not-install, graph: 1, generic: 3 } + - { value: 4, descr: unsupport, graph: 1, generic: 1 } + power: + data: + - + oid: hh3cEntityExtPowerEntry + value: hh3cEntityExtCurrentPower + num_oid: '.1.3.6.1.4.1.25506.2.6.1.3.1.1.3.{{ $index }}' + descr: '{{ $entPhysicalName }} Power Usage' + index: 'hh3cEntityExtCurrentPower.{{ $index }}' + divisor: 1000 + skip_values: 0 diff --git a/priv/profiles/os_discovery/controlbox.yaml b/priv/profiles/os_discovery/controlbox.yaml new file mode 100644 index 00000000..61deac5b --- /dev/null +++ b/priv/profiles/os_discovery/controlbox.yaml @@ -0,0 +1,40 @@ +mib: CONTROLBOX-TH332-MIB +modules: + sensors: + temperature: + data: + - + oid: temperature + #value: sensValue + num_oid: '.1.3.6.1.4.1.17095.2.1.3.{{ $index }}' + descr: Temperature + index: '{{ $index }}' + #divisor: + humidity: + data: + - + oid: humidity + #value: sensValue + num_oid: '.1.3.6.1.4.1.17095.2.1.4.{{ $index }}' + descr: Humidity + index: '{{ $index }}' + #divisor: 10 + pressure: + data: + - + oid: dewpoint + num_oid: '.1.3.6.1.4.1.17095.2.1.5.{{ $index }}' + descr: DewPoint + index: '{{ $index }}' + state: + data: + - + oid: temperatureState + #value: inpAlarmState + num_oid: '.1.3.6.1.4.1.17095.2.1.6.{{ $index }}' + descr: Alarm TemperatureState + index: '{{ $index }}' + state_name: controlbox + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: alarm, graph: 0, value: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/ctcu.yaml b/priv/profiles/os_discovery/ctcu.yaml new file mode 100644 index 00000000..8dc2404c --- /dev/null +++ b/priv/profiles/os_discovery/ctcu.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S+) GigaBit Ethernet Switch(, firmware Ver (?.*))?/' diff --git a/priv/profiles/os_discovery/ctm.yaml b/priv/profiles/os_discovery/ctm.yaml new file mode 100644 index 00000000..a286341a --- /dev/null +++ b/priv/profiles/os_discovery/ctm.yaml @@ -0,0 +1,152 @@ +mib: CTMMIBCUSTOM +modules: + os: + sysDescr_regex: '/(?.*)/' + version: '.1.3.6.1.4.1.25868.1.1.0' + sensors: + state: + data: + - + oid: pwrP + num_oid: '.1.3.6.1.4.1.25868.1.6.{{ $index }}' + descr: 'Master Primary Power' + states: + - { descr: Power OK, graph: 0, value: 1, generic: 0 } + - { descr: Power off or Low, graph: 0, value: 0, generic: 2 } + - + oid: pwrS + num_oid: '.1.3.6.1.4.1.25868.1.7.{{ $index }}' + descr: 'Master Secondary Power' + states: + - { descr: Power OK, graph: 0, value: 1, generic: 0 } + - { descr: Power off or Low, graph: 0, value: 0, generic: 2 } + - + oid: pwrSP + num_oid: '.1.3.6.1.4.1.25868.1.23.{{ $index }}' + descr: 'Slave Primary Power' + states: + - { descr: Power OK, graph: 0, value: 1, generic: 0 } + - { descr: Power off or Low, graph: 0, value: 0, generic: 2 } + - + oid: pwrSS + num_oid: '.1.3.6.1.4.1.25868.1.24.{{ $index }}' + descr: 'Slave Secondary Power' + states: + - { descr: Power OK, graph: 0, value: 1, generic: 0 } + - { descr: Power off or Low, graph: 0, value: 0, generic: 2 } + + voltage: + options: + divisor: 10 + data: + - + oid: voltsM1 + num_oid: '.1.3.6.1.4.1.25868.1.10.{{ $index }}' + descr: 'Master Primary Voltage' + index: portPwrM1.0 + - + oid: voltsM2 + num_oid: '.1.3.6.1.4.1.25868.1.11.{{ $index }}' + descr: 'Master Secondary Voltage' + index: portPwrM2.0 + - + oid: voltsS1 + num_oid: '.1.3.6.1.4.1.25868.1.27.{{ $index }}' + descr: 'Slave Primary Voltage' + index: portPwrS1.0 + - + oid: voltsS2 + num_oid: '.1.3.6.1.4.1.25868.1.28.{{ $index }}' + descr: 'Slave Secondary Voltage' + index: portPwrS2.0 + temperature: + data: + - + oid: tempC + num_oid: '.1.3.6.1.4.1.25868.1.9.{{ $index }}' + index: tempC.0 + descr: 'Temperature' + power: + options: + divisor: 10 + data: + - + oid: portPwrM1 + num_oid: '.1.3.6.1.4.1.25868.1.14.{{ $index }}' + descr: 'Port Power Master 1' + index: portPwrM1.0 + - + oid: portPwrM2 + num_oid: '.1.3.6.1.4.1.25868.1.15.{{ $index }}' + descr: 'Port Power Master 2' + index: portPwrM2.0 + - + oid: portPwrM3 + num_oid: '.1.3.6.1.4.1.25868.1.16.{{ $index }}' + descr: 'Port Power Master 3' + index: portPwrM3.0 + - + oid: portPwrM4 + num_oid: '.1.3.6.1.4.1.25868.1.17.{{ $index }}' + descr: 'Port Power Master 4' + index: portPwrM4.0 + - + oid: portPwrM5 + num_oid: '.1.3.6.1.4.1.25868.1.18.{{ $index }}' + descr: 'Port Power Master 5' + index: portPwrM5.0 + - + oid: portPwrM6 + num_oid: '.1.3.6.1.4.1.25868.1.19.{{ $index }}' + descr: 'Port Power Master 6' + index: portPwrM6.0 + - + oid: portPwrM7 + num_oid: '.1.3.6.1.4.1.25868.1.20.{{ $index }}' + descr: 'Port Power Master 7' + index: portPwrM7.0 + - + oid: portPwrM8 + num_oid: '.1.3.6.1.4.1.25868.1.21.{{ $index }}' + descr: 'Port Power Master 8' + index: portPwrM8.0 + - + oid: portPwrS1 + num_oid: '.1.3.6.1.4.1.25868.1.31.{{ $index }}' + descr: 'Port Power Slave 1' + index: portPwrS1.0 + - + oid: portPwrS2 + num_oid: '.1.3.6.1.4.1.25868.1.32.{{ $index }}' + descr: 'Port Power Slave 2' + index: portPwrS2.0 + - + oid: portPwrS3 + num_oid: '.1.3.6.1.4.1.25868.1.33.{{ $index }}' + descr: 'Port Power Slave 3' + index: portPwrS3.0 + - + oid: portPwrS4 + num_oid: '.1.3.6.1.4.1.25868.1.34.{{ $index }}' + descr: 'Port Power Slave 4' + index: portPwrS4.0 + - + oid: portPwrS5 + num_oid: '.1.3.6.1.4.1.25868.1.35.{{ $index }}' + descr: 'Port Power Slave 5' + index: portPwrS5.0 + - + oid: portPwrS6 + num_oid: '.1.3.6.1.4.1.25868.1.36.{{ $index }}' + descr: 'Port Power Slave 6' + index: portPwrS6.0 + - + oid: portPwrS7 + num_oid: '.1.3.6.1.4.1.25868.1.37.{{ $index }}' + descr: 'Port Power Slave 7' + index: portPwrS7.0 + - + oid: portPwrS8 + num_oid: '.1.3.6.1.4.1.25868.1.38.{{ $index }}' + descr: 'Port Power Slave 8' + index: portPwrS8.0 diff --git a/priv/profiles/os_discovery/cts.yaml b/priv/profiles/os_discovery/cts.yaml new file mode 100644 index 00000000..6cf4fb9f --- /dev/null +++ b/priv/profiles/os_discovery/cts.yaml @@ -0,0 +1,55 @@ +mib: IPS-3110-MIB:IPS-3110-PB-MIB:IPS-3106-SE-PB-MIB:IES-3110-MIB:HES-3112-MIB + +modules: + os: + sysDescr_regex: '/(?(.+)) (?(Version .+))/' + serial: + - IPS-3110-MIB::swhSerialNumber.0 + - IPS-3110-PB-MIB::swhSerialNumber.0 + - IPS-3106-SE-PB-MIB::swhSerialNumber.0 + - IES-3110-MIB::swhSerialNumber.0 + - HES-3112-MIB::cvtSerialNumber.0 + # The following is for IPS-3106 because I cannot find a MIB for it + - .1.3.6.1.4.1.9304.100.3106.1.2.14.0 + sensors: + dbm: + data: + - + oid: IPS-3110-MIB::swhSFPPortStateTable + value: IPS-3110-MIB::swhSFPPortStateTXPower + num_oid: '.1.3.6.1.4.1.9304.100.3110.5.34.2.1.1.11.{{ $index }}' + descr: '{{ IPS-3110-MIB::swhSFPPortStatePortName }} SFP Tx Power' + index: 'ddmTx-{{ $index }}' + group: '{{ IPS-3110-MIB::swhSFPPortStatePortName }}' + - + oid: IPS-3110-MIB::swhSFPPortStateTable + value: IPS-3110-MIB::swhSFPPortStateRXPower + num_oid: '.1.3.6.1.4.1.9304.100.3110.5.34.2.1.1.13.{{ $index }}' + descr: '{{ IPS-3110-MIB::swhSFPPortStatePortName }} SFP Rx Power' + index: 'ddmRx-{{ $index }}' + group: '{{ IPS-3110-MIB::swhSFPPortStatePortName }}' + voltage: + data: + - + oid: IPS-3110-MIB::swhSFPPortStateTable + value: IPS-3110-MIB::swhSFPPortStateVoltage + num_oid: '.1.3.6.1.4.1.9304.100.3110.5.34.2.1.1.7.{{ $index }}' + descr: '{{ IPS-3110-MIB::swhSFPPortStatePortName }} SFP Voltage' + index: 'ddmVolt-{{ $index }}' + group: '{{ IPS-3110-MIB::swhSFPPortStatePortName }}' + temperature: + data: + - + oid: IPS-3110-MIB::swhSFPPortStateTable + value: IPS-3110-MIB::swhSFPPortStateTemperature + num_oid: '.1.3.6.1.4.1.9304.100.3110.5.34.2.1.1.5.{{ $index }}' + descr: '{{ IPS-3110-MIB::swhSFPPortStatePortName }} SFP Temperature' + index: 'ddmTemp-{{ $index }}' + group: '{{ IPS-3110-MIB::swhSFPPortStatePortName }}' + power: + data: + - + oid: IPS-3110-MIB::swhPOETotalPower + num_oid: '.1.3.6.1.4.1.9304.100.3110.5.48.1.{{ $index }}' + descr: 'Total PoE Power Consumption' + diff --git a/priv/profiles/os_discovery/cxc.yaml b/priv/profiles/os_discovery/cxc.yaml new file mode 100644 index 00000000..5305af9f --- /dev/null +++ b/priv/profiles/os_discovery/cxc.yaml @@ -0,0 +1,99 @@ +mib: ALPHA-RECTIFIER-SYS-MIB:ALPHA-RESOURCE-MIB +modules: + os: + serial: ALPHA-RESOURCE-MIB::componentListSerialNumber.1.1 + version: ALPHA-RESOURCE-MIB::controllerInfoSoftwareVersion.0 + hardware: ALPHA-RESOURCE-MIB::controllerInfoHardwareVersion.0 + sensors: + voltage: + data: + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.10.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysSystemVoltage + divisor: 1000 + descr: 'System Voltage' + index: rectSysSystemVoltage.{{ $index }} + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.12.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysBatteryVoltage + divisor: 1000 + descr: 'Battery Voltage' + index: rectSysBatteryVoltage.{{ $index }} + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + value: ALPHA-RECTIFIER-SYS-MIB::rectSysAverageRectifierACInputVoltage + num_oid: '.1.3.6.1.4.1.7309.5.3.1.6.{{ $index }}' + divisor: 1000 + descr: 'AC Input Voltage' + index: rectSysAverageRectifierACInputVoltage.{{ $index }} + current: + data: + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.1.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysTotalOutputCurrent + divisor: 1000 + descr: 'Total Output Current' + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.13.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysBatteryCurrent + index: rectSysBatteryCurrent.{{ $index }} + descr: 'Total Battery Current' + divisor: 1000 + skip_value_lt: 0 + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.11.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysTotalLoadCurrent + index: rectSysTotalLoadCurrent.{{ $index }} + descr: 'Total Load Current' + divisor: 1000 + skip_value_lt: 0 + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.3.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysTotalCapacityInstalledAmps + index: rectSysTotalCapacityInstalledAmps.{{ $index }} + descr: 'Total Capacity Installed' + divisor: 1000 + skip_value_lt: 0 + temperature: + data: + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.14.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysBatteryTemperature + index: rectSysBatteryTemperature.{{ $index }} + divisor: 1000 + descr: 'Battery Temperature' + power: + data: + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.2.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysTotalOutputPower + index: rectSysTotalOutputPower.{{ $index }} + descr: 'Total Output Power' + divisor: 1000 + skip_value_lt: 0 + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.4.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysTotalCapacityInstalledPower + index: rectSysTotalCapacityInstalledPower.{{ $index }} + descr: 'Total Capacity Installed' + divisor: 1000 + skip_value_lt: 0 + runtime: + data: + - + oid: ALPHA-RECTIFIER-SYS-MIB::rectifierSystem + num_oid: '.1.3.6.1.4.1.7309.5.3.1.31.{{ $index }}' + value: ALPHA-RECTIFIER-SYS-MIB::rectSysEstimatedBatteryRuntime + index: rectSysEstimatedBatteryRuntime.{{ $index }} + descr: 'Estimated Battery Runtime' + divisor: 16.66 + skip_value_lt: 0 diff --git a/priv/profiles/os_discovery/cxr-ts.yaml b/priv/profiles/os_discovery/cxr-ts.yaml new file mode 100644 index 00000000..f3578e39 --- /dev/null +++ b/priv/profiles/os_discovery/cxr-ts.yaml @@ -0,0 +1,36 @@ +mib: CXR-TS-MIB +modules: + os: + hardware: CXR-TS-MIB::productName.0 + version: CXR-TS-MIB::version.0 + sensors: + state: + data: + - + oid: system + value: ftpdService + num_oid: '.1.3.6.1.4.1.1425.1040.1.8.{{ $index }}' + descr: FTP Service + state_name: ftpdService + states: + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 1 } + - + oid: system + value: httpdService + num_oid: '.1.3.6.1.4.1.1425.1040.1.9.{{ $index }}' + descr: HTTP Service + state_name: httpdService + states: + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 1 } + - + oid: system + value: telnetdService + num_oid: '.1.3.6.1.4.1.1425.1040.1.10.{{ $index }}' + descr: Telnet Service + state_name: telnetdService + states: + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 1 } + diff --git a/priv/profiles/os_discovery/cxrc.yaml b/priv/profiles/os_discovery/cxrc.yaml new file mode 100644 index 00000000..1c0077a6 --- /dev/null +++ b/priv/profiles/os_discovery/cxrc.yaml @@ -0,0 +1,113 @@ +mib: Argus-MIB +modules: + os: + version: Argus-MIB::dcPwrSysSoftwareVersion.0 + hardware: Argus-MIB::dcPwrSysSystemType.0 + sensors: + charge: + data: + - + oid: dcPwrSysCntrlrIpTable + value: dcPwrSysCntrlrIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.2.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysCntrlrIpStringValue }}' + index: dcPwrSysCntrlrIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysCntrlrIpIndex + op: '!=' + value: 8 + count: + data: + - + oid: dcPwrSysRectIpTable + value: dcPwrSysRectIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.3.2.1.3.{{ $index }}' + descr: '{{ $dcPwrSysRectIpStringValue }}' + index: dcPwrSysRectIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysRectIpIndex + op: 'not_in_array' + value: [4,5] + current: + data: + - + oid: dcPwrSysCntrlrIpTable + value: dcPwrSysCntrlrIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.2.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysCntrlrIpStringValue }}' + index: dcPwrSysCntrlrIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysCntrlrIpIndex + op: 'not_in_array' + value: [2,4] + - + oid: dcPwrSysRectIpTable + value: dcPwrSysRectIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.3.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysRectIpStringValue }}' + index: dcPwrSysRectIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysRectIpIndex + op: '!=' + value: 1 + runtime: + data: + - + oid: dcPwrSysCntrlrIpTable + value: dcPwrSysCntrlrIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.2.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysCntrlrIpStringValue }}' + index: dcPwrSysCntrlrIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysCntrlrIpIndex + op: 'not_in_array' + value: [7] + temperature: + data: + - + oid: dcPwrSysCntrlrIpTable + value: dcPwrSysCntrlrIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.2.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysCntrlrIpStringValue }}' + index: dcPwrSysCntrlrIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysCntrlrIpIndex + op: 'not_in_array' + value: [6] + voltage: + data: + - + oid: dcPwrSysCntrlrIpTable + value: dcPwrSysCntrlrIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.2.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysCntrlrIpStringValue }}' + index: dcPwrSysCntrlrIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysCntrlrIpIndex + op: 'not_in_array' + value: [1, 3, 5, 11] + - + oid: dcPwrSysRectIpTable + value: dcPwrSysRectIpIntegerValue + num_oid: '.1.3.6.1.4.1.7309.4.1.6.3.2.1.3.{{ $index }}' + divisor: 100 + descr: '{{ $dcPwrSysRectIpStringValue }}' + index: dcPwrSysRectIpIndex.{{ $index }} + skip_values: + - + oid: dcPwrSysRectIpIndex + op: 'not_in_array' + value: [2, 3] diff --git a/priv/profiles/os_discovery/cyberoam-utm.yaml b/priv/profiles/os_discovery/cyberoam-utm.yaml new file mode 100644 index 00000000..99b2fe99 --- /dev/null +++ b/priv/profiles/os_discovery/cyberoam-utm.yaml @@ -0,0 +1,25 @@ +mib: CYBEROAM-MIB +modules: + mempools: + data: + - + total: CYBEROAM-MIB::memoryCapacity + percent_used: CYBEROAM-MIB::memoryPercentUsage + precision: 1048576 + index: 0 + - + total: CYBEROAM-MIB::swapCapacity + percent_used: CYBEROAM-MIB::swapPercentUsage + precision: 1048576 + descr: Swap + index: 1 + os: + hardware: CYBEROAM-MIB::applianceModel.0 + version: CYBEROAM-MIB::cyberoamVersion.0 + serial: CYBEROAM-MIB::applianceKey.0 + processors: + data: + - + oid: cpuPercentUsage + num_oid: '.1.3.6.1.4.1.21067.2.1.2.2.1.{{ $index }}' + type: cyberroam-utm diff --git a/priv/profiles/os_discovery/cyberpower.yaml b/priv/profiles/os_discovery/cyberpower.yaml new file mode 100644 index 00000000..924f6fe2 --- /dev/null +++ b/priv/profiles/os_discovery/cyberpower.yaml @@ -0,0 +1,177 @@ +modules: + os: + hardware: + - CPS-MIB::upsBaseIdentModel.0 + - CPS-MIB::ePDUIdentModelNumber.0 + serial: + - CPS-MIB::upsAdvanceIdentSerialNumber.0 + - CPS-MIB::ePDUIdentSerialNumber.0 + version: + - CPS-MIB::upsAdvanceIdentFirmwareRevision.0 + - CPS-MIB::ePDUIdentFirmwareRev.0 + sensors: + state: + data: + - + oid: CPS-MIB::upsBaseBatteryStatus + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.1.1.{{ $index }}' + descr: 'Battery Status' + index: 'upsBaseBatteryStatus.{{ $index }}' + states: + - { value: 1, descr: Known, graph: 1, generic: 3 } + - { value: 2, descr: Normal, graph: 1, generic: 0 } + - { value: 3, descr: Low, graph: 1, generic: 2 } + - + oid: CPS-MIB::upsAdvanceBatteryReplaceIndicator + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.2.5.{{ $index }}' + descr: 'Battery Replace Indicator' + index: 'upsAdvanceBatteryReplaceIndicator.{{ $index }}' + states: + - { value: 1, descr: No, graph: 1, generic: 0 } + - { value: 2, descr: Replace, graph: 1, generic: 2 } + - + oid: CPS-MIB::upsAdvanceInputLineFailCause + num_oid: '.1.3.6.1.4.1.3808.1.1.1.3.2.5.{{ $index }}' + descr: 'Input Line Cause' + index: 'upsAdvanceInputLineFailCause.{{ $index }}' + states: + - { value: 1, descr: 'No Transfer', graph: 1, generic: 0 } + - { value: 2, descr: 'High Voltage', graph: 1, generic: 2 } + - { value: 3, descr: 'Brown Out', graph: 1, generic: 2 } + - { value: 4, descr: 'Self Test', graph: 1, generic: 1 } + - + oid: CPS-MIB::upsAdvanceInputStatus + num_oid: '.1.3.6.1.4.1.3808.1.1.1.3.2.6.{{ $index }}' + descr: 'Input Status' + index: 'upsAdvanceInputStatus.{{ $index }}' + states: + - { value: 1, descr: 'Normal', graph: 1, generic: 0 } + - { value: 2, descr: 'Over Voltage', graph: 1, generic: 2 } + - { value: 3, descr: 'Under Voltage', graph: 1, generic: 2 } + - { value: 4, descr: 'Frequency Failure', graph: 1, generic: 2 } + - { value: 5, descr: 'Blackout', graph: 1, generic: 2 } + - + oid: CPS-MIB::upsBaseOutputStatus + num_oid: '.1.3.6.1.4.1.3808.1.1.1.4.1.1.{{ $index }}' + descr: 'Output Status' + index: 'upsBaseOutputStatus.{{ $index }}' + states: + - { value: 1, descr: 'Unknown', graph: 1, generic: 3 } + - { value: 2, descr: 'Online', graph: 1, generic: 0 } + - { value: 3, descr: 'On Battery', graph: 1, generic: 2 } + - { value: 4, descr: 'On Boost', graph: 1, generic: 1 } + - { value: 5, descr: 'On Sleep', graph: 1, generic: 1 } + - { value: 6, descr: 'Off', graph: 1, generic: 2 } + - { value: 7, descr: 'Rebooting', graph: 1, generic: 1 } + - + oid: CPS-MIB::envirContactTable + num_oid: '.1.3.6.1.4.1.3808.1.1.4.4.2.1.3.{{ $index }}' + value: CPS-MIB::envirContactStatus + descr: CPS-MIB::envirContactName + index: 'envirContactStatus.{{ $index }}' + states: + - { value: 1, descr: 'Contact Normal', graph: 1, generic: 0 } + - { value: 2, descr: 'Contact Abnormal', graph: 1, generic: 2 } + skip_values: + - + oid: CPS-MIB::envirContactName + op: 'regex' + value: "/^Contact#[0-9]+/" + charge: + data: + - + oid: CPS-MIB::upsAdvanceBatteryCapacity + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.2.1.{{ $index }}' + index: 'upsAdvanceBatteryCapacity.{{ $index }}' + descr: 'Battery Capacity' + current: + data: + - + oid: CPS-MIB::upsAdvanceOutputCurrent + num_oid: '.1.3.6.1.4.1.3808.1.1.1.4.2.4.{{ $index }}' + index: 'upsAdvanceOutputCurrent.{{ $index }}' + descr: 'Output' + divisor: 10 + - + oid: CPS-MIB::ePDULoadStatusLoad + num_oid: '.1.3.6.1.4.1.3808.1.1.3.2.3.1.1.2.{{ $index }}' + index: 'ePDULoadStatusVoltage.{{ $index }}' + descr: 'Input' + divisor: 10 + voltage: + data: + - + oid: CPS-MIB::upsAdvanceBatteryVoltage + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.2.2.{{ $index }}' + index: 'upsAdvanceBatteryVoltage.{{ $index }}' + descr: 'Battery Voltage' + divisor: 10 + - + oid: CPS-MIB::upsAdvanceInputLineVoltage + num_oid: '.1.3.6.1.4.1.3808.1.1.1.3.2.1.{{ $index }}' + index: 'upsAdvanceInputLineVoltage.{{ $index }}' + descr: 'Input Line Voltage' + divisor: 10 + - + oid: CPS-MIB::upsAdvanceOutputVoltage + num_oid: '.1.3.6.1.4.1.3808.1.1.1.4.2.1.{{ $index }}' + index: 'upsAdvanceOutputVoltage.{{ $index }}' + descr: 'Output Voltage' + divisor: 10 + - + oid: CPS-MIB::ePDULoadStatusVoltage + num_oid: '.1.3.6.1.4.1.3808.1.1.3.2.3.1.1.6.{{ $index }}' + index: 'ePDULoadStatusVoltage.{{ $index }}' + descr: 'Input' + divisor: 10 + load: + data: + - + oid: CPS-MIB::upsAdvanceOutputLoad + num_oid: '.1.3.6.1.4.1.3808.1.1.1.4.2.3.{{ $index }}' + index: 'upsAdvanceOutputLoad.{{ $index }}' + descr: 'Load' + temperature: + data: + - + oid: CPS-MIB::upsAdvanceBatteryTemperature + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.2.3.{{ $index }}' + index: 'upsAdvanceBatteryTemperature.{{ $index }}' + descr: 'Battery Temperature' + - + oid: CPS-MIB::envirTemperature + num_oid: '.1.3.6.1.4.1.3808.1.1.4.2.1.{{ $index }}' + index: 'envirTemperature.{{ $index }}' + descr: 'Environment Sensor Temperature' + user_func: fahrenheit_to_celsius + divisor: 10 + + runtime: + data: + - + oid: CPS-MIB::upsAdvanceBatteryRunTimeRemaining + num_oid: '.1.3.6.1.4.1.3808.1.1.1.2.2.4.{{ $index }}' + index: 'upsAdvanceBatteryRunTimeRemaining.{{ $index }}' + descr: 'Battery Runtime' + divisor: 6000 + frequency: + data: + - + oid: CPS-MIB::upsAdvanceInputFrequency + num_oid: '.1.3.6.1.4.1.3808.1.1.1.3.2.4.{{ $index }}' + index: 'upsAdvanceInputFrequency.{{ $index }}' + descr: 'Input' + divisor: 10 + - + oid: CPS-MIB::upsAdvanceOutputFrequency + num_oid: '.1.3.6.1.4.1.3808.1.1.1.4.2.2.{{ $index }}' + index: 'upsAdvanceOutputFrequency.{{ $index }}' + descr: 'Output' + divisor: 10 + humidity: + data: + - + oid: CPS-MIB::envirHumidity + num_oid: '.1.3.6.1.4.1.3808.1.1.4.3.1.{{ $index }}' + index: 'envirHumidity.{{ $index }}' + descr: 'Environment Sensor Humidity' diff --git a/priv/profiles/os_discovery/dahua-nvr.yaml b/priv/profiles/os_discovery/dahua-nvr.yaml new file mode 100644 index 00000000..5f9ba089 --- /dev/null +++ b/priv/profiles/os_discovery/dahua-nvr.yaml @@ -0,0 +1,23 @@ +mib: DAHUA-SNMP-MIB +modules: + os: + hardware: DAHUA-SNMP-MIB::deviceType.0 + version: DAHUA-SNMP-MIB::softwareRevision.0 + serial: DAHUA-SNMP-MIB::serialNumber.0 + processors: + data: + - + oid: cpuUsage + num_oid: '.1.3.6.1.4.1.1004849.2.1.3.{{ $index }}' + descr: CPU Usage + sensors: + state: + data: + - + oid: deviceStatus + num_oid: '.1.3.6.1.4.1.1004849.2.1.2.8.{{ $index }}' + descr: 'Device Status' + index: 'deviceStatus.{{ $index }}' + states: + - { value: 0, descr: Bad, graph: 1, generic: 2 } + - { value: 1, descr: Good, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/dantherm-os.yaml b/priv/profiles/os_discovery/dantherm-os.yaml new file mode 100644 index 00000000..67459140 --- /dev/null +++ b/priv/profiles/os_discovery/dantherm-os.yaml @@ -0,0 +1,146 @@ +mib: DANTHERM-COOLING-MIB +modules: + os: + sysName: DANTHERM-COOLING-MIB::hostName.0 + serial: DANTHERM-COOLING-MIB::ccSN.0 + version: DANTHERM-COOLING-MIB::fwVersion.0 + sensors: + temperature: + options: + skip_value_lt: -40 + data: + - + oid: onBoardTempr + index: onBoardTempr.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.1.{{ $index }} + descr: onBoard temperature + - + oid: roomTempr + index: roomTempr.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.2.{{ $index }} + descr: Room temperature + - + oid: hotSpotTempr + index: hotSpotTempr.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.3.{{ $index }} + descr: hotSpot temperature + - + oid: outdoor1Tempr + index: outdoor1Tempr.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.6.{{ $index }} + descr: Outdoor temperature + - + oid: shelter1Setpoint + index: shelter1Setpoint.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.29.{{ $index }} + descr: Shelter 1 temperature setpoint + fanspeed: + data: + - + oid: fan1RPM + index: fan1RPM.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.8.{{ $index }} + descr: Fan 1 RPM + - + oid: fan2RPM + index: fan2RPM.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.9.{{ $index }} + descr: Fan 2 RPM + percent: + data: + - + oid: fan1SpeedPercentage + index: fan1SpeedPercentage.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.10.{{ $index }} + descr: Fan 1 percent utilization + - + oid: fan2SpeedPercentage + index: fan2SpeedPercentage.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.11.{{ $index }} + descr: Fan 2 percent utilization + - + oid: damper1Position + index: damper1Position.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.12.{{ $index }} + descr: Damper 1 position (0% closed / 100% open) + - + oid: damper2Position + index: damper2Position.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.13.{{ $index }} + descr: Damper 2 position (0% closed / 100% open) + voltage: + data: + - + oid: voltage + index: voltage.{{ $index }} + num_oid: .1.3.6.1.4.1.46651.1.1.33.{{ $index }} + descr: System voltage + state: + data: + - + oid: fan1Status + num_oid: .1.3.6.1.4.1.46651.1.1.18.{{ $index }} + descr: Fan 1 status + index: fan1Status.{{ $index }} + state_name: fanStatus_states + states: + - { value: 0, graph: 0, generic: 0, descr: Off } + - { value: 1, graph: 0, generic: 0, descr: On } + - { value: 2, graph: 0, generic: 2, descr: emergency/boost } + - + oid: fan2Status + num_oid: .1.3.6.1.4.1.46651.1.1.19.{{ $index }} + descr: Fan 2 status + index: fan2Status.{{ $index }} + state_name: fanStatus_states + states: + - { value: 0, graph: 0, generic: 0, descr: Off } + - { value: 1, graph: 0, generic: 0, descr: On } + - { value: 2, graph: 0, generic: 2, descr: emergency/boost } + - + oid: damper1Status + num_oid: .1.3.6.1.4.1.46651.1.1.20.{{ $index }} + descr: Damper 1 status + index: damper1Status.{{ $index }} + state_name: damperStatus_states + states: + - { value: 0, graph: 0, generic: 0, descr: closed } + - { value: 1, graph: 0, generic: 0, descr: open } + - { value: 2, graph: 0, generic: 0, descr: dynamic } + - { value: 3, graph: 0, generic: 2, descr: emergency/boost} + - + oid: damper2Status + num_oid: .1.3.6.1.4.1.46651.1.1.21.{{ $index }} + descr: Damper 2 status + index: damper2Status.{{ $index }} + state_name: damperStatus_states + states: + - { value: 0, graph: 0, generic: 0, descr: closed } + - { value: 1, graph: 0, generic: 0, descr: open } + - { value: 2, graph: 0, generic: 0, descr: dynamic } + - { value: 3, graph: 0, generic: 2, descr: emergency/boost} + - + oid: shelter1Status + num_oid: .1.3.6.1.4.1.46651.1.1.25.{{ $index }} + descr: Shelter 1 status + index: shelter1Status.{{ $index }} + state_name: shelterStatus_states + states: + - { value: 0, graph: 0, generic: 0, descr: Inactive state } + - { value: 1, graph: 0, generic: 0, descr: Heating state } + - { value: 2, graph: 0, generic: 0, descr: Re-Cycling state } + - { value: 3, graph: 0, generic: 0, descr: Free Cooling state } + - { value: 4, graph: 0, generic: 0, descr: Active or Aircon Cooling state } + - { value: 5, graph: 0, generic: 2, descr: Emergency state } + - { value: 6, graph: 0, generic: 0, descr: Intermediate state } + - + oid: shelter1Mode + num_oid: .1.3.6.1.4.1.46651.1.1.27.{{ $index }} + descr: Shelter 1 mode + index: shelter1Mode.{{ $index }} + state_name: shelterMode_states + states: + - { value: 0, graph: 0, generic: 0, descr: Free Cooling mode } + - { value: 1, graph: 0, generic: 0, descr: Standard mode } + - { value: 2, graph: 0, generic: 0, descr: Power Save mode } + - { value: 3, graph: 0, generic: 0, descr: Air Condionter mode } diff --git a/priv/profiles/os_discovery/dasan-nos.yaml b/priv/profiles/os_discovery/dasan-nos.yaml new file mode 100644 index 00000000..2ce54ab2 --- /dev/null +++ b/priv/profiles/os_discovery/dasan-nos.yaml @@ -0,0 +1,18 @@ +mib: DASAN-SWITCH-MIB +modules: + mempools: + data: + - + total: DASAN-SWITCH-MIB::dsTotalMem + used: DASAN-SWITCH-MIB::dsUsedMem + free: DASAN-SWITCH-MIB::dsFreeMem + descr: 'Memory Utilization' + os: + sysDescr_regex: '#(?.+) NOS (?[^/]+)#' + serial: DASAN-SWITCH-MIB::dsSerialNumber.0 + version: DASAN-SWITCH-MIB::dsFirmwareVersion.0 + processors: + data: + - + oid: dsCpuLoad5s + num_oid: '.1.3.6.1.4.1.6296.9.1.1.1.8.{{ $index }}' diff --git a/priv/profiles/os_discovery/datacom-dmos.yaml b/priv/profiles/os_discovery/datacom-dmos.yaml new file mode 100644 index 00000000..17b133b2 --- /dev/null +++ b/priv/profiles/os_discovery/datacom-dmos.yaml @@ -0,0 +1,23 @@ +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + sysDescr_regex: '/version(?.*[0-9])/' + + processors: + data: + - + oid: DMOS-SYSMON-MIB::cpuLoadOneMinuteActive + num_oid: '.1.3.6.1.4.1.3709.3.6.4.1.2.1.4.{{ $index }}' + descr: 'Processor' + index: '{{ $subindex0 }}.{{ $subindex1 }}' + mempools: + data: + - + oid: DMOS-SYSMON-MIB::memory + total: DMOS-SYSMON-MIB::memoryOneMinuteTotal + free: DMOS-SYSMON-MIB::memoryOneMinuteFree + used: DMOS-SYSMON-MIB::memoryOneMinuteUsed + precision: 1 + descr: 'Memory' + class: system diff --git a/priv/profiles/os_discovery/datacom.yaml b/priv/profiles/os_discovery/datacom.yaml new file mode 100644 index 00000000..e56c7f71 --- /dev/null +++ b/priv/profiles/os_discovery/datacom.yaml @@ -0,0 +1,52 @@ +mib: DMswitch-MIB +modules: + os: + hardware: DMswitch-MIB::swChassisModel.0 + version: DMswitch-MIB::swFirmwareVer.1 + serial: DMswitch-MIB::swSerialNumber.1 + processors: + data: + - + oid: swCpuUsage + num_oid: '.1.3.6.1.4.1.3709.3.5.201.1.1.10.{{ $index }}' + precision: 100 + sensors: + additional_oids: + data: + - + oid: + - ifDescr + temperature: + data: + - + oid: DMswitch-MIB::switchInfoTable + value: DMswitch-MIB::swTemperature + num_oid: '.1.3.6.1.4.1.3709.3.5.201.1.1.2.1.12.{{ $index }}' + descr: 'Temperature {{ $index }}' + index: 'swTemperature.{{ $index }}' + dbm: + data: + - + oid: DMswitch-MIB::ddTransceiversTable + value: DMswitch-MIB::ddTransceiversRxPower + num_oid: '.1.3.6.1.4.1.3709.3.5.201.1.28.1.1.4.{{ $index }}' + descr: '{{ $ifDescr }} Rx Power' + index: 'rx-{{ $index }}' + high_limit: 2.5 + warn_limit: -3 + low_warn_limit: -12.3 + low_limit: -30 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + - + oid: DMswitch-MIB::ddTransceiversTable + value: DMswitch-MIB::ddTransceiversTxPower + num_oid: '.1.3.6.1.4.1.3709.3.5.201.1.28.1.1.5.{{ $index }}' + descr: '{{ $ifDescr }} Tx Power' + index: 'tx-{{ $index }}' + high_limit: 2.5 + warn_limit: -3 + low_warn_limit: -12.3 + low_limit: -30 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports diff --git a/priv/profiles/os_discovery/datadomain.yaml b/priv/profiles/os_discovery/datadomain.yaml new file mode 100644 index 00000000..75e2ed59 --- /dev/null +++ b/priv/profiles/os_discovery/datadomain.yaml @@ -0,0 +1,20 @@ +modules: + os: + sysDescr_regex: '/Data Domain OS (?.*)/' + hardware: DATA-DOMAIN-MIB::systemHardwareDevice + storage: + data: + - + oid: DATA-DOMAIN-MIB::fileSystemSpaceTable + descr: DATA-DOMAIN-MIB::fileSystemResourceName + type: DATA-DOMAIN-MIB::fileSystemResourceTier + size: DATA-DOMAIN-MIB::fileSystemSpaceSize + free: DATA-DOMAIN-MIB::fileSystemSpaceAvail + used: DATA-DOMAIN-MIB::fileSystemSpaceUsed + used_num_oid: '.1.3.6.1.4.1.19746.1.3.2.1.1.5.{{ $index }}' + units: 1073741824 + skip_values: + - + oid: DATA-DOMAIN-MIB::fileSystemResourceName + op: '!=' + value: '/data: post-comp' diff --git a/priv/profiles/os_discovery/dcn-software.yaml b/priv/profiles/os_discovery/dcn-software.yaml new file mode 100644 index 00000000..321aac0c --- /dev/null +++ b/priv/profiles/os_discovery/dcn-software.yaml @@ -0,0 +1,22 @@ +mib: DCN-MIB +modules: + mempools: + data: + - + total: DCN-MIB::switchMemorySize + used: DCN-MIB::switchMemoryBusy + descr: 'Memory Usage' + os: + hardware: + - DCN-MIB::ntpEntSoftwareName.0 + - DCN-MIB::sysHardwareVersion.0 + version: + - DCN-MIB::ntpEntSoftwareVersion.0 + - DCN-MIB::sysSoftwareVersion.0 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + processors: + data: + - + oid: switchCpuUsage + num_oid: '.1.3.6.1.4.1.6339.100.1.11.10.{{ $index }}' + descr: CPU Usage diff --git a/priv/profiles/os_discovery/ddnos.yaml b/priv/profiles/os_discovery/ddnos.yaml new file mode 100644 index 00000000..985025ed --- /dev/null +++ b/priv/profiles/os_discovery/ddnos.yaml @@ -0,0 +1,44 @@ +mib: SFA-INFO +modules: + sensors: + state: + data: + - + oid: tempTable + value: tempStatus + num_oid: '.1.3.6.1.4.1.6894.2.2.1.4.{{ $index }}' + descr: 'Temperature Sensor {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: warning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - + oid: fanTable + value: fanStatus + num_oid: '.1.3.6.1.4.1.6894.2.4.1.4.{{ $index }}' + descr: 'Fan Sensor {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: healthy, graph: 1, generic: 0 } + - { value: 2, descr: failure, graph: 1, generic: 2 } + - + oid: powerTable + value: powerStatus + num_oid: '.1.3.6.1.4.1.6894.2.6.1.4.{{ $index }}' + descr: 'Power Supply Sensor {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: healthy, graph: 1, generic: 0 } + - { value: 2, descr: failure, graph: 1, generic: 2 } + - + oid: physicalDiskTable + value: physDiskState + num_oid: '.1.3.6.1.4.1.6894.2.9.1.7.{{ $index }}' + descr: 'Disk Sensor {{ $index }}' + index: '{{ $index }}' + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: failed, graph: 1, generic: 2 } + - { value: 3, descr: predictedfailure, graph: 1, generic: 1 } + - { value: 4, descr: unknown, graph: 1, generic: 3 } diff --git a/priv/profiles/os_discovery/deliberant.yaml b/priv/profiles/os_discovery/deliberant.yaml new file mode 100644 index 00000000..824df994 --- /dev/null +++ b/priv/profiles/os_discovery/deliberant.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: .1.3.6.1.4.1.32761.3.1.1.1.3.0 + sysDescr_regex: '/DLB APC (?[^,]+), v(?[\d.-]+\d)/' diff --git a/priv/profiles/os_discovery/dell-compellent.yaml b/priv/profiles/os_discovery/dell-compellent.yaml new file mode 100644 index 00000000..f79b7efc --- /dev/null +++ b/priv/profiles/os_discovery/dell-compellent.yaml @@ -0,0 +1,257 @@ +mib: DELL-STORAGE-SC-MIB +modules: + sensors: + count: + data: + - + oid: scDiskFolderTable + value: scDiskFolderCapcty2 + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.25.1.9.{{ $index }} + descr: 'Disk Folder: {{ $scDiskFolderName }} ({{ $scDiskFolderCapcty2 }}GB)' + index: scDiskFolderCapcty2.{{ $index }} + - + oid: scServerTable + value: scServerPathCount + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.27.1.6.{{ $index }} + descr: 'Path Count: {{ $scServerName }}' + index: scServerPathCount.{{ $index }} + - + oid: scObjCntTable + value: scObjCntDevsInUse + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.31.1.3.{{ $index }} + descr: 'Usage: Devices' + index: scObjCntDevsInUse.{{ $index }} + - + oid: scObjCntTable + value: scObjCntReplays + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.31.1.4.{{ $index }} + descr: 'Usage: Replays' + index: scObjCntReplays.{{ $index }} + - + oid: scObjCntTable + value: scObjCntDisks + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.31.1.5.{{ $index }} + descr: 'Usage: Disks' + index: scObjCntDisks.{{ $index }} + - + oid: scObjCntTable + value: scObjCntServers + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.31.1.6.{{ $index }} + descr: 'Usage: Servers' + index: scObjCntServers.{{ $index }} + - + oid: scObjCntTable + value: scObjCntVolumes + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.31.1.7.{{ $index }} + descr: 'Usage: Volumes' + index: scObjCntVolumes.{{ $index }} + fanspeed: + data: + - + oid: scCtlrFanTable + value: scCtlrFanCurrentRpm + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.16.1.5.{{ $index }} + descr: '{{ $scCtlrFanName }}' + index: scCtlrFanCurrentRpm.{{ $index }} + low_limit: scCtlrFanCritLwrRpm + low_warn_limit: scCtlrFanWarnLwrRpm + warn_limit: scCtlrFanWarnUprRpm + high_limit: scCtlrFanCritUprRpm + state: + data: + - + oid: DELL-STORAGE-SC-MIB::productIDGlobalStatus + num_oid: '.1.3.6.1.4.1.674.11000.2000.500.1.2.6.{{ $index }}' + descr: 'Global Status' + state_name: productIDGlobalStatus + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: noncritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: recoverable, graph: 1, generic: 1 } + - + oid: scDiskTable + value: scDiskStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.14.1.3.{{ $index }} + descr: 'Disk: {{ $scDiskNamePosition }} ({{ $scDiskSize }}GB)' + index: scDiskStatus.{{ $index }} + state_name: scDiskStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scDiskTable + value: scDiskHealthy + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.14.1.5.{{ $index }} + descr: 'Disk Health: {{ $scDiskNamePosition }} ({{ $scDiskSize }}GB)' + index: scDiskHealthy.{{ $index }} + state_name: scDiskHealthy + states: + - { value: 1, descr: healthy, graph: 1, generic: 0 } + - { value: 2, descr: notHealthy, graph: 1, generic: 1 } + - + oid: scEnclTable + value: scEnclStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.15.1.3.{{ $index }} + descr: 'Enclosure: {{ $scEnclNbr }} ({{ $scEnclType }}/{{ $scEnclModel }})' + index: scEnclStatus.{{ $index }} + state_name: scEnclStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scCtlrPowerTable + value: scCtlrPowerStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.17.1.3.{{ $index }} + descr: '{{ $scCtlrPowerName }}' + index: scCtlrPowerStatus.{{ $index }} + state_name: scCtlrPowerStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scEnclFanTable + value: scEnclFanStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.20.1.3.{{ $index }} + descr: 'Fan: {{ $scEnclFanLocation }}' + index: scEnclFanStatus.{{ $index }} + state_name: scEnclFanStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scEnclPowerTable + value: scEnclPowerStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.21.1.3.{{ $index }} + descr: 'PSU: {{ $scEnclPowerPosition }}' + index: scEnclPowerStatus.{{ $index }} + state_name: scEnclPowerStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scEnclIoModTable + value: scEnclIoModStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.22.1.3.{{ $index }} + descr: 'IO Module: {{ $scEnclIoModPosition }}' + index: scEnclIoModStatus.{{ $index }} + state_name: scEnclIoModStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scEnclTempTable + value: scEnclTempStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.23.1.3.{{ $index }} + descr: 'Temp: {{ $scEnclTempLocation }}' + index: scEnclTempStatus.{{ $index }} + state_name: scEnclTempStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scEnclAlarmTable + value: scEnclAlarmStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.24.1.3.{{ $index }} + descr: 'Alarm: {{ $scEnclAlarmName }}' + index: scEnclAlarmStatus.{{ $index }} + state_name: scEnclAlarmStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scDiskFolderTable + value: scDiskFolderStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.25.1.3.{{ $index }} + descr: 'Disk Folder: {{ $scDiskFolderName }}' + index: scDiskFolderStatus.{{ $index }} + state_name: scDiskFolderStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scVolumeTable + value: scVolumeStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.26.1.3.{{ $index }} + descr: 'Volume: {{ $scVolumeName }}' + index: scVolumeStatus.{{ $index }} + state_name: scVolumeStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scServerTable + value: scServerStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.27.1.3.{{ $index }} + descr: 'Server: {{ $scServerName }}' + index: scServerStatus.{{ $index }} + state_name: scServerStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 1 } + - + oid: scServerTable + value: scServerCnctvy + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.27.1.5.{{ $index }} + descr: 'Connectivity: {{ $scServerName }}' + index: scServerCnctvy.{{ $index }} + state_name: scServerCnctvy + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: partial, graph: 1, generic: 1 } + - + oid: scCacheTable + value: scCacheStatus + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.28.1.3.{{ $index }} + descr: 'Battery: {{ $scCacheName }}' + index: scCacheStatus.{{ $index }} + state_name: scCacheStatus + states: + - { value: 0, descr: noBattery, graph: 1, generic: 3 } + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: expirationPending, graph: 1, generic: 1 } + - { value: 3, descr: expired, graph: 1, generic: 2 } + temperature: + data: + - + oid: scCtlrTempTable + value: scCtlrTempCurrentC + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.19.1.5.{{ $index }} + descr: '{{ $scCtlrTempName }}' + index: scCtlrTempCurrentC.{{ $index }} + low_limit: scCtlrTempCritLwrC + low_warn_limit: scCtlrTempWarnLwrC + warn_limit: scCtlrTempWarnUprC + high_limit: scCtlrTempCritUprC + - + oid: scEnclTempTable + value: scEnclTempCurrentC + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.23.1.5.{{ $index }} + descr: '{{ $scEnclTempLocation }}' + index: scEnclTempCurrentC.{{ $index }} + voltage: + data: + - + oid: scCtlrVoltageTable + value: scCtlrVoltageCurrentV + num_oid: .1.3.6.1.4.1.674.11000.2000.500.1.2.18.1.{{ $index }} + descr: '{{ $scCtlrVoltageName }}' + index: scCtlrVoltageCurrentV.{{ $index }} + low_limit: scCtlrVoltageCritLwrV + low_warn_limit: scCtlrVoltageWarnLwrV + warn_limit: scCtlrVoltageWarnUprV + high_limit: scCtlrVoltageCritUprV diff --git a/priv/profiles/os_discovery/dell-laser.yaml b/priv/profiles/os_discovery/dell-laser.yaml new file mode 100644 index 00000000..fcc4c434 --- /dev/null +++ b/priv/profiles/os_discovery/dell-laser.yaml @@ -0,0 +1,7 @@ +modules: + os: + sysDescr_regex: '/(version|Engine) (?[^\s]+)/' + serial: Printer-MIB::prtGeneralSerialNumber.1 + version: + - .1.3.6.1.4.1.674.10898.100.1.1.1.0 + - .1.3.6.1.4.1.641.1.1.1.0 diff --git a/priv/profiles/os_discovery/dell-ome-m.yaml b/priv/profiles/os_discovery/dell-ome-m.yaml new file mode 100644 index 00000000..b75b79ad --- /dev/null +++ b/priv/profiles/os_discovery/dell-ome-m.yaml @@ -0,0 +1,171 @@ +mib: DELL-MM-MIB-SMIv2 +modules: + os: + hardware: DELL-MM-MIB-SMIv2::dmmProductName.0 + version: DELL-MM-MIB-SMIv2::dmmProductVersion.0 + serial: DELL-MM-MIB-SMIv2::dmmChassisServiceTag.0 + sensors: + state: + data: + - + oid: dmmGlobalSystemStatus + value: dmmGlobalSystemStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.2.1.{{ $index }}' + descr: 'Global System Status' + index: 'dmmGlobalSystemStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmIOMCurrStatus + value: dmmIOMCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.1.{{ $index }}' + descr: 'IOM Status' + index: 'dmmIOMCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmRedCurrStatus + value: dmmRedCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.2.{{ $index }}' + descr: 'Redundancy Status' + index: 'dmmRedCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmPowerCurrStatus + value: dmmPowerCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.3.{{ $index }}' + descr: 'Power Status' + index: 'dmmPowerCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmPSUTable + value: dmmPSUCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.4.2.1.8.{{ $index }}' + descr: 'Chassis {{ $dmmPSUChassisIndex }} PS-{{ $dmmPSUIndex }} Status' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmFanCurrStatus + value: dmmFanCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.4.{{ $index }}' + descr: 'FAN Status' + index: 'dmmFanCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmBladeCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.5.{{ $index }}' + descr: 'Blade Status' + index: 'dmmBladeCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmTempCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.6.{{ $index }}' + descr: 'Temperature Status' + index: 'dmmTempCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: dmmMMCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.7.{{ $index }}' + descr: 'MM Status' + index: 'dmmMMCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + temperature: + data: + - + oid: dmmChassisFrontPanelAmbientTemperature + value: dmmChassisFrontPanelAmbientTemperature + num_oid: '.1.3.6.1.4.1.674.10892.6.3.1.8.{{ $index }}' + index: 'dmmChassisFrontPanelAmbientTemperature.{{ $index }}' + descr: 'Chassis {{ $dmmChassisIndex }} Front Panel Temperature' + power: + data: + - + oid: dmmPowerTable + value: dmmPowerIdlePower + num_oid: '.1.3.6.1.4.1.674.10892.6.4.1.1.2.{{ $index }}' + index: 'dmmPowerIdlePower.{{ $index }}' + descr: 'Chassis {{ $dmmPowerChassisIndex }} Idle Power' + - + oid: dmmPowerTable + value: dmmPowerWattsPeakUsage + num_oid: '.1.3.6.1.4.1.674.10892.6.4.1.1.5.{{ $index }}' + index: 'dmmPowerWattsPeakUsage.{{ $index }}' + descr: 'Chassis {{ $dmmPowerChassisIndex }} Peak Usage' + - + oid: dmmPowerTable + value: dmmPowerWattsMinUsage + num_oid: '.1.3.6.1.4.1.674.10892.6.4.1.1.7.{{ $index }}' + index: 'dmmPowerWattsMinUsage.{{ $index }}' + descr: 'Chassis {{ $dmmPowerChassisIndex }} Min Usage' + - + oid: dmmPowerTable + value: dmmPowerWattsReading + num_oid: '.1.3.6.1.4.1.674.10892.6.4.1.1.9.{{ $index }}' + index: 'dmmPowerWattsReading.{{ $index }}' + descr: 'Chassis {{ $dmmPowerChassisIndex }}' + power_consumed: + data: + - + oid: dmmPowerTable + value: dmmPowerKWhCumulative + num_oid: '.1.3.6.1.4.1.674.10892.6.4.1.1.3.{{ $index }}' + index: 'dmmPowerKWhCumulative.{{ $index }}' + descr: 'Chassis {{ $dmmPowerChassisIndex }}' + voltage: + data: + - + oid: dmmPSUTable + value: dmmPSUVoltage + num_oid: '.1.3.6.1.4.1.674.10892.6.4.2.1.7.{{ $index }}' + descr: 'Chassis {{ $dmmPSUChassisIndex }} PS-{{ $dmmPSUIndex }}' diff --git a/priv/profiles/os_discovery/dell-os10.yaml b/priv/profiles/os_discovery/dell-os10.yaml new file mode 100644 index 00000000..50d0cd3c --- /dev/null +++ b/priv/profiles/os_discovery/dell-os10.yaml @@ -0,0 +1,55 @@ +mib: DELLEMC-OS10-CHASSIS-MIB +modules: + os: + hardware: DELLEMC-OS10-CHASSIS-MIB::os10ChassisType.1 + version: DELLEMC-OS10-CHASSIS-MIB::os10ChassisHwRev.1 + serial: DELLEMC-OS10-CHASSIS-MIB::os10ChassisProductSN.1 + features: + - DELLEMC-OS10-CHASSIS-MIB::os10ChassisServiceTag.1 + - DELLEMC-OS10-CHASSIS-MIB::os10ChassisExpServiceCode.1 + features_template: '{{ DELLEMC-OS10-CHASSIS-MIB::os10ChassisServiceTag.1 }}/{{ DELLEMC-OS10-CHASSIS-MIB::os10ChassisExpServiceCode.1 }}' + sensors: + temperature: + data: + - + oid: os10ChassisTable + value: os10ChassisTemp + num_oid: '.1.3.6.1.4.1.674.11000.5000.100.4.1.1.3.1.11.{{ $index }}' + descr: 'Chassis {{ $index }}' + - + oid: os10CardTable + value: os10CardTemp + num_oid: '.1.3.6.1.4.1.674.11000.5000.100.4.1.1.4.1.5.{{ $index }}' + descr: 'Card {{ $index }}' + state: + data: + - + oid: os10FanTable + value: os10FanOperStatus + num_oid: '.1.3.6.1.4.1.674.11000.5000.100.4.1.2.3.1.7.{{ $index }}' + descr: 'Fan {{ $index }}' + group: Fans + state_name: os10FanOperStatus + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: abnormal, graph: 1, generic: 2 } + - + oid: os10FanTrayTable + value: os10FanTrayOperStatus + num_oid: '.1.3.6.1.4.1.674.11000.5000.100.4.1.2.2.1.4.{{ $index }}' + descr: 'Fan Tray {{ $index }}' + group: Fans + state_name: os10FanTrayOperStatus + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: abnormal, graph: 1, generic: 2 } + - + oid: os10PowerSupplyTable + value: os10PowerSupplyOperStatus + num_oid: '.1.3.6.1.4.1.674.11000.5000.100.4.1.2.1.1.4.{{ $index }}' + descr: 'PSU {{ $index }}' + group: PSUs + state_name: os10PowerSupplyOperStatus + states: + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: abnormal, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/dell-powervault.yaml b/priv/profiles/os_discovery/dell-powervault.yaml new file mode 100644 index 00000000..4a7e93af --- /dev/null +++ b/priv/profiles/os_discovery/dell-powervault.yaml @@ -0,0 +1,6 @@ +modules: + os: + serial: .1.3.6.1.4.1.674.10893.2.31.500.1.3.0 + hardware: + - .1.3.6.1.4.1.674.10893.2.31.500.1.5.0 + - .1.3.6.1.3.94.1.6.1.7.80.12.15.255.28.83.96.0.0.0.0.0.0.0.0.0 diff --git a/priv/profiles/os_discovery/dell-rcs.yaml b/priv/profiles/os_discovery/dell-rcs.yaml new file mode 100644 index 00000000..f406a0f7 --- /dev/null +++ b/priv/profiles/os_discovery/dell-rcs.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S+) (?.*)/' diff --git a/priv/profiles/os_discovery/dell-rpdu.yaml b/priv/profiles/os_discovery/dell-rpdu.yaml new file mode 100644 index 00000000..d56ac1a7 --- /dev/null +++ b/priv/profiles/os_discovery/dell-rpdu.yaml @@ -0,0 +1,100 @@ +mib: DellrPDU-MIB +modules: + os: + hardware: + - DellrPDU-MIB::rPDUIdentModelNumberD.1 + - DellrPDU-MIB::rPDUIdentHardwareRevD.1 + hardware_template: '{{ DellrPDU-MIB::rPDUIdentModelNumberD.1 }} {{ DellrPDU-MIB::rPDUIdentHardwareRevD.1 }}' + serial: DellrPDU-MIB::rPDUIdentSerialNumberD.1 + version: DellrPDU-MIB::rPDUIdentFirmwareRevD.1 + sensors: + additional_oids: + data: + - + oid: + - rPDUOutletMeteredStatusName + current: + data: + - + oid: rPDUOutletMeteredStatusCurrent + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.130.2.2.1.6.{{ $index }}' + index: 'rPDUOutletMeteredStatusIndex.{{ $index }}' + descr: Outlet, {{ $rPDUOutletMeteredStatusName }}, Current + - + oid: rPDUPhaseStatusCurrent + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.120.2.1.4.{{ $index }}' + index: 'rPDUPhaseStatusIndex.{{ $index }}' + descr: 'Current, Phase #{{ $index }}' + divisor: 10 + power: + data: + - + oid: rPDUOutletMeteredStatusPower + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.130.2.2.1.8.{{ $index }}' + index: 'rPDUOutletMeteredStatusIndex.{{ $index }}' + descr: Outlet, {{ $rPDUOutletMeteredStatusName }}, Power + - + oid: rPDUPhaseStatusPower + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.120.2.1.6.{{ $index }}' + index: 'rPDUPhaseStatusIndex.{{ $index }}' + descr: 'Power, Phase #{{ $index }}' + multiplier: 10 + voltage: + data: + - + oid: rPDUPhaseStatusVoltage + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.120.2.1.5.{{ $index }}' + index: 'rPDUPhaseStatusIndex.{{ $index }}' + descr: 'Voltage, Phase #{{ $index }}' + state: + data: + - + oid: rPDUOutMeteredStatusLoadState + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.130.2.2.1.11.{{ $index }}' + descr: Outlet, {{ $rPDUOutletMeteredStatusName }}, Load + index: 'rPDUOutletMeteredStatusIndex.{{ $index }}' + state_name: rPDUOutMeteredStatusLoadState + states: + - { descr: lowLoad, graph: 1, value: 1, generic: 0 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: nearOverload, graph: 1, value: 3, generic: 1 } + - { descr: overload, graph: 1, value: 4, generic: 2 } + - + oid: rPDUPhaseStatusTable + state_name: rPDUPhaseStatusLoadState + value: rPDUPhaseStatusLoadState + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.120.2.1.3.{{ $index }}' + index: 'rPDUPhaseStatusLoadState.{{ $index }}' + descr: 'Load State, Phase #{{ $index }}' + states: + - { descr: lowLoad, graph: 1, value: 1, generic: 0 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: nearOverload, graph: 1, value: 3, generic: 1 } + - { descr: overload, graph: 1, value: 4, generic: 2 } + - + oid: rPDUDeviceStatusTable + state_name: rPDUDeviceStatusLoadState + value: rPDUDeviceStatusLoadState + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.110.2.1.6.{{ $index }}' + index: 'rPDUDeviceStatusLoadState.{{ $index }}' + descr: 'Device State' + states: + - { descr: lowLoad, graph: 1, value: 1, generic: 0 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: nearOverload, graph: 1, value: 3, generic: 1 } + - { descr: overload, graph: 1, value: 4, generic: 2 } + temperature: + data: + - + oid: rPDUSensorTempStatusTempC + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.150.2.2.1.5.{{ $index }}' + index: 'rPDUSensorTempStatusTempC.{{ $index }}' + descr: 'Temperature' + divisor: 10 + humidity: + data: + - + oid: rPDUSnsorHumStatRelativeHumdity + num_oid: '.1.3.6.1.4.1.674.10903.200.2.200.150.3.2.1.4.{{ $index }}' + index: 'rPDUSnsorHumStatRelativeHumdity .{{ $index }}' + descr: 'Humidity' diff --git a/priv/profiles/os_discovery/dell-ups.yaml b/priv/profiles/os_discovery/dell-ups.yaml new file mode 100644 index 00000000..febead51 --- /dev/null +++ b/priv/profiles/os_discovery/dell-ups.yaml @@ -0,0 +1,37 @@ +mib: DELL-SNMP-UPS-MIB +modules: + os: + hardware: DELL-SNMP-UPS-MIB::productIDDisplayName.0 + serial: DELL-SNMP-UPS-MIB::physicalIdentSerialNumber.0 + version: + - DELL-SNMP-UPS-MIB::productIDVersion.0 + - DELL-SNMP-UPS-MIB::productIDBuildNumber.0 + version_template: '{{ DELL-SNMP-UPS-MIB::productIDVersion.0 }} {{ DELL-SNMP-UPS-MIB::productIDBuildNumber.0 }}' + sensors: + state: + data: + - + oid: productStatusGlobalStatus + value: productStatusGlobalStatus + num_oid: '.1.3.6.1.4.1.674.10902.2.110.1.{{ $index }}' + descr: 'Current Status' + index: '{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: non-critical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: non-recoverable, graph: 1, generic: 2 } + runtime: + data: + - + oid: physicalBatterySecondsRemaining + num_oid: '.1.3.6.1.4.1.674.10902.2.120.5.3.{{ $index }}' + descr: 'Runtime' + index: '{{ $index }}' + divisor: 60 + high_limit: 3000 + warn_limit: 2000 + low_warn_limit: 10 + low_limit: 5 diff --git a/priv/profiles/os_discovery/deltaorion.yaml b/priv/profiles/os_discovery/deltaorion.yaml new file mode 100644 index 00000000..5dadd32a --- /dev/null +++ b/priv/profiles/os_discovery/deltaorion.yaml @@ -0,0 +1,79 @@ +mib: GLOBAL-REG:ORION-BASE-MIB +modules: + os: + version: ORION-BASE-MIB::dcSoftwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - dcMeasurementTable + - dcMeterPanelEventTable + state: + data: + - + oid: dcMeterPanelEventTable + value: dcMeterPanelEventValue + num_oid: '.1.3.6.1.4.1.20246.2.3.1.1.1.2.10.1.1.3.{{ $index }}' + descr: '{{ $dcMeterPanelEventName }}' + states: + - { value: 1, descr: off, graph: 1, generic: 0 } + - { value: 2, descr: indeterminate, graph: 1, generic: 3 } + - { value: 3, descr: on, graph: 1, generic: 2 } + temperature: + options: + skip_values: + - + oid: dcMeasurementUnit + op: '!=' + value: 7 + - + oid: dcMeasurementValue + op: 'in_array' + value: [0, 2147483647] + data: + - + oid: dcMeasurementTable + value: dcMeasurementValue + num_oid: '.1.3.6.1.4.1.20246.2.3.1.1.1.2.9.1.1.3.{{ $index }}' + descr: '{{ $dcMeasurementName }}' + divisor: 10 + low_limit: 10 + high_limit: 50 + voltage: + options: + skip_values: + - + oid: dcMeasurementUnit + op: '!=' + value: 3 + - + oid: dcMeasurementValue + op: 'in_array' + value: [0, 2147483647] + data: + - + oid: dcMeasurementTable + value: dcMeasurementValue + num_oid: '.1.3.6.1.4.1.20246.2.3.1.1.1.2.9.1.1.3.{{ $index }}' + descr: '{{ $dcMeasurementName }}' + divisor: 100 + low_limit: 46 + high_limit: 56 + current: + options: + skip_values: + - + oid: dcMeasurementUnit + op: '!=' + value: 5 + - + oid: dcMeasurementValue + op: 'in_array' + value: [0, 2147483647] + data: + - + oid: dcMeasurementTable + value: dcMeasurementValue + num_oid: '.1.3.6.1.4.1.20246.2.3.1.1.1.2.9.1.1.3.{{ $index }}' + descr: '{{ $dcMeasurementName }}' diff --git a/priv/profiles/os_discovery/deltaups.yaml b/priv/profiles/os_discovery/deltaups.yaml new file mode 100644 index 00000000..f9f410f5 --- /dev/null +++ b/priv/profiles/os_discovery/deltaups.yaml @@ -0,0 +1,7 @@ +modules: + os: + hardware: + - DeltaUPS-MIB::dupsIdentManufacturer.0 + - DeltaUPS-MIB::dupsIdentModel.0 + hardware_template: '{{ DeltaUPS-MIB::dupsIdentManufacturer.0 }} {{ DeltaUPS-MIB::dupsIdentModel.0 }}' + version: DeltaUPS-MIB::dupsIdentUPSSoftwareVersion.0 diff --git a/priv/profiles/os_discovery/deva-db7001.yaml b/priv/profiles/os_discovery/deva-db7001.yaml new file mode 100644 index 00000000..ed7b5cc7 --- /dev/null +++ b/priv/profiles/os_discovery/deva-db7001.yaml @@ -0,0 +1,98 @@ +modules: + os: + hardware: SNMPv2-MIB::sysName.0 + serial: DB7001-MIB::sernum.0 + location: DB7001-MIB::alias.0 + version: DB7001-MIB::fwrev.0 + sensors: + additional_oids: + data: + - + oid: + - DB7001-MIB::alarmRfMin.0 + - DB7001-MIB::alarmRfMax.0 + - DB7001-MIB::alarmMpxMin.0 + - DB7001-MIB::alarmMpxMax.0 + - DB7001-MIB::alarmPilotMin.0 + - DB7001-MIB::alarmPilotMax.0 + - DB7001-MIB::alarmRdsMin.0 + - DB7001-MIB::alarmRdsMax.0 + - DB7001-MIB::alarmTempMin.0 + - DB7001-MIB::alarmTempMax.0 + - DB7001-MIB::alarmFanMin.0 + - DB7001-MIB::alarmFanMax.0 + frequency: + data: + - oid: DB7001-MIB::mntrFreq.0 + value: DB7001-MIB::mntrFreq + num_oid: '.1.3.6.1.4.1.35833.37.3.1.{{ $index }}' + index: 'mntrFreq.{{ $index }}' + descr: 'Frequency' + multiplier: 1000 + - oid: DB7001-MIB::mntrPilotValueAvr.0 + value: DB7001-MIB::mntrPilotValueAvr + num_oid: '.1.3.6.1.4.1.35833.37.3.15.{{ $index }}' + index: 'mntrPilotValueAvr.{{ $index }}' + descr: 'Pilot Level avg.' + divisor: 256 + high_limit: DB7001-MIB::alarmPilotMax + low_limit: DB7001-MIB::alarmPilotMin + - oid: DB7001-MIB::mntrMpxtValueAvr.0 + value: DB7001-MIB::mntrMpxtValueAvr + num_oid: '.1.3.6.1.4.1.35833.37.3.9.{{ $index }}' + index: 'mntrMpxtValueAvr.{{ $index }}' + descr: 'MPX Level avg.' + divisor: 256 + high_limit: DB7001-MIB::alarmMpxMax + low_limit: DB7001-MIB::alarmMpxMin + dbm: + data: + - oid: DB7001-MIB::mntrRflvlValue.0 + value: DB7001-MIB::mntrRflvlValue + num_oid: '.1.3.6.1.4.1.35833.37.3.2.{{ $index }}' + index: 'mntrTempcValue.{{ $index }}' + descr: 'RF Level (dBµV)' + divisor: 256 + high_limit: DB7001-MIB::alarmRfMax + low_limit: DB7001-MIB::alarmRfMin + temperature: + data: + - oid: DB7001-MIB::mntrTempcValue.0 + value: DB7001-MIB::mntrTempcValue + num_oid: '.1.3.6.1.4.1.35833.37.3.39.{{ $index }}' + index: 'mntrTempcValue.{{ $index }}' + descr: 'Temperature' + divisor: 256 + fanspeed: + data: + - oid: DB7001-MIB::mntrFanrpmValue.0 + value: DB7001-MIB::mntrFanrpmValue + num_oid: '.1.3.6.1.4.1.35833.37.3.42.{{ $index }}' + index: 'mntrFanrpmValue.{{ $index }}' + descr: 'Fan Speed' + high_limit: DB7001-MIB::alarmFanMax + low_limit: DB7001-MIB::alarmFanMin + ber: + data: + - oid: DB7001-MIB::mntrRdsBer.0 + value: DB7001-MIB::mntrRdsBer + num_oid: '.1.3.6.1.4.1.35833.37.3.35.{{ $index }}' + index: 'mntrRdsBer.{{ $index }}' + descr: 'RDS BER' + divisor: 32768 + count: + data: + - oid: DB7001-MIB::mntrRdsErrorBits.0 + value: DB7001-MIB::mntrRdsErrorBits + num_oid: '.1.3.6.1.4.1.35833.37.3.37.{{ $index }}' + index: 'mntrRdsErrorBits.{{ $index }}' + descr: 'RDS Error Bits' + percent: + data: + - oid: DB7001-MIB::mntrMpathValue.0 + value: DB7001-MIB::mntrMpathValue + num_oid: '.1.3.6.1.4.1.35833.37.3.5.{{ $index }}' + index: 'mntrMpathValue.{{ $index }}' + descr: 'Multipath' + divisor: 256 + diff --git a/priv/profiles/os_discovery/develop.yaml b/priv/profiles/os_discovery/develop.yaml new file mode 100644 index 00000000..f0a3535b --- /dev/null +++ b/priv/profiles/os_discovery/develop.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Develop (?.*)/' diff --git a/priv/profiles/os_discovery/dhcpatriot.yaml b/priv/profiles/os_discovery/dhcpatriot.yaml new file mode 100644 index 00000000..34d59be9 --- /dev/null +++ b/priv/profiles/os_discovery/dhcpatriot.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.2021.52.7.4.1.2.5.77.79.68.69.76.1 + serial: .1.3.6.1.4.1.2021.52.8.4.1.2.6.83.69.82.73.65.76.1 + version: .1.3.6.1.4.1.2021.51.11.4.1.2.7.86.69.82.83.73.79.78.1 diff --git a/priv/profiles/os_discovery/digipower.yaml b/priv/profiles/os_discovery/digipower.yaml new file mode 100644 index 00000000..83e8850c --- /dev/null +++ b/priv/profiles/os_discovery/digipower.yaml @@ -0,0 +1,40 @@ +mib: DigiPower-PDU-MIB +modules: + os: + hardware: DigiPower-PDU-MIB::pdu01ModelNo.0 + version: DigiPower-PDU-MIB::devVersion.0 + serial: DigiPower-PDU-MIB::devMAC.0 + sensors: + current: + options: + divisor: 10 + skip_value_lt: 0 + data: + - oid: 'DigiPower-PDU-MIB::pduTable' + value: 'DigiPower-PDU-MIB::pdu01Value' + num_oid: '.1.3.6.1.4.1.17420.1.2.9.1.11.{{ $index }}' + index: 0 + descr: 'Current' + warn_limit: 'DigiPower-PDU-MIB::pdu01Threshold1' + high_limit: 'DigiPower-PDU-MIB::pdu01Threshold2' + voltage: + options: + skip_value_lt: 0 + data: + - oid: 'DigiPower-PDU-MIB::pduTable' + value: 'DigiPower-PDU-MIB::pdu01Voltage' + num_oid: '.1.3.6.1.4.1.17420.1.2.9.1.17.{{ $index }}' + descr: 'Voltage' + index: 0 + power: + options: + divisor: 10 + skip_value_lt: 0 + data: + # multiply current (pdu01Value) by voltage (pdu01Voltage) to get power + - oid: 'DigiPower-PDU-MIB::pduTable' + value: 'DigiPower-PDU-MIB::pdu01Value' + num_oid: '.1.3.6.1.4.1.17420.1.2.9.1.11.{{ $index }}' + index: 0 + descr: 'Power' + multiplier: 'DigiPower-PDU-MIB::pdu01Voltage' diff --git a/priv/profiles/os_discovery/dkt.yaml b/priv/profiles/os_discovery/dkt.yaml new file mode 100644 index 00000000..0fed0f79 --- /dev/null +++ b/priv/profiles/os_discovery/dkt.yaml @@ -0,0 +1,26 @@ +mib: DKT-CATV-MIB:DKT-FE-MIB:DKT-GE-MIB:DKT-GENERIC-MIB:DKT-MIB:DKT-RMON-MIB +modules: + os: + hardware: DKT-GENERIC-MIB::hwVersion.0 + version: DKT-GENERIC-MIB::swVersion.0 + sensors: + state: + data: + - + oid: catvSignalDetect + value: catvSignalDetect + num_oid: '.1.3.6.1.4.1.27304.11.3.{{ $index }}' + descr: 'CATV Signal Detect' + index: '0' + states: + - { descr: Signal Ok, graph: 0, value: 1, generic: 0 } + - { descr: No Signal, graph: 0, value: 0, generic: 3 } + - + oid: catvSwitch + value: catvSwitch + num_oid: '.1.3.6.1.4.1.27304.11.2.{{ $index }}' + descr: 'CATV Module' + index: '0' + states: + - { descr: Powered, graph: 0, value: 1, generic: 0 } + - { descr: Not powered, graph: 0, value: 0, generic: 3 } diff --git a/priv/profiles/os_discovery/dlink-dgs1250.yaml b/priv/profiles/os_discovery/dlink-dgs1250.yaml new file mode 100644 index 00000000..4c9d150a --- /dev/null +++ b/priv/profiles/os_discovery/dlink-dgs1250.yaml @@ -0,0 +1,177 @@ +mib: DLINKSW-ENTITY-EXT-MIB:DLINKSW-DDM-MIB +modules: + os: + hardware: SNMPv2-MIB::sysDescr.0 + version: + - DLINKSW-ENTITY-EXT-MIB::dEntityExtVersionRuntime.1 + serial: + - ENTITY-MIB::entPhysicalSerialNum.1 + processors: + data: + - + oid: DLINKSW-ENTITY-EXT-MIB::dEntityExtCpuUtilTable + value: DLINKSW-ENTITY-EXT-MIB::dEntityExtCpuUtilFiveMinutes + num_oid: '.1.3.6.1.4.1.171.11.165.1000.5.1.7.1.5.{{ $index }}' + skip_values: + - { oid: index, op: '!=', value: '1.1'} + mempools: + data: + - + oid: DLINKSW-ENTITY-EXT-MIB::dEntityExtMemoryUtilTable + total: DLINKSW-ENTITY-EXT-MIB::dEntityExtMemUtilTotal + used: DLINKSW-ENTITY-EXT-MIB::dEntityExtMemUtilUsed + free: DLINKSW-ENTITY-EXT-MIB::dEntityExtMemUtilFree + descr: '{{ $subindex1 }} Memory' + precision: 1024 + sensors: + temperature: + data: + - + oid: dEntityExtEnvTempTable + value: dEntityExtEnvTempCurrent + num_oid: '.1.3.6.1.4.1.171.11.165.1000.5.1.1.1.1.4.{{ $index }}' + descr: dEntityExtEnvTempDescr + index: 'dEntityExtEnvTempCurrent.{{ $index }}' + low_limit: dEntityExtEnvTempThresholdLow + high_limit: dEntityExtEnvTempThresholdHigh + - + oid: dDdmIfInfoTable + value: dDdmIfInfoCurrentTemperature + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.1.{{ $index }}' + descr: 'SFP {{ $index }} Temp' + index: 'dDdmIfInfoCurrentTemperature.{{ $index }}' + low_limit: dDdmIfInfoLowAlarmTemperature + high_limit: dDdmIfInfoHighAlarmTemperature + divisor: 1000 + voltage: + data: + - + oid: dDdmIfInfoTable + value: dDdmIfInfoCurrentVoltage + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.7.{{ $index }}' + descr: 'SFP {{ $index }} Volt' + index: 'dDdmIfInfoCurrentVoltage.{{ $index }}' + low_limit: dDdmIfInfoHighAlarmVoltage + high_limit: dDdmIfInfoLowAlarmVoltage + divisor: 100 + current: + data: + - + oid: dDdmIfInfoTable + value: dDdmIfInfoCurrentBiasCurrent + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.13.{{ $index }}' + descr: 'SFP {{ $index }} Bias' + index: 'dDdmIfInfoCurrentBiasCurrent.{{ $index }}' + low_limit: dDdmIfInfoHighAlarmBiasCurrent + high_limit: dDdmIfInfoLowAlarmBiasCurrent + divisor: 1000 + power: + data: + - + oid: dDdmIfInfoTable + value: dDdmIfInfoCurrentTxPower + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.19.{{ $index }}' + descr: 'SFP {{ $index }} TX Power' + index: ' dDdmIfInfoCurrentTxPower.{{ $index }}' + low_limit: dDdmIfInfoHighAlarmTxPower + high_limit: dDdmIfInfoLowAlarmTxPower + divisor: 1000000 + - + oid: dDdmIfInfoTable + value: dDdmIfInfoCurrentRxPower + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.25.{{ $index }}' + descr: 'SFP {{ $index }} RX Power' + index: ' dDdmIfInfoCurrentRxPower.{{ $index }}' + low_limit: dDdmIfInfoHighAlarmRxPower + high_limit: dDdmIfInfoLowAlarmRxPower + divisor: 1000000 + state: + data: + - + oid: dEntityExtEnvFanTable + value: dEntityExtEnvFanStatus + num_oid: '.1.3.6.1.4.1.171.11.165.1000.5.1.1.2.1.4.{{ $index }}' + descr: dEntityExtEnvFanDescr + index: 'dEntityExtEnvFanStatus.{{ $index }}' + states: + - { descr: Ok, graph: 1, value: 1, generic: 0 } + - { descr: Fault, graph: 1, value: 2, generic: 2 } + - + oid: dEntityExtEnvPowerTable + value: dEntityExtEnvPowerStatus + num_oid: '.1.3.6.1.4.1.171.11.165.1000.5.1.1.3.1.6.{{ $index }}' + descr: dEntityExtEnvPowerDescr + index: 'dEntityExtEnvPowerStatus.{{ $index }}' + states: + - { descr: In Operation, graph: 1, value: 1, generic: 0 } + - { descr: Failed, graph: 1, value: 2, generic: 2 } + - { descr: Empty, graph: 1, value: 3, generic: 3 } + - + oid: dEntityExtEnvTempTable + value: dEntityExtEnvTempStatus + num_oid: '.1.3.6.1.4.1.171.11.165.1000.5.1.1.1.1.7.{{ $index }}' + descr: dEntityExtEnvTempDescr + index: 'dEntityExtEnvTempStatus.{{ $index }}' + states: + - { descr: Ok, graph: 1, value: 1, generic: 0 } + - { descr: Abnormal, graph: 1, value: 2, generic: 2 } + - + oid: dDdmIfInfoTable + value: dDdmIfInfoTemperatureState + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.2.{{ $index }}' + descr: 'SFP {{ $index }} Temp' + index: 'dDdmIfInfoTemperatureState.{{ $index }}' + states: + - { descr: Normal, graph: 1, value: 0, generic: 0 } + - { descr: HiAlarm, graph: 1, value: 1, generic: 2 } + - { descr: HiWarning, graph: 1, value: 2, generic: 1 } + - { descr: LoWarning, graph: 1, value: 3, generic: 1 } + - { descr: LoAlarm, graph: 1, value: 4, generic: 2 } + - + oid: dDdmIfInfoTable + value: dDdmIfInfoVoltageState + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.8.{{ $index }}' + descr: 'SFP {{ $index }} Voltage' + index: 'dDdmIfInfoVoltageState.{{ $index }}' + states: + - { descr: Normal, graph: 1, value: 0, generic: 0 } + - { descr: HiAlarm, graph: 1, value: 1, generic: 2 } + - { descr: HiWarning, graph: 1, value: 2, generic: 1 } + - { descr: LoWarning, graph: 1, value: 3, generic: 1 } + - { descr: LoAlarm, graph: 1, value: 4, generic: 2 } + - + oid: dDdmIfInfoTable + value: dDdmIfInfoBiasCurrentState + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.14.{{ $index }}' + descr: 'SFP {{ $index }} Bias' + index: 'dDdmIfInfoBiasCurrentState.{{ $index }}' + states: + - { descr: Normal, graph: 1, value: 0, generic: 0 } + - { descr: HiAlarm, graph: 1, value: 1, generic: 2 } + - { descr: HiWarning, graph: 1, value: 2, generic: 1 } + - { descr: LoWarning, graph: 1, value: 3, generic: 1 } + - { descr: LoAlarm, graph: 1, value: 4, generic: 2 } + - + oid: dDdmIfInfoTable + value: dDdmIfInfoTxPowerState + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.20.{{ $index }}' + descr: 'SFP {{ $index }} TX Power' + index: 'dDdmIfInfoTxPowerState.{{ $index }}' + states: + - { descr: Normal, graph: 1, value: 0, generic: 0 } + - { descr: HiAlarm, graph: 1, value: 1, generic: 2 } + - { descr: HiWarning, graph: 1, value: 2, generic: 1 } + - { descr: LoWarning, graph: 1, value: 3, generic: 1 } + - { descr: LoAlarm, graph: 1, value: 4, generic: 2 } + - + oid: dDdmIfInfoTable + value: dDdmIfInfoRxPowerState + num_oid: '.1.3.6.1.4.1.171.11.165.1000.72.1.4.1.1.26.{{ $index }}' + descr: 'SFP {{ $index }} RX Power' + index: 'dDdmIfInfoRxPowerState.{{ $index }}' + states: + - { descr: Normal, graph: 1, value: 0, generic: 0 } + - { descr: HiAlarm, graph: 1, value: 1, generic: 2 } + - { descr: HiWarning, graph: 1, value: 2, generic: 1 } + - { descr: LoWarning, graph: 1, value: 3, generic: 1 } + - { descr: LoAlarm, graph: 1, value: 4, generic: 2 } diff --git a/priv/profiles/os_discovery/dlink.yaml b/priv/profiles/os_discovery/dlink.yaml new file mode 100644 index 00000000..b8c27f3c --- /dev/null +++ b/priv/profiles/os_discovery/dlink.yaml @@ -0,0 +1,81 @@ +mib: EQUIPMENT-MIB:DLINKSW-ENTITY-EXT-MIB +modules: + mempools: + data: + - + percent_used: AGENT-GENERAL-MIB::agentDRAMutilization + index: 0 + - + oid: DLINKSW-ENTITY-EXT-MIB::dEntityExtMemoryUtilTable + total: dEntityExtMemUtilTotal + used: dEntityExtMemUtilUsed + free: dEntityExtMemUtilFree + descr: '{{ $subindex1 }} Memory' + snmp_flags: '-OQUs' + + os: + sysDescr_regex: '/(D-Link )?(?\S+) (?[0-9.]+)?/' + version: + - DLINKSW-ENTITY-EXT-MIB::dEntityExtVersionRuntime.1 + - .1.3.6.1.2.1.16.19.2.0 + - .1.3.6.1.4.1.171.12.11.1.9.4.1.11.1 + serial: + - .1.3.6.1.4.1.171.12.11.1.9.4.1.17.1 + - .1.3.6.1.4.1.171.12.1.1.12.0 + processors: + data: + - + oid: AGENT-GENERAL-MIB::agentCPUutilizationIn5sec + value: AGENT-GENERAL-MIB::agentCPUutilizationIn5sec + num_oid: '.1.3.6.1.4.1.171.12.1.1.6.1.{{ $index }}' + - + oid: DLINKSW-ENTITY-EXT-MIB::dEntityExtCpuUtilOneMinute + value: DLINKSW-ENTITY-EXT-MIB::dEntityExtCpuUtilOneMinute + num_oid: '.1.3.6.1.4.1.171.14.5.1.7.1.4.{{ $index }}' + sensors: + temperature: + data: + - + oid: swTemperatureTable + value: swTemperatureCurrent + num_oid: '.1.3.6.1.4.1.171.12.11.1.8.1.2.{{ $index }}' + descr: 'Current Sys Temp {{ $index }}' + index: 'swTemperatureCurrent.{{ $index }}' + - + oid: dEntityExtEnvTempTable + value: dEntityExtEnvTempCurrent + num_oid: '.1.3.6.1.4.1.171.14.5.1.1.1.1.4.{{ $index }}' + descr: $dEntityExtEnvTempDescr + index: 'dEntityExtEnvTempCurrent.{{ $index }}' + low_limit: dEntityExtEnvTempThresholdLow + high_limit: dEntityExtEnvTempThresholdHigh + state: + data: + - + oid: dEntityExtEnvFanTable + value: dEntityExtEnvFanStatus + num_oid: '.1.3.6.1.4.1.171.14.5.1.1.2.1.4.{{ $index }}' + descr: dEntityExtEnvFanDescr + index: 'dEntityExtEnvFanStatus.{{ $index }}' + states: + - { descr: Ok, graph: 1, value: 1, generic: 0 } + - { descr: Fault, graph: 1, value: 2, generic: 2 } + - + oid: dEntityExtEnvPowerTable + value: dEntityExtEnvPowerStatus + num_oid: '.1.3.6.1.4.1.171.14.5.1.1.3.1.6.{{ $index }}' + descr: dEntityExtEnvPowerDescr + index: 'dEntityExtEnvPowerStatus.{{ $index }}' + states: + - { descr: In Operation, graph: 1, value: 1, generic: 0 } + - { descr: Failed, graph: 1, value: 2, generic: 2 } + - { descr: Empty, graph: 1, value: 3, generic: 3 } + - + oid: dEntityExtEnvTempTable + value: dEntityExtEnvTempStatus + num_oid: '.1.3.6.1.4.1.171.14.5.1.1.1.1.7.{{ $index }}' + descr: dEntityExtEnvTempDescr + index: 'dEntityExtEnvTempStatus.{{ $index }}' + states: + - { descr: Ok, graph: 1, value: 1, generic: 0 } + - { descr: Abnormal, graph: 1, value: 2, generic: 2 } diff --git a/priv/profiles/os_discovery/dnos.yaml b/priv/profiles/os_discovery/dnos.yaml new file mode 100644 index 00000000..e63fa3ee --- /dev/null +++ b/priv/profiles/os_discovery/dnos.yaml @@ -0,0 +1,239 @@ +mib: DELL-NETWORKING-CHASSIS-MIB:DELL-NETWORKING-IF-EXTENSION-MIB:DELL-NETWORKING-VIRTUAL-LINK-TRUNK-MIB +modules: + mempools: + additional_oids: + snmp_flags: '-OQUs' + oids: + - DELL-NETWORKING-CHASSIS-MIB::dellNetProcessorTable + data: + - + snmp_flags: '-OQUs' + oid: DELL-NETWORKING-CHASSIS-MIB::dellNetCpuUtilTable + total: dellNetProcessorMemSize + percent_used: dellNetCpuUtilMemUsage + precision: 1048576 + type: dell-net + descr: 'Memory Usage' + + os: + sysDescr_regex: + - '/Software Version: (?\S+)/' + - '/Series: (?\S+)/' + hardware: Dell-Vendor-MIB::productIdentificationDisplayName.0 + features: + - Dell-Vendor-MIB::productIdentificationDescription.0 + - DELL-NETWORKING-CHASSIS-MIB::dellNetStackUnitDescription.1 + version: + - Dell-Vendor-MIB::productIdentificationVersion.0 + - DELL-NETWORKING-CHASSIS-MIB::dellNetStackUnitCodeVersion.1 + serial: + - Dell-Vendor-MIB::productIdentificationServiceTag.1 + - Dell-Vendor-MIB::productIdentificationSerialNumber.0 + - DELL-NETWORKING-CHASSIS-MIB::dellNetStackUnitSerialNumber.1 + processors: + data: + - + snmp_flags: ['-ObsQ'] + oid: dellNetCpuUtilTable + value: dellNetCpuUtil1Min + num_oid: '.1.3.6.1.4.1.6027.3.26.1.4.4.1.4.{{ $index }}' + descr: '1m Utilization' + index: 'dellNetCpuUtil1Min.{{ $index }}' + - + snmp_flags: ['-ObsQ'] + oid: dellNetCpuUtilTable + value: dellNetCpuUtil5Min + num_oid: '.1.3.6.1.4.1.6027.3.26.1.4.4.1.5.{{ $index }}' + descr: '5m Utilization' + index: 'dellNetCpuUtil5Min.{{ $index }}' + sensors: + voltage: + options: + skip_values: 0 + data: + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransVoltage + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.17.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransVoltage.{{ $index }}' + current: + options: + skip_values: 0 + data: + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitBiasCurrentLane1 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.18.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitBiasCurrentLane1.{{ $index }}' + group: Lane 1 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitBiasCurrentLane2 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.19.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitBiasCurrentLane2.{{ $index }}' + group: Lane 2 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitBiasCurrentLane3 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.20.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitBiasCurrentLane3.{{ $index }}' + group: Lane 3 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitBiasCurrentLane4 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.21.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitBiasCurrentLane4.{{ $index }}' + group: Lane 4 + dbm: + options: + skip_values: 0 + data: + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitPowerLane1 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.8.{{ $index }}' + descr: 'Tx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitPowerLane1.{{ $index }}' + group: Lane 1 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransReceivePowerLane1 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.12.{{ $index }}' + descr: 'Rx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransReceivePowerLane1.{{ $index }}' + group: Lane 1 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitPowerLane2 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.9.{{ $index }}' + descr: 'Tx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitPowerLane2.{{ $index }}' + group: Lane 2 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransReceivePowerLane2 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.13.{{ $index }}' + descr: 'Rx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransReceivePowerLane2.{{ $index }}' + group: Lane 2 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitPowerLane3 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.10.{{ $index }}' + descr: 'Tx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitPowerLane3.{{ $index }}' + group: Lane 3 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransReceivePowerLane3 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.14.{{ $index }}' + descr: 'Rx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransReceivePowerLane3.{{ $index }}' + group: Lane 3 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTransmitPowerLane4 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.11.{{ $index }}' + descr: 'Tx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransTransmitPowerLane4.{{ $index }}' + group: Lane 4 + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransReceivePowerLane4 + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.15.{{ $index }}' + descr: 'Rx {{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + index: 'dellNetIfTransReceivePowerLane4.{{ $index }}' + group: Lane 4 + temperature: + options: + skip_values: 0 + data: + - + oid: dellNetStackUnitTable + value: dellNetStackUnitTemp + num_oid: '.1.3.6.1.4.1.6027.3.26.1.3.4.1.13.{{ $index }}' + descr: 'Stack Unit {{ $index }}' + group: Chassis + - + oid: dellNetIfTransceiverDataTable + value: dellNetIfTransTemperature + num_oid: '.1.3.6.1.4.1.6027.3.11.1.3.1.1.16.{{ $index }}' + descr: '{{ $dellNetIfTransPort }} {{ $dellNetIfTransOpticsType }}' + group: Transceivers + state: + data: + - + oid: dellNetFanTrayTable + value: dellNetFanTrayOperStatus + num_oid: '.1.3.6.1.4.1.6027.3.26.1.4.7.1.4.{{ $index }}' + descr: 'Fantray {{ $dellNetFanTrayIndex }}' + group: Fans + state_name: dellNetFanTrayOperStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: absent, graph: 1, generic: 2 } + - + oid: dellNetPowerSupplyTable + value: dellNetPowerSupplyOperStatus + num_oid: '.1.3.6.1.4.1.6027.3.26.1.4.6.1.4.{{ $index }}' + descr: 'PSU {{ $dellNetPowerSupplyIndex }}' + group: PSUs + state_name: dellNetPowerSupplyOperStatus + states: + - { value: 1, descr: up, graph: 1, generic: 0 } + - { value: 2, descr: down, graph: 1, generic: 2 } + - { value: 3, descr: absent, graph: 1, generic: 2 } + - + oid: dellNetVirtualLinkDetailsTable + value: dellNetVLTDetailLocalStatus + num_oid: '.1.3.6.1.4.1.6027.3.17.1.3.1.3.{{ $index }}' + descr: 'Port-channel {{ $dellNetVLTDetailLocalLagID }}' + group: 'VIRTUAL-LINK-TRUNK' + skip_values: + - + oid: dellNetVLTDetailPeerStatus + op: '=' + value: 0 + state_name: dellNetVLTDetailLocalStatus + states: + - { value: 0, descr: down, graph: 1, generic: 2 } + - { value: 1, descr: up, graph: 1, generic: 0 } + - + oid: dellNetVirtualLinkTrunkTable + value: dellNetVLTIclBwStatus + num_oid: '.1.3.6.1.4.1.6027.3.17.1.1.1.20.{{ $index }}' + descr: 'ICL Bandwidth' + group: 'VIRTUAL-LINK-TRUNK' + state_name: dellNetVLTIclBwStatus + states: + - { value: 0, descr: '<80%', graph: 1, generic: 0 } + - { value: 1, descr: '>80%', graph: 1, generic: 1 } + - + oid: dellNetVirtualLinkTrunkTable + value: dellNetVLTIclStatus + num_oid: '.1.3.6.1.4.1.6027.3.17.1.1.1.7.{{ $index }}' + descr: 'Link Status' + group: 'VIRTUAL-LINK-TRUNK' + state_name: dellNetVLTIclStatus + states: + - { value: 0, descr: 'not established', graph: 1, generic: 3 } + - { value: 1, descr: 'up', graph: 1, generic: 0 } + - { value: 2, descr: 'down', graph: 1, generic: 2 } + - { value: 3, descr: 'error', graph: 1, generic: 1 } + - + oid: dellNetVirtualLinkTrunkTable + value: dellNetVLTRole + num_oid: '.1.3.6.1.4.1.6027.3.17.1.1.1.5.{{ $index }}' + descr: 'Role' + group: 'VIRTUAL-LINK-TRUNK' + state_name: dellNetVLTRole + states: + - { value: 0, descr: 'Standalone', graph: 1, generic: 3 } + - { value: 1, descr: 'Primary', graph: 1, generic: 0 } + - { value: 2, descr: 'Secondary', graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/dpi.yaml b/priv/profiles/os_discovery/dpi.yaml new file mode 100644 index 00000000..82224004 --- /dev/null +++ b/priv/profiles/os_discovery/dpi.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S+$)/' diff --git a/priv/profiles/os_discovery/drac.yaml b/priv/profiles/os_discovery/drac.yaml new file mode 100644 index 00000000..e3a529e0 --- /dev/null +++ b/priv/profiles/os_discovery/drac.yaml @@ -0,0 +1,514 @@ +mib: DELL-RAC-MIB:IDRAC-MIB-SMIv2 +modules: + os: + hardware: + - IDRAC-MIB-SMIv2::systemModelName.0 + - DELL-RAC-MIB::drsProductShortName.0 + version: + - IDRAC-MIB-SMIv2::racFirmwareVersion.0 + - DELL-RAC-MIB::drsFirmwareVersion.0 + serial: + - IDRAC-MIB-SMIv2::systemServiceTag.0 + - DELL-RAC-MIB::drsSystemServiceTag.0 + location: IDRAC-MIB-SMIv2::systemDataCenterName.0 + sensors: + fanspeed: + data: + - + oid: IDRAC-MIB-SMIv2::coolingDeviceTable + value: IDRAC-MIB-SMIv2::coolingDeviceReading + num_oid: '.1.3.6.1.4.1.674.10892.5.4.700.12.1.6.{{ $index }}' + descr: IDRAC-MIB-SMIv2::coolingDeviceLocationName + index: '{{ $index }}' + high_limit: IDRAC-MIB-SMIv2::coolingDeviceUpperCriticalThreshold + low_limit: IDRAC-MIB-SMIv2::coolingDeviceLowerCriticalThreshold + # Following can be enabled with new testfiles for Poweredge R640, iDRAC7, Poweredge M1000e + # skip_values: + # - + # oid: IDRAC-MIB-SMIv2::coolingDeviceSubType + # op: 'not_in_array' + # value: [ 3, 5 ] + state: + data: + - + oid: drsGlobalSystemStatus + value: drsGlobalSystemStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.2.1.{{ $index }}' + descr: 'Global System' + index: 'drsGlobalSystemStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: systemStateIDSDMCardUnitStatusCombined + value: systemStateIDSDMCardUnitStatusCombined + num_oid: '.1.3.6.1.4.1.674.10892.5.4.200.10.1.58.{{ $index }}' + descr: 'IDSDM Card Unit Combined' + index: 'systemStateIDSDMCardUnitStatusCombined.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: systemStateIDSDMCardDeviceStatusCombined + value: systemStateIDSDMCardDeviceStatusCombined + num_oid: '.1.3.6.1.4.1.674.10892.5.4.200.10.1.60.{{ $index }}' + descr: 'IDSDM Card Device Combined' + index: 'systemStateIDSDMCardDeviceStatusCombined.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: intrusionStatus + value: intrusionStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.300.70.1.5.{{ $index }}' + descr: 'Intrusion' + index: 'intrusionStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: intrusionReading + value: intrusionReading + num_oid: '.1.3.6.1.4.1.674.10892.5.4.300.70.1.6.{{ $index }}' + descr: 'Intrusion Reading' + index: 'intrusionReading.{{ $index }}' + states: + - { value: 1, descr: chassisNotBreached, graph: 1, generic: 0 } + - { value: 2, descr: chassisBreached, graph: 1, generic: 2 } + - { value: 3, descr: chassisBreachedPrior, graph: 1, generic: 1 } + - { value: 4, descr: chassisBreachSensorFailure, graph: 1, generic: 1 } + - + oid: drsIOMCurrStatus + value: drsIOMCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.2.{{ $index }}' + descr: 'IOM' + index: 'drsIOMCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsKVMCurrStatus + value: DELL-RAC-MIB::drsKVMCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.3.{{ $index }}' + descr: 'KVM' + index: 'drsKVMCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: drsRedCurrStatus + value: drsRedCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.4.{{ $index }}' + descr: 'Redundancy' + index: 'drsRedCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsPowerCurrStatus + value: DELL-RAC-MIB::drsPowerCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.5.{{ $index }}' + descr: 'Power' + index: 'drsPowerCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsFanCurrStatus + value: drsFanCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.6.{{ $index }}' + descr: 'FAN' + index: 'drsFanCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsBladeCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.7.{{ $index }}' + descr: 'Blade' + index: 'drsBladeCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsTempCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.8.{{ $index }}' + descr: 'Temperature' + index: 'drsTempCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::drsCMCCurrStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.9.{{ $index }}' + descr: 'CMC' + index: 'drsCMCCurrStatus.{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 1, generic: 2 } + - + oid: DELL-RAC-MIB::physicalDiskTable + value: DELL-RAC-MIB::physicalDiskState + num_oid: '.1.3.6.1.4.1.674.10892.2.6.1.20.130.4.1.4.{{ $index }}' + descr: '{{ $DELL-RAC-MIB::physicalDiskName }}' + index: '{{ $index }}' + group: 'Storage' + state_name: physicalDiskState + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: ready, graph: 1, generic: 0 } + - { value: 3, descr: online, graph: 1, generic: 0 } + - { value: 4, descr: foreign, graph: 1, generic: 1 } + - { value: 5, descr: offline, graph: 1, generic: 2 } + - { value: 6, descr: blocked, graph: 1, generic: 2} + - { value: 7, descr: failed, graph: 1, generic: 2 } + - { value: 8, descr: nonraid, graph: 1, generic: 0 } + - { value: 9, descr: removed, graph: 1, generic: 2 } + - { value: 10, descr: readonly, graph: 1, generic: 0 } + - + oid: IDRAC-MIB-SMIv2::physicalDiskTable + value: IDRAC-MIB-SMIv2::physicalDiskState + num_oid: '.1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.4.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::physicalDiskName }}' + index: '{{ $index }}' + group: 'Storage' + state_name: physicalDiskState + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: ready, graph: 1, generic: 0 } + - { value: 3, descr: online, graph: 1, generic: 0 } + - { value: 4, descr: foreign, graph: 1, generic: 1 } + - { value: 5, descr: offline, graph: 1, generic: 2 } + - { value: 6, descr: blocked, graph: 1, generic: 2} + - { value: 7, descr: failed, graph: 1, generic: 2 } + - { value: 8, descr: nonraid, graph: 1, generic: 0 } + - { value: 9, descr: removed, graph: 1, generic: 2 } + - { value: 10, descr: readonly, graph: 1, generic: 0 } + - + oid: IDRAC-MIB-SMIv2::virtualDiskTable + value: IDRAC-MIB-SMIv2::virtualDiskState + num_oid: '.1.3.6.1.4.1.674.10892.5.5.1.20.140.1.1.4.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::virtualDiskName }}' + index: '{{ $index }}' + group: 'Storage' + state_name: virtualDiskState + states: + - { value: 1, descr: unknown, graph: 0, generic: 3 } + - { value: 2, descr: online, graph: 0, generic: 0 } + - { value: 3, descr: failed, graph: 0, generic: 2 } + - { value: 4, descr: degraded, graph: 0, generic: 1 } + - + oid: DELL-RAC-MIB::controllerTable + value: DELL-RAC-MIB::controllerComponentStatus + num_oid: '.1.3.6.1.4.1.674.10892.2.6.1.20.130.1.1.38.{{ $index }}' + descr: '{{ $DELL-RAC-MIB::controllerName }} {{ $DELL-RAC-MIB::controllerDisplayName }}' + index: 'controllerComponentStatus.{{ $index }}' + group: 'Storage' + state_name: controllerState + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: nonCritical, graph: 1, generic: 1 } + - { value: 5, descr: critical, graph: 1, generic: 2 } + - { value: 6, descr: nonrecoverable, graph: 1, generic: 2} + - + oid: IDRAC-MIB-SMIv2::controllerTable + value: IDRAC-MIB-SMIv2::controllerComponentStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.5.1.20.130.1.1.38.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::controllerName }} {{ $IDRAC-MIB-SMIv2::controllerDisplayName }}' + index: 'controllerComponentStatus.{{ $index }}' + group: 'Storage' + state_name: controllerState + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCritical, graph: 0, generic: 1 } + - { value: 5, descr: critical, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 0, generic: 2} + - + oid: IDRAC-MIB-SMIv2::processorDeviceTable + value: IDRAC-MIB-SMIv2::processorDeviceStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.1100.30.1.5.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::processorDeviceBrandName }}' + index: '{{ $index }}' + state_name: processorDeviceStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCritical, graph: 0, generic: 1 } + - { value: 5, descr: critical, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 0, generic: 2} + - + oid: IDRAC-MIB-SMIv2::memoryDeviceTable + value: IDRAC-MIB-SMIv2::memoryDeviceStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.1100.50.1.5.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::memoryDeviceLocationName }}' + index: '{{ $index }}' + group: 'Memory' + state_name: memoryDeviceStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCritical, graph: 0, generic: 1 } + - { value: 5, descr: critical, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverable, graph: 0, generic: 2} + - + oid: IDRAC-MIB-SMIv2::voltageProbeTable + value: IDRAC-MIB-SMIv2::voltageProbeStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.20.1.5.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::voltageProbeLocationName }}' + index: '{{ $index }}' + state_name: voltageProbeStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCriticalUpper, graph: 0, generic: 1 } + - { value: 5, descr: criticalUpper, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverableUpper, graph: 0, generic: 2 } + - { value: 7, descr: nonCriticalLower, graph: 0, generic: 1 } + - { value: 8, descr: criticalLower, graph: 0, generic: 2 } + - { value: 9, descr: nonRecoverableLower, graph: 0, generic: 2 } + - { value: 10, descr: failed, graph: 0, generic: 2 } + - + oid: IDRAC-MIB-SMIv2::amperageProbeTable + value: IDRAC-MIB-SMIv2::amperageProbeStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.30.1.5.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::amperageProbeLocationName }}' + index: '{{ $index }}' + state_name: amperageProbeStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCriticalUpper, graph: 0, generic: 1 } + - { value: 5, descr: criticalUpper, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverableUpper, graph: 0, generic: 2 } + - { value: 7, descr: nonCriticalLower, graph: 0, generic: 1 } + - { value: 8, descr: criticalLower, graph: 0, generic: 2 } + - { value: 9, descr: nonRecoverableLower, graph: 0, generic: 2 } + - { value: 10, descr: failed, graph: 0, generic: 2 } + - + oid: IDRAC-MIB-SMIv2::systemBatteryTable + value: IDRAC-MIB-SMIv2::systemBatteryStatus + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.50.1.5.{{ $index }}' + descr: '{{ $IDRAC-MIB-SMIv2::systemBatteryLocationName }}' + index: '{{ $index }}' + state_name: systemBatteryStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: unknown, graph: 0, generic: 3 } + - { value: 3, descr: ok, graph: 0, generic: 0 } + - { value: 4, descr: nonCriticalUpper, graph: 0, generic: 1 } + - { value: 5, descr: criticalUpper, graph: 0, generic: 2 } + - { value: 6, descr: nonRecoverableUpper, graph: 0, generic: 2 } + - { value: 7, descr: nonCriticalLower, graph: 0, generic: 1 } + - { value: 8, descr: criticalLower, graph: 0, generic: 2 } + - { value: 9, descr: nonRecoverableLower, graph: 0, generic: 2 } + - { value: 10, descr: failed, graph: 0, generic: 2 } + - + oid: drsCMCServerTable + value: drsServerMonitoringCapable + num_oid: '.1.3.6.1.4.1.674.10892.2.5.1.1.2.{{ $index }}' + descr: 'Slot {{ $drsServerSlotNumber }} {{ $drsServerModel }}' + index: '{{ $index }}' + state_name: drsServerMonitoringCapable + skip_values: + - + oid: drsServerSlotName + op: '==' + value: 'N/A' + states: + - { value: 1, descr: absent, graph: 1, generic: 3 } + - { value: 2, descr: none, graph: 1, generic: 3 } + - { value: 3, descr: basic, graph: 1, generic: 0 } + - { value: 4, descr: off l, graph: 1, generic: 1 } + temperature: + data: + - + oid: drsChassisFrontPanelAmbientTemperature + value: drsChassisFrontPanelAmbientTemperature + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.10.{{ $index }}' + index: 'drsChassisFrontPanelAmbientTemperature.{{ $index }}' + descr: 'Chassis Front Panel Temperature' + - + oid: drsCMCAmbientTemperature + value: drsCMCAmbientTemperature + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.11.{{ $index }}' + index: 'drsCMCAmbientTemperature.{{ $index }}' + descr: 'CMC Ambient Temperature' + - + oid: drsCMCProcessorTemperature + value: drsCMCProcessorTemperature + num_oid: '.1.3.6.1.4.1.674.10892.2.3.1.12.{{ $index }}' + index: 'drsCMCProcessorTemperature.{{ $index }}' + descr: 'CMC Processor Temperature' + - + oid: temperatureProbeTable + value: temperatureProbeReading + num_oid: '.1.3.6.1.4.1.674.10892.5.4.700.20.1.6.{{ $index }}' + index: '{{ $index }}' + descr: temperatureProbeLocationName + divisor: 10 + high_limit: temperatureProbeUpperCriticalThreshold + warn_limit: temperatureProbeUpperNonCriticalThreshold + low_warn_limit: temperatureProbeLowerNonCriticalThreshold + low_limit: temperatureProbeLowerCriticalThreshold + voltage: + data: + - + oid: drsCMCPSUTable + value: drsPSUVoltsReading + num_oid: '.1.3.6.1.4.1.674.10892.2.4.2.1.5.{{ $index }}' + descr: 'Chassis {{ $drsPSUChassisIndex }} PS-{{ $drsPSUIndex }}' + - + oid: powerSupplyTable + value: powerSupplyCurrentInputVoltage + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.12.1.16.{{ $index }}' + index: 'powerSupplyCurrentInputVoltage.{{ $index }}' + descr: powerSupplyLocationName + high_limit: powerSupplyMaximumInputVoltage + current: + data: + - + oid: drsCMCPowerTable + value: drsAmpsReading + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.14.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }}' + - + oid: drsCMCPSUTable + value: drsPSUAmpsReading + num_oid: '.1.3.6.1.4.1.674.10892.2.4.2.1.6.{{ $index }}' + descr: 'Chassis {{ $drsPSUChassisIndex }} PS-{{ $drsPSUIndex }}' + - + oid: amperageProbeTable + value: amperageProbeReading + divisor: 10 + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.30.1.6.{{ $index }}' + descr: '{{ $amperageProbeLocationName }}' + skip_values: + - + oid: amperageProbeType + op: '!=' + value: 23 + power: + data: + - + oid: drsCMCPowerTable + value: drsWattsReading + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.13.{{ $index }}' + index: 'drsWattsReading.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }}' + - + oid: drsCMCPowerTable + value: drsWattsPeakUsage + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.8.{{ $index }}' + index: 'drsWattsPeakUsage.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }} Peak Usage' + - + oid: drsCMCPowerTable + value: drsPotentialPower + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.2.{{ $index }}' + index: 'drsPotentialPower.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }} Potential Power' + - + oid: drsCMCPowerTable + value: drsIdlePower + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.3.{{ $index }}' + index: 'drsIdlePower.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }} Idle Power' + - + oid: drsCMCPowerTable + value: drsMaxPowerSpecification + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.4.{{ $index }}' + index: 'drsMaxPowerSpecification.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }} Max Power' + - + oid: drsCMCPowerTable + value: drsPowerSurplus + num_oid: '.1.3.6.1.4.1.674.10892.2.4.1.1.5.{{ $index }}' + index: 'drsPowerSurplus.{{ $index }}' + descr: 'Chassis {{ $drsChassisIndex }} Surplus Power' + - + oid: amperageProbeTable + value: amperageProbeReading + num_oid: '.1.3.6.1.4.1.674.10892.5.4.600.30.1.6.{{ $index }}' + descr: '{{ $amperageProbeLocationName }}' + skip_values: + - + oid: amperageProbeType + op: '!=' + value: 26 + percent: + data: + - + oid: IDRAC-MIB-SMIv2::physicalDiskTable + value: IDRAC-MIB-SMIv2::physicalDiskProgress + num_oid: '.1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.51.{{ $index }}' + descr: '{{ IDRAC-MIB-SMIv2::physicalDiskName }} Operation Progress' + index: 'physicalDiskProgress.{{ $index }}' + group: 'Storage' + - + oid: IDRAC-MIB-SMIv2::physicalDiskTable + value: IDRAC-MIB-SMIv2::physicalDiskRemainingRatedWriteEndurance + num_oid: '.1.3.6.1.4.1.674.10892.5.5.1.20.130.4.1.49.{{ $index }}' + descr: '{{ IDRAC-MIB-SMIv2::physicalDiskName }} Remaining Rated Write Endurance' + index: 'physicalDiskRemainingRatedWriteEndurance.{{ $index }}' + group: 'Storage' + skip_values: + - + oid: IDRAC-MIB-SMIv2::physicalDiskRemainingRatedWriteEndurance + op: '=' + value: 255 diff --git a/priv/profiles/os_discovery/dragonfly.yaml b/priv/profiles/os_discovery/dragonfly.yaml new file mode 100644 index 00000000..99b4c47d --- /dev/null +++ b/priv/profiles/os_discovery/dragonfly.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ v(?\S+) .* (?\S+)/' diff --git a/priv/profiles/os_discovery/draytek.yaml b/priv/profiles/os_discovery/draytek.yaml new file mode 100644 index 00000000..f6c44c33 --- /dev/null +++ b/priv/profiles/os_discovery/draytek.yaml @@ -0,0 +1,7 @@ +modules: + os: + sysDescr_regex: '/Router Model: (?[\w ]+), Version: (?[\w\.]+)/' + mempools: + data: + - + percent_used: .1.3.6.1.4.1.7367.3.7.0 diff --git a/priv/profiles/os_discovery/dsm.yaml b/priv/profiles/os_discovery/dsm.yaml new file mode 100644 index 00000000..2337dae9 --- /dev/null +++ b/priv/profiles/os_discovery/dsm.yaml @@ -0,0 +1,144 @@ +mib: SYNOLOGY-SYSTEM-MIB:SYNOLOGY-RAID-MIB:SYNOLOGY-DISK-MIB +modules: + os: + hardware: SYNOLOGY-SYSTEM-MIB::modelName.0 + version: SYNOLOGY-SYSTEM-MIB::version.0 + version_regex: '/(DSM )?(?\S+)/' + serial: SYNOLOGY-SYSTEM-MIB::serialNumber.0 + sensors: + temperature: + data: + - + oid: temperature + num_oid: '.1.3.6.1.4.1.6574.1.2.{{ $index }}' + descr: 'System' + index: '99' + group: 'System' + - + oid: diskTable + value: diskTemperature + num_oid: '.1.3.6.1.4.1.6574.2.1.1.6.{{ $index }}' + descr: '{{ $diskID }} {{ $diskModel }}' + index: '{{ $index }}' + group: 'Disks' + count: + data: + - + oid: diskTable + value: diskBadSector + num_oid: '.1.3.6.1.4.1.6574.2.1.1.9.{{ $index }}' + descr: '{{ $diskID }} {{ $diskModel }}' + index: '{{ $index }}' + group: 'Bad sectors' + state: + data: + - + oid: systemStatus + num_oid: '.1.3.6.1.4.1.6574.1.1.{{ $index }}' + descr: 'System' + index: '{{ $index }}' + group: 'System' + state_name: systemStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Failed' } + - + oid: powerStatus + num_oid: '.1.3.6.1.4.1.6574.1.3.{{ $index }}' + descr: 'Power' + index: '{{ $index }}' + group: 'System' + state_name: powerStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Failed' } + - + oid: systemFanStatus + num_oid: '.1.3.6.1.4.1.6574.1.4.1.{{ $index }}' + descr: 'FAN - System' + index: '{{ $index }}' + group: 'System' + state_name: systemFanStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Failed' } + - + oid: cpuFanStatus + num_oid: '.1.3.6.1.4.1.6574.1.4.2.{{ $index }}' + descr: 'FAN - CPU' + index: '{{ $index }}' + group: 'System' + state_name: cpuFanStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Failed' } + - + oid: upgradeAvailable + num_oid: '.1.3.6.1.4.1.6574.1.5.4.{{ $index }}' + descr: 'Upgrade Availability' + index: '{{ $index }}' + group: 'System' + state_name: upgradeAvailableState + states: + - { value: 1, generic: 1, graph: 0, descr: 'Available' } + - { value: 2, generic: 0, graph: 0, descr: 'Unavailable' } + - { value: 3, generic: 3, graph: 0, descr: 'Connecting' } + - { value: 4, generic: 3, graph: 0, descr: 'Disconnected' } + - { value: 5, generic: 3, graph: 0, descr: 'Others' } + - + oid: raidTable + value: raidStatus + num_oid: '.1.3.6.1.4.1.6574.3.1.1.3.{{ $index }}' + descr: '{{ $raidName }}' + index: '{{ $index }}' + group: 'RAIDs' + state_name: raidStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 1, graph: 0, descr: 'Repairing' } + - { value: 3, generic: 1, graph: 0, descr: 'Migrating' } + - { value: 4, generic: 1, graph: 0, descr: 'Expanding' } + - { value: 5, generic: 1, graph: 0, descr: 'Deleting' } + - { value: 6, generic: 1, graph: 0, descr: 'Creating' } + - { value: 7, generic: 1, graph: 0, descr: 'RaidSyncing' } + - { value: 8, generic: 1, graph: 0, descr: 'RaidParityChecking' } + - { value: 9, generic: 1, graph: 0, descr: 'RaidAssembling' } + - { value: 10, generic: 1, graph: 0, descr: 'Canceling' } + - { value: 11, generic: 2, graph: 0, descr: 'Degrade' } + - { value: 12, generic: 2, graph: 0, descr: 'Crashed' } + - { value: 13, generic: 1, graph: 0, descr: 'DataScrubbing' } + - { value: 14, generic: 1, graph: 0, descr: 'RaidDeploying' } + - { value: 15, generic: 1, graph: 0, descr: 'RaidUnDeploying' } + - { value: 16, generic: 1, graph: 0, descr: 'RaidMountCache' } + - { value: 17, generic: 1, graph: 0, descr: 'RaidUnmountCache' } + - { value: 18, generic: 1, graph: 0, descr: 'RaidExpandingUnfinishedSHR' } + - { value: 19, generic: 1, graph: 0, descr: 'RaidConvertSHRToPool' } + - { value: 20, generic: 1, graph: 0, descr: 'RaidMigrateSHR1ToSHR2' } + - { value: 21, generic: 3, graph: 0, descr: 'RaidUnknownStatus' } + - + oid: diskTable + value: diskStatus + num_oid: '.1.3.6.1.4.1.6574.2.1.1.5.{{ $index }}' + descr: '{{ $diskID }} {{ $diskModel }}' + index: '{{ $index }}' + group: 'Disks' + state_name: diskStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 1, graph: 0, descr: 'Initialized' } + - { value: 3, generic: 1, graph: 0, descr: 'NotInitialized' } + - { value: 4, generic: 2, graph: 0, descr: 'SystemPartitionFailed' } + - { value: 5, generic: 2, graph: 0, descr: 'Crashed' } + - + oid: diskTable + value: diskHealthStatus + num_oid: '.1.3.6.1.4.1.6574.2.1.1.13.{{ $index }}' + descr: '{{ $diskID }} {{ $diskModel }}' + index: '{{ $index }}' + group: 'Disk Health' + state_name: diskHealthStatusState + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 1, graph: 0, descr: 'Warning' } + - { value: 3, generic: 2, graph: 0, descr: 'Critical' } + - { value: 4, generic: 2, graph: 0, descr: 'Failing' } diff --git a/priv/profiles/os_discovery/e3meter.yaml b/priv/profiles/os_discovery/e3meter.yaml new file mode 100644 index 00000000..f2208cd2 --- /dev/null +++ b/priv/profiles/os_discovery/e3meter.yaml @@ -0,0 +1,84 @@ +mib: NETTRACK-E3METER-SNMP-MIB +modules: + os: + version: NETTRACK-E3METER-CTR-SNMP-MIB::e3ConcentratorFWVersion + sensors: + additional_oids: + data: + - + oid: + - e3IpmLabel + temperature: + data: + - + oid: e3IpmSensorEntry + value: e3IpmSensorTemperatureCelsius + num_oid: '.1.3.6.1.4.1.21695.1.10.7.3.1.4.{{ $index }}' + descr: 'Temperature {{ $e3IpmSensorVersion }}' + index: '{{ $index }}' + divisor: 10 + skip_values: + - + oid: e3IpmSensorType + op: '!=' + value: '1' + - + oid: e3IpmSensorTemperatureCelsius + op: '=' + value: '0' + frequency: + data: + - + oid: e3IpmMeterEntry + value: e3IpmFrequency + num_oid: '.1.3.6.1.4.1.21695.1.10.7.2.1.10.{{ $index }}' + descr: 'Frequency {{ $e3IpmChannelName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: e3IpmFrequency + op: '=' + value: '0' + power: + data: + - + oid: e3IpmMeterEntry + value: e3IpmPowerP + num_oid: '.1.3.6.1.4.1.21695.1.10.7.2.1.5.{{ $index }}' + descr: 'Power {{ $e3IpmChannelName }}' + index: '{{ $index }}' + skip_values: + - + oid: e3IpmFrequency + op: '=' + value: '0' + voltage: + data: + - + oid: e3IpmMeterEntry + value: e3IpmUrms + num_oid: '.1.3.6.1.4.1.21695.1.10.7.2.1.8.{{ $index }}' + descr: 'Voltage {{ $e3IpmChannelName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: e3IpmFrequency + op: '=' + value: '0' + current: + data: + - + oid: e3IpmMeterEntry + value: e3IpmIrms + num_oid: '.1.3.6.1.4.1.21695.1.10.7.2.1.9.{{ $index }}' + descr: 'Current {{ $e3IpmChannelName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: e3IpmFrequency + op: '=' + value: '0' + diff --git a/priv/profiles/os_discovery/e3meterdc.yaml b/priv/profiles/os_discovery/e3meterdc.yaml new file mode 100644 index 00000000..9f960ce2 --- /dev/null +++ b/priv/profiles/os_discovery/e3meterdc.yaml @@ -0,0 +1,86 @@ +mib: NETTRACK-E3METER-CTR-SNMP-MIB +modules: + os: + version: NETTRACK-E3METER-CTR-SNMP-MIB::e3ConcentratorFWVersion + sensors: + additional_oids: + data: + - + oid: + - e3IpsLabel + - e3IpsModel + - e3IpsHWVersion + count: + data: + - + oid: e3IpsNetwork + value: e3IpsTotalNodes + num_oid: '.1.3.6.1.4.1.21695.1.10.2.1{{ $noindex }}' + descr: 'Total Nodes' + index: 'TNodes' + - + oid: e3IpsNetwork + value: e3IpsUnknownNodes + num_oid: '.1.3.6.1.4.1.21695.1.10.2.2{{ $noindex }}' + descr: 'Unknown Nodes' + index: 'UNodes' + - + oid: e3IpsNetwork + value: e3IpsActiveNodes + num_oid: '.1.3.6.1.4.1.21695.1.10.2.3{{ $noindex }}' + descr: 'Active Nodes' + index: 'ANodes' + - + oid: e3IpsNetwork + value: e3IpsDeadNodes + num_oid: '.1.3.6.1.4.1.21695.1.10.2.4{{ $noindex }}' + descr: 'Dead Nodes' + index: 'DNodes' + temperature: + data: + - + oid: e3IpsSensorEntry + value: e3IpsSensorTemperatureCelsius + num_oid: '.1.3.6.1.4.1.21695.1.10.5.1.4.{{ $index }}' + descr: 'Sensor {{ $subindex1 }}, {{ $e3IpsLabel:0 }}' + group: 'Model {{ $e3IpsModel:0 }} rev{{ $e3IpsHWVersion:0 }}, {{ $e3IpsLabel:0 }}' + index: '{{ $index }}' + divisor: 10 + skip_values: + - + oid: e3IpsSensorType + op: '!=' + value: '1' + - + oid: e3IpsSensorTemperatureCelsius + op: '=' + value: '0' + frequency: + data: + - + oid: e3IpsMeterEntry + value: e3IpsFrequency + num_oid: '.1.3.6.1.4.1.21695.1.10.4.1.11.{{ $index }}' + descr: 'Phase {{ $subindex1 }}, {{ $e3IpsLabel:0 }}' + group: 'Model {{ $e3IpsModel:0 }} rev{{ $e3IpsHWVersion:0 }}, {{ $e3IpsLabel:0 }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: e3IpsFrequency + op: '=' + value: '0' + power: + data: + - + oid: e3IpsMeterEntry + value: e3IpsPAvg + num_oid: '.1.3.6.1.4.1.21695.1.10.4.1.18.{{ $index }}' + descr: 'Phase {{ $subindex1 }}, {{ $e3IpsLabel:0 }}' + group: 'Model {{ $e3IpsModel:0 }} rev{{ $e3IpsHWVersion:0 }}, {{ $e3IpsLabel:0 }}' + index: '{{ $index }}' + skip_values: + - + oid: e3IpsFrequency + op: '=' + value: '0' diff --git a/priv/profiles/os_discovery/eaton-ats.yaml b/priv/profiles/os_discovery/eaton-ats.yaml new file mode 100644 index 00000000..a415cbaa --- /dev/null +++ b/priv/profiles/os_discovery/eaton-ats.yaml @@ -0,0 +1,44 @@ +mib: EATON-ATS2-MIB +modules: + os: + hardware: EATON-ATS2-MIB::ats2IdentPartNumber.0 + serial: EATON-ATS2-MIB::ats2IdentSerialNumber.0 + version: EATON-ATS2-MIB::ats2IdentFWVersion.0 + sensors: + voltage: + data: + - + oid: ats2OutputVoltage + value: ats2OutputVoltage + num_oid: '.1.3.6.1.4.1.534.10.2.2.3.1.{{ $index }}' + divisor: 10 + descr: 'Output' + index: 'ats2OutputVoltage.{{ $index }}' + state: + data: + - + oid: ats2OperationMode + value: ats2OperationMode + num_oid: '.1.3.6.1.4.1.534.10.2.2.4.{{ $index }}' + descr: 'ats2OperationMode' + index: 'ats2OperationMode.{{ $index }}' + state_name: ats2OperationMode + states: + - { descr: initialization, graph: 0, value: 1, generic: 1 } + - { descr: diagnosis, graph: 0, value: 2, generic: 1 } + - { descr: off, graph: 0, value: 3, generic: 2 } + - { descr: source1, graph: 0, value: 4, generic: 0 } + - { descr: source2, graph: 0, value: 5, generic: 0 } + - { descr: safe, graph: 0, value: 6, generic: 1 } + - { descr: fault, graph: 0, value: 7, generic: 2 } + - + oid: ats2InputStatusDephasing + value: ats2InputStatusDephasing + num_oid: '.1.3.6.1.4.1.534.10.2.3.1.1.{{ $index }}' + descr: 'ats2InputStatusDephasing' + index: 'ats2InputStatusDephasing.{{ $index }}' + state_name: ats2InputStatusDephasing + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: outOfRange, graph: 0, value: 2, generic: 1 } + diff --git a/priv/profiles/os_discovery/eaton-matrix.yaml b/priv/profiles/os_discovery/eaton-matrix.yaml new file mode 100644 index 00000000..8fc81a0b --- /dev/null +++ b/priv/profiles/os_discovery/eaton-matrix.yaml @@ -0,0 +1,161 @@ +mib: TELECOM-MIB +modules: + os: + hardware: TELECOM-MIB::matConName.0 + version: TELECOM-MIB::matAgentSoftwareVerison.0 + serial: TELECOM-MIB::matConSerialNum.0 + sensors: + current: + data: + - + oid: matInvTable + value: matInvOutputCurrent + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.7.{{ $index }}" + divisor: 10 + descr: "Inverter {{ $index }} Output" + index: "matInvOutputCurrent.{{ $index }}" + - + oid: matStsTable + value: matStsOutputCurrent + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.12.{{ $index }}" + divisor: 10 + descr: "STS Output" + index: "matStsOutputCurrent.{{ $index }}" + voltage: + data: + - + oid: matStsTable + value: matStsMainInputVoltage + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.7.{{ $index }}" + divisor: 10 + descr: "STS Input - Mains" + index: "matStsMainInputVoltage.{{ $index }}" + high_limit: matStsMainHighLossVoltage + low_limit: matStsMainLowLossVoltage + - + oid: matStsTable + value: matStsInvInputVoltage + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.9.{{ $index }}" + divisor: 10 + descr: "STS Input - Inverter" + index: "matStsInvInputVoltage.{{ $index }}" + high_limit: matStsInvHighLossVoltage + low_limit: matStsInvLosLossVoltage + - + oid: matStsTable + value: matStsOutputVoltage + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.11.{{ $index }}" + divisor: 10 + descr: "STS Output" + index: "matStsOutputVoltage.{{ $index }}" + - + oid: matInvTable + value: matInvBatteryVoltage + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.8.{{ $index }}" + descr: "Inverter {{ $index }} Input" + index: "matInvBatteryVoltage.{{ $index }}" + divisor: 10 + - + oid: matInvTable + value: matInvOutputVoltage + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.6.{{ $index }}" + descr: "Inverter {{ $index }} Output" + index: "matInvOutputVoltage.{{ $index }}" + divisor: 10 + high_limit: matConfInvOutputVoltHighLoss + low_limit: matConfInvOutputVoltLowLoss + + power: + data: + - + oid: matStsOutputPower + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.13.{{ $index }}" + index: "matStsOutputPower.{{ $index }}" + descr: "STS Output Power" + - + oid: matInvTable + value: matInvOutputPower + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.10.{{ $index }}" + descr: "Inverter {{ $index }} Output Power" + index: "matInvOutputPower.{{ $index }}" + high_limit: matConfInvOutputPower + + temperature: + data: + - + oid: matStsTemperature + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.16.{{ $index }}" + index: "matStsTemperature.{{ $index }}" + descr: STS Temperature + divisor: 10 + - + oid: matConTemperature + num_oid: ".1.3.6.1.4.1.935.10.2.1.1.4.{{ $index }}" + index: "matConTemperature.{{ $index }}" + descr: Controller Temperature + divisor: 10 + - + oid: matInvTable + value: matInvTemperature + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.13.{{ $index }}" + descr: "Inverter {{ $index }} Temperature" + index: "matInvTemperature.{{ $index }}" + divisor: 10 + + state: + data: + - + oid: matInvTable + value: matInvOnOffStatus + num_oid: ".1.3.6.1.4.1.935.10.2.1.2.2.1.26.{{ $index }}" + descr: "Inverter {{ $index }} Status ({{ $matInvSerialNum }})" + index: "{{ $index }}" + state_name: matInvOnOff + states: + - { value: 1, generic: 1, graph: 0, descr: "Off" } + - { value: 2, generic: 0, graph: 0, descr: "On" } + - + oid: matConfStsPriority + value: matConfStsPriority + num_oid: ".1.3.6.1.4.1.935.10.2.1.5.15.{{ $index }}" + descr: "STS Priority" + index: "{{ $index }}" + state_name: matConfStsPriority + states: + - { value: 1, generic: 0, graph: 0, descr: "Inverter" } + - { value: 2, generic: 0, graph: 0, descr: "Mains" } + - + oid: matStsMbsStatus + value: matStsMbsStatus + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.17.{{ $index }}" + descr: "MBS Switch" + index: "{{ $index }}" + state_name: matStsMbsStatus + states: + - { value: 1, generic: 0, graph: 0, descr: "Normal" } + - { value: 2, generic: 1, graph: 0, descr: "Manual - Inverted Power" } + - { value: 3, generic: 2, graph: 0, descr: "Bypass - Inverted Power" } + - { value: 4, generic: 1, graph: 0, descr: "Manual - Mains Power" } + - { value: 5, generic: 2, graph: 0, descr: "Bypass - Mains Power" } + - { value: 6, generic: 3, graph: 0, descr: "MBS Switch Error" } + - + oid: matStsTable + value: matStsStatus + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.18.{{ $index }}" + descr: "STS Status ({{ $matStsSerialNum }})" + index: "{{ $index }}" + state_name: matStsStatus + states: + - { value: 1, generic: 0, graph: 0, descr: "Online" } + - { value: 2, generic: 2, graph: 0, descr: "Offline" } + - + oid: matStsRunningMode + value: matStsRunningMode + num_oid: ".1.3.6.1.4.1.935.10.2.1.3.2.1.19.{{ $index }}" + descr: "STS Running Mode" + index: "{{ $index }}" + state_name: matStsRunningMode + states: + - { value: 1, generic: 0, graph: 0, descr: "Inverter" } + - { value: 2, generic: 0, graph: 0, descr: "Mains" } + - { value: 3, generic: 2, graph: 0, descr: "No Output" } diff --git a/priv/profiles/os_discovery/eaton-mgeups.yaml b/priv/profiles/os_discovery/eaton-mgeups.yaml new file mode 100644 index 00000000..16b30031 --- /dev/null +++ b/priv/profiles/os_discovery/eaton-mgeups.yaml @@ -0,0 +1,195 @@ +mib: MG-SNMP-UPS-MIB:EATON-OIDS:EATON-EMP-MIB:XUPS-MIB +modules: + os: + hardware: + - MG-SNMP-UPS-MIB::upsmgIdentFamilyName.0 + - MG-SNMP-UPS-MIB::upsmgIdentModelName.0 + hardware_template: '{{ MG-SNMP-UPS-MIB::upsmgIdentFamilyName.0 }} {{ MG-SNMP-UPS-MIB::upsmgIdentModelName.0 }}' + serial: MG-SNMP-UPS-MIB::upsmgIdentSerialNumber.0 + version: MG-SNMP-UPS-MIB::upsmgIdentFirmwareVersion.0 + features: UPS-MIB::upsIdentAgentSoftwareVersion.0 + sensors: + temperature: + data: + - + oid: upsmgBattery + value: upsmgBatteryTemperature + num_oid: '.1.3.6.1.4.1.705.1.5.7.{{ $index }}' + descr: 'Battery' + index: 'upsmgBatteryTemperature.{{ $index }}' + - + oid: xupsEnvironment + value: xupsEnvRemoteTemp + num_oid: '.1.3.6.1.4.1.534.1.6.5.{{ $index }}' + descr: 'Remote' + index: 'xupsEnvRemoteTemp.{{ $index }}' + - + oid: xupsEnvironment + value: xupsEnvAmbientTemp + num_oid: '.1.3.6.1.4.1.534.1.6.1.{{ $index }}' + descr: 'Ambient' + index: 'xupsEnvAmbientTemp.{{ $index }}' + humidity: + data: + - + oid: xupsEnvironment + value: xupsEnvRemoteHumidity + num_oid: '.1.3.6.1.4.1.534.1.6.6.{{ $index }}' + descr: 'Environment' + index: 'xupsEnvRemoteHumidity.{{ $index }}' + delay: + data: + - + oid: upsmgBattery + value: upsmgBatteryRemainingTime + num_oid: '.1.3.6.1.4.1.705.1.5.1.{{ $index }}' + descr: 'Remaining time' + index: 'upsmgBatteryRemainingTime.{{ $index }}' + state: + data: + - + oid: upsmgOutputOnBattery + value: upsmgOutputOnBattery + num_oid: '.1.3.6.1.4.1.705.1.7.3.{{ $index }}' + descr: 'Input Status' + index: 'upsmgOutputOnBattery.{{ $index }}' + state_name: upsmgOutputOnBattery + states: + - { descr: On Battery, graph: 0, value: 1, generic: 2 } + - { descr: On Input Power, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOnByPass + value: upsmgOutputOnByPass + num_oid: '.1.3.6.1.4.1.705.1.7.4.{{ $index }}' + descr: 'Bypass Status' + index: 'upsmgOutputOnBypass.{{ $index }}' + state_name: upsmgOutputOnByPass + states: + - { descr: On ByPass, graph: 0, value: 1, generic: 2 } + - { descr: Not Active, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputUtilityOff + value: upsmgOutputUtilityOff + num_oid: '.1.3.6.1.4.1.705.1.7.7.{{ $index }}' + descr: 'Utility Status' + index: 'upsmgOutputUtilityOff.{{ $index }}' + state_name: upsmgOutputUtilityOff + states: + - { descr: No Voltage, graph: 0, value: 1, generic: 2 } + - { descr: Output OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputInverterOff + value: upsmgOutputInverterOff + num_oid: '.1.3.6.1.4.1.705.1.7.9.{{ $index }}' + descr: 'UPS Inverter Status' + index: 'upsmgOutputInverterOff.{{ $index }}' + state_name: upsmgOutputInverterOff + states: + - { descr: Inverter Off, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOverLoad + value: upsmgOutputOverLoad + num_oid: '.1.3.6.1.4.1.705.1.7.10.{{ $index }}' + descr: 'Output OverLoad' + index: 'upsmgOutputOverLoad.{{ $index }}' + state_name: upsmgOutputOverLoad + states: + - { descr: Yes, graph: 0, value: 1, generic: 2 } + - { descr: No, graph: 0, value: 2, generic: 0 } + - + oid: upsmgOutputOverTemp + value: upsmgOutputOverTemp + num_oid: '.1.3.6.1.4.1.705.1.7.11.{{ $index }}' + descr: 'Over Temperature' + index: 'upsmgOutputOverTemp.{{ $index }}' + state_name: upsmgOutputOverTemp + states: + - { descr: Over Temperature, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryFaultBattery + num_oid: '.1.3.6.1.4.1.705.1.5.9.{{ $index }}' + descr: 'Battery Fault' + index: 'upsmgBatteryFaultBattery.{{ $index }}' + state_name: upsmgBatteryFaultBattery + states: + - { descr: Fault, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryReplacement + num_oid: '.1.3.6.1.4.1.705.1.5.11.{{ $index }}' + descr: 'Battery Replacement Status' + index: 'upsmgBatteryReplacement.{{ $index }}' + state_name: upsmgBatteryReplacement + states: + - { descr: To be replaced, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryLowBattery + num_oid: '.1.3.6.1.4.1.705.1.5.14.{{ $index }}' + descr: 'Battery Charge Status' + index: 'upsmgBatteryLowBattery.{{ $index }}' + state_name: upsmgBatteryLowBattery + states: + - { descr: Low Battery, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryChargerFault + num_oid: '.1.3.6.1.4.1.705.1.5.15.{{ $index }}' + descr: 'Battery Charger Status' + index: 'upsmgBatteryChargerFault.{{ $index }}' + state_name: upsmgBatteryChargerFault + states: + - { descr: Fault, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgBattery + value: upsmgBatteryLowCondition + num_oid: '.1.3.6.1.4.1.705.1.5.16.{{ $index }}' + descr: 'Battery Condition' + index: 'upsmgBatteryLowCondition.{{ $index }}' + state_name: upsmgBatteryLowCondition + states: + - { descr: Low Condition, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgInputBadStatus + value: upsmgInputBadStatus + num_oid: '.1.3.6.1.4.1.705.1.6.3.{{ $index }}' + descr: 'Input Status' + index: 'upsmgInputBadStatus.{{ $index }}' + state_name: upsmgInputBadStatus + states: + - { descr: Bad Status, graph: 0, value: 1, generic: 2 } + - { descr: OK, graph: 0, value: 2, generic: 0 } + - + oid: upsmgInputLineFailCause + value: upsmgInputLineFailCause + num_oid: '.1.3.6.1.4.1.705.1.6.4.{{ $index }}' + descr: 'Input Line Fail Cause' + index: 'upsmgInputLineFailCause.{{ $index }}' + state_name: upsmgInputLineFailCause + states: + - { descr: 'No Failure', graph: 0, value: 1, generic: 0 } + - { descr: 'Tolerance Volt. Out', graph: 0, value: 2, generic: 2 } + - { descr: 'Tolerance Freq. Out', graph: 0, value: 3, generic: 2 } + - { descr: 'No Voltage', graph: 0, value: 4, generic: 2 } + - + oid: xupsAlarms + value: xupsAlarms + num_oid: '.1.3.6.1.4.1.534.1.7.1.{{ $index }}' + descr: 'XUPS Alarm' + index: 'xupsAlarms.{{ $index }}' + state_name: xupsAlarms + states: + - { descr: 'No Alarm', graph: 0, value: 0, generic: 0 } + - { descr: 'Alarm raised', graph: 0, value: 1, generic: 2 } + - { descr: 'Alarms raised', graph: 0, value: 2, generic: 2 } + - { descr: 'Alarms raised', graph: 0, value: 3, generic: 2 } + - { descr: 'Alarms raised', graph: 0, value: 4, generic: 2 } + diff --git a/priv/profiles/os_discovery/eaton-sc200.yaml b/priv/profiles/os_discovery/eaton-sc200.yaml new file mode 100644 index 00000000..bccc22a3 --- /dev/null +++ b/priv/profiles/os_discovery/eaton-sc200.yaml @@ -0,0 +1,174 @@ +mib: RPS-SC200-MIB +modules: + os: + hardware: + - RPS-SC200-MIB::system-Type.0 + serial: + - RPS-SC200-MIB::system-Serial-Number.0 + - RPS-SC200-MIB::serial-Number.0 + serial_template: 'System:{{ RPS-SC200-MIB::system-Serial-Number.0 }} Product:{{ RPS-SC200-MIB::serial-Number.0 }}' + version: + - RPS-SC200-MIB::hardware-Version.0 + - RPS-SC200-MIB::software-Version.0 + version_template: 'HW:{{ RPS-SC200-MIB::hardware-Version.0 }} SW:{{ RPS-SC200-MIB::software-Version.0 }}' + sensors: + voltage: + data: + - + oid: ac-Voltage + num_oid: '.1.3.6.1.4.1.1918.2.13.10.40.10.{{ $index }}' + descr: 'Average Input Voltage' + index: 'acavg.{{ $index }}' + - + oid: rectifier-Values-Table + value: rectifier-Reported-AC-Voltage + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.30.1.90.{{ $index }}' + descr: 'Rect {{ $index }} AC Voltage' + index: 'ac.{{ $index }}' + skip_values: + - + oid: rectifier-Serial-Number + op: '==' + value: "0" + - + oid: bus-Voltage + num_oid: '.1.3.6.1.4.1.1918.2.13.10.70.10.20.{{ $index }}' + divisor: 100 + descr: 'Bus Voltage' + index: 'bus.{{ $index }}' + low_limit: minimum-System-Voltage + low_warn_limit: minimum-System-Voltage + warn_limit: maximum-System-Voltage + high_limit: maximum-System-Voltage + - + oid: rectifier-Values-Table + value: rectifier-Reported-Voltage + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.30.1.95.{{ $index }}' + descr: 'Rect {{ $index }} DC Voltage' + index: 'dc.{{ $index }}' + divisor: 100 + low_limit: 0 + low_warn_limit: 0 + warn_limit: rectifier-Minimum-OVSD-Set-Point + high_limit: rectifier-Maximum-OVSD-Set-Point + skip_values: + - + oid: rectifier-Serial-Number + op: '==' + value: "0" + + power: + data: + - + oid: load-Power + num_oid: '.1.3.6.1.4.1.1918.2.13.10.50.30.{{ $index }}' + descr: 'Total Power' + multiplier: 10 + index: 'totalPower.{{ $index }}' + + current: + data: + - + oid: battery-Current + num_oid: '.1.3.6.1.4.1.1918.2.13.10.100.40.{{ $index }}' + descr: 'Battery Current' + index: 'battery-Current.{{ $index }}' + - + oid: load-Current + num_oid: '.1.3.6.1.4.1.1918.2.13.10.50.10.{{ $index }}' + descr: 'Total Load Current' + - + oid: rectifier-Values-Table + value: rectifier-Reported-Current + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.30.1.100.{{ $index }}' + descr: 'Rect {{ $index }} Current' + skip_values: + - + oid: rectifier-Serial-Number + op: '==' + value: "0" + load: + data: + - + oid: system-Power + num_oid: '.1.3.6.1.4.1.1918.2.13.10.50.20.{{ $index }}' + descr: 'Total Load' + index: 'totalLoad.{{ $index }}' + - + oid: rectifier-Values-Table + value: rectifier-Output-Power + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.30.1.105.{{ $index }}' + descr: 'Rect {{ $index }} Load' + index: 'rectLoad.{{ $index }}' + divisor: 10 + skip_values: + - + oid: rectifier-Serial-Number + op: '==' + value: "0" + + temperature: + data: + - + oid: battery-Temperature + num_oid: '.1.3.6.1.4.1.1918.2.13.10.100.30.{{ $index }}' + descr: 'Battery Temperature' + index: 'battery-Temperature.{{ $index }}' + - + oid: highest-Rectifier-Heatsink-Temperature + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.29.{{ $index }}' + descr: 'Highest Rectifier Heatsink Temperature' + index: 'highestRectTemp.{{ $index }}' + - + oid: rectifier-Values-Table + value: rectifier-Heatsink-Temperature + num_oid: '.1.3.6.1.4.1.1918.2.13.10.60.30.1.110.{{ $index }}' + descr: 'Rect {{ $index }} Temperature' + index: 'rectTemp.{{ $index }}' + skip_values: + - + oid: rectifier-Serial-Number + op: '==' + value: "0" + state: + data: + - + oid: digital-Input-Table + value: di-State + num_oid: '.1.3.6.1.4.1.1918.2.13.10.90.40.1.20.{{ $index }}' + descr: '{{ $di-Name }}' + index: 'di.{{ $index }}' + states: + - { descr: 'OK', graph: 0, value: 0, generic: 0 } + - { descr: 'Warning', graph: 0, value: 1, generic: 1 } + - { descr: 'Major', graph: 0, value: 2, generic: 2 } + - { descr: 'Minor', graph: 0, value: 3, generic: 2 } + - { descr: 'Reserved',graph: 0, value: 4, generic: 3 } + - { descr: 'Critical',graph: 0, value: 5, generic: 2 } + - { descr: 'Control', graph: 0, value: 6, generic: 3 } + skip_values: + - + oid: di-Status + op: '==' + value: "0" + - + oid: summary-Alarm-Critical + num_oid: '.1.3.6.1.4.1.1918.2.13.10.110.5.10.{{ $index }}' + descr: 'Alarm Summary Critical' + states: + - { descr: 'OK', graph: 0, value: 0, generic: 0 } + - { descr: 'Active', graph: 1, value: 1, generic: 1 } + - + oid: summary-Alarm-Major + num_oid: '.1.3.6.1.4.1.1918.2.13.10.110.5.20.{{ $index }}' + descr: 'Alarm Summary Major' + states: + - { descr: 'OK', graph: 0, value: 0, generic: 0 } + - { descr: 'Active', graph: 1, value: 1, generic: 1 } + - + oid: summary-Alarm-Minor + num_oid: '.1.3.6.1.4.1.1918.2.13.10.110.5.30.{{ $index }}' + descr: 'Alarm Summary Minor' + states: + - { descr: 'OK', graph: 0, value: 0, generic: 0 } + - { descr: 'Active', graph: 1, value: 1, generic: 1 } diff --git a/priv/profiles/os_discovery/eaton-sc300.yaml b/priv/profiles/os_discovery/eaton-sc300.yaml new file mode 100644 index 00000000..79815b0d --- /dev/null +++ b/priv/profiles/os_discovery/eaton-sc300.yaml @@ -0,0 +1,148 @@ +mib: RpsSc300Mib +modules: + os: + hardware: + - RpsSc300Mib::systemType.0 + serial: + - RpsSc300Mib::systemSerialNumber.0 + - RpsSc300Mib::serialNumber.0 + serial_template: 'System:{{ RpsSc300Mib::systemSerialNumber.0 }} Product:{{ RpsSc300Mib::serialNumber.0 }}' + version: + - RpsSc300Mib::hardwareVersion.0 + - RpsSc300Mib::softwareVersion.0 + version_template: 'HW:{{ RpsSc300Mib::hardwareVersion.0 }} SW:{{ RpsSc300Mib::softwareVersion.0 }}' + sensors: + voltage: + data: + - + oid: acVoltage + num_oid: '.1.3.6.1.4.1.1918.2.14.10.40.10.{{ $index }}' + descr: 'Average Input Voltage' + index: 'acavg.{{ $index }}' + - + oid: rectifierValuesTable + value: rectifierInputVoltage + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.30.1.90.{{ $index }}' + descr: 'Rect {{ $index }} AC Voltage' + index: 'ac.{{ $index }}' + skip_values: + - + oid: rectifierSerialNumber + op: '==' + value: "0" + - + oid: busVoltage + num_oid: '.1.3.6.1.4.1.1918.2.14.10.70.10.20.{{ $index }}' + divisor: 100 + descr: 'Bus Voltage' + index: 'bus.{{ $index }}' + low_limit: minimumSystemVoltage + low_warn_limit: minimumSystemVoltage + warn_limit: maximumSystemVoltage + high_limit: maximumSystemVoltage + - + oid: rectifierValuesTable + value: rectifierReportedVoltage + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.30.1.95.{{ $index }}' + descr: 'Rect {{ $index }} DC Voltage' + index: 'dc.{{ $index }}' + divisor: 100 + low_limit: 0 + low_warn_limit: 0 + warn_limit: rectifierMinimumOvsdSetPoint + high_limit: rectifierMaximumOvsdSetPoint + skip_values: + - + oid: rectifierSerialNumber + op: '==' + value: "0" + current: + data: + - + oid: batteryCurrent + num_oid: '.1.3.6.1.4.1.1918.2.14.10.100.40.{{ $index }}' + descr: 'Battery Current' + index: 'batteryCurrent.{{ $index }}' + - + oid: rectifierCurrent + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.20.{{ $index }}' + descr: 'Total Rectifier Current' + - + oid: loadCurrent + num_oid: '.1.3.6.1.4.1.1918.2.14.10.50.10.{{ $index }}' + descr: 'Total Load Current' + - + oid: rectifierValuesTable + value: rectifierReportedCurrent + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.30.1.100.{{ $index }}' + descr: 'Rect {{ $index }} Current' + skip_values: + - + oid: rectifierSerialNumber + op: '==' + value: "0" + load: + data: + - + oid: systemPower + num_oid: '.1.3.6.1.4.1.1918.2.14.10.50.20.{{ $index }}' + descr: 'Total Load' + index: 'totalLoad.{{ $index }}' + - + oid: rectifierValuesTable + value: rectifierOutputPower + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.30.1.105.{{ $index }}' + descr: 'Rect {{ $index }} Load' + index: 'rectLoad.{{ $index }}' + divisor: 10 + skip_values: + - + oid: rectifierSerialNumber + op: '==' + value: "0" + + temperature: + data: + - + oid: batteryTemperature + num_oid: '.1.3.6.1.4.1.1918.2.14.10.100.30.{{ $index }}' + descr: 'Battery Temperature' + index: 'battery-Temperature.{{ $index }}' + - + oid: highestRectifierHeatsinkTemperature + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.29.{{ $index }}' + descr: 'Highest Rectifier Heatsink Temperature' + index: 'highestRectTemp.{{ $index }}' + - + oid: rectifierValuesTable + value: rectifierHeatsinkTemperature + num_oid: '.1.3.6.1.4.1.1918.2.14.10.60.30.1.110.{{ $index }}' + descr: 'Rect {{ $index }} Temperature' + index: 'rectTemp.{{ $index }}' + skip_values: + - + oid: rectifierSerialNumber + op: '==' + value: "0" + state: + data: + - + oid: digitalInputTable + value: diState + num_oid: '.1.3.6.1.4.1.1918.2.14.10.90.40.1.20.{{ $index }}' + descr: '{{ $diName }}' + index: 'di.{{ $index }}' + states: + - { descr: 'OK', graph: 0, value: 0, generic: 0 } + - { descr: 'Warning', graph: 0, value: 1, generic: 1 } + - { descr: 'Major', graph: 0, value: 2, generic: 2 } + - { descr: 'Minor', graph: 0, value: 3, generic: 2 } + - { descr: 'Reserved',graph: 0, value: 4, generic: 3 } + - { descr: 'Critical',graph: 0, value: 5, generic: 2 } + - { descr: 'Control', graph: 0, value: 6, generic: 3 } + skip_values: + - + oid: diStatus + op: '==' + value: "0" + diff --git a/priv/profiles/os_discovery/eatonpdu.yaml b/priv/profiles/os_discovery/eatonpdu.yaml new file mode 100644 index 00000000..be6d2ad9 --- /dev/null +++ b/priv/profiles/os_discovery/eatonpdu.yaml @@ -0,0 +1,59 @@ +mib: EATON-EPDU-MIB +modules: + os: + hardware: + - EATON-EPDU-MIB::partNumber.0 + - PDU-MIB::objectName.0 + hardware_template: '{{ EATON-EPDU-MIB::partNumber.0 }} {{ PDU-MIB::objectName.0 }}' + serial: + - EATON-EPDU-MIB::serialNumber.0 + - PDU-MIB::serialNumber.0 + version: + - EATON-EPDU-MIB::firmwareVersion.0 + - PDU-MIB::firmwareVersion.0 + sensors: + power: + data: + - + oid: inputs + value: inputWatts + num_oid: '.1.3.6.1.4.1.534.6.6.7.3.4.1.4.{{ $index }}' + multiplier: 1 + descr: 'Input Feed {{ $inputPhaseDesignator }}' + index: 'inputWatts.{{ $index }}' + - + oid: outlets + value: outletWatts + num_oid: '.1.3.6.1.4.1.534.6.6.7.6.5.1.3.{{ $index }}' + multiplier: 1 + descr: 'Outlet {{ $outletDesignator }}: {{ $outletName }}' + index: 'outletWatts.{{ $index }}' + current: + data: + - + oid: inputs + value: inputCurrent + num_oid: '.1.3.6.1.4.1.534.6.6.7.3.3.1.4.{{ $index }}' + divisor: 1000 + descr: 'Input Feed {{ $inputPhaseDesignator }}' + index: 'inputCurrent.{{ $index }}' + high_limit: inputCurrentThUpperCritical + warn_limit: inputCurrentThUpperWarning + - + oid: outlets + value: outletCurrent + num_oid: '.1.3.6.1.4.1.534.6.6.7.6.4.1.3.{{ $index }}' + divisor: 1000 + descr: 'Outlet {{ $outletDesignator }}: {{ $outletName }}' + index: 'outletCurrent.{{ $index }}' + high_limit: outletCurrentThUpperCritical + warn_limit: outletCurrentThUpperWarning + voltage: + data: + - + oid: inputs + value: inputVoltage + num_oid: '.1.3.6.1.4.1.534.6.6.7.3.2.1.3.{{ $index }}' + divisor: 1000 + descr: 'Input' + index: 'inputVoltage.{{ $index }}' diff --git a/priv/profiles/os_discovery/eatonups.yaml b/priv/profiles/os_discovery/eatonups.yaml new file mode 100644 index 00000000..5881dff3 --- /dev/null +++ b/priv/profiles/os_discovery/eatonups.yaml @@ -0,0 +1,159 @@ +# need to reference these MIBs +mib: XUPS-MIB:EATON-EMP-MIB +modules: + os: + hardware: XUPS-MIB::xupsIdentModel.0 + version: XUPS-MIB::xupsIdentSoftwareVersion.0 + serial: UPS-MIB::upsIdentName.0 + serial_regex: '/ID: (?[^ ]+)/' + sensors: + temperature: + data: + - + oid: EATON-OIDS::xupsEnvironment + value: XUPS-MIB::xupsEnvAmbientTemp + num_oid: '.1.3.6.1.4.1.534.1.6.1.{{ $index }}' + descr: 'Ambient' + index: 'xupsEnvAmbientTemp.{{ $index }}' + load: + data: + - + oid: XUPS-MIB::xupsOutput + value: XUPS-MIB::xupsOutputLoad + num_oid: '.1.3.6.1.4.1.534.1.4.1.{{ $index }}' + descr: 'Output Load' + index: 'xupsOutputLoad.{{ $index }}' + power: + data: + - + oid: XUPS-MIB::xupsOutputTable + value: XUPS-MIB::xupsOutputWatts + num_oid: '.1.3.6.1.4.1.534.1.4.4.1.4.{{ $index }}' + descr: 'Output Phase {{ $index }}' + index: 'xupsOutputWatts.{{ $index }}' + state: + data: + - + oid: XUPS-MIB::xupsBattery + value: XUPS-MIB::xupsBatteryAbmStatus + num_oid: '.1.3.6.1.4.1.534.1.2.5.{{ $index }}' + descr: 'Battery Status {{ $index }}' + index: 'xupsBatteryAbmStatus.{{ $index }}' + states: + - { value: 2, descr: batteryDischarging, graph: 1, generic: 2 } + - { value: 3, descr: batteryFloating, graph: 1, generic: 0 } + - { value: 4, descr: batteryResting, graph: 1, generic: 0 } + - { value: 5, descr: unknown, graph: 1, generic: 3 } + - { value: 6, descr: batteryDisconnected, graph: 1, generic: 2 } + - { value: 7, descr: batteryUnderTest, graph: 1, generic: 0 } + - { value: 8, descr: checkBattery, graph: 1, generic: 2 } + - + oid: XUPS-MIB::xupsTest + value: XUPS-MIB::xupsTestBatteryStatus + num_oid: '.1.3.6.1.4.1.534.1.8.2.0.{{ $index }}' + descr: 'Battery Test Status {{ $index }}' + index: 'xupsTestBatteryStatus.{{ $index }}' + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: passed, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - { value: 4, descr: inProgress, graph: 1, generic: 0 } + - { value: 5, descr: notSupported, graph: 1, generic: 0 } + - { value: 6, descr: inhibited, graph: 1, generic: 2 } + - { value: 7, descr: scheduled, graph: 1, generic: 0 } + runtime: + data: + - + oid: XUPS-MIB::xupsBattery + value: XUPS-MIB::xupsBatTimeRemaining + num_oid: '.1.3.6.1.4.1.534.1.2.1.{{ $index }}' + descr: 'Runtime' + index: 'xupsBatTimeRemaining.{{ $index }}' + divisor: 60 + voltage: + data: + - + oid: XUPS-MIB::xupsBattery + value: XUPS-MIB::xupsBatVoltage + num_oid: '.1.3.6.1.4.1.534.1.2.2.{{ $index }}' + descr: 'Battery #{{ $index }}' + index: 'xupsBatVoltage.{{ $index }}' + divisor: 1 + - + oid: XUPS-MIB::xupsInputTable + value: XUPS-MIB::xupsInputVoltage + num_oid: '.1.3.6.1.4.1.534.1.3.4.1.2.{{ $index }}' + descr: 'Input Phase #{{ $index }}' + index: 'xupsInputVoltage.{{ $index }}' + divisor: 1 + - + oid: XUPS-MIB::xupsOutputTable + value: XUPS-MIB::xupsOutputVoltage + num_oid: '.1.3.6.1.4.1.534.1.4.4.1.2.{{ $index }}' + descr: 'Output Phase #{{ $index }}' + index: 'xupsOutputVoltage.{{ $index }}' + divisor: 1 + - + oid: XUPS-MIB::xupsBypassTable + value: XUPS-MIB::xupsBypassVoltage + num_oid: '.1.3.6.1.4.1.534.1.5.3.1.2.{{ $index }}' + descr: 'Bypass Phase #{{ $index }}' + index: 'xupsBypassVoltage.{{ $index }}' + divisor: 1 + charge: + data: + - + oid: XUPS-MIB::xupsBattery + value: XUPS-MIB::xupsBatCapacity + num_oid: '.1.3.6.1.4.1.534.1.2.4.{{ $index }}' + descr: 'Battery #{{ $index }}' + index: 'xupsBatCapacity.{{ $index }}' + divisor: 1 + low_warn_limit: 10 + low_limit: 0 + frequency: + data: + - + oid: XUPS-MIB::xupsInput + value: XUPS-MIB::xupsInputFrequency + num_oid: '.1.3.6.1.4.1.534.1.3.1.{{ $index }}' + descr: 'Input Phase #{{ $index }}' + index: 'xupsInputFrequency.{{ $index }}' + divisor: 10 + - + oid: XUPS-MIB::xupsOutput + value: XUPS-MIB::xupsOutputFrequency + num_oid: '.1.3.6.1.4.1.534.1.4.2.{{ $index }}' + descr: 'Output Phase #{{ $index }}' + index: 'xupsOutputFrequency.{{ $index }}' + divisor: 10 + - + oid: XUPS-MIB::xupsBypass + value: XUPS-MIB::xupsBypassFrequency + num_oid: '.1.3.6.1.4.1.534.1.5.1.{{ $index }}' + descr: 'Bypass Phase #{{ $index }}' + index: 'xupsBypassFrequency.{{ $index }}' + divisor: 10 + current: + data: + - + oid: XUPS-MIB::xupsBattery + value: XUPS-MIB::xupsBatCurrent + num_oid: '.1.3.6.1.4.1.534.1.2.3.{{ $index }}' + descr: 'Battery #{{ $index }}' + index: 'xupsBatCurrent.{{ $index }}' + divisor: 1 + - + oid: XUPS-MIB::xupsInputTable + value: XUPS-MIB::xupsInputCurrent + num_oid: '.1.3.6.1.4.1.534.1.3.4.1.3.{{ $index }}' + descr: 'Input Phase #{{ $index }}' + index: 'xupsInputCurrent.{{ $index }}' + divisor: 1 + - + oid: XUPS-MIB::xupsOutputTable + value: XUPS-MIB::xupsOutputCurrent + num_oid: '.1.3.6.1.4.1.534.1.4.4.1.3.{{ $index }}' + descr: 'Output Phase #{{ $index }}' + index: 'xupsOutputCurrent.{{ $index }}' + divisor: 1 diff --git a/priv/profiles/os_discovery/eatonupsm2.yaml b/priv/profiles/os_discovery/eatonupsm2.yaml new file mode 100644 index 00000000..6dceecf7 --- /dev/null +++ b/priv/profiles/os_discovery/eatonupsm2.yaml @@ -0,0 +1,62 @@ +mib: XUPS-MIB:EATON-OIDS:EATON-EMP-MIB +modules: + os: + hardware: XUPS-MIB::xupsIdentModel.0 + version: XUPS-MIB::xupsIdentSoftwareVersion.0 + serial: XUPS-MIB::xupsIdentSerialNumber.0 + features: + - XUPS-MIB::xupsAgentModel.0 + - XUPS-MIB::xupsAgentSoftwareVersion.0 + features_template: '{{ XUPS-MIB::xupsAgentModel.0 }} {{ XUPS-MIB::xupsAgentSoftwareVersion.0 }}' + sensors: + runtime: + data: + - + oid: xupsBatteryLastReplacedDate + value: xupsBatteryLastReplacedDate + num_oid: '.1.3.6.1.4.1.534.1.2.6.{{ $index }}' + descr: 'Last battery replacement' + index: 'xupsBatteryLastReplacedDate.{{ $index }}' + user_func: dateToRuntime + temperature: + data: + - + oid: xupsEnvironment + value: xupsEnvAmbientTemp + num_oid: '.1.3.6.1.4.1.534.1.6.1.{{ $index }}' + descr: 'Ambient' + index: 'xupsEnvAmbientTemp.{{ $index }}' + - + oid: xupsEnvironment + value: xupsEnvRemoteTemp + num_oid: '.1.3.6.1.4.1.534.1.6.5.{{ $index }}' + descr: 'Remote' + index: 'xupsEnvRemoteTemp.{{ $index }}' + humidity: + data: + - + oid: xupsEnvironment + value: xupsEnvRemoteHumidity + num_oid: '.1.3.6.1.4.1.534.1.6.6.{{ $index }}' + descr: 'Humidity' + index: 'xupsEnvRemoteHumidity.{{ $index }}' + state: + data: + - + oid: xupsEnvironment + value: xupsContactState + num_oid: '.1.3.6.1.4.1.534.1.6.8.1.3.{{ $index }}' + descr: 'Contact {{ $index }}' + index: 'xupsContactState.{{ $index }}' + states: + - { value: 1, descr: open, graph: 1, generic: 2 } + - { value: 2, descr: closed, graph: 1, generic: 2 } + - + oid: xupsBatteryLowCapacity + value: xupsBatteryLowCapacity + num_oid: '.1.3.6.1.4.1.534.1.2.10.{{ $index }}' + descr: 'Battery Low Capacity Warning' + index: 'xupsBatteryLowCapacity.{{ $index }}' + states: + - { value: 1, descr: Yes, graph: 1, generic: 1 } + - { value: 2, descr: No, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/ecresofm-os.yaml b/priv/profiles/os_discovery/ecresofm-os.yaml new file mode 100644 index 00000000..8eabce6d --- /dev/null +++ b/priv/profiles/os_discovery/ecresofm-os.yaml @@ -0,0 +1,220 @@ +modules: + os: + serial: ECRESO-FM-TRANS-MIB::syGeSerial.0 + location: ECRESO-FM-TRANS-MIB::syGeLocation.0 + hardware: ECRESO-FM-TRANS-MIB::syGeType.0 + hardware_replace: + - ['/E01/', '100W'] + - ['/E03/', '300W'] + - ['/G10/', '1000W'] + - ['/G20/', '2000W'] + version: ECRESO-FM-TRANS-MIB::syGeSoftRel.0 + features: ECRESO-FM-TRANS-MIB::syGeOptList.0 + sensors: + frequency: + data: + - + oid: ECRESO-FM-TRANS-MIB::txGnRfFrequency + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.4.1.{{ $index }}' + descr: 'Frequency' + multiplier: 10000 + index: 1 + power: + data: + - + oid: ECRESO-FM-TRANS-MIB::txGnRfPower + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.3.1.{{ $index }}' + descr: 'Power setting' + index: 1 + - + oid: ECRESO-FM-TRANS-MIB::txGnMsForwardPower + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.3.1.{{ $index }}' + descr: 'Foreward Power' + index: 2 + - + oid: ECRESO-FM-TRANS-MIB::txGnMsReflectedPower + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.3.2.{{ $index }}' + descr: 'Reflected Power' + divisor: 10 + index: 3 + count: + data: + - + oid: ECRESO-FM-TRANS-MIB::txGnMsVswrTrip + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.3.4.{{ $index }}' + descr: VSWR Trip Counter + index: 1 + - + oid: ECRESO-FM-TRANS-MIB::txGnMsVSWR + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.3.3.{{ $index }}' + descr: VSWR + index: 2 + divisor: 10 + warn_limit: 1.4 + high_limit: 1.5 + temperature: + data: + - + oid: ECRESO-FM-TRANS-MIB::maMoCoMeAmb + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.1.1.{{ $index }}' + descr: Ambient Temperature + index: 1 + - + oid: ECRESO-FM-TRANS-MIB::maMoCoMeIntTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.1.10.{{ $index }}' + descr: Internal Temperature + index: 2 + - + oid: ECRESO-FM-TRANS-MIB::maMoCoMeExcTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.1.11.{{ $index }}' + descr: Exciter Temperature + index: 3 + - + oid: ECRESO-FM-TRANS-MIB::maMoCoMePsuTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.1.9.{{ $index }}' + descr: PSU Temperature + index: 4 + state: + data: + - + oid: ECRESO-FM-TRANS-MIB::txGnRfOpmode + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.4.5.{{ $index }}' + descr: Operation Mode (TX) + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 0, graph: 0, descr: On } + - { value: 2, generic: 1, graph: 0, descr: Off } + - + oid: ECRESO-FM-TRANS-MIB::txGnGlLocalMode + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.1.4.{{ $index }}' + descr: LocalMode + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 1, graph: 0, descr: 'Local' } + - { value: 2, generic: 0, graph: 0, descr: 'Remote' } + - + oid: ECRESO-FM-TRANS-MIB::txGnGlStandby + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.1.3.{{ $index }}' + descr: Standby + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 1, graph: 0, descr: On } + - { value: 2, generic: 0, graph: 0, descr: Off } + - + oid: ECRESO-FM-TRANS-MIB::txGnAl1dB + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.2.9.{{ $index }}' + descr: '1 dB Alarm' + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::txGnAl3dB + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.2.1.{{ $index }}' + descr: '3 dB Alarm' + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::txGnAlFault + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.2.2.{{ $index }}' + descr: 'Fault Alarm' + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Fault' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::txGnAlWarning + num_oid: '.1.3.6.1.4.1.6404.3.1.2.7.1.2.3.{{ $index }}' + descr: 'Warning' + group: 'Device Status' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 1, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::maMoCoAlPsuTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.2.9.{{ $index }}' + descr: 'PSU Temperature Alarm' + group: 'Temperature Alarms' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::maMoCoAlIntTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.2.10.{{ $index }}' + descr: 'Internal Temperature Alarm' + group: 'Temperature Alarms' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::maMoCoAlExcTemp + num_oid: '.1.3.6.1.4.1.6404.3.1.2.11.1.3.2.11.{{ $index }}' + descr: 'Ambient Temperature Alarm' + group: 'Temperature Alarms' + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 2, graph: 0, descr: 'Alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'Ok' } + - + oid: ECRESO-FM-TRANS-MIB::inSeSelectAudio + num_oid: '.1.3.6.1.4.1.6404.3.1.2.4.2.1.7.{{ $index }}' + descr: 'Selected Audio Input' + group: 'Audio Input' + states: + - { value: 0, generic: 2, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 0, graph: 0, descr: 'Auto' } + - { value: 2, generic: 0, graph: 0, descr: 'Line1' } + - { value: 3, generic: 0, graph: 0, descr: 'Line2' } + - { value: 4, generic: 0, graph: 0, descr: 'AoIP' } + - { value: 5, generic: 0, graph: 0, descr: 'Tuner' } + - { value: 6, generic: 0, graph: 0, descr: 'MPX1' } + - { value: 7, generic: 0, graph: 0, descr: 'MPX2' } + - { value: 8, generic: 0, graph: 0, descr: 'AoIP1' } + - { value: 9, generic: 0, graph: 0, descr: 'AoIP2' } + - { value: 10, generic: 0, graph: 0, descr: 'Tuner1' } + - { value: 11, generic: 0, graph: 0, descr: 'Tuner2' } + - { value: 12, generic: 0, graph: 0, descr: 'Player' } + - { value: 13, generic: 0, graph: 0, descr: 'Generator' } + - { value: 14, generic: 0, graph: 0, descr: 'MPX3' } + - { value: 15, generic: 0, graph: 0, descr: 'MPX4' } + - { value: 17, generic: 0, graph: 0, descr: 'AES1' } + - { value: 18, generic: 0, graph: 0, descr: 'AES2' } + - { value: 19, generic: 0, graph: 0, descr: 'AES3' } + - { value: 20, generic: 0, graph: 0, descr: 'ANA1' } + - + oid: ECRESO-FM-TRANS-MIB::inSeCurrentAudio + num_oid: '.1.3.6.1.4.1.6404.3.1.2.4.2.1.8.{{ $index }}' + descr: 'Current Audio Input' + group: 'Audio Input' + states: + - { value: 0, generic: 2, graph: 0, descr: 'Undefined' } + - { value: 1, generic: 0, graph: 0, descr: 'Auto' } + - { value: 2, generic: 0, graph: 0, descr: 'Line1' } + - { value: 3, generic: 0, graph: 0, descr: 'Line2' } + - { value: 4, generic: 0, graph: 0, descr: 'AoIP' } + - { value: 5, generic: 0, graph: 0, descr: 'Tuner' } + - { value: 6, generic: 0, graph: 0, descr: 'MPX1' } + - { value: 7, generic: 0, graph: 0, descr: 'MPX2' } + - { value: 8, generic: 0, graph: 0, descr: 'AoIP1' } + - { value: 9, generic: 0, graph: 0, descr: 'AoIP2' } + - { value: 10, generic: 0, graph: 0, descr: 'Tuner1' } + - { value: 11, generic: 0, graph: 0, descr: 'Tuner2' } + - { value: 12, generic: 0, graph: 0, descr: 'Player' } + - { value: 13, generic: 0, graph: 0, descr: 'Generator' } + - { value: 14, generic: 0, graph: 0, descr: 'MPX3' } + - { value: 15, generic: 0, graph: 0, descr: 'MPX4' } + - { value: 17, generic: 0, graph: 0, descr: 'AES1' } + - { value: 18, generic: 0, graph: 0, descr: 'AES2' } + - { value: 19, generic: 0, graph: 0, descr: 'AES3' } + - { value: 20, generic: 0, graph: 0, descr: 'ANA1' } diff --git a/priv/profiles/os_discovery/edfa.yaml b/priv/profiles/os_discovery/edfa.yaml new file mode 100644 index 00000000..93aebdeb --- /dev/null +++ b/priv/profiles/os_discovery/edfa.yaml @@ -0,0 +1,131 @@ +mib: NSCRTV-ROOT +modules: + os: + hardware: NSCRTV-ROOT::commonDeviceModelNumber.1 + serial: NSCRTV-ROOT::commonDeviceSerialNumber.1 + sensors: + state: + data: + - + oid: commonDeviceResetCause + num_oid: '.1.3.6.1.4.1.17409.1.3.3.2.2.1.13.{{ $index }}' + descr: "Last Reset Cause" + group: Common + state_name: commonDeviceResetCause + states: + - { value: 1, generic: 3, graph: 1, descr: 'other' } + - { value: 2, generic: 2, graph: 1, descr: 'powerup' } + - { value: 3, generic: 1, graph: 1, descr: 'command' } + - { value: 4, generic: 1, graph: 1, descr: 'watchdog' } + - { value: 5, generic: 1, graph: 1, descr: 'craft' } + - + oid: commonDeviceTamperStatus + num_oid: '.1.3.6.1.4.1.17409.1.3.3.2.2.1.11.{{ $index }}' + descr: "Safety Switch" + group: Common + state_name: commonDeviceTamperStatus + states: + - { value: 1, generic: 1, graph: 1, descr: 'intact' } + - { value: 2, generic: 0, graph: 1, descr: 'compromised' } + - + oid: commonDeviceCraftStatus + num_oid: '.1.3.6.1.4.1.17409.1.3.3.2.2.1.14.{{ $index }}' + descr: "RS232 or RS485 Status" + group: Common + state_name: commonDeviceCraftStatus + states: + - { value: 1, generic: 2, graph: 1, descr: 'disconnected' } + - { value: 2, generic: 0, graph: 1, descr: 'connected' } + - + oid: powerSupplyStatusA + num_oid: '.1.3.6.1.4.1.17409.1.11.32.{{ $index }}' + descr: "Power Supply A" + group: Power + state_name: powerSupplyStatusA + states: + - { value: 0, generic: 3, graph: 1, descr: 'undefined' } + - { value: 1, generic: 0, graph: 1, descr: 'nominal' } + - { value: 2, generic: 2, graph: 1, descr: 'failure' } + - { value: 3, generic: 1, graph: 1, descr: 'notInstalled' } + - + oid: powerSupplyStatusB + num_oid: '.1.3.6.1.4.1.17409.1.11.33.{{ $index }}' + descr: "Power Supply B" + group: Power + state_name: powerSupplyStatusB + states: + - { value: 0, generic: 3, graph: 1, descr: 'undefined' } + - { value: 1, generic: 0, graph: 1, descr: 'nominal' } + - { value: 2, generic: 2, graph: 1, descr: 'failure' } + - { value: 3, generic: 1, graph: 1, descr: 'notInstalled' } + - + oid: oaDCPowerSupplyMode + num_oid: '.1.3.6.1.4.1.17409.1.11.6.{{ $index }}' + descr: "Power Supply Mode" + group: Power + state_name: oaDCPowerSupplyMode + states: + - { value: 1, generic: 0, graph: 1, descr: 'loadsharing' } + - { value: 2, generic: 0, graph: 1, descr: 'switchRedundant' } + - { value: 3, generic: 1, graph: 1, descr: 'aloneSupply' } + temperature: + data: + - + oid: commonDeviceInfoEntry + value: commonDeviceInternalTemperature + num_oid: '.1.3.6.1.4.1.17409.1.3.3.2.2.1.12.{{ $index }}' + index: 'commonDeviceInternalTemperature.{{ $index }}' + descr: Internal Temperature + group: Device + - + oid: oaPumpEntry + value: oaPumpTemp + num_oid: '.1.3.6.1.4.1.17409.1.11.4.1.4.{{ $index }}' + index: 'oaPumpTemp.{{ $index }}' + descr: "Laser Temperature {{ $index }}" + group: Laser + divisor: 10 + voltage: + data: + - + oid: oaDCPowerEntry + value: oaDCPowerVoltage + num_oid: '.1.3.6.1.4.1.17409.1.11.7.1.2.{{ $index }}' + index: 'oaDCPowerVoltage.{{ $index }}' + descr: oaDCPowerName + group: Power + divisor: 10 + current: + data: + - + oid: oaDCPowerEntry + value: oaDCPowerCurrent + num_oid: '.1.3.6.1.4.1.17409.1.11.7.1.3.{{ $index }}' + index: 'oaDCPowerCurrent.{{ $index }}' + descr: oaDCPowerName + group: Power + divisor: 100 + - + oid: oaPumpEntry + value: oaPumpBIAS + num_oid: '.1.3.6.1.4.1.17409.1.11.4.1.2.{{ $index }}' + index: 'oaPumpBIAS.{{ $index }}' + descr: "BIAS {{ $index }}" + group: Laser + multiplier: 100 + dbm: + data: + - + oid: oaOutputOpticalPower + num_oid: '.1.3.6.1.4.1.17409.1.11.2.{{ $index }}' + index: 'oaOutputOpticalPower.{{ $index }}' + descr: Total Output Optical Power + group: Output + divisor: 10 + - + oid: oaInputOpticalPower + num_oid: '.1.3.6.1.4.1.17409.1.11.3.{{ $index }}' + index: 'oaInputOpticalPower.{{ $index }}' + descr: Input Optical Power + group: Input + divisor: 10 diff --git a/priv/profiles/os_discovery/edfamux.yaml b/priv/profiles/os_discovery/edfamux.yaml new file mode 100644 index 00000000..f73b1c02 --- /dev/null +++ b/priv/profiles/os_discovery/edfamux.yaml @@ -0,0 +1,62 @@ +modules: + sensors: + dbm: + data: + - + oid: SO-MUX-MIB::preEdfaSeqTable.2 + value: SO-MUX-MIB::preEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.2.{{ $index }}' + index: 'prePowerGainValue.{{ $index }}' + descr: Gain Value + group: Pre + - + oid: SO-MUX-MIB::preEdfaSeqTable.3 + value: SO-MUX-MIB::preEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.2.{{ $index }}' + index: 'prePowerIn.{{ $index }}' + descr: Power In + group: Pre + - + oid: SO-MUX-MIB::preEdfaSeqTable.4 + value: SO-MUX-MIB::preEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.2.{{ $index }}' + index: 'prePowerOut.{{ $index }}' + descr: Power Out + group: Pre + - + oid: SO-MUX-MIB::postEdfaSeqTable.2 + value: SO-MUX-MIB::postEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.3.{{ $index }}' + index: 'postPowerGainValue.{{ $index }}' + descr: Gain Value + group: Post + - + oid: SO-MUX-MIB::postEdfaSeqTable.3 + value: SO-MUX-MIB::postEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.3.{{ $index }}' + index: 'postPowerIn.{{ $index }}' + descr: Power In + group: Post + - + oid: SO-MUX-MIB::postEdfaSeqTable.4 + value: SO-MUX-MIB::postEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.3.{{ $index }}' + index: 'postPowerOut.{{ $index }}' + descr: Power Out + group: Post + temperature: + data: + - + oid: SO-MUX-MIB::preEdfaSeqTable.5 + value: SO-MUX-MIB::preEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.2.{{ $index }}' + index: 'preTemperature.{{ $index }}' + descr: Temperature + group: Pre + - + oid: SO-MUX-MIB::postEdfaSeqTable.5 + value: SO-MUX-MIB::postEdfaSeqTable + num_oid: '.1.3.6.1.4.1.51628.1.3.{{ $index }}' + index: 'postTemperature.{{ $index }}' + descr: Temperature + group: Post diff --git a/priv/profiles/os_discovery/edgeos-ep.yaml b/priv/profiles/os_discovery/edgeos-ep.yaml new file mode 100644 index 00000000..b7c8a332 --- /dev/null +++ b/priv/profiles/os_discovery/edgeos-ep.yaml @@ -0,0 +1,128 @@ +mib: UBNT-EdgeMAX-MIB +modules: + os: + hardware: UBNT-EdgeMAX-MIB::ubntModel.0 + version: UBNT-EdgeMAX-MIB::ubntVersion.0 + processors: + data: + - + oid: ubntHostCpuLoad + num_oid: '.1.3.6.1.4.1.41112.1.4.8.3.{{ $index }}' + precision: 100 + sensors: + count: + data: + - + oid: ubntPsuBaysNumber + num_oid: '.1.3.6.1.4.1.41112.1.5.3.1.{{ $index }}' + descr: Number of PSU's + - + oid: ubntPsuBatteryQuantity + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.8.{{ $index }}' + descr: 'Number of batteries PSU {{ $index }}' + voltage: + data: + - + oid: ubntPowerOutVoltage + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.2.2.1.2.{{ $index }}' + descr: Output Voltage + - + oid: ubntPsuVoltage + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.5.{{ $index }}' + index: 'ubntPsuVoltage.{{ $index }}' + descr: 'Input Voltage PSU {{ $index }}' + charge: + data: + - + oid: ubntPsuBatteryChargeLevel + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.9.{{ $index }}' + index: 'ubntPsuBatteryChargeLevel.{{ $index }}' + descr: 'Charge percentage PSU {{ $index }}' + runtime: + data: + - + oid: ubntPsuBatteryTimeRemaining + divisor: 6000 + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.10.{{ $index }}' + index: 'ubntPsuBatteryTimeRemaining.{{ $index }}' + descr: 'Battery runtime remaining PSU {{ $index }}' + current: + data: + - + oid: ubntPowerOutCurrent + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.2.2.1.3.{{ $index }}' + descr: Output Current + power: + data: + - + oid: ubntPowerOutPower + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.2.2.1.4.{{ $index }}' + descr: Output power + state: + data: + - + oid: ubntPsuOperStatus + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.4.{{ $index }}' + low_limit: 0 + descr: 'PSU {{ $index }}' + states: + - { descr: Offline, graph: 0, value: 0, generic: 2 } + - { descr: Online, graph: 0, value: 1, generic: 0 } + - + oid: ubntPsuCharging + value: ubntPsuCharging + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.7.{{ $index }}' + descr: 'Charge status PSU {{ $index }}' + index: '{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 1 } + - { descr: Charging, graph: 0, value: 1, generic: 0 } + - { descr: Charging Off, graph: 0, value: 2, generic: 0 } + - + oid: ubntPsuStatus + value: ubntPsuStatus + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.3.{{ $index }}' + descr: 'PSU status {{ $index }}' + index: '{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 2 } + - { descr: Standby, graph: 0, value: 3, generic: 0 } + - + oid: ubntPsuType + value: ubntPsuType + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.2.{{ $index }}' + descr: 'PSU type {{ $index }}' + index: '{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 1 } + - { descr: AC, graph: 0, value: 1, generic: 0 } + - { descr: DC, graph: 0, value: 2, generic: 0 } + - { descr: POE, graph: 0, value: 3, generic: 0 } + - + oid: ubntPsuBatteryReplaceIndicator + value: ubntPsuBatteryReplaceIndicator + num_oid: '.1.3.6.1.4.1.41112.1.5.3.2.1.11.{{ $index }}' + descr: 'Battery indicator PSU {{ $index }}' + index: '{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 1 } + - { descr: OK, graph: 0, value: 1, generic: 0 } + - { descr: REPLACE, graph: 0, value: 2, generic: 1 } + temperature: + data: + - + oid: ubntThermTemperature + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.4.2.1.3.{{ $index }}' + index: 'ubntThermTemperature.{{ $index }}' + descr: 'Temperatures {{ $index }}' + low_limit: 0 + low_warn_limit: 5 + warn_limit: 35 + high_limit: 40 diff --git a/priv/profiles/os_discovery/edgeos.yaml b/priv/profiles/os_discovery/edgeos.yaml new file mode 100644 index 00000000..d20e1cd4 --- /dev/null +++ b/priv/profiles/os_discovery/edgeos.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/v(?\d+\.\d+\.\d+)/' + hardware: UBNT-EdgeMAX-MIB::ubntModel.0 + version: UBNT-EdgeMAX-MIB::ubntVersion.0 diff --git a/priv/profiles/os_discovery/edgeosolt.yaml b/priv/profiles/os_discovery/edgeosolt.yaml new file mode 100644 index 00000000..4e95ab32 --- /dev/null +++ b/priv/profiles/os_discovery/edgeosolt.yaml @@ -0,0 +1,73 @@ +mib: UBNT-UFIBER-MIB +modules: + os: + sysDescr_regex: '/v(?\d+\.\d+\.\d+)/' + hardware: UBNT-UFIBER-MIB::ubntModel.0 + version: UBNT-UFIBER-MIB::ubntVersion.0 + serial: UBNT-UFIBER-MIB::ubntSerialNumber.0 + + sensors: + state: + data: + - + oid: ubntSfpsTable + value: ubntSfpUp + num_oid: '.1.3.6.1.4.1.41112.1.5.7.2.1.3.{{ $index }}' + high_limit: 2 + descr: '{{ $ubntSfpName }}' + states: + - { descr: Up, graph: 0, value: 1, generic: 0 } + - { descr: Down, graph: 0, value: 2, generic: 2 } + - + oid: ubntOnusTable + value: ubntOnuOnline + num_oid: '.1.3.6.1.4.1.41112.1.5.6.2.1.3.{{ $index }}' + high_limit: 2 + descr: 'ONU {{ $ubntOnuName }} Connection State' + states: + - { descr: Up, graph: 0, value: 1, generic: 0 } + - { descr: Down, graph: 0, value: 2, generic: 2 } + count: + data: + - + oid: ubntOnusCount + num_oid: '.1.3.6.1.4.1.41112.1.5.6.1.{{ $index }}' + index: 'ubntOnusCount.{{ $index }}' + descr: "Number of ONU's" + temperature: + data: + - + oid: ubntThermsTable + value: ubntThermTemperature + divisor: 1000 + num_oid: '.1.3.6.1.4.1.41112.1.5.4.2.1.3.{{ $index }}' + index: 'ubntThermTemperature.{{ $index }}' + descr: 'Temperatures {{ $index }}' + fanspeed: + data: + - + oid: ubntFansTable + value: ubntFanRpm + num_oid: '.1.3.6.1.4.1.41112.1.5.5.2.1.3.{{ $index }}' + index: 'ubntFanRpm.{{ $index }}' + descr: 'Fan #{{ $index }}' + + + dbm: + data: + - + oid: ubntOnusTable + value: ubntOnuRxPower + num_oid: '.1.3.6.1.4.1.41112.1.5.6.2.1.9.{{ $index }}' + descr: "ONU {{ $ubntOnuName }} RX Power" + group: ONUs RX + index: 'rx-{{ $index }}' + divisor: 100 + - + oid: ubntOnusTable + value: ubntOnuTxPower + num_oid: '.1.3.6.1.4.1.41112.1.5.6.2.1.8.{{ $index }}' + descr: "ONU {{ $ubntOnuName }} TX Power" + group: ONUs TX + index: 'tx-{{ $index }}' + divisor: 100 diff --git a/priv/profiles/os_discovery/edgeswitch.yaml b/priv/profiles/os_discovery/edgeswitch.yaml new file mode 100644 index 00000000..7aa7530e --- /dev/null +++ b/priv/profiles/os_discovery/edgeswitch.yaml @@ -0,0 +1,75 @@ +mib: EdgeSwitch-BOXSERVICES-PRIVATE-MIB +modules: + mempools: + data: + - + total: EdgeSwitch-SWITCHING-MIB::agentSwitchCpuProcessMemAvailable + free: EdgeSwitch-SWITCHING-MIB::agentSwitchCpuProcessMemFree + precision: 1024 + os: + sysDescr_regex: '/^(?EdgeSwitch[ \d\w\-]*|EdgePoint Switch[ \d\w\-]*|US[ \d\w\-]*)(,)* (firmware )*(?\S*)(, Linux .*)*$/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 + sensors: + state: + data: + - + oid: boxServicesTempUnitEntry + value: boxServicesTempUnitState + num_oid: '.1.3.6.1.4.1.4413.1.1.43.1.15.1.2.{{ $index }}' + descr: 'Chassis state' + index: 'boxServicesTempUnitState.{{ $index }}' + states: + - { value: 0, descr: low, graph: 1, generic: 1 } + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: warning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notpresent, graph: 1, generic: 3 } + - { value: 6, descr: notoperational, graph: 1, generic: 2 } + - + oid: boxServicesTempSensorsEntry + value: boxServicesTempSensorState + num_oid: '.1.3.6.1.4.1.4413.1.1.43.1.8.1.4.{{ $index }}' + descr: 'Temp Sensor {{ $index }}' + index: 'boxServicesTempSensorState.{{ $index }}' + states: + - { value: 0, descr: low, graph: 1, generic: 1 } + - { value: 1, descr: normal, graph: 1, generic: 0 } + - { value: 2, descr: warning, graph: 1, generic: 1 } + - { value: 3, descr: critical, graph: 1, generic: 2 } + - { value: 4, descr: shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notpresent, graph: 1, generic: 3 } + - { value: 6, descr: notoperational, graph: 1, generic: 2 } + + - + oid: boxServicesFansEntry + value: boxServicesFanItemState + num_oid: '.1.3.6.1.4.1.4413.1.1.43.1.6.1.3.{{ $index }}' + descr: 'Fan {{ $index }}' + index: 'boxServicesFanItemState.{{ $index }}' + states: + - { value: 1, descr: notpresent, graph: 1, generic: 3 } + - { value: 2, descr: operational, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - { value: 4, descr: powering, graph: 1, generic: 0 } + - { value: 5, descr: nopower, graph: 1, generic: 2 } + - { value: 6, descr: notpowering, graph: 1, generic: 2 } + - { value: 7, descr: incompatible, graph: 1, generic: 1 } + + fanspeed: + data: + - + oid: boxServicesFansEntry + value: boxServicesFanSpeed + num_oid: '.1.3.6.1.4.1.4413.1.1.43.1.6.1.4.{{ $index }}' + index: 'boxServicesFanSpeed.{{ $index }}' + descr: 'Fan {{ $index }}' + + temperature: + data: + - + oid: boxServicesTempSensorsEntry + value: boxServicesTempSensorTemperature + num_oid: '.1.3.6.1.4.1.4413.1.1.43.1.8.1.5.{{ $index }}' + index: 'boxServicesTempSensorTemperature.{{ $index }}' + descr: 'Temperature {{ $index }}' diff --git a/priv/profiles/os_discovery/eds.yaml b/priv/profiles/os_discovery/eds.yaml new file mode 100644 index 00000000..7fcc5ea7 --- /dev/null +++ b/priv/profiles/os_discovery/eds.yaml @@ -0,0 +1,80 @@ +mib: EDS-MIB +modules: + os: + hardware: EDS-MIB::eProductName.0 + version: EDS-MIB::eFirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - owDeviceName + - owDS18B20Temperature + - owDeviceType + - owDS18B20Resolution + + count: + data: + - + oid: owDeviceNumActive + value: owDeviceNumActive + num_oid: '.1.3.6.1.4.1.31440.10.2.1.{{ $index }}' + descr: '1wire devices' + index: 'NumActive' + temperature: + data: + - + oid: owDS18B20Temperature + value: owDS18B20Temperature + num_oid: '.1.3.6.1.4.1.31440.10.5.1.1.{{ $index }}' + descr: '#{{ $index }}: {{ $owDeviceName }}' + index: 'owDS18B20Temperature{{ $index }}' + skip_values: + - + oid: owDS18B20Resolution + op: '=' + value: 0 + state: + data: + - + oid: owDeviceType + value: owDeviceType + num_oid: '.1.3.6.1.4.1.31440.10.3.1.2.{{ $index }}' + descr: '#{{ $index }}: {{ $owDeviceName }}' + state_name: owDeviceType + group: 'Device Types' + index: 'DeviceType{{ $index }}' + skip_values: + - + oid: owDeviceType + op: '=' + value: 0 + states: + - { descr: owNone, graph: 0, value: 0, generic: 3 } + - { descr: owUnknown, graph: 0, value: 1, generic: 3 } + - { descr: owDS2406, graph: 0, value: 2, generic: 0 } + - { descr: owDS18B20, graph: 0, value: 3, generic: 0 } + - { descr: owDS18S20, graph: 0, value: 4, generic: 0 } + - { descr: owDS2438, graph: 0, value: 5, generic: 0 } + - { descr: owDS2423, graph: 0, value: 6, generic: 0 } + - { descr: owDS2408, graph: 0, value: 7, generic: 0 } + - { descr: owDS2450, graph: 0, value: 8, generic: 0 } + - { descr: owEDS0064, graph: 0, value: 9, generic: 0 } + - { descr: owEDS0065, graph: 0, value: 10, generic: 0 } + - { descr: owEDS0066, graph: 0, value: 11, generic: 0 } + - { descr: owEDS0067, graph: 0, value: 12, generic: 0 } + - { descr: owEDS0068, graph: 0, value: 13, generic: 0 } + - { descr: owEDS0069, graph: 0, value: 14, generic: 0 } + - { descr: owEDS0070, graph: 0, value: 15, generic: 0 } + - { descr: owEDS0071, graph: 0, value: 16, generic: 0 } + - { descr: owEDS0080, graph: 0, value: 17, generic: 0 } + - { descr: owEDS0082, graph: 0, value: 18, generic: 0 } + - { descr: owEDS0083, graph: 0, value: 19, generic: 0 } + - { descr: owEDS0085, graph: 0, value: 20, generic: 0 } + - { descr: owEDS0090, graph: 0, value: 21, generic: 0 } + - { descr: owEDS0091, graph: 0, value: 22, generic: 0 } + - { descr: owEDS0092, graph: 0, value: 23, generic: 0 } + - { descr: owDS28EA00, graph: 0, value: 24, generic: 0 } + - { descr: owEDS0050, graph: 0, value: 25, generic: 0 } + - { descr: chassis, graph: 0, value: 30, generic: 0 } + diff --git a/priv/profiles/os_discovery/ees.yaml b/priv/profiles/os_discovery/ees.yaml new file mode 100644 index 00000000..f3f1bd04 --- /dev/null +++ b/priv/profiles/os_discovery/ees.yaml @@ -0,0 +1,207 @@ +mib: EES-POWER-MIB +modules: + os: + # Device header fields + hardware: .1.3.6.1.4.1.6302.2.1.1.2.0 + version: EES-POWER-MIB::identControllerFirmwareVersion.0 + serial: EES-POWER-MIB::identControllerSerialNumber.0 + sysName: .1.3.6.1.4.1.6302.2.1.1.4.0 + + sensors: + temperature: + data: + - oid: psTemperatureTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.7.3.1.2.{{ $index }}' + value: psTemperatureMeasurement + index: 'psTemperatureMeasurement.{{ $index }}' + divisor: 1000 + descr: 'Ambient {{ $psTemperatureName }}' + skip_values: + - { oid: psTemperatureType, op: '!=', value: '1' } + - { oid: psTemperatureMeasurement, op: '<', value: 0 } + - 2147483647 + + - oid: psTemperatureTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.7.3.1.2.{{ $index }}' + value: psTemperatureMeasurement + index: 'psTemperatureMeasurement.{{ $index }}' + divisor: 1000 + descr: 'Battery {{ $psTemperatureName }}' + skip_values: + - { oid: psTemperatureType, op: '!=', value: '2' } + - { oid: psTemperatureMeasurement, op: '<', value: 0 } + - 2147483647 + + voltage: + data: + - oid: systemVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.2.{{ $index }}' + divisor: 1000 + index: 'systemVoltage.0' + descr: 'System Voltage' + skip_values: 2147483647 + + - oid: psBatteryVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.5.1.{{ $index }}' + divisor: 1000 + index: 'psBatteryVoltage.0' + descr: 'Battery Voltage' + skip_values: 2147483647 + + - oid: psInputLineAVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.6.1.{{ $index }}' + divisor: 1000 + index: 'psInputLineAVoltage.0' + descr: 'Input Line A Voltage' + skip_values: 2147483647 + + - oid: psInputLineBVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.6.2.{{ $index }}' + divisor: 1000 + index: 'psInputLineBVoltage.0' + descr: 'Input Line B Voltage' + skip_values: 2147483647 + + - oid: psInputLineCVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.6.3.{{ $index }}' + divisor: 1000 + index: 'psInputLineCVoltage.0' + descr: 'Input Line C Voltage' + skip_values: 2147483647 + + - oid: psConverterVoltage + num_oid: '.1.3.6.1.4.1.6302.2.1.2.13.4.{{ $index }}' + divisor: 1000 + index: 'psConverterVoltage.0' + descr: 'Converter Voltage' + skip_values: 2147483647 + + current: + data: + - oid: systemCurrent + num_oid: '.1.3.6.1.4.1.6302.2.1.2.3.{{ $index }}' + divisor: 1000 + index: 'systemCurrent.0' + descr: 'System Current' + skip_values: 2147483647 + + - oid: psTotalBatteryCurrent + num_oid: '.1.3.6.1.4.1.6302.2.1.2.5.2.{{ $index }}' + divisor: 1000 + index: 'psTotalBatteryCurrent.0' + descr: 'Battery Current' + skip_values: 2147483647 + + - oid: psBatteryTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.5.5.1.2.{{ $index }}' + value: psBatteryCurrent + divisor: 1000 + index: 'psBatteryTable.{{ $index }}' + descr: '{{ $psBatteryName }} Current' + + - oid: psRectifierTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.11.4.1.6.{{ $index }}' + value: psRectifierCurrent + divisor: 1000 + index: 'psRectifierTable.{{ $index }}' + descr: '{{ $psRectifierIdent }} Current' + + - oid: psDistributionLoadTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.12.2.1.2.{{ $index }}' + value: psDistributionLoadCurrent + divisor: 1000 + index: 'psDistributionLoadTable.{{ $index }}' + descr: '{{ $psDistributionLoadName }} Current' + + - oid: psDistributionGeneralTable + num_oid: '.1.3.6.1.4.1.6302.2.1.2.12.3.1.2.{{ $index }}' + value: psDistributionGeneralCurrent + divisor: 1000 + index: 'psDistributionGeneralTable.{{ $index }}' + descr: '{{ $psDistributionGeneralName }} Current' + + - oid: psTotalConverterCurrent + num_oid: '.1.3.6.1.4.1.6302.2.1.2.13.5.{{ $index }}' + divisor: 1000 + index: 'psTotalConverterCurrent.0' + descr: 'Converter Current' + skip_values: 2147483647 + + percent: + data: + - oid: systemUsedCapacity + num_oid: '.1.3.6.1.4.1.6302.2.1.2.4.{{ $index }}' + index: 'systemUsedCapacity.0' + descr: 'System Used Capacity' + skip_values: 2147483647 + + - oid: rectifiersUsedCapacity + num_oid: '.1.3.6.1.4.1.6302.2.1.2.11.3.{{ $index }}' + index: 'rectifiersUsedCapacity.0' + descr: 'Rectifiers Used Capacity' + skip_values: 2147483647 + + - oid: psBatteryCapacity + num_oid: '.1.3.6.1.4.1.6302.2.1.2.5.3.{{ $index }}' + index: 'psBatteryCapacity.0' + descr: 'Battery Capacity' + skip_values: 2147483647 + + state: + data: + - oid: systemStatus + state_name: systemStatus + num_oid: '.1.3.6.1.4.1.6302.2.1.2.1.{{ $index }}' + descr: 'System Status' + index: 'systemStatus.0' + states: + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: warning, graph: 1, value: 3, generic: 1 } + - { descr: minor, graph: 1, value: 4, generic: 1 } + - { descr: major, graph: 1, value: 5, generic: 2 } + - { descr: critical, graph: 1, value: 6, generic: 2 } + - { descr: unmanaged, graph: 1, value: 7, generic: 1 } + - { descr: restricted,graph: 1, value: 8, generic: 1 } + - { descr: testing, graph: 1, value: 9, generic: 3 } + - { descr: disabled, graph: 1, value: 10, generic: 1 } + + - oid: psStatusCommunication + state_name: psStatusCommunication + num_oid: '.1.3.6.1.4.1.6302.2.1.2.8.{{ $index }}' + descr: 'Communication Status' + index: 'psStatusCommunication.0' + states: + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: normal, graph: 1, value: 2, generic: 0 } + - { descr: interrupt, graph: 1, value: 3, generic: 2 } + + - oid: psStatusBatteryMode + state_name: psStatusBatteryMode + num_oid: '.1.3.6.1.4.1.6302.2.1.2.9.{{ $index }}' + descr: 'Battery Status' + index: 'psStatusBatteryMode.0' + states: + - { descr: floatCharging, graph: 1, value: 2, generic: 0 } + - { descr: acFail, graph: 1, value: 8, generic: 2 } + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: shortTest, graph: 1, value: 3, generic: 3 } + - { descr: bcForTest, graph: 1, value: 4, generic: 3 } + - { descr: manualTesting, graph: 1, value: 5, generic: 3 } + - { descr: planTesting, graph: 1, value: 6, generic: 3 } + - { descr: acFailTesting, graph: 1, value: 7, generic: 3 } + - { descr: manualBC, graph: 1, value: 9, generic: 3 } + - { descr: autoBC, graph: 1, value: 10, generic: 3 } + - { descr: cyclicBC, graph: 1, value: 11, generic: 3 } + - { descr: masterBC, graph: 1, value: 12, generic: 3 } + - { descr: masterBT, graph: 1, value: 13, generic: 3 } + + - oid: psRectifierTable + state_name: psRectifierFail + num_oid: '.1.3.6.1.4.1.6302.2.1.2.11.4.1.8.{{ $index }}' + value: psRectifierFail + index: 'psRectifierFail.{{ $index }}' + descr: '{{ $psRectifierIdent }} Fail' + states: + - { descr: fail, graph: 1, value: 1, generic: 2 } + - { descr: normal, graph: 1, value: 2, generic: 0 } diff --git a/priv/profiles/os_discovery/ekinops.yaml b/priv/profiles/os_discovery/ekinops.yaml new file mode 100644 index 00000000..5a79b370 --- /dev/null +++ b/priv/profiles/os_discovery/ekinops.yaml @@ -0,0 +1,20 @@ +mib: EKINOPS-MGNT2-MIB +modules: + sensors: + state: + data: + - + oid: mgnt2GigmBoardTable + value: mgnt2SlotStatus + num_oid: '.1.3.6.1.4.1.20044.7.1.2.1.1.10.{{ $index }}' + descr: mgnt2Name + index: 'mgnt2IndexBoards.{{ $index }}' + state_name: Mgnt2SlotStatus + states: + - { value: 0, generic: 0, graph: 1, descr: 'slot open' } + - { value: 1, generic: 0, graph: 1, descr: 'pmReady' } + - { value: 2, generic: 2, graph: 1, descr: 'pmReset' } + - { value: 3, generic: 1, graph: 1, descr: 'pmLoad' } + - { value: 4, generic: 0, graph: 1, descr: 'pmPassive' } + - { value: 5, generic: 3, graph: 1, descr: 'pmUnknown' } + - { value: 6, generic: 1, graph: 1, descr: 'pmNotReady' } diff --git a/priv/profiles/os_discovery/elg-ipecs-es.yaml b/priv/profiles/os_discovery/elg-ipecs-es.yaml new file mode 100644 index 00000000..b333d370 --- /dev/null +++ b/priv/profiles/os_discovery/elg-ipecs-es.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?.+)/' diff --git a/priv/profiles/os_discovery/elg-ipecs-ucp.yaml b/priv/profiles/os_discovery/elg-ipecs-ucp.yaml new file mode 100644 index 00000000..9b96f3fd --- /dev/null +++ b/priv/profiles/os_discovery/elg-ipecs-ucp.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/,(?[^,]+),/' diff --git a/priv/profiles/os_discovery/eltek-webpower.yaml b/priv/profiles/os_discovery/eltek-webpower.yaml new file mode 100644 index 00000000..e8e87581 --- /dev/null +++ b/priv/profiles/os_discovery/eltek-webpower.yaml @@ -0,0 +1,272 @@ +mib: SNMPv2-MIB:ELTEK-DISTRIBUTED-MIB +modules: + os: + sysDescr_regex: '/ (?\d+\.[\d.]+)/' + features: + - ELTEK-DISTRIBUTED-MIB::rectifierStatusType.1 + - ELTEK-DISTRIBUTED-MIB::batteryName.0 + features_template: 'Rectifier type: {{ ELTEK-DISTRIBUTED-MIB::rectifierStatusType.1 }}, Battery name: {{ ELTEK-DISTRIBUTED-MIB::batteryName.0 }}' + hardware: ELTEK-DISTRIBUTED-MIB::systemSiteInfoControllerType.0 + serial: ELTEK-DISTRIBUTED-MIB::systemSiteInfoSystemSeriaNum.0 + sensors: + runtime: + data: + - + oid: batteryCapacityData + value: batteryTimeToDisconnect + num_oid: '.1.3.6.1.4.1.12148.9.3.20.1.{{ $index }}' + index: 'batteryTimeToDisconnect.{{ $index }}' + descr: Battery time to disconnect + state: + data: + - + oid: dcSystem + value: systemOperationalStatus + num_oid: '.1.3.6.1.4.1.12148.9.2.2.{{ $index }}' + descr: System operational status + state_name: systemOperationalStatus.{{ $index }} + states: + - { value: 0, generic: 0, graph: 0, descr: Float - voltage regulated } + - { value: 1, generic: 0, graph: 0, descr: Float - temp. comp. regulated } + - { value: 2, generic: 1, graph: 0, descr: Boost } + - { value: 3, generic: 2, graph: 0, descr: Battery test } + - + oid: dcPlant + value: systemNominalVoltage + num_oid: '.1.3.6.1.4.1.12148.9.2.1.4.{{ $index }}' + descr: The nominal voltage rating + state_name: systemNominalVoltage.{{ $index }} + states: + - { value: 0, generic: 3, graph: 0, descr: 48V } + - { value: 1, generic: 3, graph: 0, descr: 24V } + - { value: 2, generic: 3, graph: 0, descr: N/A } + - { value: 3, generic: 3, graph: 0, descr: N/A } + - { value: 4, generic: 3, graph: 0, descr: 60V } + - + oid: battery + value: batteryBreakerStatus + num_oid: '.1.3.6.1.4.1.12148.9.3.5.{{ $index }}' + descr: Battery breaker status + state_name: batteryBreakerStatus.{{ $index }} + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: Alarm } + - + oid: rectifier + value: rectifierRectifiersActive + num_oid: '.1.3.6.1.4.1.12148.9.5.2.{{ $index }}' + state_name: rectifierRectifiersActive + descr: Rectifiers active + states: + - { value: 1, generic: 3, graph: 0, descr: '1' } + - { value: 2, generic: 3, graph: 0, descr: '2' } + - { value: 3, generic: 3, graph: 0, descr: '3' } + - { value: 4, generic: 3, graph: 0, descr: '4' } + - { value: 5, generic: 3, graph: 0, descr: '5' } + - { value: 6, generic: 3, graph: 0, descr: '6' } + - { value: 7, generic: 3, graph: 0, descr: '7' } + - { value: 8, generic: 3, graph: 0, descr: '8' } + - { value: 9, generic: 3, graph: 0, descr: '9' } + - { value: 10, generic: 3, graph: 0, descr: '10' } + - { value: 11, generic: 3, graph: 0, descr: '11' } + - { value: 12, generic: 3, graph: 0, descr: '12' } + - { value: 13, generic: 3, graph: 0, descr: '13' } + - { value: 14, generic: 3, graph: 0, descr: '14' } + - { value: 15, generic: 3, graph: 0, descr: '15' } + - { value: 16, generic: 3, graph: 0, descr: '16' } + - { value: 17, generic: 3, graph: 0, descr: '17' } + - { value: 18, generic: 3, graph: 0, descr: '18' } + - { value: 19, generic: 3, graph: 0, descr: '19' } + - { value: 20, generic: 3, graph: 0, descr: '20' } + - + oid: rectifier + value: rectifierInstalledRectifiers + num_oid: '.1.3.6.1.4.1.12148.9.5.1.{{ $index }}' + state_name: rectifierInstalledRectifiers + descr: Rectifiers installed + states: + - { value: 1, generic: 3, graph: 0, descr: '1' } + - { value: 2, generic: 3, graph: 0, descr: '2' } + - { value: 3, generic: 3, graph: 0, descr: '3' } + - { value: 4, generic: 3, graph: 0, descr: '4' } + - { value: 5, generic: 3, graph: 0, descr: '5' } + - { value: 6, generic: 3, graph: 0, descr: '6' } + - { value: 7, generic: 3, graph: 0, descr: '7' } + - { value: 8, generic: 3, graph: 0, descr: '8' } + - { value: 9, generic: 3, graph: 0, descr: '9' } + - { value: 10, generic: 3, graph: 0, descr: '10' } + - { value: 11, generic: 3, graph: 0, descr: '11' } + - { value: 12, generic: 3, graph: 0, descr: '12' } + - { value: 13, generic: 3, graph: 0, descr: '13' } + - { value: 14, generic: 3, graph: 0, descr: '14' } + - { value: 15, generic: 3, graph: 0, descr: '15' } + - { value: 16, generic: 3, graph: 0, descr: '16' } + - { value: 17, generic: 3, graph: 0, descr: '17' } + - { value: 18, generic: 3, graph: 0, descr: '18' } + - { value: 19, generic: 3, graph: 0, descr: '19' } + - { value: 20, generic: 3, graph: 0, descr: '20' } + - + oid: rectifierStatusEntry + value: rectifierStatusStatus + num_oid: '.1.3.6.1.4.1.12148.9.5.5.2.1.2.{{ $index }}' + descr: Rectifier {{ $index }} status + state_name: rectifierStatusStatus.{{ $index }} + skip_value_lt: 1 + states: + - { value: 0, generic: 0, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: normal } + - { value: 2, generic: 2, graph: 0, descr: alarm } + - { value: 3, generic: 1, graph: 0, descr: not used } + - { value: 4, generic: 3, graph: 0, descr: disabled } + voltage: + data: + - + oid: acDistribution + value: acVoltage1 + num_oid: '.1.3.6.1.4.1.12148.9.6.1.{{ $index }}' + index: 'acVoltage1.{{ $index }}' + descr: AC L1 input + - + oid: acDistribution + value: acVoltage2 + num_oid: '.1.3.6.1.4.1.12148.9.6.2.{{ $index }}' + index: 'acVoltage2.{{ $index }}' + descr: AC L2 input + - + oid: acDistribution + value: acVoltage3 + num_oid: '.1.3.6.1.4.1.12148.9.6.3.{{ $index }}' + index: 'acVoltage3.{{ $index }}' + descr: AC L3 input + - + oid: rectifierStatusEntry + value: rectifierStatusOutputVoltage + num_oid: '.1.3.6.1.4.1.12148.9.5.5.2.1.4.{{ $index }}' + index: 'rectifierStatusOutputVoltage.{{ $index }}' + descr: Rectifier{{ $index }} out + divisor: 100 + skip_value_lt: 1 + - + oid: batteryVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.2.{{ $index }}' + index: 'batteryVoltage.{{ $index }}' + descr: Battery bank + divisor: 100 + - + oid: batteryBanksSymmetry1deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.4.{{ $index }}' + index: 'batteryBanksSymmetry1deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 1 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry2deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.7.{{ $index }}' + index: 'batteryBanksSymmetry2deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 2 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry3deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.10.{{ $index }}' + index: 'batteryBanksSymmetry3deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 3 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry4deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.13.{{ $index }}' + index: 'batteryBanksSymmetry4deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 4 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry5deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.16.{{ $index }}' + index: 'batteryBanksSymmetry5deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 5 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry6deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.19.{{ $index }}' + index: 'batteryBanksSymmetry6deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 6 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry7deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.22.{{ $index }}' + index: 'batteryBanksSymmetry7deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 7 + divisor: 100 + skip_value_lt: 1 + - + oid: batteryBanksSymmetry8deltaVoltage + num_oid: '.1.3.6.1.4.1.12148.9.3.19.3.1.25.{{ $index }}' + index: 'batteryBanksSymmetry8deltaVoltage.{{ $index }}' + descr: ΔV Battery banks symmetry 8 + divisor: 100 + skip_value_lt: 1 + temperature: + data: + - + oid: rectifierStatusEntry + value: rectifierStatusTemp + num_oid: '.1.3.6.1.4.1.12148.9.5.5.2.1.5.{{ $index }}' + index: 'rectifierStatusTemp.{{ $index }}' + descr: Rectifier {{ $index }} + divisor: 1 + skip_value_lt: 1 + load: + data: + - + oid: rectifier + value: rectifierUtilization + num_oid: '.1.3.6.1.4.1.12148.9.5.4.{{ $index }}' + index: 'rectifierUtilization.{{ $index }}' + descr: Rectifier current utilization + current: + data: + - + oid: loadDistribution + value: loadDistributionCurrent + num_oid: '.1.3.6.1.4.1.12148.9.4.1.{{ $index }}' + index: 'loadDistributionCurrent.{{ $index }}' + descr: Distribution total out + divisor: 1 + - + oid: rectifierStatusEntry + value: rectifierStatusOutputCurrent + num_oid: '.1.3.6.1.4.1.12148.9.5.5.2.1.3.{{ $index }}' + index: 'rectifierStatusOutputCurrent.{{ $index }}' + descr: Rectifier {{ $index }} out + divisor: 10 + skip_value_lt: 1 + - + oid: battery + value: batteryCurrent + num_oid: '.1.3.6.1.4.1.12148.9.3.3.{{ $index }}' + index: 'batteryCurrent.{{ $index }}' + descr: Battery (charge/drain) + divisor: 1 + - + oid: batteryCapacityData + value: batteryCapacityLeft + num_oid: '.1.3.6.1.4.1.12148.9.3.20.2.{{ $index }}' + index: 'batteryCapacityLeft.{{ $index }}' + descr: Battery remaining capacity (Ah) + - + oid: batteryCapacityData + value: batteryCapacityUsed + num_oid: '.1.3.6.1.4.1.12148.9.3.20.3.{{ $index }}' + index: 'batteryCapacityUsed.{{ $index }}' + descr: Battery capacity used (Ah) + percent: + data: + - + oid: batteryCapacityData + value: batteryQuality + num_oid: '.1.3.6.1.4.1.12148.9.3.20.5.{{ $index }}' + index: 'batteryQuality.{{ $index }}' + descr: Battery Quality diff --git a/priv/profiles/os_discovery/eltex-mes21xx.yaml b/priv/profiles/os_discovery/eltex-mes21xx.yaml new file mode 100644 index 00000000..957e8625 --- /dev/null +++ b/priv/profiles/os_discovery/eltex-mes21xx.yaml @@ -0,0 +1,71 @@ +mib: RADLAN-Physicaldescription-MIB:RADLAN-HWENVIROMENT:RADLAN-PHY-MIB:RADLAN-rndMng +modules: + os: + features: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamSoftwareVersion.1 + hardware: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamModelName.1 + serial: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamSerialNum.1 + processors: + data: + - + oid: rlCpuUtilDuringLast5Minutes + num_oid: '.1.3.6.1.4.1.89.1.9.{{ $index }}' + index: 0 + type: eltex-cpu + mempools: + data: + - + total: .1.3.6.1.4.1.35265.1.23.1.11.1.1.1.2.1 + free: .1.3.6.1.4.1.35265.1.23.1.11.1.1.1.3.1 + descr: 'System Memory' + precision: 1024 + storage: + data: + - + descr: Internal Flash + free: RADLAN-File::rlFileFreeSizeOfFlash + size: RADLAN-File::rlFileTotalSizeOfFlash + + sensors: + additional_oids: + data: + - + oid: + - ifName + state: + data: + - + oid: rlEnvMonFanStatusTable + value: rlEnvMonFanState + num_oid: '.1.3.6.1.4.1.89.83.1.1.1.3.{{ $index }}' + descr: rlEnvMonFanStatusDescr + group: 'Switch fan' + state_name: rlEnvMonFanState + states: + - { value: 1, generic: 0, graph: 1, descr: 'Ok' } + - { value: 5, generic: 3, graph: 1, descr: 'Not Present' } + - { value: 6, generic: 2, graph: 1, descr: 'Not Operational' } + - + oid: rlPhyTestGetTable + value: rlPhyTestGetResult + num_oid: '.1.3.6.1.4.1.89.90.1.2.1.3.{{ $index }}' + group: 'transceiver' + index: 'SfpLOS{{ $subindex0 }}' + descr: 'SfpLOS-{{ $ifName:0 }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + states: + - { value: 0, descr: 'False', graph: 1, generic: 0 } + - { value: 1, descr: 'True', graph: 1, generic: 2 } + skip_values: + - + oid: index + op: 'not_ends' + value: '.11' # rlPhyTestTableLOS + temperature: + data: + - + oid: rlPhdUnitEnvParamEntry + value: rlPhdUnitEnvParamTempSensorValue + num_oid: '.1.3.6.1.4.1.89.53.15.1.9.{{ $index }}' + descr: 'Chassis #{{ $index }} Temp' + index: 'mesChassisTemp.{{ $index }}' diff --git a/priv/profiles/os_discovery/eltex-mes23xx.yaml b/priv/profiles/os_discovery/eltex-mes23xx.yaml new file mode 100644 index 00000000..5cad36c3 --- /dev/null +++ b/priv/profiles/os_discovery/eltex-mes23xx.yaml @@ -0,0 +1,157 @@ +mib: RADLAN-Physicaldescription-MIB:RADLAN-HWENVIROMENT:RADLAN-PHY-MIB:RADLAN-rndMng:ELTEX-MES-HWENVIROMENT-MIB:MARVELL-POE-MIB +modules: + os: + features: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamSoftwareVersion.1 + hardware: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamModelName.1 + serial: RADLAN-Physicaldescription-MIB::rlPhdUnitGenParamSerialNum.1 + processors: + data: + - + oid: rlCpuUtilDuringLast5Minutes + num_oid: '.1.3.6.1.4.1.89.1.9.{{ $index }}' + + mempools: + data: + - + total: .1.3.6.1.4.1.35265.41.1.2.1.1.3.0 + free: .1.3.6.1.4.1.35265.41.1.2.1.1.7.0 + descr: 'System Memory' + + storage: + data: + - + descr: Internal Flash + free: RADLAN-File::rlFileFreeSizeOfFlash + size: RADLAN-File::rlFileTotalSizeOfFlash + + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - ifName + - rlPhdUnitEnvParamEntry + state: + data: + - + oid: rlEnvMonFanStatusTable + value: rlEnvMonFanState + num_oid: '.1.3.6.1.4.1.89.83.1.1.1.3.{{ $index }}' + descr: '{{ rlEnvMonFanStatusDescr }} status' + group: 'Chassis FAN' + index: 'mesFanStatus.{{ $index }}' + states: + - { value: 1, descr: OK, graph: 1, generic: 0 } + - { value: 5, descr: Missing, graph: 1, generic: 3 } + - + oid: eltEnvMonBatteryStatusEntry + value: eltEnvMonBatteryState + num_oid: '.1.3.6.1.4.1.35265.1.23.11.1.1.2.{{ $index }}' + descr: 'Backup battery status' + group: 'Chassis PSU' + index: 'mesBattStatus.{{ $index }}' + states: + - { value: 1, descr: Charged, graph: 1, generic: 0 } + - { value: 2, descr: Discharged, graph: 1, generic: 2 } + - { value: 3, descr: Low, graph: 1, generic: 1 } + - { value: 5, descr: Missing, graph: 1, generic: 3 } + - { value: 6, descr: BattFuseError, graph: 1, generic: 2 } + - { value: 7, descr: Charging, graph: 1, generic: 1 } + - + oid: rlPhdUnitEnvParamEntry + value: rlPhdUnitEnvParamMainPSStatus + num_oid: '.1.3.6.1.4.1.89.53.15.1.2.{{ $index }}' + descr: 'Chassis#{{ $index }} PSU#1 status' + group: 'Chassis PSU' + index: 'mesMainPsuStatus.{{ $index }}' + states: + - { value: 1, descr: Normal, graph: 1, generic: 0 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Critical, graph: 1, generic: 2 } + - { value: 4, descr: Shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notPresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 3 } + - { value: 7, descr: restore, graph: 1, generic: 2 } + - { value: 8, descr: notAvailable, graph: 1, generic: 3 } + - { value: 9, descr: backingUp, graph: 1, generic: 1 } + - + oid: rlPhdUnitEnvParamEntry + value: rlPhdUnitEnvParamRedundantPSStatus + num_oid: '.1.3.6.1.4.1.89.53.15.1.3.{{ $index }}' + group: 'Chassis PSU' + descr: 'Chassis#{{ $index }} PSU#2 status' + index: 'mesBackupPsuStatus.{{ $index }}' + states: + - { value: 1, descr: Normal, graph: 1, generic: 0 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Critical, graph: 1, generic: 2 } + - { value: 4, descr: Shutdown, graph: 1, generic: 2 } + - { value: 5, descr: notPresent, graph: 1, generic: 3 } + - { value: 6, descr: notFunctioning, graph: 1, generic: 3 } + - { value: 7, descr: restore, graph: 1, generic: 2 } + - { value: 8, descr: notAvailable, graph: 1, generic: 3 } + - { value: 9, descr: backingUp, graph: 1, generic: 1 } + - + oid: rlPhdUnitEnvParamEntry + value: rlPhdUnitEnvParamMonitorTemperatureStatus + num_oid: '.1.3.6.1.4.1.89.53.15.1.16.{{ $index }}' + group: 'Chassis TEMP' + descr: 'Chassis#{{ $index }} TEMP status' + index: 'mesChassisTempStatus.{{ $index }}' + states: + - { value: 1, descr: Normal, graph: 1, generic: 0 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Critical, graph: 1, generic: 2 } + - + oid: rlPhyTestGetTable + value: rlPhyTestGetResult + num_oid: '.1.3.6.1.4.1.89.90.1.2.1.3.{{ $index }}' + group: 'transceiver' + index: 'SfpLOS{{ $subindex0 }}' + descr: 'SfpLOS-{{ $ifName:0 }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: ports + states: + - { value: 0, descr: 'False', graph: 1, generic: 0 } + - { value: 1, descr: 'True', graph: 1, generic: 2 } + skip_values: + - + oid: index + op: not_ends + value: '.11' # rlPhyTestTableLOS + temperature: + data: + - + oid: rlPhdUnitEnvParamEntry + value: rlPhdUnitEnvParamTempSensorValue + num_oid: '.1.3.6.1.4.1.89.53.15.1.10.{{ $index }}' + group: 'Chassis' + descr: 'Chassis#{{ $index }} Temp' + index: 'mesChassisTemp.{{ $index }}' + - + oid: rlPethPowerPseEntry + value: rlPethPowerPseTemperatureSensor + num_oid: '.1.3.6.1.4.1.89.108.3.1.6.{{ $index }}' + group: 'PoE' + descr: 'Chassis#{{ $index }} PoE Temp' + index: 'mesChassisPoeTemp.{{ $index }}' + skip_value_lt: 1 + count: + data: + - + oid: rlPhdNumberOfUnits + num_oid: '.1.3.6.1.4.1.89.53.8.{{ $index }}' + descr: 'Stacked Chassis' + group: 'Chassis Count' + charge: + data: + - + oid: eltEnvMonBatteryStatusCharge + num_oid: '.1.3.6.1.4.1.35265.1.23.11.1.1.3.{{ $index }}' + descr: 'Battery Charge' + skip_value_gt: 100 + low_limit: 10 + low_warn_limit: 50 + warn_limit: 101 + high_limit: 102 diff --git a/priv/profiles/os_discovery/eltex-mes24xx.yaml b/priv/profiles/os_discovery/eltex-mes24xx.yaml new file mode 100644 index 00000000..07250076 --- /dev/null +++ b/priv/profiles/os_discovery/eltex-mes24xx.yaml @@ -0,0 +1,83 @@ +mib: ELTEX-MES-ISS-CPU-UTIL-MIB:ELTEX-MES-ISS-ENV-MIB:ARICENT-ISS-MIB +modules: + os: + serial: .1.3.6.1.4.1.2076.81.1.120.0 + sysDescr_regex: '/(?\S+\s\S+)/' + version: ENTITY-MIB::entPhysicalFirmwareRev.1 + features: ENTITY-MIB::entPhysicalSoftwareRev.1 + + processors: + data: + - + oid: eltMesIssCpuUtilLastMinute + num_oid: '.1.3.6.1.4.1.35265.1.139.6.1.1.2.2.{{ $index }}' + mempools: + data: + - + total: ARICENT-ISS-MIB::issSwitchMaxRAMUsage + used: ARICENT-ISS-MIB::issSwitchCurrentRAMUsage + descr: 'System Memory' + storage: + data: + - + descr: Internal Flash + percent_used: ARICENT-ISS-MIB::issSwitchCurrentFlashUsage + sensors: + additional_oids: + data: + - + oid: + - eltMesIssBatteryStatusTable + state: + data: + - + oid: eltMesIssBatteryStatusTable + value: eltMesIssBatteryStatus + num_oid: '.1.3.6.1.4.1.35265.1.139.12.1.3.1.1.2.{{ $index }}' + descr: 'Backup battery status' + group: 'Chassis PSU' + index: 'eltMesIssBatteryStatus.{{ $index }}' + states: + - { value: 1, descr: NotSupported, graph: 1, generic: 3 } + - { value: 2, descr: Missing, graph: 1, generic: 2 } + - { value: 3, descr: Charging, graph: 1, generic: 1 } + - { value: 4, descr: Low, graph: 1, generic: 2 } + - { value: 5, descr: Discharged, graph: 1, generic: 2 } + - { value: 6, descr: Charged, graph: 1, generic: 0 } + charge: + data: + - + oid: eltMesIssBatteryStatusTable + value: eltMesIssBatteryLevel + num_oid: '.1.3.6.1.4.1.35265.1.139.12.1.3.1.1.3.{{ $index }}' + descr: 'Backup battery level' + index: 'eltMesIssBatteryLevel.{{ $index }}' + skip_values: + - + oid: eltMesIssBatteryStatus + op: '<' + value: '3' + fanspeed: + data: + - + oid: eltMesIssEnvFanTable + value: eltMesIssEnvFanSpeedLevel + num_oid: '.1.3.6.1.4.1.35265.1.139.12.1.5.1.1.2.{{ $index }}' + descr: 'Fan {{ $index }}' + index: 'eltMesIssEnvFanSpeedLevel.{{ $index }}' + voltage: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentPowerSupply + value: ARICENT-ISS-MIB::issSwitchCurrentPowerSupply + num_oid: '.1.3.6.1.4.1.2076.81.1.71.{{ $index }}' + descr: 'Main PSU' + index: 'issSwitchCurrentPowerSupply.{{ $index }}' + temperature: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentTemperature + value: ARICENT-ISS-MIB::issSwitchCurrentTemperature + num_oid: '.1.3.6.1.4.1.2076.81.1.66.{{ $index }}' + descr: 'Chassis' + index: 'issSwitchCurrentTemperature.{{ $index }}' diff --git a/priv/profiles/os_discovery/eltex-olt.yaml b/priv/profiles/os_discovery/eltex-olt.yaml new file mode 100644 index 00000000..6b832f8c --- /dev/null +++ b/priv/profiles/os_discovery/eltex-olt.yaml @@ -0,0 +1,13 @@ +mib: ELTEX-LTP8X-STANDALONE +modules: + os: + hardware: ELTEX-LTP8X-STANDALONE::ltp8xFirmwareRevision.0 + hardware_regex: '/(?[^:]*):/' + version: ELTEX-LTP8X-STANDALONE::ltp8xFirmwareRevision.0 + version_regex: '/(software version| on)(?.*)/' + processors: + data: + - + oid: ltp8xCPULoadAverage5Minutes + num_oid: '.1.3.6.1.4.1.35265.1.22.1.10.4.{{ $index }}' + precision: 10 diff --git a/priv/profiles/os_discovery/endrun.yaml b/priv/profiles/os_discovery/endrun.yaml new file mode 100644 index 00000000..e489934b --- /dev/null +++ b/priv/profiles/os_discovery/endrun.yaml @@ -0,0 +1,12 @@ +mib: TEMPUSLXUNISON-MIB::MERIDIAN2-MIB::SONOMA-MIB +modules: + os: + version_regex: '/(?(.+)) v (?(.+)) -/' + serial: SNMPv2-MIB::snmpSetSerialNo.0 + # The info for the three different EndRun devices, all live on different OIDs but follow the same regex. + version: + - .1.3.6.1.4.1.13827.5.0.11.0 + - .1.3.6.1.4.1.13827.12.1.16.0 + - .1.3.6.1.4.1.13827.14.1.16.0 + features: + - TEMPUSLXUNISON-MIB::cdmaVersion.0 diff --git a/priv/profiles/os_discovery/enexus.yaml b/priv/profiles/os_discovery/enexus.yaml new file mode 100644 index 00000000..5be4ee6c --- /dev/null +++ b/priv/profiles/os_discovery/enexus.yaml @@ -0,0 +1,678 @@ +mib: SP2-MIB +modules: + os: + hardware: + - SP2-MIB::controlUnitDescription.1 + - SP2-MIB::controlUnitDescription.2 + version: + - SP2-MIB::controlUnitSwVersion.1 + - SP2-MIB::controlUnitSwVersion.2 + serial: SP2-MIB::powerSystemSerialNumber.0 + location: SP2-MIB::powerSystemSite.0 + features: + - SP2-MIB::powerSystemType.0 + - SP2-MIB::powerSystemModel.0 + - SP2-MIB::batteryDescription.0 + features_template: 'Rectifier type: {{ SP2-MIB::powerSystemType.0 }}, Rectifier model: {{ SP2-MIB::powerSystemModel.0 }}, Battery: {{ SP2-MIB::batteryDescription.0 }}' + sensors: + state: + data: + - + oid: SP2-MIB::powerSystem + value: SP2-MIB::powerSystemStatus + num_oid: '.1.3.6.1.4.1.12148.10.2.1.{{ $index }}' + descr: System Status + entPhysicalIndex: '10' + state_name: powerSystemStatus + group: System + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::mains + value: SP2-MIB::mainsStatus + num_oid: '.1.3.6.1.4.1.12148.10.3.1.{{ $index }}' + descr: Mains Status + entPhysicalIndex: '10' + state_name: mainsStatus + group: System + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + + - + oid: SP2-MIB::mainsMainsFailure + value: SP2-MIB::mainsMainsFailureStatus + num_oid: '.1.3.6.1.4.1.12148.10.3.2.1.{{ $index }}' + descr: SP2-MIB::mainsMainsFailureDescription + state_name: mainsMainsFailureStatus + group: System + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::rectifierTable + value: SP2-MIB::rectifierStatus + num_oid: '.1.3.6.1.4.1.12148.10.5.6.1.2.{{ $index }}' + descr: '{{ SP2-MIB::rectifierType }} {{ $index }} Status' + entPhysicalIndex: '2{{ $index }}' + state_name: rectifierStatus + index: 'rectifierStatus.{{ $index }}' + group: Rectifier + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::rectifiers + value: SP2-MIB::rectifiersStatus + num_oid: '.1.3.6.1.4.1.12148.10.5.1.{{ $index }}' + descr: Overall Rectifier Status + entPhysicalIndex: '10' + state_name: rectifiersStatus + group: Rectifier + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + + - + oid: SP2-MIB::load + value: SP2-MIB::loadFusesStatus + num_oid: '.1.3.6.1.4.1.12148.10.9.3.{{ $index }}' + descr: Overall Load Fuses Status + entPhysicalIndex: '10' + state_name: loadFusesStatus + group: Load Fuse + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + - + oid: SP2-MIB::loadFuseTable + value: SP2-MIB::loadFuseStatus + num_oid: '.1.3.6.1.4.1.12148.10.9.7.1.1.{{ $index }}' + descr: SP2-MIB::loadFuseDescription + entPhysicalIndex: '4{{ $index }}' + state_name: loadFuseStatus + group: Load Fuse + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::battery + value: SP2-MIB::batteryStatus + num_oid: '.1.3.6.1.4.1.12148.10.10.1.{{ $index }}' + descr: Overall Battery Status + entPhysicalIndex: '10' + state_name: batteryStatus + group: Battery + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + - + oid: SP2-MIB::batteryBankTable + value: SP2-MIB::batteryBankStatus + num_oid: '.1.3.6.1.4.1.12148.10.10.18.2.1.2.{{ $index }}' + descr: Battery Bank {{ $index }} Status + entPhysicalIndex: '3{{ $index }}' + state_name: batteryBankStatus + group: Battery + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::batteryBankFuseTable + value: SP2-MIB::batteryFuseStatus + num_oid: '.1.3.6.1.4.1.12148.10.10.18.5.1.2.{{ $index }}' + descr: SP2-MIB::batteryFuseDescription + state_name: batteryFuseStatus + group: Battery + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::inputControlUnitInputTable + value: SP2-MIB::inputControlUnitInputStatus + num_oid: '.1.3.6.1.4.1.12148.10.11.2.1.2.{{ $index }}' + descr: 'Input {{ SP2-MIB::inputControlUnitInputDescription }}' + state_name: inputStatus + group: Alarm Input + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + - + oid: SP2-MIB::outputControlUnitOutputTable + value: SP2-MIB::outputControlUnitOutputStatus + num_oid: '.1.3.6.1.4.1.12148.10.12.2.1.2.{{ $index }}' + descr: 'Output {{ SP2-MIB::outputControlUnitOutputDescription }}' + state_name: outputStatus + group: Alarm Output + states: + - { descr: notenergized, graph: 0, value: 0, generic: 3 } + - { descr: energized, graph: 0, value: 1, generic: 3 } + - { descr: disconnected, graph: 0, value: 2, generic: 3 } + - { descr: connected, graph: 0, value: 3, generic: 3 } + skip_values: 4 + - + oid: SP2-MIB::powerSystem + value: SP2-MIB::powerSystemMode + num_oid: '.1.3.6.1.4.1.12148.10.2.3.{{ $index }}' + descr: System Mode + state_name: powerSystemMode + group: System + states: + - { descr: off, graph: 0, value: 0, generic: 0 } + - { descr: test, graph: 0, value: 1, generic: 0 } + - { descr: boost, graph: 0, value: 2, generic: 0 } + - { descr: float, graph: 0, value: 3, generic: 0 } + - + oid: SP2-MIB::inputIoUnitProgInputTable + value: SP2-MIB::inputIoUnitProgInputStatus + num_oid: '.1.3.6.1.4.1.12148.10.11.4.1.2.{{ $index }}' + descr: 'IO Input {{ SP2-MIB::inputIoUnitProgInputDescription }}' + state_name: ioInputStatus + group: IO Alarm Input + states: + - { descr: error, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: minorAlarm, graph: 0, value: 2, generic: 1 } + - { descr: majorAlarm, graph: 0, value: 3, generic: 2 } + - { descr: disabled, graph: 0, value: 4, generic: 3 } + - { descr: disconnected, graph: 0, value: 5, generic: 3 } + - { descr: notPresent, graph: 0, value: 6, generic: 3 } + - { descr: minorAndMajor, graph: 0, value: 7, generic: 2 } + - { descr: majorLow, graph: 0, value: 8, generic: 2 } + - { descr: minorLow, graph: 0, value: 9, generic: 1 } + - { descr: majorHigh, graph: 0, value: 10, generic: 2 } + - { descr: minorHigh, graph: 0, value: 11, generic: 1 } + - { descr: event, graph: 0, value: 12, generic: 1 } + - { descr: valueVolt, graph: 0, value: 13, generic: 1 } + - { descr: valueAmp, graph: 0, value: 14, generic: 1 } + - { descr: valueTemp, graph: 0, value: 15, generic: 1 } + - { descr: valueUnit, graph: 0, value: 16, generic: 1 } + - { descr: valuePerCent, graph: 0, value: 17, generic: 1 } + - { descr: critical, graph: 0, value: 18, generic: 2 } + - { descr: warning, graph: 0, value: 19, generic: 1 } + skip_values: 4 + + voltage: + data: + - + oid: SP2-MIB::mainsVoltageTable + value: SP2-MIB::mainsVoltageValue + num_oid: '.1.3.6.1.4.1.12148.10.3.4.1.6.{{ $index }}' + descr: SP2-MIB::mainsVoltageDescription + index: 'mains.{{ $index }}' + group: Mains + low_limit: SP2-MIB::mainsVoltageMajorLowLevel + low_warn_limit: SP2-MIB::mainsVoltageMinorLowLevel + warn_limit: SP2-MIB::mainsVoltageMinorHighLevel + high_limit: SP2-MIB::mainsVoltageMajorHighLevel + - + oid: SP2-MIB::rectifierTable + value: SP2-MIB::rectifierInputVoltageValue + num_oid: '.1.3.6.1.4.1.12148.10.5.6.1.4.{{ $index }}' + descr: '{{ SP2-MIB::rectifierType }} {{ $index }} Input Voltage' + index: 'input.{{ $index }}' + entPhysicalIndex: '2{{ $index }}' + group: Rectifier + low_limit: 80 + low_warn_limit: 100 + warn_limit: 260 + high_limit: 280 + - + oid: SP2-MIB::batteryVoltage + value: SP2-MIB::batteryVoltageValue + num_oid: '.1.3.6.1.4.1.12148.10.10.5.5.{{ $index }}' + descr: SP2-MIB::batteryVoltageDescription + index: 'battery.{{ $index }}' + entPhysicalIndex: '100' + group: Battery + divisor: 100 + low_limit: SP2-MIB::batteryVoltageMajorLowLevel + low_warn_limit: SP2-MIB::batteryVoltageMinorLowLevel + warn_limit: SP2-MIB::batteryVoltageMinorHighLevel + high_limit: SP2-MIB::batteryVoltageMajorHighLevel + - + oid: SP2-MIB::batteryBankSymmetryTable + value: SP2-MIB::batteryBankSymmetryMeasureValue + num_oid: '.1.3.6.1.4.1.12148.10.10.18.6.1.6.{{ $index }}' + descr: SP2-MIB::batteryBankSymmetryDescription + index: 'batteryBankSymmetry.{{ $index }}' + entPhysicalIndex: '3{{ $index }}' + group: Battery + divisor: 100 + warn_limit: SP2-MIB::batteryBankSymmetryMinorAlarmLevel + high_limit: SP2-MIB::batteryBankSymmetryMajorAlarmLevel + skip_values: + - + oid: SP2-MIB::batteryBankSymmetryStatus + op: '=' + value: 4 + - + oid: SP2-MIB::batteryMonitorSymmetryTable + value: SP2-MIB::batteryMonitorSymmetryDeltaValue + num_oid: '.1.3.6.1.4.1.12148.10.10.19.6.1.7.{{ $index }}' + descr: SP2-MIB::batteryMonitorSymmetryDescription + index: 'batteryMonitorSymmetry.{{ $index }}' + group: Battery + divisor: 100 + warn_limit: SP2-MIB::batteryMonitorSymmetryMinorAlarmLevel + high_limit: SP2-MIB::batteryMonitorSymmetryMajorAlarmLevel + skip_values: + - + oid: SP2-MIB::batteryMonitorSymmetryStatus + op: '=' + value: 4 + current: + data: + - + oid: SP2-MIB::rectifiersCurrent + value: SP2-MIB::rectifiersCurrentValue + num_oid: '.1.3.6.1.4.1.12148.10.5.2.5.{{ $index }}' + descr: Rectifier Output Current + index: 'current.{{ $index }}' + group: Rectifier + warn_limit: SP2-MIB::rectifiersCurrentMinorAlarmLevel + high_limit: SP2-MIB::rectifiersCurrentMajorAlarmLevel + skip_values: + - + device: hardware + op: 'regex' + value: '/^Smart[Pp]ack S.*/' + - # Smartpack S returns 10ths of an amp + oid: SP2-MIB::rectifiersCurrent + value: SP2-MIB::rectifiersCurrentValue + num_oid: '.1.3.6.1.4.1.12148.10.5.2.5.{{ $index }}' + descr: System Output Current + index: 'current.{{ $index }}' + group: Rectifier + divisor: 10 + warn_limit: SP2-MIB::rectifiersCurrentMinorAlarmLevel + high_limit: SP2-MIB::rectifiersCurrentMajorAlarmLevel + skip_values: + - device: hardware + op: 'not_regex' + value: '/^Smart[Pp]ack S.*/' + - + oid: SP2-MIB::rectifierTable + value: SP2-MIB::rectifierOutputCurrentValue + num_oid: '.1.3.6.1.4.1.12148.10.5.6.1.3.{{ $index }}' + descr: '{{ SP2-MIB::rectifierType }} {{ $index }} Output Current' + index: 'output.{{ $index }}' + entPhysicalIndex: '2{{ $index }}' + group: Rectifier + divisor: 10 + - + oid: SP2-MIB::batteryCurrents + value: SP2-MIB::batteryCurrentsValue + num_oid: '.1.3.6.1.4.1.12148.10.10.6.5.{{ $index }}' + descr: Overall Battery Current + index: 'batteryCurrent.{{ $index }}' + entPhysicalIndex: '100' + group: Battery + divisor: 10 + low_limit: SP2-MIB::batteryCurrentsMinorLowLevel + low_warn_limit: SP2-MIB::batteryCurrentsMinorLowLevel + warn_limit: SP2-MIB::batteryCurrentsMinorHighLevel + high_limit: SP2-MIB::batteryCurrentsMajorHighLevel + - + oid: SP2-MIB::batteryBankCurrentTable + value: SP2-MIB::batteryCurrentValue + num_oid: '.1.3.6.1.4.1.12148.10.10.18.4.1.6.{{ $index }}' + descr: batteryCurrentDescription + index: 'batteryBankCurrent.{{ $index }}' + entPhysicalIndex: '3{{ $index }}' + group: Battery + divisor: 10 + low_limit: SP2-MIB::batteryCurrentMinorLowLevel + low_warn_limit: SP2-MIB::batteryCurrentMinorLowLevel + warn_limit: SP2-MIB::batteryCurrentMinorHighLevel + high_limit: SP2-MIB::batteryCurrentMajorHighLevel + - + oid: SP2-MIB::loadCurrent + value: SP2-MIB::loadCurrentValue + num_oid: '.1.3.6.1.4.1.12148.10.9.2.5.{{ $index }}' + descr: SP2-MIB::loadCurrentDescription + entPhysicalIndex: '10' + index: 'load.{{ $index }}' + group: Load + divisor: 10 + warn_limit: SP2-MIB::loadCurrentMinorHighLevel + high_limit: SP2-MIB::loadCurrentMajorHighLevel + temperature: + data: + - + oid: SP2-MIB::batteryTemperatures + value: SP2-MIB::batteryTemperaturesValue + num_oid: '.1.3.6.1.4.1.12148.10.10.7.5.{{ $index }}' + descr: Overall Battery Temperature + entPhysicalIndex: '100' + index: 'batteryTemperature.{{ $index }}' + low_limit: SP2-MIB::batteryTemperaturesMinorLowLevel + low_warn_limit: SP2-MIB::batteryTemperaturesMinorLowLevel + warn_limit: SP2-MIB::batteryTemperaturesMinorHighLevel + high_limit: SP2-MIB::batteryTemperaturesMajorHighLevel + - + oid: SP2-MIB::batteryBankTemperatureTable + value: SP2-MIB::batteryTemperatureValue + num_oid: '.1.3.6.1.4.1.12148.10.10.18.3.1.6.{{ $index }}' + descr: SP2-MIB::batteryTemperatureDescription + entPhysicalIndex: '3{{ $index }}' + index: 'batteryBankTemperature.{{ $index }}' + low_limit: SP2-MIB::batteryTemperatureMinorLowLevel + low_warn_limit: SP2-MIB::batteryTemperatureMinorLowLevel + warn_limit: SP2-MIB::batteryTemperatureMinorHighLevel + high_limit: SP2-MIB::batteryTemperatureMajorHighLevel + skip_values: + - + oid: SP2-MIB::batteryTemperatureStatus + op: '=' + value: 4 + - + oid: SP2-MIB::ambientTemperature + value: SP2-MIB::ambientTemperatureValue + num_oid: '.1.3.6.1.4.1.12148.10.13.13.5.{{ $index }}' + descr: SP2-MIB::ambientTemperatureDescription + entPhysicalIndex: '10' + index: 'ambientTemperature.{{ $index }}' + low_limit: SP2-MIB::ambientTemperatureMinorLowLevel + low_warn_limit: SP2-MIB::ambientTemperatureMinorLowLevel + warn_limit: SP2-MIB::ambientTemperatureMinorHighLevel + high_limit: SP2-MIB::ambientTemperatureMajorHighLevel + skip_values: + - + oid: SP2-MIB::ambientTemperatureStatus + op: '=' + value: 4 + runtime: + data: + - + oid: SP2-MIB::batteryTimeLeft + value: SP2-MIB::batteryTimeLeftValue + num_oid: '.1.3.6.1.4.1.12148.10.10.8.5.{{ $index }}' + descr: SP2-MIB::batteryTimeLeftDescription + entPhysicalIndex: '100' + low_warn_limit: SP2-MIB::batteryTimeLeftMinorAlarmLevel + low_limit: SP2-MIB::batteryTimeLeftMajorAlarmLevel + load: + data: + - + oid: SP2-MIB::batteryRemainingCapacity + value: SP2-MIB::batteryRemainingCapacityValue + num_oid: '.1.3.6.1.4.1.12148.10.10.9.5.{{ $index }}' + descr: SP2-MIB::batteryRemainingCapacityDescription + entPhysicalIndex: '100' + low_warn_limit: SP2-MIB::batteryRemainingCapacityMinorLowLevel + low_limit: SP2-MIB::batteryRemainingCapacityMajorLowLevel + index: 'batteryRemainingCapacity.{{ $index }}' + - + oid: SP2-MIB::rectifiersCapacity + value: SP2-MIB::rectifiersCapacityValue + num_oid: '.1.3.6.1.4.1.12148.10.5.3.5.{{ $index }}' + descr: SP2-MIB::rectifiersCapacityDescription + warn_limit: SP2-MIB::rectifiersCapacityMinorAlarmLevel + high_limit: SP2-MIB::rectifiersCapacityMajorAlarmLevel + index: 'rectifiersCapacity.{{ $index }}' + - + oid: SP2-MIB::batteryQuality + value: SP2-MIB::batteryQualityValue + num_oid: '.1.3.6.1.4.1.12148.10.10.12.5.{{ $index }}' + descr: SP2-MIB::batteryQualityDescription + entPhysicalIndex: '100' + low_warn_limit: SP2-MIB::batteryQualityMinorAlarmLevel + low_limit: SP2-MIB::batteryQualityMajorAlarmLevel + index: 'batteryQuality.{{ $index }}' + - + oid: SP2-MIB::batteryUsedCapacity + value: SP2-MIB::batteryUsedCapacityValue + num_oid: '.1.3.6.1.4.1.12148.10.10.10.5.{{ $index }}' + descr: SP2-MIB::batteryUsedCapacityDescription + entPhysicalIndex: '100' + warn_limit: SP2-MIB::batteryUsedCapacityMinorAlarmLevel + high_limit: SP2-MIB::batteryUsedCapacityMajorAlarmLevel + index: 'batteryUsedCapacity.{{ $index }}' + count: + data: + - + oid: SP2-MIB::batteryAhCharged + value: SP2-MIB::batteryAhChargedValue + num_oid: '.1.3.6.1.4.1.12148.10.10.23.5.{{ $index }}' + descr: SP2-MIB::batteryAhChargedDescription + entPhysicalIndex: '100' + divisor: 100 + index: 'batteryAhCharged.{{ $index }}' + warn_limit: SP2-MIB::batteryAhChargedMinorHighLevel + high_limit: SP2-MIB::batteryAhChargedMajorHighLevel + - + oid: SP2-MIB::batteryTotalCapacity + value: SP2-MIB::batteryTotalCapacityValue + num_oid: '.1.3.6.1.4.1.12148.10.10.11.5.{{ $index }}' + descr: SP2-MIB::batteryTotalCapacityDescription + entPhysicalIndex: '100' + index: 'batteryTotalCapacity.{{ $index }}' + low_warn_limit: SP2-MIB::batteryTotalCapacityMinorLowLevel + low_limit: SP2-MIB::batteryTotalCapacityMajorLowLevel + - + oid: SP2-MIB::batteryBankNumberOfBanks + index: 'batteryBankNumberOfBanks.0' + num_oid: '.1.3.6.1.4.1.12148.10.10.18.1.{{ $index }}' + descr: Battery bank number of banks + - + oid: SP2-MIB::mainsNumberOfPhases + index: 'mainsNumberOfPhases.0' + num_oid: '.1.3.6.1.4.1.12148.10.3.3.{{ $index }}' + descr: Mains number of phases + - + oid: SP2-MIB::rectifiersNumberOfRectifiers + index: 'rectifiersNumberOfRectifiers.0' + num_oid: '.1.3.6.1.4.1.12148.10.5.5.{{ $index }}' + descr: Rectifiers number of rectifiers + - + oid: SP2-MIB::batteryTestNumberOfResults + index: 'batteryTestNumberOfResults.0' + num_oid: '.1.3.6.1.4.1.12148.10.10.16.3.{{ $index }}' + descr: Battery test number of results + - + oid: SP2-MIB::batteryTest.5.0 + value: SP2-MIB::batteryTest + index: 'batteryTest.{{ $index }}' + num_oid: '.1.3.6.1.4.1.12148.10.10.16.5.{{ $index }}' + descr: Battery Test Max Duration (minutes) diff --git a/priv/profiles/os_discovery/enlogic-pdu.yaml b/priv/profiles/os_discovery/enlogic-pdu.yaml new file mode 100644 index 00000000..eb2c29e8 --- /dev/null +++ b/priv/profiles/os_discovery/enlogic-pdu.yaml @@ -0,0 +1,111 @@ +modules: + sensors: + additional_oids: + data: + - + oid: + - ENLOGIC-PDU2-MIB::pduCircuitBreakerLabel + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageLowerCriticalThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageLowerWarningThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageUpperWarningThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageUpperCriticalThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentLowerCriticalThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentLowerWarningThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentUpperWarningThreshold + - ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentUpperCriticalThreshold + power: + data: + - + oid: ENLOGIC-PDU2-MIB::pduUnitStatusTable + value: ENLOGIC-PDU2-MIB::pduUnitStatusActivePower + num_oid: '.1.3.6.1.4.1.38446.1.2.4.1.4.1.{{ $index }}' + descr: "Active power #{{ $index }}" + - + oid: ENLOGIC-PDU2-MIB::pduInputPhaseStatusTable + value: ENLOGIC-PDU2-MIB::pduInputPhaseStatusActivePower + num_oid: '.1.3.6.1.4.1.38446.1.3.4.1.7.1.{{ $index }}' + index: 'pduInputPhaseStatusActivePower.{{ $index }}' + descr: "Input Phase #{{ $index }}" + voltage: + data: + - + oid: ENLOGIC-PDU2-MIB::pduInputPhaseStatusTable + value: ENLOGIC-PDU2-MIB::pduInputPhaseStatusVoltage + num_oid: '.1.3.6.1.4.1.38446.1.3.4.1.6.{{ $index }}' + low_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageLowerCriticalThreshold + low_warn_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageLowerWarningThreshold + warn_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageUpperWarningThreshold + high_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigVoltageUpperCriticalThreshold + index: 'pduInputPhaseStatusVoltage.{{ $index }}' + descr: "Input Phase {{ $index }}" + current: + data: + - + oid: ENLOGIC-PDU2-MIB::pduInputPhaseStatusTable + value: ENLOGIC-PDU2-MIB::pduInputPhaseStatusCurrent + divisor: 100 + num_oid: '.1.3.6.1.4.1.38446.1.3.4.1.5.{{ $index }}' + low_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentLowerCriticalThreshold + low_warn_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentLowerWarningThreshold + warn_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentUpperWarningThreshold + high_limit: ENLOGIC-PDU2-MIB::pduInputPhaseConfigCurrentUpperCriticalThreshold + index: 'pduInputPhaseStatusCurrent.{{ $index }}' + descr: "Input Phase {{ $index }}" + - + oid: ENLOGIC-PDU2-MIB::pduCircuitBreakerStatusTable + value: ENLOGIC-PDU2-MIB::pduCircuitBreakerStatusCurrent + divisor: 100 + num_oid: '.1.3.6.1.4.1.38446.1.4.4.1.5.{{ $index }}' + low_limit: ENLOGIC-PDU2-MIB::pduCircuitBreakerConfigLowerCriticalThreshold + low_warn_limit: ENLOGIC-PDU2-MIB::pduCircuitBreakerConfigLowerWarningThreshold + warn_limit: ENLOGIC-PDU2-MIB::pduCircuitBreakerConfigUpperWarningThreshold + high_limit: ENLOGIC-PDU2-MIB::pduCircuitBreakerConfigUpperCriticalThreshold + descr: "Input Phase {{ ENLOGIC-PDU2-MIB::pduCircuitBreakerLabel }}" + skip_values: 0 + state: + data: + - + oid: ENLOGIC-PDU2-MIB::pduUnitStatusTable + value: ENLOGIC-PDU2-MIB::pduUnitStatusLoadState + num_oid: '.1.3.6.1.4.1.38446.1.2.4.1.3.{{ $index }}' + descr: "Load state #{{ $index }}" + states: + - { value: 1, graph: 1, descr: 'upperCritical', generic: 2 } + - { value: 2, graph: 1, descr: 'upperWarning', generic: 1 } + - { value: 3, graph: 1, descr: 'lowerWarning', generic: 1 } + - { value: 4, graph: 1, descr: 'lowerCritical', generic: 2 } + - { value: 5, graph: 1, descr: 'normal', generic: 0 } + - + oid: ENLOGIC-PDU2-MIB::pduInputPhaseStatusCurrentState + value: ENLOGIC-PDU2-MIB::pduInputPhaseStatusCurrentState + num_oid: '.1.3.6.1.4.1.38446.1.3.4.1.3.{{ $index }}' + descr: "Current state #{{ $index }}" + states: + - { value: 1, graph: 1, descr: 'upperCritical', generic: 2 } + - { value: 2, graph: 1, descr: 'upperWarning', generic: 1 } + - { value: 3, graph: 1, descr: 'lowerWarning', generic: 1 } + - { value: 4, graph: 1, descr: 'lowerCritical', generic: 2 } + - { value: 5, graph: 1, descr: 'normal', generic: 0 } + - + oid: ENLOGIC-PDU2-MIB::pduInputPhaseStatusVoltageState + value: ENLOGIC-PDU2-MIB::pduInputPhaseStatusVoltageState + num_oid: '.1.3.6.1.4.1.38446.1.3.4.1.4.{{ $index }}' + descr: "Voltage state #{{ $index }}" + states: + - { value: 1, graph: 1, descr: 'upperCritical', generic: 2 } + - { value: 2, graph: 1, descr: 'upperWarning', generic: 1 } + - { value: 3, graph: 1, descr: 'lowerWarning', generic: 1 } + - { value: 4, graph: 1, descr: 'lowerCritical', generic: 2 } + - { value: 5, graph: 1, descr: 'normal', generic: 0 } + - + oid: ENLOGIC-PDU2-MIB::pduCircuitBreakerStatusTable + value: ENLOGIC-PDU2-MIB::pduCircuitBreakerStatusLoadState + num_oid: '.1.3.6.1.4.1.38446.1.4.4.1.4.{{ $index }}' + descr: "Circuit breaker state {{ ENLOGIC-PDU2-MIB::pduCircuitBreakerLabel }}" + skip_values: 0 + states: + - { value: 1, graph: 1, descr: 'upperCritical', generic: 2 } + - { value: 2, graph: 1, descr: 'upperWarning', generic: 1 } + - { value: 3, graph: 1, descr: 'lowerWarning', generic: 1 } + - { value: 4, graph: 1, descr: 'lowerCritical', generic: 2 } + - { value: 5, graph: 1, descr: 'normal', generic: 0 } diff --git a/priv/profiles/os_discovery/enterasys.yaml b/priv/profiles/os_discovery/enterasys.yaml new file mode 100644 index 00000000..934c0cd8 --- /dev/null +++ b/priv/profiles/os_discovery/enterasys.yaml @@ -0,0 +1,11 @@ +mib: ENTERASYS-RESOURCE-UTILIZATION-MIB +modules: + os: + sysDescr_regex: '/(?\S+) Rev (?\S+)/' + processors: + data: + - + oid: etsysResourceCpuLoad5min + num_oid: '.1.3.6.1.4.1.5624.1.2.49.1.1.1.1.4.{{ $index }}' + index: '{{ $count }}' + precision: 10 diff --git a/priv/profiles/os_discovery/epmp.yaml b/priv/profiles/os_discovery/epmp.yaml new file mode 100644 index 00000000..98bb9980 --- /dev/null +++ b/priv/profiles/os_discovery/epmp.yaml @@ -0,0 +1,54 @@ +mib: CAMBIUM-PMP80211-MIB +modules: + os: + version: CAMBIUM-PMP80211-MIB::cambiumCurrentuImageVersion.0 + serial: CAMBIUM-PMP80211-MIB::cambiumEPMPMSN.0 + lat: CAMBIUM-PMP80211-MIB::cambiumDeviceLatitude.0 + long: CAMBIUM-PMP80211-MIB::cambiumDeviceLongitude.0 + processors: + data: + - + oid: sysCPUUsage + num_oid: '.1.3.6.1.4.1.17713.21.2.1.64.{{ $index }}' + type: cambium-cpu + precision: 10 + sensors: + count: + data: + - + oid: sysDFSDetectedCount + num_oid: '.1.3.6.1.4.1.17713.21.2.1.36.{{ $index }}' + descr: DFS Detected Count + state: + data: + - + oid: cambiumEffectiveSyncSource + num_oid: '.1.3.6.1.4.1.17713.21.1.1.7.{{ $index }}' + index: '{{ $index }}' + descr: GPS Status + states: + - { value: 1, generic: 0, graph: 1, descr: GPS Sync Up } + - { value: 2, generic: 2, graph: 1, descr: GPS Sync Down } + - { value: 3, generic: 0, graph: 1, descr: CMM4 Sync } + - { value: 4, generic: 0, graph: 1, descr: CMM3 Sync } + - + oid: cambiumDFSStatus + num_oid: '.1.3.6.1.4.1.17713.21.1.1.6.{{ $index }}' + index: '{{ $index }}' + descr: DFS Status + states: + - { value: 1, generic: 1, graph: 1, descr: N/A } + - { value: 2, generic: 1, graph: 1, descr: Channel Availability Check } + - { value: 3, generic: 0, graph: 1, descr: In-Service } + - { value: 4, generic: 2, graph: 1, descr: Radar Signal Detected } + - { value: 5, generic: 0, graph: 1, descr: In-Service Monitoring at Alternative Channel } + - { value: 6, generic: 2, graph: 1, descr: System Not In Service due to DFS } + - + oid: ePMP2000SmartAntennaStatus + num_oid: '.1.3.6.1.4.1.17713.21.1.1.41.{{ $index }}' + index: '{{ $index }}' + descr: Smart Antenna + states: + - { value: 0, generic: 1, graph: 0, descr: Not Powered } + - { value: 1, generic: 3, graph: 0, descr: Powered / Not Detected } + - { value: 3, generic: 0, graph: 0, descr: Detected } diff --git a/priv/profiles/os_discovery/epson-scanner.yaml b/priv/profiles/os_discovery/epson-scanner.yaml new file mode 100644 index 00000000..c96edb6a --- /dev/null +++ b/priv/profiles/os_discovery/epson-scanner.yaml @@ -0,0 +1,5 @@ +modules: + os: + serial: SNMPv2-SMI::enterprises.1248.1.1.3.1.1.1.0 + version: SNMPv2-SMI::enterprises.1248.1.1.3.1.21.1.1.2.1 + hardware: HOST-RESOURCES-MIB::hrDeviceDescr.1 diff --git a/priv/profiles/os_discovery/epson.yaml b/priv/profiles/os_discovery/epson.yaml new file mode 100644 index 00000000..a4f9530b --- /dev/null +++ b/priv/profiles/os_discovery/epson.yaml @@ -0,0 +1,3 @@ +modules: + os: + serial: Printer-MIB::prtGeneralSerialNumber.1 diff --git a/priv/profiles/os_discovery/ericsson-6600.yaml b/priv/profiles/os_discovery/ericsson-6600.yaml new file mode 100644 index 00000000..e8140ce4 --- /dev/null +++ b/priv/profiles/os_discovery/ericsson-6600.yaml @@ -0,0 +1,52 @@ +mib: XF-RADIOLINK-PTP-RADIO-MIB:XF-RADIOLINK-RLT-MIB:ENTITY-MIB:IF-MIB +modules: + os: + hardware: ENTITY-MIB::entPhysicalDescr.1 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - ifName + temperature: + data: + - + oid: XfRAUEntry + value: xfRAUTemperature + num_oid: .1.3.6.1.4.1.193.81.3.4.3.1.1.1.8.{{ $index }} + descr: 'RAU: {{ $entPhysicalName }}' + runtime: + data: + - + oid: xfPMTimeElapsed + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.1.{{ $index }} + index: 'xfPMTimeElapsed.{{ $index }}' + descr: 'Current Error Period: {{ $ifName }}' + - + oid: xfPMCurrentES + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.2.{{ $index }} + index: 'xfPMCurrentES.{{ $index }}' + descr: 'Errored Seconds: {{ $ifName }}' + - + oid: xfPMCurrentSES + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.3.{{ $index }} + index: 'xfPMCurrentSES.{{ $index }}' + descr: 'Severly Errored Seconds: {{ $ifName }}' + - + oid: xfPMCurrentUAS + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.5.{{ $index }} + index: 'xfPMCurrentUAS.{{ $index }}' + descr: 'Unavailable Seconds: {{ $ifName }}' + count: + data: + - + oid: xfPMCurrentBBE + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.4.{{ $index }} + index: 'xfPMCurrentBBE.{{ $index }}' + descr: 'Background Block Errors: {{ $ifName }}' + - + oid: xfPMCurrentBB + num_oid: .1.3.6.1.4.1.193.81.3.4.5.2.1.1.6.{{ $index }} + index: 'xfPMCurrentBB.{{ $index }}' + descr: 'Background blocks: {{ $ifName }}' diff --git a/priv/profiles/os_discovery/ericsson-ipos.yaml b/priv/profiles/os_discovery/ericsson-ipos.yaml new file mode 100644 index 00000000..0ac617f7 --- /dev/null +++ b/priv/profiles/os_discovery/ericsson-ipos.yaml @@ -0,0 +1,146 @@ +mib: ERICSSON-ROUTER-ENVMON-MIB:ERICSSON-ROUTER-CPU-METER-MIB:ERICSSON-ROUTER-OPTICAL-TRANSCEIVER-MIB:ERICSSON-ROUTER-SYS-RESOURCES-MIB +modules: + os: + version: SNMPv2-MIB::sysDescr.0 + hardware: ENTITY-MIB::entPhysicalDescr.1 + serial: ENTITY-MIB::entPhysicalDescr.2 + serial_regex: '/SN:(?[^ ]+)/' + processors: + data: + - + oid: eriRouterCpuMeterMIBObjects + value: eriRouterCpuMeterFiveMinuteAvg + num_oid: '.1.3.6.1.4.1.193.218.2.6.1.3.{{ $index }}' + descr: '5 minute average' + - + oid: eriRouterCpuMeterMIBObjects + value: eriRouterCpuMeterFiveMinutePeak + num_oid: '.1.3.6.1.4.1.193.218.2.6.1.6.{{ $index }}' + descr: '5 minute peak' + storage: + data: + - + oid: ERICSSON-ROUTER-SYS-RESOURCES-MIB::eriRouterSRStorageTable + descr: ERICSSON-ROUTER-SYS-RESOURCES-MIB::eriRouterSRStorageDescr + type: ERICSSON-ROUTER-SYS-RESOURCES-MIB::eriRouterSRStorageMedia + size: ERICSSON-ROUTER-SYS-RESOURCES-MIB::eriRouterSRStorageSize + percent_used: ERICSSON-ROUTER-SYS-RESOURCES-MIB::eriRouterSRStorageUtilization + units: 1024 + sensors: + additional_oids: + data: + - + oid: + - eriRouterOpticalTransceiverPortTable + - eriRouterOpticalTransceiverCardSlot + - eriRouterOpticalTransceiverPort + state: + data: + - + oid: eriRouterFanStatusTable + num_oid: '.1.3.6.1.4.1.193.218.2.4.1.1.1.4.{{ $index }}' + descr: eriRouterFanDescr + value: eriRouterFanStatus + states: + - { value: 1, descr: Normal, graph: 1, generic: 0 } + - { value: 2, descr: Failed, graph: 1, generic: 2 } + - { value: 3, descr: Absent, graph: 1, generic: 0 } + - { value: 4, descr: Unknown, graph: 1, generic: 3 } + - + oid: eriRouterPowerStatusTable + num_oid: '.1.3.6.1.4.1.193.218.2.4.1.2.1.4.{{ $index }}' + descr: eriRouterPowerDescr + value: eriRouterPowerStatus + states: + - { value: 1, descr: Normal, graph: 1, generic: 0 } + - { value: 2, descr: Failed, graph: 1, generic: 2 } + - { value: 3, descr: Absent, graph: 1, generic: 0 } + - { value: 4, descr: Unknown, graph: 1, generic: 3 } + fanspeed: + data: + - + oid: EriRouterFanSpeed + value: eriRouterFanSpeedCurrent + num_oid: '.1.3.6.1.4.1.193.218.2.4.1.5.1.3.{{ $index }}' + descr: eriRouterFanUnitDescr + temperature: + data: + - + oid: eriRouterEntityTempSensorTable + value: eriRouterEntityTempCurrent + num_oid: '.1.3.6.1.4.1.193.218.2.4.1.6.1.3.{{ $index }}' + descr: eriRouterEntityTempDescr + - + oid: eriRouterOpticalTransceiverParamTable + value: eriRouterOpticalTransceiverCurrentValue + high_limit: eriRouterOpticalTransceiverMaxAlarmValue + warn_limit: eriRouterOpticalTransceiverMaxWarningValue + low_limit: eriRouterOpticalTransceiverMinAlarmValue + low_warn_limit: eriRouterOpticalTransceiverMinWarningValue + num_oid: '.1.3.6.1.4.1.193.218.2.50.1.2.1.3.{{ $index }}' + index: 'eriRouterOpticalTransceiverTemp.{{ $index }}' + group: 'Optic Temperature' + divisor: 1000 + descr: 'Slot {{ $eriRouterOpticalTransceiverCardSlot:0 }} / Port {{ $eriRouterOpticalTransceiverPort:0 }}' + skip_values: + - + oid: eriRouterOpticalTransceiverParamType + op: '!=' + value: 3 + current: + data: + - + oid: eriRouterOpticalTransceiverParamTable + value: eriRouterOpticalTransceiverCurrentValue + high_limit: eriRouterOpticalTransceiverMaxAlarmValue + warn_limit: eriRouterOpticalTransceiverMaxWarningValue + low_limit: eriRouterOpticalTransceiverMinAlarmValue + low_warn_limit: eriRouterOpticalTransceiverMinWarningValue + num_oid: '.1.3.6.1.4.1.193.218.2.50.1.2.1.3.{{ $index }}' + index: 'eriRouterOpticalTransceiverBiasCurrent.{{ $index }}' + group: 'Optic Bias Current' + divisor: 1000000 + descr: 'Slot {{ $eriRouterOpticalTransceiverCardSlot:0 }} / Port {{ $eriRouterOpticalTransceiverPort:0 }}' + skip_values: + - + oid: eriRouterOpticalTransceiverParamType + op: '!=' + value: 4 + dbm: + data: + - + oid: eriRouterOpticalTransceiverParamTable + value: eriRouterOpticalTransceiverCurrentValue + high_limit: eriRouterOpticalTransceiverMaxAlarmValue + warn_limit: eriRouterOpticalTransceiverMaxWarningValue + low_limit: eriRouterOpticalTransceiverMinAlarmValue + low_warn_limit: eriRouterOpticalTransceiverMinWarningValue + num_oid: '.1.3.6.1.4.1.193.218.2.50.1.2.1.3.{{ $index }}' + index: 'eriRouterOpticalTransceiverRxPower.{{ $index }}' + group: 'Optic Rx Power' + divisor: 1000 + descr: 'Slot {{ $eriRouterOpticalTransceiverCardSlot:0 }} / Port {{ $eriRouterOpticalTransceiverPort:0 }}' + skip_values: + - + oid: eriRouterOpticalTransceiverParamType + op: '!=' + value: 2 + voltage: + data: + - + oid: eriRouterOpticalTransceiverParamTable + value: eriRouterOpticalTransceiverCurrentValue + high_limit: eriRouterOpticalTransceiverMaxAlarmValue + warn_limit: eriRouterOpticalTransceiverMaxWarningValue + low_limit: eriRouterOpticalTransceiverMinAlarmValue + low_warn_limit: eriRouterOpticalTransceiverMinWarningValue + num_oid: '.1.3.6.1.4.1.193.218.2.50.1.2.1.3.{{ $index }}' + index: 'eriRouterOpticalTransceiverVcc.{{ $index }}' + group: 'Optic Vcc' + divisor: 1000 + descr: 'Slot {{ $eriRouterOpticalTransceiverCardSlot:0 }} / Port {{ $eriRouterOpticalTransceiverPort:0 }}' + skip_values: + - + oid: eriRouterOpticalTransceiverParamType + op: '!=' + value: 6 diff --git a/priv/profiles/os_discovery/ericsson-ml.yaml b/priv/profiles/os_discovery/ericsson-ml.yaml new file mode 100644 index 00000000..a2ea3adc --- /dev/null +++ b/priv/profiles/os_discovery/ericsson-ml.yaml @@ -0,0 +1,48 @@ +mib: PT-RADIOLINK-MIB +modules: + sensors: + state: + data: + - + oid: actualTxAcmTC + num_oid: '.1.3.6.1.4.1.193.223.2.7.1.1.58.{{ $index }}' + index: actualTxAcmTC + descr: Tx Modulation Rate + state_name: actualTxAcmTC + states: + - { value: 1, generic: 1, graph: 1, descr: 'HalfBpsk' } + - { value: 2, generic: 0, graph: 1, descr: 'HalfBpskLight' } + - { value: 3, generic: 0, graph: 1, descr: 'HalfBpskStrong' } + - { value: 4, generic: 0, graph: 1, descr: 'Bpsk' } + - { value: 5, generic: 0, graph: 1, descr: 'BpskLight' } + - { value: 6, generic: 0, graph: 1, descr: 'BpskStrong' } + - { value: 7, generic: 0, graph: 1, descr: '4Qam' } + - { value: 8, generic: 0, graph: 1, descr: '4QamLight' } + - { value: 9, generic: 0, graph: 1, descr: '4QamStrong' } + - { value: 10, generic: 0, graph: 1, descr: '16Qam' } + - { value: 11, generic: 0, graph: 1, descr: '16QamLight' } + - { value: 12, generic: 1, graph: 1, descr: '16QamStrong' } + - { value: 13, generic: 0, graph: 1, descr: '32Qam' } + - { value: 14, generic: 0, graph: 1, descr: '32QamLight' } + - { value: 15, generic: 0, graph: 1, descr: '32QamStrong' } + - { value: 16, generic: 0, graph: 1, descr: '64Qam' } + - { value: 17, generic: 0, graph: 1, descr: '64QamLight' } + - { value: 18, generic: 0, graph: 1, descr: '64QamStrong' } + - { value: 19, generic: 0, graph: 1, descr: '128Qam' } + - { value: 20, generic: 0, graph: 1, descr: '128QamLight' } + - { value: 21, generic: 0, graph: 1, descr: '128QamStrong' } + - { value: 22, generic: 0, graph: 1, descr: '256Qam' } + - { value: 23, generic: 1, graph: 1, descr: '256QamLight' } + - { value: 24, generic: 0, graph: 1, descr: '256QamStrong' } + - { value: 25, generic: 0, graph: 1, descr: '512Qam' } + - { value: 26, generic: 0, graph: 1, descr: '512QamLight' } + - { value: 27, generic: 0, graph: 1, descr: '512QamStrong' } + - { value: 28, generic: 0, graph: 1, descr: '1024Qam' } + - { value: 29, generic: 0, graph: 1, descr: '1024QamLight' } + - { value: 30, generic: 0, graph: 1, descr: '1024QamStrong' } + - { value: 31, generic: 0, graph: 1, descr: '2048Qam' } + - { value: 32, generic: 0, graph: 1, descr: '2048QamLight' } + - { value: 33, generic: 0, graph: 1, descr: '2048QamStrong' } + - { value: 34, generic: 0, graph: 1, descr: '4096Qam' } + - { value: 35, generic: 0, graph: 1, descr: '4096QamLight' } + - { value: 36, generic: 0, graph: 1, descr: '4096QamStrong' } diff --git a/priv/profiles/os_discovery/ericsson-tn.yaml b/priv/profiles/os_discovery/ericsson-tn.yaml new file mode 100644 index 00000000..ac2491da --- /dev/null +++ b/priv/profiles/os_discovery/ericsson-tn.yaml @@ -0,0 +1,83 @@ +mib: XF-RADIOLINK-PTP-RADIO-MIB:XF-RADIOLINK-RLT-MIB:ENTITY-MIB:IF-MIB +modules: + os: + hardware: ENTITY-MIB::entPhysicalDescr.1 + version: XF-SOFTWARE-MIB::xfSwReleaseRevision.1 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - ifName + temperature: + data: + - + oid: XfRAUEntry + value: xfRAUTemperature + num_oid: .1.3.6.1.4.1.193.81.3.4.3.1.1.1.8.{{ $index }} + descr: 'RAU: {{ $entPhysicalName }}' + + runtime: + data: + - + oid: xfTermTimeElapsed + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.1.{{ $index }} + index: 'xfTermTimeElapsed.{{ $index }}' + descr: 'Current Error Period: {{ $ifName }}' + - + oid: xfTermCurrentES + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.2.{{ $index }} + index: 'xfTermCurrentES.{{ $index }}' + descr: 'Errored Seconds: {{ $ifName }}' + - + oid: xfTermCurrentSES + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.3.{{ $index }} + index: 'xfTermCurrentSES.{{ $index }}' + descr: 'Severly Errored Seconds: {{ $ifName }}' + - + oid: xfTermCurrentUAS + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.5.{{ $index }} + index: 'xfTermCurrentUAS.{{ $index }}' + descr: 'Unavailable Seconds: {{ $ifName }}' + count: + data: + - + oid: xfTermCurrentBBE + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.4.{{ $index }} + index: 'xfTermCurrentBBE.{{ $index }}' + descr: 'Background Block Errors: {{ $ifName }}' + - + oid: xfTermCurrentBB + num_oid: .1.3.6.1.4.1.193.81.3.4.1.1.4.1.6.{{ $index }} + index: 'xfTermCurrentBB.{{ $index }}' + descr: 'Background blocks: {{ $ifName }}' + state: + data: + - + oid: xfRFTxOperStatus + value: xfRFTxOperStatus + num_oid: '.1.3.6.1.4.1.193.81.3.4.3.1.2.1.7.{{ $index }}' + descr: 'RAU: {{ $ifName }}' + group: Operational status + index: 'xfRFTxOperStatus.{{ $index }}' + state_name: Operational status + states: + - { value: 4, generic: 3, graph: 0, descr: 'Stand-by' } + - { value: 3, generic: 0, graph: 0, descr: TX On } + - { value: 2, generic: 2, graph: 0, descr: TX Off } + - { value: 1, generic: 3, graph: 0, descr: Other } + + - + oid: xfRFTxAdminStatus + value: xfRFTxAdminStatus + num_oid: '.1.3.6.1.4.1.193.81.3.4.3.1.2.1.8.{{ $index }}' + descr: 'RAU: {{ $ifName }}' + group: Admin status + index: 'xfRFTxAdminStatus.{{ $index }}' + state_name: Admin status + states: + - { value: 4, generic: 3, graph: 0, descr: 'Stand-by' } + - { value: 3, generic: 0, graph: 0, descr: TX On } + - { value: 2, generic: 2, graph: 0, descr: TX Off } + - { value: 1, generic: 3, graph: 0, descr: Other } diff --git a/priv/profiles/os_discovery/esphome.yaml b/priv/profiles/os_discovery/esphome.yaml new file mode 100644 index 00000000..0125b654 --- /dev/null +++ b/priv/profiles/os_discovery/esphome.yaml @@ -0,0 +1,74 @@ +mib: ESPHOME-ESP8266-SNMP-MIB:HOST-RESOURCES-MIB:SNMPv2-MIB +modules: + os: + hardware: + - ESPHOME-ESP8266-SNMP-MIB::chipModel.0 + - ESPHOME-ESP8266-SNMP-MIB::chipRevision.0 + hardware_template: 'Model: {{ $ESPHOME-ESP8266-SNMP-MIB::chipModel.0 }} Revision: {{ $ESPHOME-ESP8266-SNMP-MIB::chipRevision.0 }}' + version: SNMPv2-MIB::sysDescr.0 + version_regex: '/version (?[^ ]+)/' + mempools: + data: + - # Heap ESP32 only + oid: ESPHOME-ESP32-SNMP-MIB::heap + total: ESPHOME-ESP32-SNMP-MIB::heapSize + free: ESPHOME-ESP32-SNMP-MIB::freeHeap + precision: 1 + descr: 'Heap' + class: Heap + - # SPI RAM If Attached + oid: HOST-RESOURCES-MIB::hrStorage + total: HOST-RESOURCES-MIB::hrStorageSize + used: HOST-RESOURCES-MIB::hrStorageUsed + precision: 1 + descr: '{{ $HOST-RESOURCES-MIB::hrStorageDescr }}' + class: '{{ $HOST-RESOURCES-MIB::hrStorageDescr }}' + index: '{{ $index }}' + skip_values: + - #Skip flash as the storage module should load that + oid: HOST-RESOURCES-MIB::hrStorageDescr + op: '=' + value: 'FLASH' + sensors: + dbm: + data: + - # RSSI + oid: ESPHOME-ESP8266-SNMP-MIB::wifi + descr: 'BSSID: {{ $ESPHOME-ESP8266-SNMP-MIB::bssi }}' + group: 'RSSI of SSID: {{ $ESPHOME-ESP8266-SNMP-MIB::ssid }}' + value: ESPHOME-ESP8266-SNMP-MIB::rssi + num_oid: .1.3.9999.4.{{ $index }} + state: + data: + - # Chip Type + oid: ESPHOME-ESP8266-SNMP-MIB::chipType + descr: 'Chip Type' + num_oid: '.1.3.9999.2.1.{{ $index }}' + states: + - { value: 32, generic: 0, graph: 0, descr: 'ESP32' } + - { value: 8266, generic: 0, graph: 0, descr: 'ESP8266' } + frequency: + data: + - # Chip Frequency + oid: ESPHOME-ESP8266-SNMP-MIB::cpuClock + descr: 'Chip Frequency' + num_oid: '.1.3.9999.2.2.{{ $index }}' + multiplier: 1000000 + count: + data: + - # Total RAM + oid: HOST-RESOURCES-MIB::hrMemorySize + descr: 'Total RAM' + num_oid: '.1.3.6.1.2.1.25.2.2{{ $noindex }}' + multiplier: 1000 + - # Core Count + oid: ESPHOME-ESP8266-SNMP-MIB::numCores + descr: 'Core Count' + num_oid: '.1.3.9999.2.4.{{ $index }}' + percent: + data: + - # ESP8266 only Heap Fragmentation In percents + oid: ESPHOME-ESP8266-SNMP-MIB::heapFragmentation + descr: 'Heap Fragmentation In percents' + num_oid: '.1.3.9999.8266.2.{{ $index }}' + diff --git a/priv/profiles/os_discovery/etherwan.yaml b/priv/profiles/os_discovery/etherwan.yaml new file mode 100644 index 00000000..958f3fa1 --- /dev/null +++ b/priv/profiles/os_discovery/etherwan.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: + - '/(?.*?), Firmware rev: (?[\d.]+)/' + - '/ (?(\w+ )+Managed Switch)/' diff --git a/priv/profiles/os_discovery/ets.yaml b/priv/profiles/os_discovery/ets.yaml new file mode 100644 index 00000000..7a5cb94f --- /dev/null +++ b/priv/profiles/os_discovery/ets.yaml @@ -0,0 +1,21 @@ +mib: GUDEADS-ETS-MIB +modules: + sensors: + state: + data: + - + oid: etsPrimPowAvail + num_oid: '.1.3.6.1.4.1.28507.4.1.2.{{ $index }}' + descr: 'Primary power' + index: 'etsPrimPowAvail.{{ $index }}' + states: + - { descr: unavailable, graph: 1, value: 0, generic: 2 } + - { descr: available, graph: 1, value: 1, generic: 0 } + - + oid: etsSecPowAvail + num_oid: '.1.3.6.1.4.1.28507.4.1.3.{{ $index }}' + descr: 'Secondary power' + index: 'etsSecPowAvail.{{ $index }}' + states: + - { descr: unavailable, graph: 1, value: 0, generic: 2 } + - { descr: available, graph: 1, value: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/eurostor.yaml b/priv/profiles/os_discovery/eurostor.yaml new file mode 100644 index 00000000..075c02bc --- /dev/null +++ b/priv/profiles/os_discovery/eurostor.yaml @@ -0,0 +1,132 @@ +mib: proware-SNMP-MIB +modules: + sensors: + temperature: + data: + - + oid: hwControllerBoardTempTable + value: hwControllerBoardTempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.1.10.1.3.{{ $index }}' + index: hwControllerBoardTempIndex.{{ $index }} + descr: hwControllerBoardTempDesc + - + oid: hwEnclosure01TempTable + value: hwEnclosure01TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.2.10.1.3.{{ $index }}' + index: hwEnclosure01TempIndex.{{ $index }} + descr: hwEnclosure01TempDesc + - + oid: hwEnclosure02TempTable + value: hwEnclosure02TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.3.10.1.3.{{ $index }}' + index: hwEnclosure02TempIndex.{{ $index }} + descr: hwEnclosure02TempDesc + - + oid: hwEnclosure03TempTable + value: hwEnclosure03TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.4.10.1.3.{{ $index }}' + index: hwEnclosure03TempIndex.{{ $index }} + descr: hwEnclosure03TempDesc + - + oid: hwEnclosure04TempTable + value: hwEnclosure04TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.5.10.1.3.{{ $index }}' + index: hwEnclosure04TempIndex.{{ $index }} + descr: hwEnclosure04TempDesc + - + oid: hwEnclosure05TempTable + value: hwEnclosure05TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.6.10.1.3.{{ $index }}' + index: hwEnclosure05TempIndex.{{ $index }} + descr: hwEnclosure05TempDesc + - + oid: hwEnclosure06TempTable + value: hwEnclosure06TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.7.10.1.3.{{ $index }}' + index: hwEnclosure06TempIndex.{{ $index }} + descr: hwEnclosure06TempDesc + - + oid: hwEnclosure07TempTable + value: hwEnclosure07TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.8.10.1.3.{{ $index }}' + index: hwEnclosure07TempIndex.{{ $index }} + descr: hwEnclosure07TempDesc + - + oid: hwEnclosure08TempTable + value: hwEnclosure08TempValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.9.10.1.3.{{ $index }}' + index: hwEnclosure08TempIndex.{{ $index }} + descr: hwEnclosure08TempDesc + fanspeed: + data: + - + oid: hwEnclosure01FanTable + value: hwEnclosure01FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.2.9.1.3.{{ $index }}' + index: hwEnclosure01FanIndex.{{ $index }} + descr: hwEnclosure01FanDesc + group: 'Backplane 1' + - + oid: hwEnclosure02FanTable + value: hwEnclosure02FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.3.9.1.3.{{ $index }}' + index: hwEnclosure02FanIndex.{{ $index }} + descr: hwEnclosure02FanDesc + group: 'Backplane 2' + - + oid: hwEnclosure03FanTable + value: hwEnclosure03FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.4.9.1.3.{{ $index }}' + index: hwEnclosure03FanIndex.{{ $index }} + descr: hwEnclosure03FanDesc + group: 'Backplane 3' + - + oid: hwEnclosure04FanTable + value: hwEnclosure04FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.5.9.1.3.{{ $index }}' + index: hwEnclosure04FanIndex.{{ $index }} + descr: hwEnclosure04FanDesc + group: 'Backplane 4' + - + oid: hwEnclosure05FanTable + value: hwEnclosure05FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.6.9.1.3.{{ $index }}' + index: hwEnclosure05FanIndex.{{ $index }} + descr: hwEnclosure05FanDesc + group: 'Backplane 5' + - + oid: hwEnclosure06FanTable + value: hwEnclosure06FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.7.9.1.3.{{ $index }}' + index: hwEnclosure06FanIndex.{{ $index }} + descr: hwEnclosure06FanDesc + group: 'Backplane 6' + - + oid: hwEnclosure07FanTable + value: hwEnclosure07FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.8.9.1.3.{{ $index }}' + index: hwEnclosure07FanIndex.{{ $index }} + descr: hwEnclosure07FanDesc + group: 'Backplane 7' + - + oid: hwEnclosure08FanTable + value: hwEnclosure08FanSpeed + num_oid: '.1.3.6.1.4.1.14752.1.3.2.9.9.1.3.{{ $index }}' + index: hwEnclosure08FanIndex.{{ $index }} + descr: hwEnclosure08FanDesc + group: 'Backplane 8' + voltage: + data: + - + oid: hwControllerBoardVolTable + value: hwControllerBoardVolValue + num_oid: '.1.3.6.1.4.1.14752.1.3.2.1.8.1.3.{{ $index }}' + index: hwControllerBoardVolIndex.{{ $index }} + descr: hwControllerBoardVolDesc + divisor: 1000 + skip_values: + + - + oid: hwControllerBoardVolDesc + op: '==' + value: 'Battery Status' diff --git a/priv/profiles/os_discovery/ewc.yaml b/priv/profiles/os_discovery/ewc.yaml new file mode 100644 index 00000000..675cc787 --- /dev/null +++ b/priv/profiles/os_discovery/ewc.yaml @@ -0,0 +1,9 @@ +mib: ENTERASYS-RESOURCE-UTILIZATION-MIB +modules: + processors: + data: + - + oid: etsysResourceCpuLoad5min + num_oid: '.1.3.6.1.4.1.5624.1.2.49.1.1.1.1.4.{{ $index }}' + index: '{{ $count }}' + precision: 10 diff --git a/priv/profiles/os_discovery/exagridos.yaml b/priv/profiles/os_discovery/exagridos.yaml new file mode 100644 index 00000000..ecd4f6b5 --- /dev/null +++ b/priv/profiles/os_discovery/exagridos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/^ExaGrid (?[^,]*), (?.*)$/' diff --git a/priv/profiles/os_discovery/exalink-fusion.yaml b/priv/profiles/os_discovery/exalink-fusion.yaml new file mode 100644 index 00000000..7de6675d --- /dev/null +++ b/priv/profiles/os_discovery/exalink-fusion.yaml @@ -0,0 +1,60 @@ +mib: EXALINK-FUSION-MIB +modules: + os: + version: EXALINK-FUSION-MIB::fusionInfoVersion + hardware: EXALINK-FUSION-MIB::fusionInfoBoard + serial: EXALINK-FUSION-MIB::fusionInfoSerial + sensors: + power: + data: + - + oid: fusionPsuTable + value: fusionPsuPowerIn + num_oid: '.1.3.6.1.4.1.43296.3.3.1.5.{{ $index }}' + descr: 'PSU{{ $index }} Input' + index: 'fusionPsuPowerIn.{{ $index }}' + - + oid: fusionPsuTable + value: fusionPsuPowerOut + num_oid: '.1.3.6.1.4.1.43296.3.3.1.6.{{ $index }}' + descr: 'PSU{{ $index }} Output' + index: 'fusionPsuPowerOut.{{ $index }}' + state: + data: + - + oid: fusionPsuTable + value: fusionPsuPresent + num_oid: '.1.3.6.1.4.1.43296.3.3.1.3.{{ $index }}' + descr: 'PSU{{ $index }} Presence' + index: 'fusionPsuPresent.{{ $index }}' + state_name: fusionPsuPresent + states: + - { value: 1, generic: 0, graph: 0, descr: Present } + - { value: 2, generic: 3, graph: 0, descr: Missing } + temperature: + data: + - + oid: fusionPsuTable + value: fusionPsuTemperature + num_oid: '.1.3.6.1.4.1.43296.3.3.1.4.{{ $index }}' + descr: 'PSU{{ $index }} Temp.' + index: 'fusionPsuTemperature.{{ $index }}' + + - + oid: fusionTempSensorTable + value: fusionTempSensorValue + num_oid: '.1.3.6.1.4.1.43296.3.2.1.1.3.{{ $index }}' + descr: 'temp{{ $index }} ({{ $fusionTempSensorName }})' + index: 'fusionTempSensorValue.{{ $index }}' + fanspeed: + data: + - + oid: fusionFanSensorTable + value: fusionFanSensorValue + num_oid: '.1.3.6.1.4.1.43296.3.2.2.1.3.{{ $index }}' + descr: 'fan{{ $index }} RPM' + index: 'fusionFanSensorValue.{{ $index }}' + low_limit: 512 + low_warn_limit: 4096 + warn_limit: 32768 + high_limit: 32769 diff --git a/priv/profiles/os_discovery/exos.yaml b/priv/profiles/os_discovery/exos.yaml new file mode 100644 index 00000000..a3bfc219 --- /dev/null +++ b/priv/profiles/os_discovery/exos.yaml @@ -0,0 +1,61 @@ +mib: FCMGMT-MIB +modules: + os: + hardware: connUnitProduct + serial: connUnitSn + sensors: + state: + data: + - + oid: connUnitState + value: connUnitState + num_oid: '.1.3.6.1.3.94.1.6.1.5.{{ $index }}' + descr: 'Connectivity Unit State' + index: 'connUnitState.{{ $index }}' + state_name: connUnitState + states: + - { value: 2, generic: 0, graph: 0, descr: Online } + - { value: 3, generic: 2, graph: 0, descr: Offline } + - { value: 1, generic: 3, graph: 0, descr: none } + - + oid: connUnitStatus + value: connUnitStatus + num_oid: '.1.3.6.1.3.94.1.6.1.6.{{ $index }}' + descr: 'Connectivity Unit Status' + index: 'connUnitStatus.{{ $index }}' + state_name: connUnitStatus + states: + - { value: 1, generic: 3, graph: 0, descr: none } + - { value: 2, generic: 3, graph: 0, descr: Unused } + - { value: 3, generic: 0, graph: 0, descr: Ok } + - { value: 4, generic: 1, graph: 0, descr: Warning } + - { value: 5, generic: 2, graph: 0, descr: Failed } + - + oid: connUnitPrincipal + value: connUnitPrincipal + num_oid: '.1.3.6.1.3.94.1.6.1.13.{{ $index }}' + descr: 'Principal Unit' + index: 'connUnitPrincipal.{{ $index }}' + state_name: connUnitPrincipal + skip_values: + - + oid: connUnitPrincipal + op: '=' + value: 1 + states: + - { value: 1, generic: 3, graph: 0, descr: Unknown } + - { value: 2, generic: 0, graph: 0, descr: No } + - { value: 3, generic: 0, graph: 0, descr: Yes } + - + oid: connUnitSensorTable + value: connUnitSensorStatus + num_oid: '.1.3.6.1.3.94.1.8.1.4.{{ $index }}' + descr: '{{ $connUnitSensorName }}' + index: 'connUnitSensorName.{{ $index }}' + state_name: connUnitSensorName + states: + - { value: 1, generic: 3, graph: 0, descr: Unknown } + - { value: 2, generic: 3, graph: 0, descr: Other } + - { value: 3, generic: 0, graph: 0, descr: Ok } + - { value: 4, generic: 1, graph: 0, descr: Warning } + - { value: 5, generic: 2, graph: 0, descr: Failed } diff --git a/priv/profiles/os_discovery/extendair.yaml b/priv/profiles/os_discovery/extendair.yaml new file mode 100644 index 00000000..5c3113a9 --- /dev/null +++ b/priv/profiles/os_discovery/extendair.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: ExaltComProducts::serialNumber.0 + version: ExaltComProducts::firmwareVersion.0 diff --git a/priv/profiles/os_discovery/extrahop.yaml b/priv/profiles/os_discovery/extrahop.yaml new file mode 100644 index 00000000..627a5854 --- /dev/null +++ b/priv/profiles/os_discovery/extrahop.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: EXTRAHOP-MIB::extrahopInfoVersionString diff --git a/priv/profiles/os_discovery/extremeware.yaml b/priv/profiles/os_discovery/extremeware.yaml new file mode 100644 index 00000000..27d03047 --- /dev/null +++ b/priv/profiles/os_discovery/extremeware.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/^(?\S+) - Version (?\S+)/' diff --git a/priv/profiles/os_discovery/f5.yaml b/priv/profiles/os_discovery/f5.yaml new file mode 100644 index 00000000..a031e99a --- /dev/null +++ b/priv/profiles/os_discovery/f5.yaml @@ -0,0 +1,114 @@ +mib: F5-BIGIP-SYSTEM-MIB +modules: + os: + hardware: F5-BIGIP-SYSTEM-MIB::sysPlatformInfoMarketingName.0 + serial: F5-BIGIP-SYSTEM-MIB::sysGeneralChassisSerialNum.0 + version: F5-BIGIP-SYSTEM-MIB::sysProductVersion.0 + mempools: + data: + - + used: F5-BIGIP-SYSTEM-MIB::sysStatMemoryUsed + total: F5-BIGIP-SYSTEM-MIB::sysStatMemoryTotal + descr: 'TMM Memory' + index: 0 + - + used: F5-BIGIP-SYSTEM-MIB::sysGlobalHostOtherMemoryUsed + total: F5-BIGIP-SYSTEM-MIB::sysGlobalHostOtherMemoryTotal + descr: 'Other Memory' + index: 1 + - + used: F5-BIGIP-SYSTEM-MIB::sysGlobalHostSwapUsed + total: F5-BIGIP-SYSTEM-MIB::sysGlobalHostSwapTotal + descr: 'Swap Memory' + index: 2 + sensors: + state: + data: + - + oid: sysCmFailoverStatusId + num_oid: '.1.3.6.1.4.1.3375.2.1.14.3.1.{{ $index }}' + index: 'sysCmFailoverStatusId.{{ $index }}' + descr: Failover State + group: HA + states: + - { value: 0, descr: 'Unknown', graph: 0, generic: 3 } + - { value: 1, descr: 'OffLine', graph: 0, generic: 2 } + - { value: 2, descr: 'ForcedOffline', graph: 0, generic: 2 } + - { value: 3, descr: 'Standby', graph: 0, generic: 0 } + - { value: 4, descr: 'Active', graph: 0, generic: 0 } + - + oid: sysCmSyncStatusId + num_oid: '.1.3.6.1.4.1.3375.2.1.14.1.1.{{ $index }}' + index: 'sysCmSyncStatusId.{{ $index }}' + descr: Sync State + group: HA + states: + - { value: 0, descr: 'unknown', graph: 0, generic: 3 } + - { value: 1, descr: 'syncing', graph: 0, generic: 1 } + - { value: 2, descr: 'needManualSync', graph: 0, generic: 2 } + - { value: 3, descr: 'inSync', graph: 0, generic: 0 } + - { value: 4, descr: 'syncFailed', graph: 0, generic: 1 } + - { value: 5, descr: 'syncDisconnected', graph: 0, generic: 2 } + - { value: 6, descr: 'standalone', graph: 0, generic: 0 } + - { value: 7, descr: 'awaitingInitialSync', graph: 0, generic: 1 } + - { value: 8, descr: 'incompatibleVersion', graph: 0, generic: 2 } + - { value: 9, descr: 'partialSync', graph: 0, generic: 2 } + - + oid: sysCmFailoverStatusColor + num_oid: '.1.3.6.1.4.1.3375.2.1.14.3.3.{{ $index }}' + index: 'sysCmFailoverStatusColor.{{ $index }}' + descr: Failover State Color + group: HA + states: + - { value: 0, descr: 'Green: functioning correctly', graph: 0, generic: 0 } + - { value: 1, descr: 'Yellow: functioning suboptimally', graph: 0, generic: 1 } + - { value: 2, descr: 'Red: requires attention to function correctly', graph: 0, generic: 2 } + - { value: 3, descr: 'Blue: status is unknown', graph: 0, generic: 3 } + - { value: 4, descr: 'Gray: intentionally not functioning', graph: 0, generic: 0 } + - { value: 5, descr: 'Black: not connected to any peers', graph: 0, generic: 2 } + - + oid: sysChassisPowerSupplyStatus + num_oid: '.1.3.6.1.4.1.3375.2.1.3.2.2.2.1.2.{{ $index }}' + index: 'sysChassisPowerSupplyStatus.{{ $index }}' + descr: "Power Supply Status {{ $index }}" + group: Hardware + states: + - { value: 0, descr: 'Bad', graph: 0, generic: 2 } + - { value: 1, descr: 'Good', graph: 0, generic: 0 } + - { value: 2, descr: 'NotPresent', graph: 0, generic: 3 } + - + oid: sysChassisFanStatus + num_oid: '.1.3.6.1.4.1.3375.2.1.3.2.1.2.1.2.{{ $index }}' + index: 'sysChassisFanStatus.{{ $index }}' + descr: "Fan Status {{ $index }}" + group: Hardware + states: + - { value: 0, descr: 'Bad', graph: 0, generic: 2 } + - { value: 1, descr: 'Good', graph: 0, generic: 0 } + - { value: 2, descr: 'NotPresent', graph: 0, generic: 3 } + count: + data: + - + oid: sysStatClientCurConns + num_oid: '.1.3.6.1.4.1.3375.2.1.1.2.1.8.{{ $index }}' + index: 'sysStatClientCurConns.{{ $index }}' + descr: 'Current connections from client-side' + group: Connections + - + oid: sysStatServerCurConns + num_oid: '.1.3.6.1.4.1.3375.2.1.1.2.1.15.{{ $index }}' + index: 'sysStatServerCurConns.{{ $index }}' + descr: 'Current connections from server-side' + group: Connections + - + oid: sysStatClientCurConns1m + num_oid: '.1.3.6.1.4.1.3375.2.1.1.2.1.79.{{ $index }}' + index: 'sysStatClientCurConns1m.{{ $index }}' + descr: 'Average current connections from client-side' + group: Connections + - + oid: sysStatServerCurConns1m + num_oid: '.1.3.6.1.4.1.3375.2.1.1.2.1.86.{{ $index }}' + index: 'sysStatServerCurConns1m.{{ $index }}' + descr: 'Average Current connections from server-side' + group: Connections diff --git a/priv/profiles/os_discovery/f5os.yaml b/priv/profiles/os_discovery/f5os.yaml new file mode 100644 index 00000000..8bd068e1 --- /dev/null +++ b/priv/profiles/os_discovery/f5os.yaml @@ -0,0 +1,192 @@ +mib: F5-PLATFORM-STATS-MIB +modules: + os: + hardware: + - .1.3.6.1.4.1.12276.1.2.1.1.1.1.8.8.112.108.97.116.102.111.114.109.0 + hardware_template: '{{ .1.3.6.1.4.1.12276.1.2.1.1.1.1.8.8.112.108.97.116.102.111.114.109.0 }}' + version: SNMPv2-MIB::sysDescr.0 + version_regex: '/version (?.*)/' + processors: + data: + - + oid: CpuUtilizationStatsTable + value: cpuTotal1minAvg + num_oid: '.1.3.6.1.4.1.12276.1.2.1.1.2.1.4.{{ $index }}' + descr: cpuCore + mempools: + data: + - + oid: F5-PLATFORM-STATS-MIB::memoryStatsTable + free: F5-PLATFORM-STATS-MIB::memPlatformUsed + total: F5-PLATFORM-STATS-MIB::memPlatformTotal + index: 0 + sensors: + temperature: + data: + - + oid: F5-PLATFORM-STATS-MIB::temperatureStatsTable + value: F5-PLATFORM-STATS-MIB::tempCurrent + num_oid: '.1.3.6.1.4.1.12276.1.2.1.3.1.1.2.{{ $index }}' + descr: System Temp + snmp_flags: ['-OQUb'] + fanspeed: + data: + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-1-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.1.{{ $index }}' + descr: fan-1-speed + index: 0 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-2-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.2.{{ $index }}' + descr: fan-2-speed + index: 1 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-3-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.3.{{ $index }}' + descr: fan-3-speed + index: 2 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-4-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.4.{{ $index }}' + descr: fan-4-speed + index: 3 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-5-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.5.{{ $index }}' + descr: fan-5-speed + index: 4 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-6-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.6.{{ $index }}' + descr: fan-6-speed + index: 5 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-7-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.7.{{ $index }}' + descr: fan-7-speed + index: 6 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-8-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.8.{{ $index }}' + descr: fan-8-speed + index: 7 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-9-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.9.{{ $index }}' + descr: fan-9-speed + index: 8 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-10-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.10.{{ $index }}' + descr: fan-10-speed + index: 9 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-11-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.11.{{ $index }}' + descr: fan-11-speed + index: 10 + snmp_flags: ['-OQUb'] + - + oid: F5-PLATFORM-STATS-MIB::fantrayStatsTable + value: F5-PLATFORM-STATS-MIB::fan-12-speed + num_oid: '.1.3.6.1.4.1.12276.1.2.1.7.1.1.12.{{ $index }}' + descr: fan-12-speed + index: 11 + snmp_flags: ['-OQUb'] + count: + data: + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskTotalIops + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.4.{{ $index }} + descr: Total IOPS + group: Disk + rrd_type: COUNTER + index: diskTotalIops0 + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskReadIops + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.5.{{ $index }} + descr: Read IOPS + group: Disk + rrd_type: COUNTER + index: diskReadIops + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskReadMerged + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.6.{{ $index }} + descr: Read Merged + group: Disk + rrd_type: COUNTER + index: diskReadMerged + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskReadBytes + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.7.{{ $index }} + descr: Read Bytes + group: Disk + rrd_type: COUNTER + index: diskReadBytes + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskReadLatencyMs + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.8.{{ $index }} + descr: Read Latency + group: Disk + rrd_type: COUNTER + index: diskReadLatencyMs + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskWriteIops + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.9.{{ $index }} + descr: Write IOPS + group: Disk + rrd_type: COUNTER + index: diskWriteIops + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskWriteMerged + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.10.{{ $index }} + descr: Write Merged + group: Disk + rrd_type: COUNTER + index: diskWriteMerged + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskWriteBytes + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.11.{{ $index }} + descr: Write Bytes + group: Disk + rrd_type: COUNTER + index: diskWriteBytes + - + oid: F5-PLATFORM-STATS-MIB::diskUtilizationStatsTable + value: F5-PLATFORM-STATS-MIB::diskWriteLatencyMs + num_oid: .1.3.6.1.4.1.12276.1.2.1.2.2.1.12.{{ $index }} + descr: Write Latency + group: Disk + rrd_type: COUNTER + index: diskWriteLatencyMs + diff --git a/priv/profiles/os_discovery/fabos.yaml b/priv/profiles/os_discovery/fabos.yaml new file mode 100644 index 00000000..86aa372f --- /dev/null +++ b/priv/profiles/os_discovery/fabos.yaml @@ -0,0 +1,102 @@ +mib: SW-MIB:FA-EXT-MIB +modules: + mempools: + data: + - + percent_used: SW-MIB::swMemUsage + processors: + data: + - + oid: swCpuUsage + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.26.1.{{ $index }}' + index: 1 + sensors: + additional_oids: + data: + - + oid: + - swFCPortName + temperature: + data: + - + oid: swSensorTable + value: swSensorValue + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{{ $index }}' + descr: swSensorInfo + skip_values: + - + oid: swSensorValue + op: '=' + value: -2147483648 + - + oid: swSensorType + op: '!=' + value: 1 + + - + oid: swSfpTemperature + value: swSfpTemperature + num_oid: ".1.3.6.1.4.1.1588.2.1.1.1.28.1.1.1.{{ $index }}" + descr: "{{ swFCPortName:16 }} Temp" + entPhysicalIndex: "200000{{ $subindex16 }}" + group: 'transceiver' + index: "swSfpTemperature.{{ $subindex16 }}" + + fanspeed: + data: + - + oid: swSensorTable + value: swSensorValue + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{{ $index }}' + descr: swSensorInfo + skip_values: + - + oid: swSensorValue + op: '=' + value: -2147483648 + - + oid: swSensorType + op: '!=' + value: 2 + dbm: + data: + - + oid: swSfpRxPower + value: swSfpRxPower + num_oid: ".1.3.6.1.4.1.1588.2.1.1.1.28.1.1.4.{{ $index }}" + descr: "{{ swFCPortName:16 }} RX" + entPhysicalIndex: "200000{{ $subindex16 }}" + group: 'transceiver' + index: "swSfpRxPower.{{ $subindex16 }}" + low_warn_limit: -5 + warn_limit: 1 + - + oid: swSfpTxPower + value: swSfpTxPower + num_oid: ".1.3.6.1.4.1.1588.2.1.1.1.28.1.1.5.{{ $index }}" + descr: "{{ swFCPortName:16 }} TX" + entPhysicalIndex: "200000{{ $subindex16 }}" + group: 'transceiver' + index: "swSfpTxPower.{{ $subindex16 }}" + low_warn_limit: -5 + warn_limit: 1 + state: + data: + - + oid: swSensorTable + value: swSensorStatus + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.3.{{ $index }}' + descr: swSensorInfo + state_name: swSensorStatus + states: + - { value: 1, generic: 3, graph: 0, descr: 'unknown' } + - { value: 2, generic: 2, graph: 1, descr: 'faulty' } + - { value: 3, generic: 1, graph: 1, descr: 'below-min' } + - { value: 4, generic: 0, graph: 1, descr: 'nominal' } + - { value: 5, generic: 1, graph: 1, descr: 'above-max' } + - { value: 6, generic: 1, graph: 1, descr: 'absent' } + skip_values: + - + oid: swSensorValue + op: '=' + value: -2147483648 diff --git a/priv/profiles/os_discovery/feos.yaml b/priv/profiles/os_discovery/feos.yaml new file mode 100644 index 00000000..d3affe44 --- /dev/null +++ b/priv/profiles/os_discovery/feos.yaml @@ -0,0 +1,116 @@ +mib: FE-FIREEYE-MIB +modules: + os: + version: FE-FIREEYE-MIB::feSystemImageVersionCurrent.0 + hardware: FE-FIREEYE-MIB::feHardwareModel.0 + serial: FE-FIREEYE-MIB::feSerialNumber.0 + sensors: + fanspeed: + data: + - + oid: feFanStatusTable + value: feFanSpeed + num_oid: '.1.3.6.1.4.1.25597.11.4.1.3.1.4.{{ $index }}' + descr: 'Fan {{ $feFanIndex }}' + index: 'feFanSpeed.{{ $feFanIndex }}' + temperature: + data: + - + oid: feSystemInfo + value: feTemperatureValue + num_oid: '.1.3.6.1.4.1.25597.11.1.1.4.{{ $index }}' + descr: 'System Temperature' + state: + data: + - + oid: feSystemInfo + value: feTemperatureIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.1.1.6.{{ $index }}' + group: System Health + descr: 'System Temperature Health' + state_name: feTemperatureIsHealthy + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: feStorageInfo + value: feRaidIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.2.1.2.{{ $index }}' + group: System Health + descr: 'System RAID Health' + state_name: feRaidIsHealthy + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: fePhysicalDiskTable + value: fePhysicalDiskIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.2.1.3.1.4.{{ $index }}' + group: Disk Health + descr: 'Disk {{ $fePhysicalDiskName }} Health' + index: fePhysicalDiskIsHealthy.{{ $fePhysicalDiskIndex }} + state_name: fePhysicalDiskIsHealthy + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: fePowerSupply + value: fePowerSupplyOverallIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.3.1.2.{{ $index }}' + group: System Health + descr: 'System Power Supply Health' + state_name: fePowerSupplyOverallIsHealthy + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: feFanHealth + value: feFanOverallIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.4.1.2.{{ $index }}' + group: System Health + descr: 'System Fan Health' + state_name: feFanOverallIsHealthy + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: feFanStatusTable + value: feFanIsHealthy + num_oid: '.1.3.6.1.4.1.25597.11.4.1.3.1.3.{{ $index }}' + group: Fan Health + descr: 'Fan {{ $feFanIndex }} Health' + state_name: feFanIsHealthy + index: feFanIsHealthy.{{ $feFanIndex }} + states: + - { value: 2, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: feApplication + value: feProductLicenseActive + num_oid: '.1.3.6.1.4.1.25597.11.5.1.10.{{ $index }}' + group: License Status + descr: 'Product License Status' + state_name: feProductLicenseActive + states: + - { value: 2, generic: 2, graph: 0, descr: 'Not Active' } + - { value: 1, generic: 0, graph: 0, descr: 'Active' } + - + oid: feApplication + value: feContentLicenseActive + num_oid: '.1.3.6.1.4.1.25597.11.5.1.11.{{ $index }}' + group: License Status + descr: 'Content License Status' + state_name: feContentLicenseActive + states: + - { value: 2, generic: 2, graph: 0, descr: 'Not Active' } + - { value: 1, generic: 0, graph: 0, descr: 'Active' } + - + oid: feApplication + value: feSupportLicenseActive + num_oid: '.1.3.6.1.4.1.25597.11.5.1.12.{{ $index }}' + group: License Status + descr: 'Support License Status' + state_name: feSupportLicenseActive + states: + - { value: 2, generic: 2, graph: 0, descr: 'Not Active' } + - { value: 1, generic: 0, graph: 0, descr: 'Active' } diff --git a/priv/profiles/os_discovery/fiberhome-switch.yaml b/priv/profiles/os_discovery/fiberhome-switch.yaml new file mode 100644 index 00000000..a99c8d10 --- /dev/null +++ b/priv/profiles/os_discovery/fiberhome-switch.yaml @@ -0,0 +1,72 @@ +mib: WRI-CPU-MIB:WRI-TEMPERATURE-MIB:WRI-VOLTAGE-MIB:FAN-MIB:WRI-POWER-MIB:WRI-DEVICE-MIB +modules: + mempools: + data: + - + oid: WRI-MEMORY-MIB::memoryPoolTable + total: WRI-MEMORY-MIB::memoryPoolTotalBytes + used: WRI-MEMORY-MIB::memoryPoolAllocBytesNum + descr: WRI-MEMORY-MIB::memoryPoolIndexDescr + os: + sysDescr_regex: '/(?.*) \(R\) Software, Version (?[^ ,]+),Hw Version (?[^ ,]+)/' +# version: WRI-DEVICE-MIB::msppDevSwVersion.0 +# features: WRI-DEVICE-MIB::msppDevHwVersion.0 + processors: + data: + - + oid: cpuTable + value: cpuUsage + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.4.1.1.2.{{ $index }}' + descr: cpuIndexDescr + precision: 100 + sensors: + temperature: + data: + - + oid: temperatureTable + value: temperatureValue + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.6.2.1.5.{{ $index }}' + descr: temperatureIndexDescr + low_limit: temperatureLThreshold + high_limit: temperatureHThreshold + divisor: 1 + voltage: + data: + - + oid: voltageTable + value: voltageValue + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.7.2.1.5.{{ $index }}' + descr: 'Int. {{ $voltageIndexDescr }}' + low_limit: voltageLThreshold + high_limit: voltageHThreshold + divisor: 1000 + fanspeed: + data: + - + oid: fanCtrlTable + value: fanCtrlSpeed + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.11.4.1.2.{{ $index }}' + descr: fanCtrlIndexDescr + divisor: 1 + state: + data: + - + oid: powerTable + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.2.1.1.3.{{ $index }}' + value: powerState + descr: 'Supply {{ $powerIndexDescr }}' + state_name: powerState + states: + - { value: 0, generic: 0, graph: 0, descr: Normal } + - { value: 1, generic: 2, graph: 0, descr: Insufficient } + - { value: 2, generic: 2, graph: 0, descr: Overload } + - + oid: cpuTable + value: cpuStatus + num_oid: '.1.3.6.1.4.1.3807.1.8012.1.4.1.1.7.{{ $index }}' + descr: CPU Status + state_name: cpuStatus + states: + - { value: 0, generic: 0, graph: 0, descr: Normal } + - { value: 1, generic: 2, graph: 0, descr: Overflow } + diff --git a/priv/profiles/os_discovery/fiberhome.yaml b/priv/profiles/os_discovery/fiberhome.yaml new file mode 100644 index 00000000..ea7bb5a5 --- /dev/null +++ b/priv/profiles/os_discovery/fiberhome.yaml @@ -0,0 +1,61 @@ +mib: GEPON-OLT-COMMON-MIB +modules: + mempools: + data: + - + oid: GEPON-OLT-COMMON-MIB::mgrCardInfoTable + percent_used: GEPON-OLT-COMMON-MIB::mgrCardMemUtil + total: 268435456 + descr: 'Hswa {{ $index }} Memory' + skip_values: + - + oid: GEPON-OLT-COMMON-MIB::mgrCardWorkStatus + op: '!=' + value: 1 + os: + sysDescr_regex: '/(?.*)/' + version: GEPON-OLT-COMMON-MIB::sysSoftVersion.0 + features: GEPON-OLT-COMMON-MIB::sysHardVersion.0 + processors: + data: + - + oid: mgrCardInfoTable + value: mgrCardCpuUtil + num_oid: '.1.3.6.1.4.1.5875.800.3.9.8.1.1.5.{{ $index }}' + descr: 'Hswa {{ $index }} Processor' + precision: 100 + skip_values: + - + oid: mgrCardWorkStatus + op: '!=' + value: 1 + sensors: + temperature: + data: + - + oid: sysTemperature + num_oid: '.1.3.6.1.4.1.5875.800.3.9.4.5.{{ $index }}' + descr: 'Internal Temperature {{ $index }}' + low_limit: 0 + high_limit: 100 + low_warn_limit: 15 + warn_limit: 55 + state: + data: + - + oid: fanAlarmStatus + num_oid: '.1.3.6.1.4.1.5875.800.3.60.2.1.1.{{ $index }}' + descr: "Fan slot {{ $index }} Status" + state_name: fanState + states: + - { descr: Normal, graph: 0, value: 1, generic: 0 } + - { descr: Failed, graph: 0, value: 2, generic: 2 } + - + oid: powerAlarmStatus + num_oid: '.1.3.6.1.4.1.5875.800.3.60.1.1.2.{{ $index }}' + descr: "Power slot {{ $index }} Status" + state_name: powerState + states: + - { descr: Normal, graph: 0, value: 1, generic: 0 } + - { descr: Logw Voltage, graph: 0, value: 2, generic: 1 } + - { descr: PowerFault, graph: 0, value: 3, generic: 2 } diff --git a/priv/profiles/os_discovery/fibernet-xmux4-plus.yaml b/priv/profiles/os_discovery/fibernet-xmux4-plus.yaml new file mode 100755 index 00000000..4e7d65bd --- /dev/null +++ b/priv/profiles/os_discovery/fibernet-xmux4-plus.yaml @@ -0,0 +1,163 @@ +mib: XMUX4-PLUS +modules: + sensors: + additional_oids: + data: + - + oid: + - muxLeftPowerIdenti + - muxRightPowerIdenti + temperature: + data: + - + oid: muxFanTemp + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.4.{{ $index }}' + descr: 'Fan Temperature' + index: 'muxFanTemp.{{ $index }}' + low_limit: -5 + high_limit: 55 + low_warn_limit: 0 + warn_limit: 40 + - + oid: muxInteriorTemp + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.5.{{ $index }}' + descr: 'Internal Temperature' + index: 'muxInteriorTemp.{{ $index }}' + low_limit: -5 + high_limit: 55 + low_warn_limit: 0 + warn_limit: 40 + voltage: + data: + - + oid: muxVolt3v3 + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.6.{{ $index }}' + descr: 'Channel s 3,3 voltage' + index: 'muxVolt3v3.{{ $index }}' + - + oid: muxVolt2v5 + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.7.{{ $index }}' + descr: 'Channel s 2,5 voltage' + index: 'muxVolt2v5.{{ $index }}' + - + oid: muxVolt1v2 + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.8.{{ $index }}' + descr: 'Channel s 1,2 voltage' + index: 'muxVolt1v2.{{ $index }}' + state: + data: + - + oid: muxLeftPower + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.9.{{ $index }}' + descr: 'Left power - {{ $muxLeftPowerIdenti }}' + index: 'muxLeftPower.{{ $index }}' + state_name: muxLeftPower + states: + - { descr: PowerOn, graph: 0, value: 0, generic: 0 } + - { descr: PowerOff, graph: 0, value: 1, generic: 2 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: muxRightPower + value: muxRightPower + num_oid: '.1.3.6.1.4.1.29003.2.44.1.1.9.1.10.{{ $index }}' + descr: 'Right power - {{ $muxRightPowerIdenti }}' + index: 'muxRightPower.{{ $index }}' + state_name: muxRightPower + states: + - { descr: PowerOn, graph: 0, value: 0, generic: 0 } + - { descr: PowerOff, graph: 0, value: 1, generic: 2 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: channelTable + value: channelPresent + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.3.{{ $index }}' + descr: 'Channel {{ $subindex1 }} present' + index: 'channelPresent.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelPresent + states: + - { descr: Missing, graph: 0, value: 0, generic: 1 } + - { descr: Present, graph: 0, value: 1, generic: 0 } + - + oid: channelTable + value: channelLocalTx + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.4.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Local TX' + index: 'channelLocalTx.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelLocalTx + states: + - { descr: Off, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: channelTable + value: channelLocalRx + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.5.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Local RX' + index: 'channelLocalRx.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelLocalRx + states: + - { descr: Off, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: channelTable + value: channelRemoteTx + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.6.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Remote TX' + index: 'channelRemoteTx.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelRemoteTx + states: + - { descr: Off, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: channelTable + value: channelRemoteRx + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.7.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Remote RX' + index: 'channelRemoteRx.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelRemoteRx + states: + - { descr: Off, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + - + oid: channelTable + value: channelLocalSfpPresent + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.8.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Local SFP present' + index: 'channelLocalSfpPresent.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelLocalSfpPresent + states: + - { descr: Missing, graph: 0, value: 0, generic: 1 } + - { descr: Present, graph: 0, value: 1, generic: 0 } + - + oid: channelTable + value: channelRemoteXfpPresent + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.9.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Remote XFP present' + index: 'channelRemoteXfpPresent.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelRemoteXfpPresent + states: + - { descr: Missing, graph: 0, value: 0, generic: 1 } + - { descr: Present, graph: 0, value: 1, generic: 0 } + - + oid: channelTable + value: channelLocalByPass + num_oid: '.1.3.6.1.4.1.29003.2.44.1.2.1.11.{{ $index }}' + descr: 'Channel {{ $subindex1 }} Local bypass' + index: 'channelLocalByPass.{{ $index }}' + group: 'Channel {{ $subindex1 }}' + state_name: channelRemoteRx + states: + - { descr: Off, graph: 0, value: 0, generic: 1 } + - { descr: On, graph: 0, value: 1, generic: 0 } + - { descr: Unknown, graph: 0, value: 8, generic: 3 } + diff --git a/priv/profiles/os_discovery/fibrolan-falcon.yaml b/priv/profiles/os_discovery/fibrolan-falcon.yaml new file mode 100644 index 00000000..6fdd31b7 --- /dev/null +++ b/priv/profiles/os_discovery/fibrolan-falcon.yaml @@ -0,0 +1,60 @@ +mib: FIBROLAN-SFP-MIB:FIBROLAN-DEVICE-MIB +modules: + os: + version: .1.0.8802.1.1.2.1.3.4.0 + + processors: + data: + - + oid: flDeviceCpuStatusEntry + value: flDeviceCpuUtilization + num_oid: '.1.3.6.1.4.1.4467.1000.10.1.120.1.2.{{ $index }}' + descr: 'CPU Usage' + sensors: + dbm: + data: + - + oid: flSfpMonitoringTable + value: flSfpRxPower + num_oid: '.1.3.6.1.4.1.4467.1000.50.1.2.1.1.{{ $index }}' + descr: 'Rx Port {{ $index }}' + index: flSfpRxPower.{{ $index }} + user_func: 'uw_to_dbm' + group: 'RX dBm' + - + oid: flSfpMonitoringTable + value: flSfpTxPower + num_oid: '.1.3.6.1.4.1.4467.1000.50.1.2.1.2.{{ $index }}' + descr: 'Port {{ $index }} Tx Level' + index: flSfpTxPower.{{ $index }} + user_func: 'uw_to_dbm' + group: 'TX dBm' + temperature: + data: + - + oid: flSfpMonitoringTable + value: flSfpTemperature + num_oid: '.1.3.6.1.4.1.4467.1000.50.1.2.1.3.{{ $index }}' + descr: 'Port {{ $index }} Transceiver' + index: flSfpTemperature.{{ $index }} + group: 'Transceivers' + current: + data: + - + oid: flSfpMonitoringTable + value: flSfpBiasCurrent + num_oid: '.1.3.6.1.4.1.4467.1000.50.1.2.1.4.{{ $index }}' + descr: 'Port {{ $index }} Transceiver Bias Current' + index: flSfpBiasCurrent.{{ $index }} + divisor: 1000 + group: 'Transceivers' + voltage: + data: + - + oid: flSfpMonitoringTable + value: flSfpSupplyVoltage + num_oid: '.1.3.6.1.4.1.4467.1000.50.1.2.1.5.{{ $index }}' + descr: 'Port {{ $index }} Transceiver Vcc' + index: flSfpSupplyVoltage.{{ $index }} + divisor: 1000 + group: 'Transceivers' diff --git a/priv/profiles/os_discovery/fibrolan-metrostar.yaml b/priv/profiles/os_discovery/fibrolan-metrostar.yaml new file mode 100644 index 00000000..a5062c03 --- /dev/null +++ b/priv/profiles/os_discovery/fibrolan-metrostar.yaml @@ -0,0 +1,43 @@ +mib: FIBROLAN-MIB-SFP:FIBROLAN-DEVICE-MIB:METROSTAR-MIB:MS-TRAPS-MIB:FIBROLAN-MIB-MSMODULE:FIBROLAN-MIB-METRO-STAR-MV +modules: + + processors: + data: + - + oid: flDeviceCpuStatusEntry + value: flDeviceCpuUtilization + num_oid: '.1.3.6.1.4.1.4467.1000.10.1.120.1.2.{{ $index }}' + descr: 'CPU Usage' + sensors: + temperature: + data: + - + oid: flMsChassisMvEntry + value: flMsChassisMvTemperature + num_oid: '.1.3.6.1.4.1.4467.100.500.20.1.4.{{ $index }}' + descr: 'Chassis {{ $index }}' + index: flMsChassisMvTemperature.{{ $index }} + group: 'Chassis' + state: + data: + - + oid: flMsChassisModuleMvEntry + value: flMsChassisModuleMvReset + num_oid: '.1.3.6.1.4.1.4467.100.500.10.20.1.4.{{ $index }}' + descr: 'Module {{ $index }} State - {{ $flMsChassisModuleMvDeviceType }}' + state_name: flMsChassisModuleMvReset + states: + - { value: 1, generic: 0, graph: 0, descr: 'running' } + - { value: 2, generic: 1, graph: 0, descr: 'reset' } + group: 'Modules' + - + oid: flMsChassisPsuMvTable + value: flMsChassisPsuMvStatus + num_oid: '.1.3.6.1.4.1.4467.100.500.10.10.1.2.{{ $index }}' + descr: 'PS {{ $flMsChassisPsuMvIndex }}' + state_name: flMsChassisPsuMvStatus + states: + - { value: 1, generic: 2, graph: 0, descr: 'fail' } + - { value: 2, generic: 0, graph: 0, descr: 'ok' } + - { value: 3, generic: 3, graph: 0, descr: 'uninstalled' } + group: 'Power Supplies' diff --git a/priv/profiles/os_discovery/firebox.yaml b/priv/profiles/os_discovery/firebox.yaml new file mode 100644 index 00000000..101a8a15 --- /dev/null +++ b/priv/profiles/os_discovery/firebox.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/v(?.*)/' diff --git a/priv/profiles/os_discovery/firebrick.yaml b/priv/profiles/os_discovery/firebrick.yaml new file mode 100644 index 00000000..9de1431c --- /dev/null +++ b/priv/profiles/os_discovery/firebrick.yaml @@ -0,0 +1,930 @@ +mib: FIREBRICK-CPU-MIB:FIREBRICK-MONITORING:FIREBRICK-L2TP-MIB:FIREBRICK-VOIP-MIB +modules: + processors: + data: + - + oid: fbCpuAll.5 + num_oid: '.1.3.6.1.4.1.24693.100.2.1.1.2.{{ $index }}' + index: '5.{{ $index }}' + value: "fbCpuAll" + precision: 100 + mempools: + data: + - + free: .1.3.6.1.4.1.24693.100.4.1.2 + total: .1.3.6.1.4.1.24693.100.4.1.1 + precision: 1024 + os: + sysDescr_regex: '/^(?FB[0-9]{4}).*\((?[^ ]+)/m' + sensors: + fanspeed: + data: + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + descr: fbMonReadingName + index: 'fbMonReadingValue.{{ $index }}' + low_limit: 1000 + low_warn_limit: 2000 + warn_limit: 6000 + high_limit: 8000 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Fan speed (RPM)' + temperature: + data: + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 10 + low_warn_limit: 20 + warn_limit: 50 + high_limit: 70 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Temperature (milliDegC)' + - + oid: fbMonReadingName + op: not_in_array + value: ['Main PCB front centre', 'Main PCB rear centre', 'Fan Controller', 'RTC', 'PCB'] + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 10 + low_warn_limit: 20 + warn_limit: 45 + high_limit: 65 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Temperature (milliDegC)' + - + oid: fbMonReadingName + op: not_in_array + value: ['Fan Controller', 'RTC', 'PCB'] + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 10 + low_warn_limit: 20 + warn_limit: 35 + high_limit: 40 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Temperature (milliDegC)' + - + oid: fbMonReadingName + op: not_in_array + value: ['Main PCB front centre', 'Main PCB rear centre', 'Fan Controller', 'RTC', 'PCB'] + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 10 + low_warn_limit: 20 + warn_limit: 60 + high_limit: 80 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Temperature (milliDegC)' + - + oid: fbMonReadingName + op: 'not_in_array' + value: ['Main PCB front centre', 'Main PCB rear centre', 'PSU A', 'PSU B', 'CPU NorthWest', 'CPU SouthEast', 'CPU'] + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 0 + low_warn_limit: 0 + warn_limit: 15 + high_limit: 20 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Temperature (milliDegC)' + - + oid: fbMonReadingName + op: in_array + value: ['Main PCB front centre', 'Main PCB rear centre', 'PSU A', 'PSU B', 'CPU NorthWest', 'CPU SouthEast', 'CPU', 'Fan Controller', 'RTC', 'PCB'] + voltage: + data: + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Reference Voltage + low_limit: 1 + low_warn_limit: 1.05 + warn_limit: 1.15 + high_limit: 1.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.1V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Reference Voltage + low_limit: 1.315 + low_warn_limit: 1.32 + warn_limit: 1.33 + high_limit: 1.335 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.325V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Reference Voltage + low_limit: 1.25 + low_warn_limit: 1.30 + warn_limit: 1.40 + high_limit: 1.45 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.35V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Reference Voltage + low_limit: 3.2 + low_warn_limit: 3.25 + warn_limit: 3.35 + high_limit: 3.4 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Fan Power + low_limit: 3.2 + low_warn_limit: 3.25 + warn_limit: 3.35 + high_limit: 3.4 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V(Fan)' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Reference Voltage + low_limit: 4.9 + low_warn_limit: 4.95 + warn_limit: 5.05 + high_limit: 5.1 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '5.0V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Power Supply Voltage + low_limit: 11.9 + low_warn_limit: 11.95 + warn_limit: 12.05 + high_limit: 12.1 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '12V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: True Random Number Generator Voltage + low_limit: 1 + low_warn_limit: 1.05 + warn_limit: 12.15 + high_limit: 12.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 'TRNG' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Power Supply Voltage + low_limit: 10 + low_warn_limit: 11.4 + warn_limit: 12.6 + high_limit: 14 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: not_in_array + value: ['12V-A', '12V-B'] + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 10 + low_warn_limit: 11.4 + warn_limit: 12.6 + high_limit: 14 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 12V-Common + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 1.7 + low_warn_limit: 1.75 + warn_limit: 1.85 + high_limit: 1.9 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.8V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 1.1 + low_warn_limit: 1.15 + warn_limit: 1.25 + high_limit: 1.3 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.2V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + low_limit: 0.9 + low_warn_limit: 1 + warn_limit: 1.2 + high_limit: 1.3 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.1V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Fan Power + low_limit: 1.1 + low_warn_limit: 1.1 + warn_limit: 1.3 + high_limit: 1.4 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.2V(Fan)' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Power Supply + low_limit: 11.8 + low_warn_limit: 11.9 + warn_limit: 12.1 + high_limit: 12.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '12V PSU A' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Power Supply + low_limit: 11.8 + low_warn_limit: 11.9 + warn_limit: 12.1 + high_limit: 12.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '12V PSU B' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Internal Power + low_limit: 11.8 + low_warn_limit: 11.9 + warn_limit: 12.1 + high_limit: 12.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '12V internal' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 'Vcore' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 0.912 + low_warn_limit: 0.9215 + warn_limit: 0.9785 + high_limit: 0.988 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '0.95V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 0.72 + low_warn_limit: 0.7275 + warn_limit: 0.7725 + high_limit: 0.78 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 'DDRVTT' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 0.8245 + low_warn_limit: 0.833 + warn_limit: 0.867 + high_limit: 0.8755 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '0.85V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 1.44 + low_warn_limit: 1.455 + warn_limit: 1.545 + high_limit: 1.56 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '1.5V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Internal Power + low_limit: 3.201 + low_warn_limit: 3.234 + warn_limit: 3.366 + high_limit: 3.399 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V system' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Internal Power + low_limit: 3.168 + low_warn_limit: 3.201 + warn_limit: 3.399 + high_limit: 3.432 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V SFP' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Internal Power + low_limit: 3.168 + low_warn_limit: 3.201 + warn_limit: 3.399 + high_limit: 3.432 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V M.2 SSD' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 3.168 + low_warn_limit: 3.201 + warn_limit: 3.399 + high_limit: 3.432 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '3.3V main CPU' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 2.4 + low_warn_limit: 2.425 + warn_limit: 2.575 + high_limit: 2.6 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '2.5V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 4.8 + low_warn_limit: 4.85 + warn_limit: 5.15 + high_limit: 5.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: '5V' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + low_limit: 0.8 + low_warn_limit: 0.9 + warn_limit: 1.8 + high_limit: 1.9 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 'VRTC' + - + oid: fbMonitoringMib + value: fbMonReadingValue + num_oid: '.1.3.6.1.4.1.24693.100.1.1.1.4.{{ $index }}' + divisor: 1000 + descr: fbMonReadingName + group: Processor + warn_limit: 5.15 + high_limit: 5.2 + skip_values: + - + oid: fbMonReadingType + op: '!=' + value: 'Voltage (mV)' + - + oid: fbMonReadingName + op: '!=' + value: 'USB Bus' + count: + data: + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpFreeTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.0{{ $noindex }}' + index: 'l2tp.tunnels.0' + descr: Free Tunnels + group: L2TP Tunnels + low_limit: 10 + low_warn_limit: 20 + warn_limit: 30000 + high_limit: 30000 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpOpeningTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.1{{ $noindex }}' + index: 'l2tp.tunnels.1' + descr: Opening Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpLiveIncomingTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.2{{ $noindex }}' + index: 'l2tp.tunnels.2' + descr: Live Incoming Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpLiveOutgoingTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.3{{ $noindex }}' + index: 'l2tp.tunnels.3' + descr: Live Outgoing Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpClosingTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.4{{ $noindex }}' + index: 'l2tp.tunnels.4' + descr: Closing Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpFailedTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.5{{ $noindex }}' + index: 'l2tp.tunnels.5' + descr: Failed Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralTunnels + value: FIREBRICK-L2TP-MIB::fbL2tpClosedTunnels + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.1.6{{ $noindex }}' + index: 'l2tp.tunnels.6' + descr: Closed Tunnels + group: L2TP Tunnels + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpFreeSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.0{{ $noindex }}' + index: 'l2tp.sessions.0' + descr: Free Sessions + group: L2TP Sessions + low_limit: 10 + low_warn_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpWaitingSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.1{{ $noindex }}' + index: 'l2tp.sessions.1' + descr: Waiting Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpOpeningSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.2{{ $noindex }}' + index: 'l2tp.sessions.2' + descr: Opening Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpNegotiatingSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.3{{ $noindex }}' + index: 'l2tp.sessions.3' + descr: Negotiating Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpAuthPendingSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.4{{ $noindex }}' + index: 'l2tp.sessions.4' + descr: Authentication Pending Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpStartedSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.5{{ $noindex }}' + index: 'l2tp.sessions.5' + descr: Started Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpLiveSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.6{{ $noindex }}' + index: 'l2tp.sessions.6' + descr: Live Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpAcctPendingSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.7{{ $noindex }}' + index: 'l2tp.sessions.7' + descr: Accounting Pending Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpClosingSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.8{{ $noindex }}' + index: 'l2tp.sessions.8' + descr: Closing Sessions + group: L2TP Sessions + warn_limit: 15 + high_limit: 20 + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpClosedSessions + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.9{{ $noindex }}' + index: 'l2tp.sessions.9' + descr: Closed Sessions + group: L2TP Sessions + - + oid: FIREBRICK-L2TP-MIB::fbL2tpGeneralSessions + value: FIREBRICK-L2TP-MIB::fbL2tpSessionNegotiationSlotsFree + num_oid: '.1.3.6.1.4.1.24693.100.1701.0.2.10{{ $noindex }}' + index: 'l2tp.sessions.10' + descr: Free Session Slots + group: L2TP Sessions + low_limit: 10 + low_warn_limit: 20 + - + oid: fbSipActiveLegs + num_oid: '.1.3.6.1.4.1.24693.100.5060.1.{{ $index }}' + index: '1' + descr: Total active call legs + group: VOIP + low_limit: 0 + low_warn_limit: 0 + warn_limit: 800 + high_limit: 1000 + - + oid: fbSipRadiusRegs + num_oid: '.1.3.6.1.4.1.24693.100.5060.2.{{ $index }}' + index: '2' + descr: RADIUS-based registrations + group: VOIP + low_limit: 0 + low_warn_limit: 0 + warn_limit: 800 + high_limit: 1000 + - + oid: fbSipCarrierTable + value: fbSipPhoneTotalLegs + num_oid: '.1.3.6.1.4.1.24693.100.5060.3.1.2.{{ $index }}' + index: 'carrierTotal{{ $index }}' + descr: 'Total Legs: {{ $fbSipCarrierName }}' + group: VOIP Carriers + low_limit: 0 + low_warn_limit: 0 + warn_limit: 800 + high_limit: 1000 + - + oid: fbSipCarrierTable + value: fbSipCarrierConnectedLegs + num_oid: '.1.3.6.1.4.1.24693.100.5060.3.1.3.{{ $index }}' + index: 'carrier{{ $index }}' + descr: 'Connected Legs: {{ $fbSipCarrierName }}' + group: VOIP Carriers + low_limit: 0 + low_warn_limit: 0 + warn_limit: 800 + high_limit: 1000 diff --git a/priv/profiles/os_discovery/fireware.yaml b/priv/profiles/os_discovery/fireware.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/fireware.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/flareos.yaml b/priv/profiles/os_discovery/flareos.yaml new file mode 100644 index 00000000..a79fab64 --- /dev/null +++ b/priv/profiles/os_discovery/flareos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\S*) - Flare (?.*)/' diff --git a/priv/profiles/os_discovery/flexbng.yaml b/priv/profiles/os_discovery/flexbng.yaml new file mode 100644 index 00000000..db3cd852 --- /dev/null +++ b/priv/profiles/os_discovery/flexbng.yaml @@ -0,0 +1,121 @@ +mib: NETELASTIC-FLEXBNG-PPPOE:NETELASTIC-FLEXBNG-SYSINFO:NETELASTIC-FLEXBNG-IPPOOLV6 +modules: + processors: + data: + - + oid: NETELASTIC-FLEXBNG-SYSINFO::cpuUsage + num_oid: '.1.3.6.1.4.1.54268.1.8.1.1.{{ $index }}' + mempools: + data: + - + percent_used: NETELASTIC-FLEXBNG-SYSINFO::memUsage + descr: Memory Usage + index: 0 + sensors: + count: + data: + - + oid: NETELASTIC-FLEXBNG-PPPOE::connection-success + num_oid: '.1.3.6.1.4.1.54268.1.1.1.1.{{ $index }}' + descr: 'PPPoE request connection success count' + index: 'connection-success.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::connection + num_oid: '.1.3.6.1.4.1.54268.1.1.1.2.{{ $index }}' + descr: 'PPPoE request connection count' + index: 'connection.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::discovery-timeout + num_oid: '.1.3.6.1.4.1.54268.1.1.1.3.{{ $index }}' + descr: 'PPPoE discovery timeout count' + index: 'discovery-timeout.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::lcp-fail + num_oid: '.1.3.6.1.4.1.54268.1.1.1.4.{{ $index }}' + descr: 'Common LCP fail count' + index: 'lcp-fail.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::lcp-fail-other + num_oid: '.1.3.6.1.4.1.54268.1.1.1.5.{{ $index }}' + descr: 'Other LCP fail count' + index: 'lcp-fail-other.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::auth-fail + num_oid: '.1.3.6.1.4.1.54268.1.1.1.6.{{ $index }}' + descr: 'Auth common fail count' + index: 'auth-fail.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::auth-fail-other + num_oid: '.1.3.6.1.4.1.54268.1.1.1.7.{{ $index }}' + descr: 'Other auth fail count' + index: 'auth-fail-other.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::ipcp-fail + num_oid: '.1.3.6.1.4.1.54268.1.1.1.8.{{ $index }}' + descr: 'Common IPCP fail count' + index: 'ipcp-fail.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::ipcp-fail-other + num_oid: '.1.3.6.1.4.1.54268.1.1.1.9.{{ $index }}' + descr: 'Other IPCP fail count' + index: 'ipcp-fail-other.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::ipv4-assign-fail + num_oid: '.1.3.6.1.4.1.54268.1.1.1.10.{{ $index }}' + descr: 'IPv4 address assign fail' + index: 'ipv4-assign-fail.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-PPPOE::user-disconnect + num_oid: '.1.3.6.1.4.1.54268.1.1.1.11.{{ $index }}' + descr: 'Number of received PADT' + index: 'user-disconnect.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-IPPOOL::totalValidIpNumber + num_oid: '.1.3.6.1.4.1.54268.1.1.2.3.1.{{ $index }}' + descr: 'Total IPv4 pool size' + index: 'totalValidIpNumber.{{ $index }}' + group: PPPoE + - + oid: NETELASTIC-FLEXBNG-IPPOOL::totalUsedIpNumber + num_oid: '.1.3.6.1.4.1.54268.1.1.2.3.2.{{ $index }}' + descr: 'Total IPv4 pool used' + index: 'totalUsedIpNumber.{{ $index }}' + group: PPPoE + percent: + data: + - + oid: NETELASTIC-FLEXBNG-IPPOOL::totalAllocatePercent + num_oid: '.1.3.6.1.4.1.54268.1.1.2.3.3.{{ $index }}' + descr: 'IPv4 pool allocated' + index: 'totalAllocatePercent.{{ $index }}' + group: 'IP Pool' + - + oid: NETELASTIC-FLEXBNG-IPPOOLV6::addrAllocatePercent + num_oid: '.1.3.6.1.4.1.54268.1.1.3.3.1.3.{{ $index }}' + descr: 'IPv6 address allocated %' + index: 'addrAllocatePercent.{{ $index_string }}' + group: 'IP Pool' + - + oid: NETELASTIC-FLEXBNG-IPPOOLV6::prefixAllocatePercent + num_oid: '.1.3.6.1.4.1.54268.1.1.3.1.1.2.{{ $index }}' + descr: 'IPv6 delegation pool allocated %' + index: 'prefixAllocatePercent.{{ $index_string }}' + group: 'IP Pool' + - + oid: NETELASTIC-FLEXBNG-IPPOOL::groupTable + value: NETELASTIC-FLEXBNG-IPPOOL::groupAllocatePercent + num_oid: '.1.3.6.1.4.1.54268.1.1.2.1.1.5.{{ $index }}' + descr: '{{ NETELASTIC-FLEXBNG-IPPOOL::groupName }} DHCP Pool Used %' + index: 'groupTable.{{ $index_string }}' + group: 'IP Pool' diff --git a/priv/profiles/os_discovery/forcepoint-fe.yaml b/priv/profiles/os_discovery/forcepoint-fe.yaml new file mode 100644 index 00000000..ef85f4c6 --- /dev/null +++ b/priv/profiles/os_discovery/forcepoint-fe.yaml @@ -0,0 +1,19 @@ +mib: FORCEPOINT-NGFW-ENGINE-MIB +modules: + mempools: + data: + - + total: FORCEPOINT-NGFW-ENGINE-MIB::fwMemBytesTotal + free: FORCEPOINT-NGFW-ENGINE-MIB::fwMemBytesUnused + used: FORCEPOINT-NGFW-ENGINE-MIB::fwMemBytesUsed + descr: 'Local Memory {{ $index }}' + processors: + data: + - + oid: FORCEPOINT-NGFW-ENGINE-MIB::fwCpuTotal + num_oid: '.1.3.6.1.4.1.47565.1.1.1.11.1.1.3.{{ $index }}' + descr: 'Processor {{ $index }}' + os: + serial: FORCEPOINT-NGFW-ENGINE-MIB::nodeHardwareSerialNumber.0 + version: FORCEPOINT-NGFW-ENGINE-MIB::fwSoftwareVersion.0 + hardware: FORCEPOINT-NGFW-ENGINE-MIB::nodeApplianceModel.0 diff --git a/priv/profiles/os_discovery/forcepoint.yaml b/priv/profiles/os_discovery/forcepoint.yaml new file mode 100644 index 00000000..2186fd18 --- /dev/null +++ b/priv/profiles/os_discovery/forcepoint.yaml @@ -0,0 +1,28 @@ +mib: STONESOFT-SMI-MIB:STONESOFT-FIREWALL-MIB:STONESOFT-NETNODE-MIB +modules: + mempools: + data: + - + total: STONESOFT-FIREWALL-MIB::fwMemBytesTotal + free: STONESOFT-FIREWALL-MIB::fwMemBytesUnused + used: STONESOFT-FIREWALL-MIB::fwMemBytesUsed + descr: 'Local Memory {{ $index }}' + processors: + data: + - + oid: STONESOFT-FIREWALL-MIB::fwCpuTotal + num_oid: '.1.3.6.1.4.1.1369.5.2.1.11.1.1.3.{{ $index }}' + descr: 'Processor {{ $index }}' + storage: + data: + - + oid: STONESOFT-FIREWALL-MIB::fwDiskStatsTable + descr: STONESOFT-FIREWALL-MIB::fwMountPointName + size: STONESOFT-FIREWALL-MIB::fwPartitionSize + used: STONESOFT-FIREWALL-MIB::fwPartitionUsed + units: 1024 + os: + serial: STONESOFT-NETNODE-MIB::nodePosCode.0 + version: STONESOFT-SMI-MIB::stonesoftFirewall.1.1.0 + version_regex: '/Forcepoint NGFW version (?[0-9\.]+)/' + hardware: STONESOFT-NETNODE-MIB::nodeApplianceModel.0 diff --git a/priv/profiles/os_discovery/fortiadc.yaml b/priv/profiles/os_discovery/fortiadc.yaml new file mode 100644 index 00000000..6baef897 --- /dev/null +++ b/priv/profiles/os_discovery/fortiadc.yaml @@ -0,0 +1,51 @@ +mib: FORTINET-FORTIADC-MIB +modules: + os: + version: FORTINET-FORTIADC-MIB::fadcSysVersion.0 + serial: FORTINET-FORTIADC-MIB::fadcSysSerial.0 + hardware: FORTINET-FORTIADC-MIB::fadcSysModel.0 + processors: + data: + - + oid: fadcSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.112.1.4.{{ $index }}' + descr: System CPU Usage + type: fortigate-fixed + mempools: + data: + - + percent_used: FORTINET-FORTIADC-MIB::fadcSysMemUsage + descr: System Memory Usage + sensors: + count: + data: + - + oid: fadcConcurrentClientConnections + num_oid: '.1.3.6.1.4.1.12356.112.8.5.7.{{ $index }}' + index: 'fadcConcurrentClientConnections.{{ $index }}' + descr: Client Connections + group: Server Load Balance + - + oid: fadcConcurrentClientSSLSessions + num_oid: '.1.3.6.1.4.1.12356.112.8.5.8.{{ $index }}' + index: 'fadcConcurrentClientSSLSessions.{{ $index }}' + descr: Client SSL Sessions + group: Server Load Balance + - + oid: fadcVirtualServerNumber + num_oid: '.1.3.6.1.4.1.12356.112.8.2.1.{{ $index }}' + index: 'fadcVirtualServerNumber.{{ $index }}' + descr: Virtual Servers + group: Server Load Balance + - + oid: fadcRSNumber + num_oid: '.1.3.6.1.4.1.12356.112.8.1.2.{{ $index }}' + index: 'fadcRSNumber.{{ $index }}' + descr: Real Server Pools + group: Server Load Balance + - + oid: fadcVdNumber + num_oid: '.1.3.6.1.4.1.12356.112.2.1.1.{{ $index }}' + index: 'fadcVdNumber.{{ $index }}' + high_limit: '{{ $fadcVdMaxVdoms }}' + descr: VDOMs diff --git a/priv/profiles/os_discovery/fortiap.yaml b/priv/profiles/os_discovery/fortiap.yaml new file mode 100644 index 00000000..902775fb --- /dev/null +++ b/priv/profiles/os_discovery/fortiap.yaml @@ -0,0 +1,54 @@ +mib: FORTINET-FORTIAP-MIB +modules: + os: + version: FORTINET-FORTIAP-MIB::fapVersion.0 + serial: FORTINET-FORTIAP-MIB::fapSerialNum.0 + hardware: FORTINET-FORTIAP-MIB::fapVersion.0 + hardware_regex: '/(?FP\d+[A-Z])/i' + hardware_replace: + - ['/FP/', 'FortiAP '] + mempools: + data: + - + percent_used: FORTINET-FORTIAP-MIB::fapMemoryUsage + index: 0 + processors: + data: + - + oid: FORTINET-FORTIAP-MIB::fapCpuUsage + num_oid: '.1.3.6.1.4.1.12356.120.3.41.{{ $index }}' + type: fortiap + sensors: + temperature: + data: + - + oid: fapTemperature + num_oid: '.1.3.6.1.4.1.12356.120.3.44.{{ $index }}' + index: fapTemperature + descr: Temperature + value: fapTemperature + count: + data: + - + oid: fapStationCount + num_oid: '.1.3.6.1.4.1.12356.120.3.43.{{ $index }}' + index: fapStationCount + descr: 'Station Count' + value: fapStationCount + state: + data: + - + oid: fapPoeModeOper + num_oid: '.1.3.6.1.4.1.12356.120.3.4.{{ $index }}' + index: fapPoeModeOper + descr: 'Operating PoE Mode' + value: fapPoeModeOper + states: + - { value: 0, descr: 'Autodetect', graph: 1, generic: 0 } + - { value: 1, descr: '802.3af', graph: 1, generic: 1 } + - { value: 2, descr: '802.3at', graph: 1, generic: 0 } + - { value: 3, descr: 'Power Adapter', graph: 1, generic: 0 } + - { value: 4, descr: 'Controlled by AC', graph: 1, generic: 0 } + - { value: 5, descr: 'Full Power', graph: 1, generic: 0 } + - { value: 6, descr: 'High Power', graph: 1, generic: 0 } + - { value: 7, descr: 'Low Power', graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/fortiauthenticator.yaml b/priv/profiles/os_discovery/fortiauthenticator.yaml new file mode 100644 index 00000000..0f18ce2a --- /dev/null +++ b/priv/profiles/os_discovery/fortiauthenticator.yaml @@ -0,0 +1,12 @@ +mib: FORTINET-FORTIAUTHENTICATOR-MIB +modules: + os: + hardware: FORTINET-FORTIAUTHENTICATOR-MIB::facSysModel.0 + serial: FORTINET-FORTIAUTHENTICATOR-MIB::facSysSerial.0 + version: FORTINET-FORTIAUTHENTICATOR-MIB::facSysVersion.0 + processors: + data: + - + oid: facSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.113.1.4.{{ $index }}' + type: fortiauth diff --git a/priv/profiles/os_discovery/fortiextender.yaml b/priv/profiles/os_discovery/fortiextender.yaml new file mode 100644 index 00000000..49feb3db --- /dev/null +++ b/priv/profiles/os_discovery/fortiextender.yaml @@ -0,0 +1,42 @@ +mib: FORTINET-FORTIEXTENDER-MIB +modules: + mempools: + data: + - + percent_used: FORTINET-FORTIEXTENDER-MIB::fextInfoMemUsage + descr: 'Memory' + os: + serial: + - FORTINET-FORTIEXTENDER-MIB::fextInfoSN.0 + version: FORTINET-FORTIEXTENDER-MIB::fextInfoImage.0 + version_regex: '/v(?[\d.]+)/' + hardware: FORTINET-FORTIEXTENDER-MIB::fextInfoModel.0 + processors: + data: + - + oid: FORTINET-FORTIEXTENDER-MIB::fextInfoCPUUsage + num_oid: '.1.3.6.1.4.1.12356.121.21.1.2.1.{{ $index }}' + descr: 'Processor Usage' + sensors: + count: + data: + - + oid: fextInfoModemStatusReconnectCount + num_oid: '.1.3.6.1.4.1.12356.121.21.3.1.1.33.{{ $index }}' + index: 'fextInfoModemStatusReconnectCount.{{ $index }}' + descr: 'Reconnect Count Modem {{ $index }}' + runtime: + data: + - + oid: fextInfoModemStatusUptime + num_oid: '.1.3.6.1.4.1.12356.121.21.3.1.1.35.{{ $index }}' + index: 'fextInfoModemStatusUptime.{{ $index }}' + descr: 'Online Time Modem {{ $index }}' + divisor: 60 + dbm: + data: + - + oid: fextInfoModemStatusSignalStrength + num_oid: '.1.3.6.1.4.1.12356.121.21.3.1.1.23.{{ $index }}' + index: 'fextInfoModemStatusSignalStrength.{{ $index }}' + descr: 'Signal Strength Modem {{ $index }}' diff --git a/priv/profiles/os_discovery/fortigate.yaml b/priv/profiles/os_discovery/fortigate.yaml new file mode 100644 index 00000000..54a29fbc --- /dev/null +++ b/priv/profiles/os_discovery/fortigate.yaml @@ -0,0 +1,383 @@ +mib: FORTINET-FORTIGATE-MIB +modules: + mempools: + data: + - + total: FORTINET-FORTIGATE-MIB::fgSysMemCapacity + percent_used: FORTINET-FORTIGATE-MIB::fgSysMemUsage + precision: 1024 + descr: 'Main Memory' + os: + version: FORTINET-FORTIGATE-MIB::fgSysVersion.0 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + hardware: ENTITY-MIB::entPhysicalModelName.1 + hardware_replace: + - ['/FGR_/', 'FortiGate Rugged '] + - ['/FGT_VM64/', 'FortiGate VM'] + - ['/FGT_/', 'FortiGate '] + - ['/FWF_/', 'FortiWiFi '] + + processors: + data: + - + oid: fgSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.101.4.1.3.{{ $index }}' + descr: System Cpu Usage + type: fortigate-fixed + - + oid: fgProcessorUsage + num_oid: '.1.3.6.1.4.1.12356.101.4.4.2.1.2.{{ $index }}' + descr: 'CPU Core {{ $index }}' + type: fortigate-core + sensors: + additional_oids: + data: + - + oid: + - fgVdEntName + state: + data: + - + oid: fgHwSensors + num_oid: '.1.3.6.1.4.1.12356.101.4.3.2.1.4.{{ $index }}' + index: 'fgHwSensorEntIndex.{{ $index }}' + descr: fgHwSensorEntName + value: fgHwSensorEntAlarmStatus + skip_values: + - + oid: fgHwSensorEntName + op: '=' + value: '' + states: + - { value: 0, descr: OK, graph: 1, generic: 0 } + - { value: 1, descr: ERROR, graph: 1, generic: 2 } + - + oid: fgVpn2TunTable + num_oid: '.1.3.6.1.4.1.12356.101.12.4.2.1.26.{{ $index }}' + index: 'Vdom_{{ $fgVpn2TunVdom }}.Ph1_{{ $fgVpn2TunPhase1Name }}.Ph2_{{ $fgVpn2TunPhase2Name }}' + snmp_flags: '-OteQUsax' + snmp_no_Ih_flag: '' + descr: "{{ $fgVpn2TunPhase1Name }}\\{{ $fgVpn2TunPhase2Name }} ({{ $InetAddress_fgVpn2TunRemGwyIp }})" + group: IPSEC VPN + value: fgVpn2TunStatus + states: + - { value: 1, descr: Down, graph: 1, generic: 2 } + - { value: 2, descr: Up, graph: 1, generic: 0 } + - + oid: fgVpnSslState + num_oid: '.1.3.6.1.4.1.12356.101.12.2.3.1.1.{{ $index }}' + index: 'fgVpnSslState.{{ $index }}' + descr: "SSL-VPN Status" + group: SSL VPN + value: fgVpnSslState + states: + - { value: 1, descr: Disabled, graph: 1, generic: 3 } + - { value: 2, descr: Enabled, graph: 1, generic: 0 } + - + oid: fdLteSessConnStat + num_oid: '.1.3.6.1.4.1.12356.101.19.5.1.4.{{ $index }}' + index: 'fdLteSessConnStat.{{ $index }}' + descr: "LTE Session Status" + group: LTE Modem + value: fdLteSessConnStat + states: + - { value: 0, descr: Unknown, graph: 1, generic: 3 } + - { value: 1, descr: Disconnected, graph: 1, generic: 2 } + - { value: 2, descr: Connected, graph: 1, generic: 0 } + - { value: 3, descr: Suspended, graph: 1, generic: 2 } + - { value: 4, descr: Authenticating, graph: 1, generic: 1 } + - + oid: fgVWLHealthCheckLinkTable + value: fgVWLHealthCheckLinkState + num_oid: '.1.3.6.1.4.1.12356.101.4.9.2.1.4.{{ $index }}' + descr: '{{ $fgVWLHealthCheckLinkName }}\{{ $fgVWLHealthCheckLinkIfName }}' + group: SD-Wan + index: 'fgVWLHealthCheckLinkState.{{ $index }}' + states: + - { descr: Alive, graph: 1, value: 0, generic: 0 } + - { descr: Dead, graph: 0, value: 1, generic: 2 } + - + oid: fgLinkMonitorTable + num_oid: '.1.3.6.1.4.1.12356.101.4.8.2.1.3.{{ $index }}' + index: 'fgLinkMonitorID.{{ $index }}' + descr: fgLinkMonitorName + value: fgLinkMonitorState + group: Link monitor + states: + - { value: 0, descr: Alive, graph: 1, generic: 0 } + - { value: 1, descr: Dead, graph: 1, generic: 2 } + - + oid: fgVdTable + value: fgVdEntHaState + num_oid: '.1.3.6.1.4.1.12356.101.3.2.1.1.4.{{ $index }}' + descr: '{{ $fgVdEntName }} vDom HA state' + group: HA + index: 'fgVdEntIndex.{{ $index }}' + states: + - { value: 1, descr: Primary, graph: 1, generic: 0 } + - { value: 2, descr: Secondary, graph: 1, generic: 0 } + - { value: 3, descr: Standalone, graph: 1, generic: 0 } + count: + data: + - + oid: fgWebfilterStatsTable + value: fgWfHTTPBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.1.{{ $index }}' + descr: '{{ $fgVdEntName }} HTTP Sessions Blocked' + group: Webfilter + index: 'fgWfHTTPBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfHTTPSBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.2.{{ $index }}' + descr: '{{ $fgVdEntName }} HTTPS Sessions Blocked' + group: Webfilter + index: 'fgWfHTTPSBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfHTTPURLBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.3.{{ $index }}' + descr: '{{ $fgVdEntName }} HTTP URLs Blocked' + group: Webfilter + index: 'fgWfHTTPURLBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfHTTPSURLBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.4.{{ $index }}' + descr: '{{ $fgVdEntName }} HTTPS URLs Blocked' + group: Webfilter + index: 'fgWfHTTPSURLBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfActiveXBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.5.{{ $index }}' + descr: '{{ $fgVdEntName }} ActiveX Blocked' + group: Webfilter + index: 'fgWfActiveXBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfCookieBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.6.{{ $index }}' + descr: '{{ $fgVdEntName }} Cookies Blocked' + group: Webfilter + index: 'fgWfCookieBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgWebfilterStatsTable + value: fgWfAppletBlocked + num_oid: '.1.3.6.1.4.1.12356.101.10.1.2.1.1.7.{{ $index }}' + descr: '{{ $fgVdEntName }} Applets Blocked' + group: Webfilter + index: 'fgWfAppletBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgVpnTunnelUpCount + num_oid: '.1.3.6.1.4.1.12356.101.12.1.1.{{ $index }}' + index: 'fgVpnTunnelUpCount.{{ $index }}' + descr: IPSEC VPN tunnels + group: VPN + - + oid: fgVpnSslStatsLoginUsers + num_oid: '.1.3.6.1.4.1.12356.101.12.2.3.1.2.{{ $index }}' + index: 'fgVpnSslStatsLoginUsers.{{ $index }}' + descr: '{{ $fgVdEntName }} SSL VPN Logged users' + group: VPN + - + oid: fgVpnSslStatsActiveTunnels + num_oid: '.1.3.6.1.4.1.12356.101.12.2.3.1.6.{{ $index }}' + index: 'fgVpnSslStatsActiveTunnels.{{ $index }}' + descr: '{{ $fgVdEntName }} SSL VPN Active tunnels' + group: VPN + - + oid: fgVWLHealthCheckLinkTable + value: fgVWLHealthCheckLinkLatency + num_oid: '.1.3.6.1.4.1.12356.101.4.9.2.1.5.{{ $index }}' + descr: 'Link Latency {{ $fgVWLHealthCheckLinkName }}\{{ $fgVWLHealthCheckLinkIfName }}' + group: SD-WAN + index: 'fgVWLHealthCheckLinkLatency.{{ $index }}' + - + oid: fgVWLHealthCheckLinkTable + value: fgVWLHealthCheckLinkJitter + num_oid: '.1.3.6.1.4.1.12356.101.4.9.2.1.6.{{ $index }}' + descr: 'Link Jitter {{ $fgVWLHealthCheckLinkName }}\{{ $fgVWLHealthCheckLinkIfName }}' + group: SD-WAN + index: 'fgVWLHealthCheckLinkJitter.{{ $index }}' + - + oid: fgVWLHealthCheckLinkTable + value: fgVWLHealthCheckLinkPacketLoss + num_oid: '.1.3.6.1.4.1.12356.101.4.9.2.1.9.{{ $index }}' + descr: 'Link Packet Loss {{ $fgVWLHealthCheckLinkName }}\{{ $fgVWLHealthCheckLinkIfName }}' + group: SD-WAN + index: 'fgVWLHealthCheckLinkPacketLoss.{{ $index }}' + - + oid: fgLinkMonitorTable + value: fgLinkMonitorLatency + num_oid: '.1.3.6.1.4.1.12356.101.4.8.2.1.4.{{ $index }}' + descr: 'Monitor Latency {{ $fgLinkMonitorName }}' + group: Link monitor + index: 'fgLinkMonitorLatency.{{ $index }}' + - + oid: fgLinkMonitorTable + value: fgLinkMonitorJitter + num_oid: '.1.3.6.1.4.1.12356.101.4.8.2.1.5.{{ $index }}' + descr: 'Monitor Jitter {{ $fgLinkMonitorName }}' + group: Link monitor + index: 'fgLinkMonitorJitter.{{ $index }}' + - + oid: fgLinkMonitorTable + value: fgLinkMonitorPacketLoss + num_oid: '.1.3.6.1.4.1.12356.101.4.8.2.1.8.{{ $index }}' + descr: 'Monitor Packet Loss {{ $fgLinkMonitorName }}' + group: Link monitor + index: 'fgLinkMonitorPacketLoss.{{ $index }}' + - + oid: fgIpsStatsTable + value: fgIpsIntrusionsDetected + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.1.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Intrusions Detected' + group: IPS + index: 'fgIpsIntrusionsDetected.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsIntrusionsBlocked + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.2.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Intrusions Blocked' + group: IPS + index: 'fgIpsIntrusionsBlocked.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsCritSevDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.3.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Severity Critical Detected' + group: IPS + index: 'fgIpsCritSevDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsHighSevDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.4.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Severity High Detected' + group: IPS + index: 'fgIpsHighSevDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsMedSevDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.5.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Severity Medium Detected' + group: IPS + index: 'fgIpsMedSevDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsLowSevDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.6.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Severity Low Detected' + group: IPS + index: 'fgIpsLowSevDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsInfoSevDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.7.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Severity Informational Detected' + group: IPS + index: 'fgIpsInfoSevDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsSignatureDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.8.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Signature Detected' + group: IPS + index: 'fgIpsSignatureDetections.{{ $index }}' + rrd_type: COUNTER + - + oid: fgIpsStatsTable + value: fgIpsAnomalyDetections + num_oid: '.1.3.6.1.4.1.12356.101.9.2.1.1.9.{{ $index }}' + descr: '{{ $fgVdEntName }} IPS Anomaly Detected' + group: IPS + index: 'fgIpsAnomalyDetections.{{ $index }}' + rrd_type: COUNTER + + signal: + data: + - + oid: fgSignalInfoTable + value: fgWcdmaRssi + num_oid: '.1.3.6.1.4.1.12356.101.19.3.1.9.{{ $index }}' + descr: 'LTE Modem WCDMA RSSI' + index: 'fgWcdmaRssi.{{ $index }}' + low_limit: -100 + low_warn_limit: -86 + warn_limit: -40 + high_limit: -30 + - + oid: fgSignalInfoTable + value: fgLteRssi + num_oid: '.1.3.6.1.4.1.12356.101.19.3.1.11.{{ $index }}' + descr: 'LTE Modem LTE RSSI' + index: 'fgLteRssi.{{ $index }}' + low_limit: -95 + low_warn_limit: -85 + warn_limit: -30 + high_limit: -20 + temperature: + data: + - + oid: fgHwSensors + num_oid: '.1.3.6.1.4.1.12356.101.4.3.2.1.3.{{ $index }}' + index: 'fgHwSensorEntIndex.{{ $index }}' + descr: fgHwSensorEntName + value: fgHwSensorEntValue + skip_values: + - + oid: fgHwSensorEntName + op: 'regex' + value: '/^((?!Temp).)*$/' + - + oid: fgHwSensorEntValue + op: '=' + value: -1 + fanspeed: + data: + - + oid: fgHwSensors + num_oid: '.1.3.6.1.4.1.12356.101.4.3.2.1.3.{{ $index }}' + index: 'fgHwSensorEntIndex.{{ $index }}' + descr: fgHwSensorEntName + value: fgHwSensorEntValue + skip_values: + - + oid: fgHwSensorEntName + op: 'regex' + value: '/^((?!Fan).)*$/' + - + oid: fgHwSensorEntName + op: 'regex' + value: '/.*Temp.*/' + - + oid: fgHwSensorEntValue + op: '=' + value: -1 + voltage: + data: + - + oid: fgHwSensors + num_oid: '.1.3.6.1.4.1.12356.101.4.3.2.1.3.{{ $index }}' + index: 'fgHwSensorEntIndex.{{ $index }}' + descr: fgHwSensorEntName + value: fgHwSensorEntValue + skip_values: + - + oid: fgHwSensorEntName + op: 'regex' + value: '/^((?!VCC).)*$/' diff --git a/priv/profiles/os_discovery/fortimail.yaml b/priv/profiles/os_discovery/fortimail.yaml new file mode 100644 index 00000000..5c944f97 --- /dev/null +++ b/priv/profiles/os_discovery/fortimail.yaml @@ -0,0 +1,26 @@ +mib: FORTINET-FORTIMAIL-MIB +modules: + mempools: + data: + - + percent_used: FORTINET-FORTIMAIL-MIB::fmlSysMemUsage + descr: 'Physical Memory' + os: + hardware: FORTINET-FORTIMAIL-MIB::fmlSysModel.0 + version: FORTINET-FORTIMAIL-MIB::fmlSysVersion.0 + serial: FORTINET-FORTIMAIL-MIB::fmlSysSerial.0 + processors: + data: + - + oid: fmlSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.105.1.6.{{ $index }}' + type: fortimail + sensors: + count: + data: + - + oid: fmlMailQueueEntry + value: fmlMailQueueMailCount + num_oid: '.1.3.6.1.4.1.12356.105.1.103.2.1.3.{{ $index }}' + index: 'fmlMailQueueIndex.{{ $index }}' + descr: '{{ $fmlMailQueueName }}' diff --git a/priv/profiles/os_discovery/fortios.yaml b/priv/profiles/os_discovery/fortios.yaml new file mode 100644 index 00000000..82347bfb --- /dev/null +++ b/priv/profiles/os_discovery/fortios.yaml @@ -0,0 +1,21 @@ +modules: + mempools: + data: + - + total: FORTINET-FORTIMANAGER-FORTIANALYZER-MIB::fmSysMemCapacity + used: FORTINET-FORTIMANAGER-FORTIANALYZER-MIB::fmSysMemUsed + precision: 1024 + descr: 'Main Memory' + os: + version: FORTINET-FORTIMANAGER-FORTIANALYZER-MIB::fmSysVersion.0 + serial: + - FORTINET-CORE-MIB::fnSysSerial.0 + - ENTITY-MIB::entPhysicalSerialNum.1 + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - SNMPv2-MIB::sysObjectID.0 + hardware_regex: '/::(?[fmg|faz][0-9A-Za-z]+)$/i' + hardware_replace: + - ['/^fmg/', 'FortiManager (FMG) '] + - ['/^faz/', 'FortiAnalyzer (FAZ) '] + - ['/vm$/', 'VM'] diff --git a/priv/profiles/os_discovery/fortisandbox.yaml b/priv/profiles/os_discovery/fortisandbox.yaml new file mode 100644 index 00000000..5680abb3 --- /dev/null +++ b/priv/profiles/os_discovery/fortisandbox.yaml @@ -0,0 +1,21 @@ +mib: FORTINET-FORTISANDBOX-MIB +modules: + mempools: + data: + - + total: FORTINET-FORTISANDBOX-MIB::fsaSysMemCapacity + percent_used: FORTINET-FORTISANDBOX-MIB::fsaSysMemUsage + precision: 1024 + descr: 'Physical Memory' + os: + version: FORTINET-FORTISANDBOX-MIB::fsaSysVersion.0 + hardware: ENTITY-MIB::entPhysicalModelName.1 + serial: + - FORTINET-CORE-MIB::fnSysSerial.0 + - ENTITY-MIB::entPhysicalSerialNum.1 + processors: + data: + - + oid: fsaSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.118.3.1.2.{{ $index }}' + type: fortisandbox diff --git a/priv/profiles/os_discovery/fortiswitch.yaml b/priv/profiles/os_discovery/fortiswitch.yaml new file mode 100644 index 00000000..dfd079c9 --- /dev/null +++ b/priv/profiles/os_discovery/fortiswitch.yaml @@ -0,0 +1,46 @@ +mib: FORTINET-FORTISWITCH-MIB:ENTITY-MIB:ENTITY-SENSOR-MIB +modules: + mempools: + data: + - + total: FORTINET-FORTISWITCH-MIB::fsSysMemCapacity + used: FORTINET-FORTISWITCH-MIB::fsSysMemUsage + descr: 'Main Memory' + precision: 1024 + os: + serial: + - FORTINET-CORE-MIB::fnSysSerial.0 + - ENTITY-MIB::entPhysicalSerialNum.1 + version: FORTINET-FORTISWITCH-MIB::fsSysVersion.0 + version_regex: '/v(?[\d.]+)/' + hardware: FORTINET-FORTISWITCH-MIB::fsSysVersion.0 + hardware_regex: '/^(?\S+)/' + processors: + data: + - + oid: fsSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.106.4.1.2.{{ $index }}' + index: 1 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + state: + data: + - + oid: entPhySensorTable + num_oid: '.1.3.6.1.2.1.99.1.1.1.5.{{ $index }}' + index: 'entPhySensorTable.{{ $index }}' + descr: entPhysicalName + value: entPhySensorOperStatus + skip_values: + - + oid: entPhySensorType + op: '!=' + value: 12 + states: + - { value: 1, descr: OK, graph: 1, generic: 0 } + - { value: 2, descr: Unavailable, graph: 1, generic: 2 } + - { value: 3, descr: Non Operational, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/fortivoice.yaml b/priv/profiles/os_discovery/fortivoice.yaml new file mode 100644 index 00000000..76f9674b --- /dev/null +++ b/priv/profiles/os_discovery/fortivoice.yaml @@ -0,0 +1,12 @@ +mib: FORTINET-FORTIVOICE-MIB +modules: + os: + version: FORTINET-FORTIVOICE-MIB::fvSysVersion.0 + serial: FORTINET-FORTIVOICE-MIB::fvSysSerial.0 + hardware: FORTINET-FORTIVOICE-MIB::fvSysModel.0 + processors: + data: + - + oid: fvSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.115.1.6.{{ $index }}' + index: 1 diff --git a/priv/profiles/os_discovery/fortiweb.yaml b/priv/profiles/os_discovery/fortiweb.yaml new file mode 100644 index 00000000..0e68058e --- /dev/null +++ b/priv/profiles/os_discovery/fortiweb.yaml @@ -0,0 +1,23 @@ +mib: FORTINET-FORTIWEB-MIB +modules: + mempools: + data: + - + total: FORTINET-FORTIWEB-MIB::fwSysMemCapacity + percent_used: FORTINET-FORTIWEB-MIB::fwSysMemUsage + precision: 1048576 + descr: 'Physical Memory' + os: + serial: + - FORTINET-CORE-MIB::fnSysSerial.0 + - ENTITY-MIB::entPhysicalSerialNum.1 + version: FORTINET-FORTIWEB-MIB::fwSysVersion.0 + version_regex: '/ (?[\d.]+)/' + hardware: FORTINET-FORTIWEB-MIB::fwSysVersion.0 + hardware_regex: '/^(?\S+)/' + processors: + data: + - + oid: fwSysCpuUsage + num_oid: '.1.3.6.1.4.1.12356.107.2.1.5.{{ $index }}' + type: fortiweb diff --git a/priv/profiles/os_discovery/fortiwlc.yaml b/priv/profiles/os_discovery/fortiwlc.yaml new file mode 100644 index 00000000..287fc204 --- /dev/null +++ b/priv/profiles/os_discovery/fortiwlc.yaml @@ -0,0 +1,11 @@ +mib: MERU-GLOBAL-STATISTICS-MIB +modules: + os: + hardware: MERU-GLOBAL-STATISTICS-MIB::mwSystemGeneralModel.0 + version: MERU-GLOBAL-STATISTICS-MIB::mwSystemGeneralVersion.0 + processors: + data: + - + oid: mwSystemResourceCurCpuUsagePercentage + num_oid: '.1.3.6.1.4.1.15983.1.1.3.1.14.13.{{ $index }}' + type: fortiwlc diff --git a/priv/profiles/os_discovery/foundryos.yaml b/priv/profiles/os_discovery/foundryos.yaml new file mode 100644 index 00000000..56ef4bde --- /dev/null +++ b/priv/profiles/os_discovery/foundryos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Foundry Networks, Inc. (?[^,]+), IronWare Version (?\S+)/' diff --git a/priv/profiles/os_discovery/freebsd.yaml b/priv/profiles/os_discovery/freebsd.yaml new file mode 100644 index 00000000..f91e549d --- /dev/null +++ b/priv/profiles/os_discovery/freebsd.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: + - '/ (?\d+\.\d\S+) /' + - '/(?aarch64|alpha|amd64|arm\w*|i386|ia64|mips\w*|pc98|powerpc\w*|risc\w*|sparc\w*)/i' diff --git a/priv/profiles/os_discovery/freshtomato.yaml b/priv/profiles/os_discovery/freshtomato.yaml new file mode 100644 index 00000000..32fe9dc3 --- /dev/null +++ b/priv/profiles/os_discovery/freshtomato.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: '.1.3.6.1.4.1.8072.1.3.2.2.1.3.6.100.101.118.105.99.101' + version: '.1.3.6.1.4.1.8072.1.3.2.2.1.3.7.118.101.114.115.105.111.110' + version_regex: '/FreshTomato\ (?[.0-9]+)/' diff --git a/priv/profiles/os_discovery/fs-bdcom.yaml b/priv/profiles/os_discovery/fs-bdcom.yaml new file mode 100644 index 00000000..c03805da --- /dev/null +++ b/priv/profiles/os_discovery/fs-bdcom.yaml @@ -0,0 +1,369 @@ +# Fiberstore S3900-R series switches are rebranded BDCOM S2900 switches +# The BDCOM SNMP enterprise ID (3320) has been replaced with the Fiberstore enterprise ID (52642) +# If you make changes here, they probably should be made in the bdcom.yaml too. +# Transceiver thresholds and vendorPN have been added in firmware version 2.2.0F Build 127804. +mib: NMS-CHASSIS:NMS-FAN-TRAP:NMS-POWER-MIB:NMS-GPON-MIB:NMS-EPON-OLT-PON:NMS-IF-MIB:IF-MIB +modules: + mempools: + data: + - + percent_used: NMS-CHASSIS::nmscardMEMUtilization + descr: 'Memory Usage' + os: + hardware: + - NMS-CHASSIS::nmscardDescr.0 + - NMS-CHASSIS::nmscardDescr.1 + version: + - NMS-CHASSIS::nmscardSwVersion.0 + - NMS-CHASSIS::nmscardSwVersion.1 + serial: + - NMS-CHASSIS::nmscardSerial.0 + - NMS-CHASSIS::nmscardSerial.1 + additional_oids: + data: + - + oid: + - gponOltPonPortPortIndex + - ponIfIndex + - gponOltPonPortPortActiveOnuNum + - gponOltPonPortPortInactiveOnuNum + processors: + data: + - + oid: nmscardCPUUtilization + num_oid: '.1.3.6.1.4.1.52642.3.6.10.1.11.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifName + + temperature: + data: + - + oid: nmscardTemperature + num_oid: '.1.3.6.1.4.1.52642.3.6.10.1.13.{{ $index }}' + descr: 'Temperature {{ $index }}' + - + oid: ifSfpParameterTable + value: temperature + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifName }} temperature' + index: 'ifSfpParameterTable.temperature.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 256 + skip_values: -65535 + low_limit: temperatureLowAlarm + low_warn_limit: temperatureLowWarning + warn_limit: temperatureHighWarning + high_limit: temperatureHighAlarm + voltage: + data: + - + oid: nmscardVoltage + num_oid: '.1.3.6.1.4.1.52642.3.6.10.1.14.{{ $index }}' + descr: 'Voltage {{ $index }}' + - + oid: ifSfpParameterTable + value: vlotage + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifName }} voltage' + index: 'ifSfpParameterTable.vlotage.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 10000 + skip_values: -65535 + low_limit: voltageLowAlarm + low_warn_limit: voltageLowWarning + warn_limit: voltageHighWarning + high_limit: voltageHighAlarm + current: + data: + - + oid: ifSfpParameterTable + value: curr1 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.6.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current1' + index: 'ifSfpParameterTable.curr1.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr2 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.10.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current2' + index: 'ifSfpParameterTable.curr2.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr3 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.13.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current3' + index: 'ifSfpParameterTable.curr3.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + - + oid: ifSfpParameterTable + value: curr4 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.16.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current4' + index: 'ifSfpParameterTable.curr4.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 500000 + skip_values: -65535 + low_limit: biasLowAlarm + low_warn_limit: biasLowWarning + warn_limit: biasHighWarning + high_limit: biasHighAlarm + dbm: + data: + - + oid: ifSfpParameterTable + value: rxPower1 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.3.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower1' + index: 'ifSfpParameterTable.rxPower1.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower2 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.9.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower2' + index: 'ifSfpParameterTable.rxPower2.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower3 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.12.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower3' + index: 'ifSfpParameterTable.rxPower3.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: rxPower4 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.15.{{ $index }}' + descr: '{{ IF-MIB::ifName }} rxPower4' + index: 'ifSfpParameterTable.rxPower4.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: rxPowerLowAlarm + low_warn_limit: rxPowerLowWarning + warn_limit: rxPowerHighWarning + high_limit: rxPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower1 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower1' + index: 'ifSfpParameterTable.txPower1.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower2 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.8.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower2' + index: 'ifSfpParameterTable.txPower2.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower3 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.11.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower3' + index: 'ifSfpParameterTable.txPower3.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + - + oid: ifSfpParameterTable + value: txPower4 + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.14.{{ $index }}' + descr: '{{ IF-MIB::ifName }} txPower4' + index: 'ifSfpParameterTable.txPower4.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 100 + skip_values: -65535 + low_limit: txPowerLowAlarm + low_warn_limit: txPowerLowWarning + warn_limit: txPowerHighWarning + high_limit: txPowerHighAlarm + humidity: + data: + - + oid: nmsHumidity + num_oid: '.1.3.6.1.4.1.52642.3.6.17.{{ $index }}' + descr: 'Humidity {{ $index }}' + state: + data: + - + oid: nmsSysErrorNum + num_oid: '.1.3.6.1.4.1.52642.3.6.18.{{ $index }}' + descr: 'Sys Errors' + states: + - { descr: sys_ok, graph: 0, value: 0, generic: 0 } + - { descr: TLB_modification_exception, graph: 0, value: 1, generic: 1 } + - { descr: load_or_instruction_fetch_TLB_miss_exception, graph: 0, value: 2, generic: 2 } + - { descr: store_TLB_miss_exception, graph: 0, value: 3, generic: 2 } + - { descr: load_instruction_fetch_address_error_exception, graph: 0, value: 4, generic: 2 } + - { descr: store_address_error_exception, graph: 0, value: 5, generic: 2 } + - { descr: for_instruction_fetch_bus_error, graph: 0, value: 6, generic: 2 } + - { descr: data_load_or_store_bus_error, graph: 0, value: 7, generic: 2 } + - { descr: arithmetic_overflow_exception, graph: 0, value: 12, generic: 2 } + - { descr: trap_exception, graph: 0, value: 13, generic: 2 } + - { descr: deadlock_software_exception, graph: 0, value: 16, generic: 2 } + - + oid: ifSfpParameterTable + value: sfpLostStatus + num_oid: '.1.3.6.1.4.1.52642.9.63.1.7.1.21.{{ $index }}' + descr: '{{ IF-MIB::ifName }} LOS' + index: 'ifSfpParameterTable.sfpLostStatus.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ $vendname }} PN: {{ $vendorPN }} S/N: {{ $sfpSeqNum }} {{ $waveLen }}nm)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: lost, graph: 2, value: 2, generic: 2 } + skip_values: + - # skip ports with no tansceiver inserted + oid: sfpPresentStatus + op: '=' + value: 2 + - + oid: FanStatus + num_oid: '.1.3.6.1.4.1.52642.9.187.4.1.2.{{ $index }}' + descr: 'Fan {{ $index }} status' + state_name: FanStatus + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Stop, graph: 1, value: 2, generic: 2 } + - { descr: Unused, graph: 1, value: 3, generic: 1 } + - + oid: powerStatus + num_oid: '.1.3.6.1.4.1.52642.9.189.1.{{ $index }}' + descr: 'Power status' + states: + - { descr: power-A-normal, graph: 1, value: 1, generic: 2 } + - { descr: power-B-normal, graph: 1, value: 2, generic: 2 } + - { descr: power-A-B-normal, graph: 1, value: 3, generic: 0 } + - { descr: other, graph: 1, value: 4, generic: 3 } + count: + data: + - + oid: gponOltPonPortConfigTable + value: gponOltPonPortPortActiveOnuNum + num_oid: '.1.3.6.1.4.1.52642.10.2.1.1.4.{{ $index }}' + group: "GPON Active Onu Num" + descr: "{{ $gponOltPonPortPortIndex }}" + index: "gponOltPonPortPortActiveOnuNum.{{ $index }}" + low_limit: 0 + warn_limit: 120 + high_limit: 128 + - + oid: gponOltPonPortConfigTable + value: gponOltPonPortPortInactiveOnuNum + num_oid: '.1.3.6.1.4.1.52642.10.2.1.1.5.{{ $index }}' + group: "GPON Inactive Onu Num" + descr: "{{ $gponOltPonPortPortIndex }}" + index: "gponOltPonPortPortInactiveOnuNum.{{ $index }}" + - + oid: nmseponoltponTable + value: activeOnuNum + num_oid: '.1.3.6.1.4.1.52642.101.6.1.1.21.{{ $index }}' + group: "EPON Active Onu Num" + descr: "{{ $ponIfIndex }}" + index: "activeOnuNum.{{ $index }}" + low_limit: 0 + warn_limit: 60 + high_limit: 64 + - + oid: nmseponoltponTable + value: inactiveOnuNum + num_oid: '.1.3.6.1.4.1.52642.101.6.1.1.22.{{ $index }}' + group: "EPON Inactive Onu Num" + descr: "{{ $ponIfIndex }}" + index: "inactiveOnuNum.{{ $index }}" + + fanspeed: + data: + - + oid: FanSpeed + num_oid: '.1.3.6.1.4.1.52642.9.187.4.1.3.{{ $index }}' + descr: 'Fan {{ $index }} speed' diff --git a/priv/profiles/os_discovery/fs-centec.yaml b/priv/profiles/os_discovery/fs-centec.yaml new file mode 100644 index 00000000..fd795365 --- /dev/null +++ b/priv/profiles/os_discovery/fs-centec.yaml @@ -0,0 +1,72 @@ +mib: SWITCH:IF-MIB +modules: + os: + version: + - SWITCH::version.0 + serial: + - SWITCH::lswSlotSerialNo.1.1 + sysDescr_regex: '/FSOS software, (?[\d\w]+) software \((?[\w\d ]+)\), Version (?[\d\w\.]+)\s*\nCopyright \(C\) \d+ by FS\.COM\. All rights reserved\. \nCompiled (?[\w\d \:]+).*/' + processors: + data: + - + oid: SWITCH::oneMinute + num_oid: '.1.3.6.1.4.1.52642.1.1.9.2.{{ $index }}' + type: oneMinute + mempools: + data: + - + oid: SWITCH::memory + total: SWITCH::memTotalReal + used: SWITCH::memTotalUsed + free: SWITCH::memTotalFree + descr: 'Memory {{ $index }}' + precision: 1024 + sensors: + temperature: + data: + - + oid: devMSlotEnvironmentTable + value: devMSlotEnvironmentValue + num_oid: '.1.3.6.1.4.1.52642.1.37.1.3.1.4.{{ $index }}' + index: 'devMSltEnvironmentValue.{{ $index }}' + descr: 'System temperature {{ $subindex2 }}' + group: 'System' + low_limit: devMSlotEnvironmentLowerLimit + warn_limit: devMSlotEnvironmentUpperLimit + high_limit: devMSlotEnvironmentCriticalLimit + percent: + data: + - + oid: devMFanStatusTable + value: devMFanSpeed + num_oid: '.1.3.6.1.4.1.52642.1.37.1.1.1.1.5.{{ $index }}' + index: 'devMFanSpeed.{{ index }}' + descr: 'Fan {{ $subindex2 }} speed' + group: 'Fans' + state: + data: + - + oid: devMFanStatusTable + value: devMFanStatus + num_oid: '.1.3.6.1.4.1.52642.1.37.1.1.1.1.4.{{ $index }}' + index: 'devMFanStatus.{{ index }}' + descr: 'Fan {{ $subindex2 }} status' + state_name: FanStatus + group: 'Fans' + states: + - { descr: active, graph: 1, value: 1, generic: 0 } + - { descr: deactive, graph: 2, value: 2, generic: 2 } + - { descr: notInstall, graph: 3, value: 3, generic: 2 } + - { descr: unsupport, graph: 4, value: 4, generic: 3 } + - + oid: devMPowerStatusTable + value: devMPowerAlertStatus + num_oid: '.1.3.6.1.4.1.52642.1.37.1.2.1.7.{{ $index }}' + descr: 'PSU {{ $index }} alarm' + index: 'devMPowerAlertStatus.{{ $index }}' + group: 'PSU' + states: + - { descr: noAlert, graph: 1, value: 1, generic: 0 } + - { descr: alert, graph: 2, value: 2, generic: 2 } + - { descr: unsupported, graph: 3, value: 3, generic: 3 } + diff --git a/priv/profiles/os_discovery/fs-gbn.yaml b/priv/profiles/os_discovery/fs-gbn.yaml new file mode 100644 index 00000000..16fa8a50 --- /dev/null +++ b/priv/profiles/os_discovery/fs-gbn.yaml @@ -0,0 +1,15 @@ +modules: + mempools: + additional_oids: + oids: + - GBNPlatformOAM-MIB::cpuDescription + data: + - + total: GBNPlatformOAM-MIB::memorySize + free: GBNPlatformOAM-MIB::memoryIdle + precision: 1048576 + descr: '{{ GBNPlatformOAM-MIB::cpuDescription }} Memory' + os: + hardware: GBNPlatformOAM-MIB::productName.0 + version: GBNPlatformOAM-MIB::softwareVersion.0 + serial: GBNPlatformOAM-MIB::prodSerialNo.0 diff --git a/priv/profiles/os_discovery/fs-nmu.yaml b/priv/profiles/os_discovery/fs-nmu.yaml new file mode 100644 index 00000000..77ec0d28 --- /dev/null +++ b/priv/profiles/os_discovery/fs-nmu.yaml @@ -0,0 +1,6 @@ +mib: OAP-NMU +modules: + os: + hardware: OAP-NMU::deviceType.0 + serial: OAP-NMU::serialNumber.0 + version: OAP-NMU::softwareVersion.0 diff --git a/priv/profiles/os_discovery/fs-switch-dc.yaml b/priv/profiles/os_discovery/fs-switch-dc.yaml new file mode 100644 index 00000000..5f1cd1e3 --- /dev/null +++ b/priv/profiles/os_discovery/fs-switch-dc.yaml @@ -0,0 +1,171 @@ +mib: FS-ENTITY-MIB:FS-SYSTEM-MIB:FS-MEMORY-MIB:FS-PROCESS-MIB:FS-FIBER-MIB +modules: + os: + hardware: FS-ENTITY-MIB::fsDeviceInfoDescr.1 + serial: FS-ENTITY-MIB::fsDeviceSerialNumber.1 + version: FS-ENTITY-MIB::fsDeviceSWVersion.1 + mempools: + data: + - + oid: FS-MEMORY-MIB::fsNodeMemoryPoolTable + total: FS-MEMORY-MIB::fsNodeMemoryPoolSize + used: FS-MEMORY-MIB::fsNodeMemoryPoolUsed + warn_percent: FS-MEMORY-MIB::fsNodeMemoryPoolWarning + precision: 1024 + descr: "{{ $FS-MEMORY-MIB::fsNodeMemoryPoolName }}" + processors: + data: + - + oid: fsNodeCPUTotalTable + value: fsNodeCPUTotal5min + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.36.1.2.1.5.{{ $index }}' + descr: '{{ $fsNodeCPUTotalName }}' + warn_percent: fsNodeCPUTotalCritical + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifAdminStatus + dbm: + data: + - + oid: fsFiberTable + value: fsFiberRXpower + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.105.1.1.1.76.{{ $index }}' + descr: "{{ $fsFiberPortDescr }} RX" + divisor: 100 + low_warn_limit: fsFiberRXpowerLowWarnThreshold + warn_limit: fsFiberRXpowerHighWarnThreshold + low_limit: fsFiberRXpowerLowAlarmThreshold + high_limit: fsFiberRXpowerHighAlarmThreshold + index: 'rx-{{ $index }}' + skip_values: + - + oid: fsFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: fsFiberRXpower + op: '=' + value: -10000 + - + oid: IF-MIB::ifAdminStatus + op: '=' + value: 2 + - + oid: fsFiberTable + value: fsFiberTXpower + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.105.1.1.1.81.{{ $index }}' + descr: "{{ $fsFiberPortDescr }} TX" + divisor: 100 + low_warn_limit: fsFiberTXpowerLowWarnThreshold + warn_limit: fsFiberTXpowerHighWarnThreshold + low_limit: fsFiberTXpowerLowAlarmThreshold + high_limit: fsFiberTXpowerHighAlarmThreshold + index: 'tx-{{ $index }}' + skip_values: + - + oid: fsFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: fsFiberTXpower + op: '=' + value: -10000 + - + oid: IF-MIB::ifAdminStatus + op: '=' + value: 2 + fanspeed: + data: + - + oid: fsSystemFanStatusTable + value: fsSystemFanStatusSpeed + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.43.1.6.{{ $index }}' + descr: 'Fan {{ $subindex0 }}/{{ $subindex1 }}' + temperature: + data: + - + oid: fsSystemMultipleTemperatureTable + value: fsSystemMultipleTemperatureCurrent + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.44.1.5.{{ $index }}' + warn_limit: fsSystemMultipleTemperatureWarning + high_limit: fsSystemMultipleTemperatureCritical + descr: "{{ $fsSystemMultipleTemperatureName }} {{ $subindex0 }}/{{ $subindex1 }}" + - + oid: fsFiberTable + value: fsFiberTemp + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.105.1.1.1.17.{{ $index }}' + descr: "{{ $fsFiberPortDescr }}" + index: 'temp-{{ $index }}' + group: Transceivers + skip_values: + - + oid: fsFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: fsFiberTemp + op: '=' + value: 0 + voltage: + data: + - + oid: fsSystemElectricalInformationTable + value: fsSystemElectricalInformationInVoltage + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.41.1.11.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + power: + data: + - + oid: fsSystemElectricalInformationTable + value: fsSystemElectricalInformationOutPower + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.41.1.15.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + state: + data: + - + oid: fsSystemFanStatusTable + value: fsSystemFanStatus + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.43.1.4.{{ $index }}' + descr: 'Fan {{ $subindex0 }}/{{ $subindex1 }}' + state_name: fsSystemFanStatus + index: 'fan-{{ $index }}' + group: Fans + states: + - { value: 1, generic: 3, graph: 0, descr: 'noexist' } + - { value: 2, generic: 2, graph: 0, descr: 'existnopower' } + - { value: 3, generic: 1, graph: 0, descr: 'existreadypower' } + - { value: 4, generic: 0, graph: 0, descr: 'normal' } + - { value: 5, generic: 2, graph: 0, descr: 'powerbutabnormal' } + - { value: 6, generic: 3, graph: 0, descr: 'unknown' } + - + oid: fsFiberTable + value: fsFiberTempStatus + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.105.1.1.1.18.{{ $index }}' + descr: '{{ $fsFiberPortDescr }} Temperature' + state_name: fsFiberTempStatus + index: 'tempstat-{{ $index }}' + group: Transceivers + skip_values: + - 1 + states: + - { value: 2, generic: 0, graph: 0, descr: 'ok' } + - { value: 3, generic: 1, graph: 0, descr: 'warning' } + - { value: 4, generic: 2, graph: 0, descr: 'alarm' } + - + oid: fsSystemElectricalInformationTable + value: fsSystemElectricalInformationStatus + num_oid: '.1.3.6.1.4.1.52642.1.1.10.2.1.1.41.1.3.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + state_name: fsSystemElectricalInformationStatus + index: 'psu-{{ $index }}' + group: 'Power Supplies' + states: + - { value: 1, generic: 3, graph: 0, descr: 'noexist' } + - { value: 2, generic: 2, graph: 0, descr: 'existnopower' } + - { value: 3, generic: 1, graph: 0, descr: 'existreadypower' } + - { value: 4, generic: 0, graph: 0, descr: 'normal' } + - { value: 5, generic: 2, graph: 0, descr: 'powerbutabnormal' } + - { value: 6, generic: 3, graph: 0, descr: 'unknown' } diff --git a/priv/profiles/os_discovery/fs-switch.yaml b/priv/profiles/os_discovery/fs-switch.yaml new file mode 100644 index 00000000..ac62c29b --- /dev/null +++ b/priv/profiles/os_discovery/fs-switch.yaml @@ -0,0 +1,181 @@ +# FS-MIB entries are for the S3900 (non -R) series +# They are most likely manufactured by Accton. +# The MIB FS-MIB file is very simmilar to the edgecos MIB files (with fiberstore using their own enterprise ID) +# +# SWITCH MIB entries are for centec based switches where Fiberstore forgot to change the enterprise IDs +# e.g. the S5800-8TF12S before version 5.3.11.r3 +modules: + mempools: + data: + - + total: SWITCH::memTotalReal + free: SWITCH::memTotalFree + used: SWITCH::memTotalUsed + precision: 1024 + descr: 'Chassis Memory' + - + total: FS-MIB::memoryTotal + free: FS-MIB::memoryFreed + used: FS-MIB::memoryAllocated + precision: 1024 + descr: 'Memory' + os: + hardware: + - SWITCH::lswSlotCurrentType.1.1 + - FS-MIB::swProdName.0 + version: + - SWITCH::version.0 + - FS-MIB::swOpCodeVer.1 + serial: + - SWITCH::lswSlotSerialNo.1.1 + - FS-MIB::swSerialNumber.1 + processors: + data: + - + oid: FS-MIB::cpuCurrentUti + value: FS-MIB::cpuCurrentUti + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.39.2.1.{{ $index }}' + descr: 'Processor' + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifName + - FS-MIB::portMediaInfoTable + - FS-MIB::portTransceiverThresholdInfoTable + temperature: + data: + - + oid: FS-MIB::switchThermalTempValue + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.1.11.1.3.{{ $index }}' + index: 'temp1.{{ $index }}' + descr: 'Temperature Unit {{ $subindex0 }} sensor {{ $subindex1 }}' + - + oid: FS-MIB::portOpticalMonitoringInfoTable + value: FS-MIB::portOpticalMonitoringInfoTemperature + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.2.11.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifName }} temperature' + index: 'portOpticalMonitoringInfoTemperature.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ FS-MIB::portMediaInfoVendorName }} PN: {{ FS-MIB::portMediaInfoPartNumber }} S/N: {{ FS-MIB::portMediaInfoSerialNumber }})' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + low_limit: FS-MIB::portTransceiverThresholdInfoTemperatureLowAlarm + low_warn_limit: FS-MIB::portTransceiverThresholdInfoTemperatureLowWarn + warn_limit: FS-MIB::portTransceiverThresholdInfoTemperatureHighWarn + high_limit: FS-MIB::portTransceiverThresholdInfoTemperatureHighAlarm + user_func: \LibreNMS\OS\FsSwitch::normalizeTransceiverValues + voltage: + data: + - + oid: FS-MIB::portOpticalMonitoringInfoTable + value: FS-MIB::portOpticalMonitoringInfoVcc + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.2.11.1.3.{{ $index }}' + descr: '{{ IF-MIB::ifName }} voltage' + index: 'portOpticalMonitoringInfoVcc.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ FS-MIB::portMediaInfoVendorName }} PN: {{ FS-MIB::portMediaInfoPartNumber }} S/N: {{ FS-MIB::portMediaInfoSerialNumber }})' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + low_limit: FS-MIB::portTransceiverThresholdInfoVccLowAlarm + low_warn_limit: FS-MIB::portTransceiverThresholdInfoVccLowWarn + warn_limit: FS-MIB::portTransceiverThresholdInfoVccHighWarn + high_limit: FS-MIB::portTransceiverThresholdInfoVccHighAlarm + user_func: \LibreNMS\OS\FsSwitch::normalizeTransceiverValues + current: + data: + - + oid: FS-MIB::portOpticalMonitoringInfoTable + value: FS-MIB::portOpticalMonitoringInfoTxBiasCurrent + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.2.11.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifName }} current' + index: 'portOpticalMonitoringInfoTxBiasCurrent.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ FS-MIB::portMediaInfoVendorName }} PN: {{ FS-MIB::portMediaInfoPartNumber }} S/N: {{ FS-MIB::portMediaInfoSerialNumber }})' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + low_limit: FS-MIB::portTransceiverThresholdInfoTxBiasCurrentLowAlarm + low_warn_limit: FS-MIB::portTransceiverThresholdInfoTxBiasCurrentLowWarn + warn_limit: FS-MIB::portTransceiverThresholdInfoTxBiasCurrentHighWarn + high_limit: FS-MIB::portTransceiverThresholdInfoTxBiasCurrentHighAlarm + user_func: \LibreNMS\OS\FsSwitch::normalizeTransceiverValuesCurrent + dbm: + data: + - + oid: FS-MIB::portOpticalMonitoringInfoTable + value: FS-MIB::portOpticalMonitoringInfoTxPower + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.2.11.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifName }} TxPower' + index: 'portOpticalMonitoringInfoTxPower.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ FS-MIB::portMediaInfoVendorName }} PN: {{ FS-MIB::portMediaInfoPartNumber }} S/N: {{ FS-MIB::portMediaInfoSerialNumber }})' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + low_limit: FS-MIB::portTransceiverThresholdInfoTxPowerLowAlarm + low_warn_limit: FS-MIB::portTransceiverThresholdInfoTxPowerLowWarn + warn_limit: FS-MIB::portTransceiverThresholdInfoTxPowerHighWarn + high_limit: FS-MIB::portTransceiverThresholdInfoTxPowerHighAlarm + user_func: \LibreNMS\OS\FsSwitch::normalizeTransceiverValues + - + oid: FS-MIB::portOpticalMonitoringInfoTable + value: FS-MIB::portOpticalMonitoringInfoRxPower + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.2.11.1.6.{{ $index }}' + descr: '{{ IF-MIB::ifName }} RxPower' + index: 'portOpticalMonitoringInfoRxPower.{{ $index }}' + group: 'Transceiver: {{ IF-MIB::ifName }} (Vendor: {{ FS-MIB::portMediaInfoVendorName }} PN: {{ FS-MIB::portMediaInfoPartNumber }} S/N: {{ FS-MIB::portMediaInfoSerialNumber }})' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + low_limit: FS-MIB::portTransceiverThresholdInfoRxPowerLowAlarm + low_warn_limit: FS-MIB::portTransceiverThresholdInfoRxPowerLowWarn + warn_limit: FS-MIB::portTransceiverThresholdInfoRxPowerHighWarn + high_limit: FS-MIB::portTransceiverThresholdInfoRxPowerHighAlarm + user_func: \LibreNMS\OS\FsSwitch::normalizeTransceiverValues + state: + data: + - + oid: FS-MIB::switchOperState + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.1.4.{{ $index }}' + descr: 'Oper State' + state_name: FS-MIB::switchOperState + states: + - { value: 1, generic: 3, descr: other, graph: 0 } + - { value: 2, generic: 3, descr: unknown, graph: 0 } + - { value: 3, generic: 0, descr: ok, graph: 0 } + - { value: 4, generic: 1, descr: noncritical, graph: 0 } + - { value: 5, generic: 2, descr: critical, graph: 0 } + - { value: 6, generic: 2, descr: unrecoverable, graph: 0 } + - + oid: FS-MIB::swPowerStatus + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.1.3.1.8.{{ $index }}' + descr: 'Power status' + state_name: FS-MIB::swPowerStatus + states: + - { value: 1, generic: 0, graph: 1, descr: internalPower } + - { value: 2, generic: 0, graph: 1, descr: redundantPower } + - { value: 3, generic: 0, graph: 1, descr: internalAndRedundantPower } + - + oid: FS-MIB::swIndivPowerStatus + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.1.6.1.3.{{ $index }}' + descr: 'Power Unit {{ $subindex0 }} (Internal) status' + state_name: FS-MIB::swIndivPowerStatus + states: + - { value: 1, generic: 1, graph: 1, descr: notPresent } + - { value: 2, generic: 0, graph: 1, descr: green } + - { value: 3, generic: 2, graph: 1, descr: red } + skip_values: + - + oid: index + op: not_ends + value: '.1' + + - + oid: FS-MIB::swIndivPowerStatus + num_oid: '.1.3.6.1.4.1.52642.2.1.45.1.1.6.1.3.{{ $index }}' + descr: 'Power Unit {{ $subindex0 }} (External) status' + state_name: FS-MIB::swIndivPowerStatus + states: + - { value: 1, generic: 1, graph: 1, descr: notPresent } + - { value: 2, generic: 0, graph: 1, descr: green } + - { value: 3, generic: 2, graph: 1, descr: red } + skip_values: + - + oid: index + op: not_ends + value: '.2' diff --git a/priv/profiles/os_discovery/ftd.yaml b/priv/profiles/os_discovery/ftd.yaml new file mode 100644 index 00000000..5ac8bcae --- /dev/null +++ b/priv/profiles/os_discovery/ftd.yaml @@ -0,0 +1,90 @@ +modules: + os: + sysDescr_regex: '/Version (?[^,]+)/' + serial: + - ENTITY-MIB::entPhysicalSerialNum.1 + - ENTITY-MIB::entPhysicalSerialNum.4 + - ENTITY-MIB::entPhysicalSerialNum.9 + - ENTITY-MIB::entPhysicalSerialNum.10 + version: + - ENTITY-MIB::entPhysicalSoftwareRev.1 + - ENTITY-MIB::entPhysicalSoftwareRev.4 + - ENTITY-MIB::entPhysicalSoftwareRev.10 + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - ENTITY-MIB::entPhysicalModelName.4 + - ENTITY-MIB::entPhysicalModelName.9 + - ENTITY-MIB::entPhysicalModelName.10 + sensors: + count: + data: + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasEmailNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.23.{{ $index }}' + descr: 'Active Email proxy sync sessions' + index: crasEmailNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasIPSecNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.26.{{ $index }}' + descr: 'Active IPSec sessions' + index: crasIPSecNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasL2LNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.29.{{ $index }}' + descr: 'Active LAN to LAN sessions' + index: crasL2LNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasLBNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.32.{{ $index }}' + descr: 'Active Load Balancing sessions' + index: crasLBNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasActivity + value: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasSVCNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.35.{{ $index }}' + descr: 'Active SVC sessions' + index: crasSVCNumSessions.{{ $index }} + - + oid: CISCO-REMOTE-ACCESS-MONITOR-MIB::crasWebvpnNumSessions + num_oid: '.1.3.6.1.4.1.9.9.392.1.3.38.{{ $index }}' + descr: 'Active Webvpn sessions' + index: crasWebvpnNumSessions.{{ $index }} + - + oid: CISCO-FIREWALL-MIB::cfwConnectionStatValue.protoIp.currentInUse + value: CISCO-FIREWALL-MIB::cfwConnectionStatValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.2.2.1.5.{{ $index }}' + descr: 'Current In Use Connections' + index: currentInUse + - + oid: CISCO-FIREWALL-MIB::cfwConnectionStatValue.protoIp.high + value: CISCO-FIREWALL-MIB::cfwConnectionStatValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.2.2.1.5.{{ $index }}' + descr: 'Highest Connections' + index: high + state: + data: + - + oid: CISCO-FIREWALL-MIB::cfwHardwareStatusTable + value: CISCO-FIREWALL-MIB::cfwHardwareStatusValue + num_oid: '.1.3.6.1.4.1.9.9.147.1.2.1.1.1.3.{{ $index }}' + descr: '{{ CISCO-FIREWALL-MIB::cfwHardwareInformation }}' + entPhysicalIndex: '{{ $index }}' + skip_values: + - { oid: CISCO-FIREWALL-MIB::cfwHardwareStatusDetail, op: '=', value: 'not Configured' } + state_name: cfwHardwareStatus + states: + - { descr: other, graph: 0, value: 1, generic: 2 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - { descr: down, graph: 0, value: 3, generic: 2 } + - { descr: error, graph: 0, value: 4, generic: 2 } + - { descr: overTemp, graph: 0, value: 5, generic: 2 } + - { descr: busy, graph: 0, value: 6, generic: 2 } + - { descr: noMedia, graph: 0, value: 7, generic: 2 } + - { descr: backup, graph: 0, value: 8, generic: 2 } + - { descr: active, graph: 0, value: 9, generic: 0 } + - { descr: standby, graph: 0, value: 10, generic: 0 } + diff --git a/priv/profiles/os_discovery/ftos.yaml b/priv/profiles/os_discovery/ftos.yaml new file mode 100644 index 00000000..b8d1fcac --- /dev/null +++ b/priv/profiles/os_discovery/ftos.yaml @@ -0,0 +1,20 @@ +modules: + mempools: + data: + - + total: F10-CHASSIS-MIB::chSysProcessorMemSize + percent_used: F10-CHASSIS-MIB::chRpmMemUsageUtil + - + total: F10-S-SERIES-CHASSIS-MIB::chSysProcessorMemSize + percent_used: F10-S-SERIES-CHASSIS-MIB::chStackUnitMemUsageUtil + - + total: F10-C-SERIES-CHASSIS-MIB::chSysProcessorMemSize + percent_used: F10-C-SERIES-CHASSIS-MIB::chSysProcessorMemSize + - + total: F10-M-SERIES-CHASSIS-MIB::chSysProcessorMemSize + percent_used: F10-M-SERIES-CHASSIS-MIB::chSysProcessorMemSize + - + total: F10-Z-SERIES-CHASSIS-MIB::chSysProcessorMemSize + percent_used: F10-Z-SERIES-CHASSIS-MIB::chSysCpuUtilMemUsage + os: + sysDescr_regex: '/Application Software Version: (?[\d.]+\d)/' diff --git a/priv/profiles/os_discovery/fujifilmprinter.yaml b/priv/profiles/os_discovery/fujifilmprinter.yaml new file mode 100644 index 00000000..4913e3c4 --- /dev/null +++ b/priv/profiles/os_discovery/fujifilmprinter.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/FUJIFILM (?[^;]+)/' + serial: Printer-MIB::prtGeneralSerialNumber.1 diff --git a/priv/profiles/os_discovery/fujitsuiRMC.yaml b/priv/profiles/os_discovery/fujitsuiRMC.yaml new file mode 100644 index 00000000..4e88393c --- /dev/null +++ b/priv/profiles/os_discovery/fujitsuiRMC.yaml @@ -0,0 +1,104 @@ +mib: FSC-SERVERCONTROL2-MIB +modules: + os: + hardware: FSC-SERVERCONTROL2-MIB::sc2UnitModelName.1 # if MIB is not named here, value is not displayed. + version: FSC-SERVERCONTROL2-MIB::sc2spModelName.1.1 # if MIB is not named here, value is not displayed. + serial: FSC-SERVERCONTROL2-MIB::sc2UnitSerialNumber.1 # if MIB is not named here, value is not displayed. + sensors: + state: + data: + - + oid: sc2AgentStatus + value: sc2AgentStatus + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.8.1.{{ $index }}' + descr: 'Global System Status' + states: + - { value: 1, descr: 'ok', graph: 1, generic: 0 } + - { value: 2, descr: 'degraded', graph: 1, generic: 1 } + - { value: 3, descr: 'error', graph: 1, generic: 2 } + - { value: 5, descr: 'unknown', graph: 1, generic: 3 } + - { value: 6, descr: 'notPresent', graph: 1, generic: 3 } + - { value: 7, descr: 'notManageable', graph: 1, generic: 3 } + - + oid: sc2PowerSupplyTable + value: sc2PowerSupplyStatus + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.6.2.1.5.{{ $index }}' + descr: sc2PowerSupplyDesignation + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: not-present, graph: 1, generic: 2 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: fail, graph: 1, generic: 2 } + - { value: 5, descr: ac-fail, graph: 1, generic: 1 } + - { value: 6, descr: dc-fail, graph: 1, generic: 1 } + - { value: 7, descr: critical-temp, graph: 1, generic: 1 } + - + oid: sc2FanTable + value: sc2fanStatus + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.5.2.1.5.{{ $index }}' + descr: sc2fanDesignation + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: disabled, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: fail, graph: 1, generic: 2 } + - { value: 5, descr: pre-fail, graph: 1, generic: 1 } + - { value: 6, descr: redundant-fail, graph: 1, generic: 1 } + - { value: 7, descr: non-manageable, graph: 1, generic: 3 } + - { value: 8, descr: not-present, graph: 1, generic: 3 } + - + oid: sc2Voltage + value: sc2VoltageStatus + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.6.3.1.4.{{ $index }}' + descr: sc2VoltageDesignation + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: disabled, graph: 1, generic: 3 } + - { value: 3, descr: ok, graph: 1, generic: 0 } + - { value: 4, descr: too-low, graph: 1, generic: 2 } + - { value: 5, descr: too-high, graph: 1, generic: 2 } + - { value: 6, descr: out-of-range, graph: 1, generic: 2 } + - { value: 7, descr: warning, graph: 1, generic: 1 } + - + oid: sc2ComponentStatusSensor + value: sc2cssSensorStatus + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.8.3.1.8.{{ $index }}' + descr: sc2cssSensorDesignation + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: identify, graph: 1, generic: 3 } + - { value: 4, descr: pre-fail, graph: 1, generic: 1 } + - { value: 5, descr: fail, graph: 1, generic: 2 } + - { value: 6, descr: not-present, graph: 1, generic: 3 } + temperature: + data: + - + oid: sc2TemperatureSensors + value: sc2tempCurrentTemperature + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.5.1.1.6.{{ $index }}' + descr: sc2tempSensorIdentifier + voltage: + data: + - + oid: sc2Voltage + value: sc2VoltageNominalValue + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.6.3.1.6.{{ $index }}' + descr: sc2VoltageDesignation + high_limit: sc2VoltageMaximumLevel + low_limit: sc2VoltageMinimumLevel + divisor: 1000 + power: + data: + - + oid: sc2PowerSupply + value: sc2psPowerSupplyLoad + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.6.2.1.6.{{ $index }}' + descr: 'PSU {{ $index }}' + fanspeed: + data: + - + oid: sc2Fans + value: sc2fanCurrentSpeed + num_oid: '.1.3.6.1.4.1.231.2.10.2.2.10.5.2.1.6.{{ $index }}' + descr: sc2fanDesignation \ No newline at end of file diff --git a/priv/profiles/os_discovery/fujitsupyos.yaml b/priv/profiles/os_discovery/fujitsupyos.yaml new file mode 100644 index 00000000..a48b8f36 --- /dev/null +++ b/priv/profiles/os_discovery/fujitsupyos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Fujitsu (?.*), Runtime Code (?.*)/' diff --git a/priv/profiles/os_discovery/fusion.yaml b/priv/profiles/os_discovery/fusion.yaml new file mode 100644 index 00000000..909fc349 --- /dev/null +++ b/priv/profiles/os_discovery/fusion.yaml @@ -0,0 +1,123 @@ +mib: ES4552BH2-MIB +modules: + os: + hardware: ES4552BH2-MIB::swModelNumber.1 + serial: ES4552BH2-MIB::swSerialNumber.1 + version: ES4552BH2-MIB::swOpCodeVer.1 + sensors: + additional_oids: + data: + - + oid: + - portTransceiverThresholdInfoTable + - portName + voltage: + data: + - + oid: portOpticalMonitoringInfoTable + value: portOpticalMonitoringInfoVcc + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.2.11.1.3.{{ $index }}' + descr: '{{ $portName }}' + index: 'portOpticalMonitoringInfoVcc.{{ $index }}' + low_warn_limit: portTransceiverThresholdInfoVccLowWarn + low_limit: portTransceiverThresholdInfoVccLowAlarm + warn_limit: portTransceiverThresholdInfoVccHighWarn + high_limit: portTransceiverThresholdInfoVccHighAlarm + current: + data: + - + oid: portOpticalMonitoringInfoTable + value: portOpticalMonitoringInfoTxBiasCurrent + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.2.11.1.4.{{ $index }}' + descr: '{{ $portName }} - Tx' + index: 'portOpticalMonitoringInfoTxBiasCurrent.{{ $index }}' + low_warn_limit: portTransceiverThresholdInfoTxBiasCurrentLowWarn + low_limit: portTransceiverThresholdInfoTxBiasCurrentLowAlarm + warn_limit: portTransceiverThresholdInfoTxBiasCurrentHighWarn + high_limit: portTransceiverThresholdInfoTxBiasCurrentHighAlarm + divisor: 1000 + dbm: + data: + - + oid: portOpticalMonitoringInfoTable + value: portOpticalMonitoringInfoTxPower + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.2.11.1.5.{{ $index }}' + descr: '{{ $portName }} - Tx' + index: 'portOpticalMonitoringInfoTxPower.{{ $index }}' + low_warn_limit: portTransceiverThresholdInfoTxPowerLowWarn + low_limit: portTransceiverThresholdInfoTxPowerLowAlarm + warn_limit: portTransceiverThresholdInfoTxPowerHighWarn + high_limit: portTransceiverThresholdInfoTxPowerHighAlarm + - + oid: portOpticalMonitoringInfoTable + value: portOpticalMonitoringInfoRxPower + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.2.11.1.6.{{ $index }}' + descr: '{{ $portName }} - Rx' + index: 'portOpticalMonitoringInfoRxPower.{{ $index }}' + low_warn_limit: portTransceiverThresholdInfoRxPowerLowWarn + low_limit: portTransceiverThresholdInfoRxPowerLowAlarm + warn_limit: portTransceiverThresholdInfoRxPowerHighWarn + high_limit: portTransceiverThresholdInfoRxPowerHighAlarm + temperature: + data: + - + oid: portOpticalMonitoringInfoTable + value: portOpticalMonitoringInfoTemperature + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.2.11.1.2.{{ $index }}' + descr: '{{ $portName }}' + index: 'portOpticalMonitoringInfoTemperature.{{ $index }}' + low_warn_limit: portTransceiverThresholdInfoTemperatureLowWarn + low_limit: portTransceiverThresholdInfoTemperatureLowAlarm + warn_limit: portTransceiverThresholdInfoTemperatureHighWarn + high_limit: portTransceiverThresholdInfoTemperatureHighAlarm + - + oid: switchThermalTempTable + value: switchThermalTempValue + group: 'Unit {{ $subindex0 }}' + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.1.11.1.3.{{ $index }}' + descr: 'Unit {{ $subindex0 }} Thermal {{ $subindex1 }}' + index: 'switchThermalTempValue.{{ $index }}' + fanspeed: + data: + - + oid: switchFanTable + value: switchFanOperSpeed + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.1.9.1.6.{{ $index }}' + group: 'Unit {{ $subindex0 }}' + descr: 'Unit {{ $subindex0 }} Fan {{ $subindex1 }}' + index: 'switchFanOperSpeed.{{ $index }}' + state: + data: + - + oid: switchFanTable + value: switchFanStatus + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.1.9.1.3.{{ $index }}' + group: 'Unit {{ $subindex0 }}' + descr: 'Unit {{ $subindex0 }} Fan {{ $subindex1 }}' + index: 'switchFanStatus.{{ $index }}' + state_name: switchFanStatus + states: + - { value: 1, generic: 0, graph: 1, descr: ok } + - { value: 2, generic: 2, graph: 1, descr: failure } + - + oid: switchInfoTable + value: swPowerStatus + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.1.3.1.8.{{ $index }}' + descr: Power state + index: 'swPowerStatus.{{ $index }}' + state_name: swPowerStatus + states: + - { value: 1, generic: 1, graph: 1, descr: internalPower } + - { value: 2, generic: 0, graph: 1, descr: redundantPower } + - { value: 3, generic: 0, graph: 1, descr: internalAndRedundantPower } + - + oid: switchInfoTable + value: swRoleInSystem + num_oid: '.1.3.6.1.4.1.259.6.10.120.1.1.3.1.9.{{ $index }}' + descr: Switch role + index: 'swRoleInSystem.{{ $index }}' + state_name: swRoleInSystem + states: + - { value: 1, generic: 0, graph: 1, descr: master } + - { value: 2, generic: 0, graph: 1, descr: backupMaster } + - { value: 3, generic: 0, graph: 1, descr: slave } diff --git a/priv/profiles/os_discovery/fusionhub.yaml b/priv/profiles/os_discovery/fusionhub.yaml new file mode 100644 index 00000000..f7f33f9d --- /dev/null +++ b/priv/profiles/os_discovery/fusionhub.yaml @@ -0,0 +1,27 @@ +mib: PEPVPN-SPEEDFUSION +modules: + os: + hardware: DEVICE::deviceModel.0 + serial: DEVICE::deviceSerialNumber.0 + version: DEVICE::deviceFirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - pepVpnStatusProfileName + state: + data: + - + oid: pepVpnStatusConnectionState + num_oid: ".1.3.6.1.4.1.23695.200.1.10.1.1.2.1.3.{{ $index }}" + descr: "{{ $pepVpnStatusProfileName }}" + group: "VPN" + index: "pepVpnStatusConnectionState.{{ $index }}" + state_name: pepVpnStatusConnectionState + states: + - { descr: start, graph: 1, value: 0, generic: 3 } + - { descr: authen, graph: 1, value: 1, generic: 3 } + - { descr: tunnel, graph: 1, value: 2, generic: 3 } + - { descr: route, graph: 1, value: 3, generic: 3 } + - { descr: connected, graph: 1, value: 4, generic: 0 } diff --git a/priv/profiles/os_discovery/fxm.yaml b/priv/profiles/os_discovery/fxm.yaml new file mode 100644 index 00000000..525b74b2 --- /dev/null +++ b/priv/profiles/os_discovery/fxm.yaml @@ -0,0 +1,119 @@ +mib: Argus-Power-System-MIB +modules: + os: + hardware: Argus-Power-System-MIB::upsIdentProductCode.0 + version: Argus-Power-System-MIB::upsIdentUPSSoftwareVersion.0 + sensors: + voltage: + options: + divisor: 10 + data: + - + oid: upsOutputTable + value: upsOutputVoltage + num_oid: '.1.3.6.1.4.1.7309.6.1.4.4.1.2.{{ $index }}' + index: 'upsOutputVoltage.{{ $index }}' + descr: 'Output #{{ $index }}' + - + oid: upsInputTable + value: upsInputVoltage + num_oid: '.1.3.6.1.4.1.7309.6.1.3.2.1.3.{{ $index }}' + index: 'upsInputVoltage.{{ $index }}' + descr: 'Input #{{ $index }}' + - + oid: upsBatteryVoltage + num_oid: '.1.3.6.1.4.1.7309.6.1.2.3.{{ $index }}' + index: 'upsBatteryVoltage.{{ $index }}' + descr: Battery + frequency: + data: + - + oid: upsInputTable + value: upsInputFrequency + num_oid: '.1.3.6.1.4.1.7309.6.1.3.2.1.2.{{ $index }}' + index: 'upsInputFrequency.{{ $index }}' + descr: 'Input #{{ $index }}' + - + oid: upsOutputFrequency + num_oid: '.1.3.6.1.4.1.7309.6.1.4.2.{{ $index }}' + index: 'upsOutputFrequency.{{ $index }}' + descr: Output + divisor: 10 + current: + options: + divisor: 10 + data: + - + oid: upsOutputTable + value: upsOutputCurrent + num_oid: '.1.3.6.1.4.1.7309.6.1.4.4.1.3.{{ $index }}' + index: 'upsOutputCurrent.{{ $index }}' + descr: 'Output #{{ $index }}' + power: + data: + - + oid: upsOutputTable + value: upsOutputPowerWatt + num_oid: '.1.3.6.1.4.1.7309.6.1.4.4.1.5.{{ $index }}' + index: 'upsOutputPowerWatt.{{ $index }}' + descr: 'Output #{{ $index }}' + load: + data: + - + oid: upsOutputTable + value: upsOutputPercentLoad + num_oid: '.1.3.6.1.4.1.7309.6.1.4.4.1.7.{{ $index }}' + index: 'upsOutputPercentLoad.{{ $index }}' + descr: 'Output {{ $index }}' + temperature: + data: + - + oid: upsConfigFanOnTemperature + num_oid: '.1.3.6.1.4.1.7309.6.1.6.4.{{ $index }}' + index: 'upsConfigFanOnTemperature.{{ $index }}' + descr: Fan On + - + oid: upsBatteryTemperature + num_oid: '.1.3.6.1.4.1.7309.6.1.2.6.{{ $index }}' + index: 'upsBatteryTemperature.{{ $index }}' + descr: Battery + runtime: + options: + divisor: 60 + data: + - + oid: upsMinutesOnBattery + num_oid: '.1.3.6.1.4.1.7309.6.1.2.2.{{ $index }}' + index: 'upsMinutesOnBattery.{{ $index }}' + descr: Minutes on battery + state: + data: + - + oid: upsOutputSource + num_oid: '.1.3.6.1.4.1.7309.6.1.4.1.{{ $index }}' + descr: Output Source + index: 'upsOutputSource.{{ $index }}' + state_name: upsOutputSource + states: + - { value: 1, generic: 0, graph: 1, descr: standby } + - { value: 2, generic: 0, graph: 1, descr: line } + - { value: 3, generic: 1, graph: 1, descr: boost2 } + - { value: 4, generic: 1, graph: 1, descr: boost1 } + - { value: 5, generic: 1, graph: 1, descr: buck1 } + - { value: 6, generic: 1, graph: 1, descr: buck2 } + - { value: 7, generic: 1, graph: 1, descr: inverter } + - { value: 8, generic: 1, graph: 1, descr: retransfer } + - { value: 9, generic: 1, graph: 1, descr: transfer } + - { value: 10, generic: 2, graph: 1, descr: shutdown } + - { value: 11, generic: 2, graph: 1, descr: bypass } + - + oid: upsBatteryStatus + num_oid: '.1.3.6.1.4.1.7309.6.1.2.1.{{ $index }}' + descr: Battery Status + index: 'upsBatteryStatus.{{ $index }}' + state_name: upsBatteryStatus + states: + - { value: 1, generic: 3, graph: 1, descr: unknown } + - { value: 2, generic: 0, graph: 1, descr: batteryNormal } + - { value: 3, generic: 1, graph: 1, descr: batteryLow } + - { value: 4, generic: 2, graph: 1, descr: batteryDepleted } diff --git a/priv/profiles/os_discovery/fxos.yaml b/priv/profiles/os_discovery/fxos.yaml new file mode 100644 index 00000000..bb8112da --- /dev/null +++ b/priv/profiles/os_discovery/fxos.yaml @@ -0,0 +1,5 @@ +modules: + os: + serial: ENTITY-MIB::entPhysicalSerialNum.10 + sysDescr_regex: '/Version (?[^,]+)/' + hardware_mib: CISCO-PRODUCTS-MIB diff --git a/priv/profiles/os_discovery/gaia.yaml b/priv/profiles/os_discovery/gaia.yaml new file mode 100644 index 00000000..6849f235 --- /dev/null +++ b/priv/profiles/os_discovery/gaia.yaml @@ -0,0 +1,449 @@ +mib: CHECKPOINT-MIB +modules: + os: + hardware: CHECKPOINT-MIB::svnApplianceProductName.0 + serial: CHECKPOINT-MIB::svnApplianceSerialNumber.0 + version: CHECKPOINT-MIB::svnVersion.0 + processors: + data: + - + oid: .1.3.6.1.4.1.2620.1.6.7.5.1 + value: multiProcUsage + num_oid: .1.3.6.1.4.1.2620.1.6.7.5.1.5.{{ $index }} + type: cpu + sensors: + additional_oids: + data: + - + oid: + - tunnelPeerIpAddr + - tunnelPeerObjName + - tempertureSensorName + - fanSpeedSensorName + - voltageSensorName + - powerSupplyIndex + - fwLSConnName + - mglsGWIP + - vsxStatusVsName + snmp_flags: ['-OQUs', '-Cc'] + state: + data: + - + oid: tempertureSensorStatus + value: tempertureSensorStatus + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.1.1.6.{{ $index }}' + descr: '{{ $tempertureSensorName }}, Temperature Out Of Range' + index: 'tempertureSensorStatus.{{ $index }}' + group: Sensor Temperature + states: + - { value: 0, descr: 'false', graph: 1, generic: 0 } + - { value: 1, descr: 'true', graph: 1, generic: 2 } + - { value: 2, descr: 'reading error', graph: 1, generic: 3 } + - + oid: fanSpeedSensorStatus + value: fanSpeedSensorStatus + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.2.1.6.{{ $index }}' + descr: '{{ $fanSpeedSensorName }}, Fanspeed Out Of Range' + index: 'fanSpeedSensorStatus.{{ $index }}' + group: Sensor Fan Speed + states: + - { value: 0, descr: 'false', graph: 1, generic: 0 } + - { value: 1, descr: 'true', graph: 1, generic: 2 } + - { value: 2, descr: 'reading error', graph: 1, generic: 3 } + - + oid: voltageSensorStatus + value: voltageSensorStatus + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.3.1.6.{{ $index }}' + descr: '{{ $voltageSensorName }}, Voltage Out Of Range' + index: 'voltageSensorStatus.{{ $index }}' + group: Sensor Voltage + states: + - { value: 0, descr: 'false', graph: 1, generic: 0 } + - { value: 1, descr: 'true', graph: 1, generic: 2 } + - { value: 2, descr: 'reading error', graph: 1, generic: 3 } + - + oid: powerSupplyStatus + value: powerSupplyStatus + num_oid: '.1.3.6.1.4.1.2620.1.6.7.9.1.1.2.{{ $index }}' + descr: 'PowerSupply{{ $powerSupplyIndex }}' + index: 'powerSupplyStatus.{{ $index }}' + group: Sensor PSU + states: + - { value: 0, descr: 'Up', graph: 0, generic: 0 } + - { value: 1, descr: 'Down', graph: 0, generic: 2 } + - + oid: haStarted + num_oid: '.1.3.6.1.4.1.2620.1.5.5.{{ $index }}' + index: 'haStarted.{{ $index }}' + descr: 'Cluster mechanism started' + group: HA + value: haStarted + states: + - { value: 1, descr: yes, graph: 1, generic: 0 } + - { value: 0, descr: no, graph: 0, generic: 2 } + - + oid: haState + num_oid: '.1.3.6.1.4.1.2620.1.5.6.{{ $index }}' + index: 'haState.{{ $index }}' + descr: 'Cluster member state' + group: HA + value: haState + states: + - { value: 1, descr: active , graph: 3, generic: 0 } + - { value: 2, descr: standby, graph: 2, generic: 0 } + - { value: 3, descr: 'Active Attention', graph: 1, generic: 1 } + - { value: 0, descr: down, graph: 0, generic: 2 } + - + oid: haStatCode + num_oid: '.1.3.6.1.4.1.2620.1.5.101.{{ $index }}' + index: 'haStatCode.{{ $index }}' + descr: 'Cluster member status code' + group: HA + value: haStatCode + states: + - { value: 0, descr: Up , graph: 2, generic: 0 } + - { value: 1, descr: Attention, graph: 1, generic: 3 } + - { value: 2, descr: Down, graph: 0, generic: 1 } + - + oid: tunnelState + num_oid: '.1.3.6.1.4.1.2620.500.9002.1.3.{{ $index }}' + snmp_flags: ['-OQUs', '-Cc'] + index: 'tunnelStateIndex.{{ $index }}' + descr: "{{ $tunnelPeerObjName }} ({{ $tunnelPeerIpAddr }})" + group: IPSEC VPN + value: tunnelState + states: + - { value: 0, descr: Unknown, graph: 1, generic: 3 } + - { value: 3, descr: Up, graph: 1, generic: 0 } + - { value: 4, descr: Destroyed, graph: 1, generic: 3 } + - { value: 129, descr: Idle, graph: 1, generic: 3 } + - { value: 130, descr: Phase1, graph: 1, generic: 1 } + - { value: 131, descr: Down, graph: 1, generic: 2 } + - { value: 132, descr: Init, graph: 1, generic: 1 } + - + oid: mglsGWState + num_oid: '.1.3.6.1.4.1.2620.1.7.14.4.1.3.{{ $index }}' + index: 'mglsGWState.{{ $index }}' + descr: '{{ $mglsGWIP }}' + group: 'Management Connected Gateways' + value: mglsGWState + states: + - { value: 1, descr: Connected, graph: 1, generic: 0 } + - { value: 0, descr: Disconnected, graph: 0, generic: 2 } + - + oid: fwSXLStatus + num_oid: '.1.3.6.1.4.1.2620.1.36.1.1.{{ $index }}' + index: 'fwSXLStatus.{{ $index }}' + descr: 'SecureXL current status' + group: HA + value: fwSXLStatus + states: + - { value: 1, descr: Enabled , graph: 0, generic: 0 } + - { value: 0, descr: Disabled, graph: 1, generic: 1 } + - + oid: raidVolumeState + num_oid: '.1.3.6.1.4.1.2620.1.6.7.7.1.1.6.{{ $index }}' + index: 'raidVolumeState.{{ $index }}' + descr: 'RAID Status' + group: RAID + value: raidVolumeState + states: + - { value: 0, descr: OPTIMAL, graph: 3, generic: 0 } + - { value: 1, descr: DEGRADED, graph: 2, generic: 1 } + - { value: 2, descr: FAILED, graph: 1, generic: 2} + - { value: -1, descr: 'Unknown', graph: 0, generic: 3} + - + oid: raidVolumeType + num_oid: '.1.3.6.1.4.1.2620.1.6.7.7.1.1.3.{{ $index }}' + index: 'raidVolumeType.{{ $index }}' + descr: 'RAID Type' + group: RAID + value: raidVolumeType + states: + - { value: 0, descr: 'RAID-0', graph: 8, generic: 0 } + - { value: 1, descr: 'RAID-1E', graph: 7, generic: 0 } + - { value: 2, descr: 'RAID-1', graph: 6, generic: 0 } + - { value: 3, descr: 'RAID-10', graph: 5, generic: 0 } + - { value: 4, descr: 'RAID-4', graph: 4, generic: 0 } + - { value: 5, descr: 'RAID-5', graph: 3, generic: 0 } + - { value: 6, descr: 'RAID-6', graph: 2, generic: 0 } + - { value: 7, descr: 'RAID-60', graph: 1, generic: 0 } + - { value: 8, descr: 'RAID-50', graph: 0, generic: 0 } + - + oid: fwLSConnOverall + num_oid: '.1.3.6.1.4.1.2620.1.1.30.1.{{ $index }}' + index: 'fwLSConnOverall.{{ $index }}' + descr: 'Log Server Connectivity' + group: Logging + value: fwLSConnOverall + states: + - {value: 0, descr: 'Ok', graph: 2, generic: 0} + - {value: 1, descr: 'Warning', graph: 1, generic: 1} + - {value: 2, descr: 'Error', graph: 0, generic: 2} + - + oid: fwLSConnState + num_oid: '.1.3.6.1.4.1.2620.1.1.30.3.1.3.{{ $index }}' + index: 'fwLSConnState.{{ $index }}' + descr: '{{ $fwLSConnName }}, Log Server Connectivity' + group: Logging + value: fwLSConnState + states: + - {value: 0, descr: 'Ok', graph: 2, generic: 0} + - {value: 1, descr: 'Error', graph: 1, generic: 2} + - {value: 2, descr: 'Not Active', graph: 0, generic: 2} + - + oid: fwLocalLoggingStat + num_oid: '.1.3.6.1.4.1.2620.1.1.30.5.{{ $index }}' + index: 'fwLocalLoggingStat.{{ $index }}' + descr: 'Local Log Server Status' + group: Logging + value: fwLocalLoggingStat + states: + - {value: 0, descr: 'To log servers', graph: 3, generic: 0} + - {value: 1, descr: 'Local configured', graph: 2, generic: 0} + - {value: 2, descr: 'Local due to connectivity', graph: 1, generic: 2} + - {value: 3, descr: 'Local due to high rate', graph: 0, generic: 2} + - + oid: mgStatCode + num_oid: '.1.3.6.1.4.1.2620.1.7.101.{{ $index }}' + index: 'mgStatCode.{{ $index }}' + descr: 'Management Sync Status' + group: HA + states: + - { value: 0, descr: 'OK', graph: 0, generic: 0 } + - { value: 1, descr: 'Attention', graph: 1, generic: 1 } + - { value: 2, descr: 'Problem', graph: 2, generic: 2} + - + oid: mgActiveStatus + num_oid: '.1.3.6.1.4.1.2620.1.7.5.{{ $index }}' + index: 'mgActiveStatus.{{ $index }}' + descr: 'SMS Status' + group: HA + states: + - { value: 1, generic: 0, graph: 1, descr: 'active' } + - { value: 2, generic: 0, graph: 1, descr: 'standby' } + - + oid: mgFwmIsAlive + num_oid: '.1.3.6.1.4.1.2620.1.7.6.{{ $index }}' + index: 'mgFwmIsAlive.{{ $index }}' + descr: 'FWM Daemon Status' + group: HA + states: + - { value: 0, generic: 1, graph: 1, descr: 'Down' } + - { value: 1, generic: 0, graph: 1, descr: 'Up' } + - + oid: vsxStatusHAState + num_oid: '.1.3.6.1.4.1.2620.1.16.22.1.1.9.{{ $index }}' + index: 'vsxStatusVSId.{{ $index }}' + descr: '{{ $vsxStatusVsName }}' + group: High Availability Status + states: + - { value: 0, generic: 0, graph: 1, descr: 'Active' } + - { value: 1, generic: 0, graph: 1, descr: 'Standby' } + - { value: 2, generic: 0, graph: 1, descr: 'Backup' } +#Update Status + - + oid: advancedUrlFilteringUpdateStatus + num_oid: '.1.3.6.1.4.1.2620.1.43.2.1.{{ $index }}' + index: 'advancedUrlFilteringUpdateStatus.{{ $index }}' + descr: 'URL Filtering Update' + group: Update + states: + - { value: 0, generic: 2, graph: 1, descr: 'failed' } + - { value: 1, generic: 0, graph: 1, descr: 'up-to-date' } + - { value: 2, generic: 0, graph: 1, descr: 'new' } + - { value: 3, generic: 1, graph: 1, descr: 'degrade' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: applicationControlUpdateStatus + num_oid: '.1.3.6.1.4.1.2620.1.39.2.1.{{ $index }}' + index: 'applicationControlUpdateStatus.{{ $index }}' + descr: 'Application Control Update' + group: Update + states: + - { value: 0, generic: 2, graph: 1, descr: 'failed' } + - { value: 1, generic: 0, graph: 1, descr: 'up-to-date' } + - { value: 2, generic: 0, graph: 1, descr: 'new' } + - { value: 3, generic: 1, graph: 1, descr: 'degrade' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: amwAVUpdateStatus + num_oid: '.1.3.6.1.4.1.2620.1.46.5.1.{{ $index }}' + index: 'amwAVUpdateStatus.{{ $index }}' + descr: 'Anti Virus Update' + group: Update + states: + - { value: 0, generic: 2, graph: 1, descr: 'failed' } + - { value: 1, generic: 0, graph: 1, descr: 'up-to-date' } + - { value: 2, generic: 0, graph: 1, descr: 'new' } + - { value: 3, generic: 1, graph: 1, descr: 'degrade' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: amwABUpdateStatus + num_oid: '.1.3.6.1.4.1.2620.1.46.1.1.{{ $index }}' + index: 'amwABUpdateStatus.{{ $index }}' + descr: 'Anti Malware Update' + group: Update + states: + - { value: 0, generic: 2, graph: 1, descr: 'failed' } + - { value: 1, generic: 0, graph: 1, descr: 'up-to-date' } + - { value: 2, generic: 0, graph: 1, descr: 'new' } + - { value: 3, generic: 1, graph: 1, descr: 'degrade' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } +#Subscriptions + - + oid: advancedUrlFilteringSubscriptionStatus + num_oid: '.1.3.6.1.4.1.2620.1.43.1.1.{{ $index }}' + index: 'advancedUrlFilteringSubscriptionStatus.{{ $index }}' + descr: 'URL Filtering Subscription' + group: Licenses + states: + - { value: 0, generic: 0, graph: 1, descr: 'valid' } + - { value: 1, generic: 2, graph: 1, descr: 'expired' } + - { value: 2, generic: 1, graph: 1, descr: 'about-to-expire' } + - { value: 3, generic: 0, graph: 1, descr: 'not-associated' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: applicationControlSubscriptionStatus + num_oid: '.1.3.6.1.4.1.2620.1.39.1.1.{{ $index }}' + index: 'applicationControlSubscriptionStatus.{{ $index }}' + descr: 'Application Control Subscription' + group: Licenses + states: + - { value: 0, generic: 0, graph: 1, descr: 'valid' } + - { value: 1, generic: 2, graph: 1, descr: 'expired' } + - { value: 2, generic: 1, graph: 1, descr: 'about-to-expire' } + - { value: 3, generic: 0, graph: 1, descr: 'not-associated' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: antiVirusSubscriptionStatus + num_oid: '.1.3.6.1.4.1.2620.1.46.3.1.{{ $index }}' + index: 'antiVirusSubscriptionStatus.{{ $index }}' + descr: 'Anti Virus Subscription' + group: Licenses + states: + - { value: 0, generic: 0, graph: 1, descr: 'valid' } + - { value: 1, generic: 2, graph: 1, descr: 'expired' } + - { value: 2, generic: 1, graph: 1, descr: 'about-to-expire' } + - { value: 3, generic: 0, graph: 1, descr: 'not-associated' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: antiBotSubscriptionStatus + num_oid: '.1.3.6.1.4.1.2620.1.46.2.1.{{ $index }}' + index: 'antiBotSubscriptionStatus.{{ $index }}' + descr: 'Anti Bot Subscription' + group: Licenses + states: + - { value: 0, generic: 0, graph: 1, descr: 'valid' } + - { value: 1, generic: 2, graph: 1, descr: 'expired' } + - { value: 2, generic: 1, graph: 1, descr: 'about-to-expire' } + - { value: 3, generic: 0, graph: 1, descr: 'not-associated' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + - + oid: antiSpamSubscriptionStatus + num_oid: '.1.3.6.1.4.1.2620.1.46.4.1.{{ $index }}' + index: 'antiSpamSubscriptionStatus.{{ $index }}' + descr: 'Anti Spam Subscription' + group: Licenses + states: + - { value: 0, generic: 0, graph: 1, descr: 'valid' } + - { value: 1, generic: 2, graph: 1, descr: 'expired' } + - { value: 2, generic: 1, graph: 1, descr: 'about-to-expire' } + - { value: 3, generic: 0, graph: 1, descr: 'not-associated' } + - { value: 4, generic: 3, graph: 1, descr: 'unknown' } + temperature: + data: + - + oid: tempertureSensorValue + value: tempertureSensorValue + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.1.1.3.{{ $index }}' + descr: tempertureSensorName + index: 'tempertureSensorValue.{{ $index }}' + + fanspeed: + data: + - + oid: fanSpeedSensorValue + value: fanSpeedSensorValue + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.2.1.3.{{ $index }}' + descr: fanSpeedSensorName + index: 'fanSpeedSensorValue.{{ $index }}' + voltage: + data: + - + oid: voltageSensorValue + value: voltageSensorValue + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.3.1.3.{{ $index }}' + descr: voltageSensorName + index: 'voltageSensorValue.{{ $index }}' + count: + data: +#Connections + - + oid: fwNumConn + num_oid: '.1.3.6.1.4.1.2620.1.1.25.3.{{ $index }}' + index: 'fwNumConn.{{ $index }}' + descr: 'Number of concurrent connections' + group: Connections + - + oid: fwPeakNumConn + num_oid: '.1.3.6.1.4.1.2620.1.1.25.4.{{ $index }}' + index: 'fwPeakNumConn.{{ $index }}' + descr: 'Peak number of concurrent connections' + group: Connections + - + oid: fwConnTableLimit + num_oid: '.1.3.6.1.4.1.2620.1.1.25.10.{{ $index }}' + index: 'fwConnTableLimit.{{ $index }}' + descr: 'Limit of Connections table' + group: Connections + - + oid: fwConnectionsStatConnectionRate + num_oid: '.1.3.6.1.4.1.2620.1.1.26.11.6.{{ $index }}' + index: 'fwConnectionsStatConnectionRate.{{ $index }}' + descr: 'Connections rate' + group: Connections + - + oid: fwSXLConnsExisting + num_oid: '.1.3.6.1.4.1.2620.1.36.1.2.{{ $index }}' + index: 'fwSXLConnsExisting.{{ $index }}' + descr: 'Number of connections handled by SecureXL' + group: Connections +#VPN + - + oid: cpvIKECurrSAs + num_oid: '.1.3.6.1.4.1.2620.1.2.9.1.1.{{ $index }}' + index: 'cpvIKECurrSAs.{{ $index }}' + descr: 'Number of IKE current SAs' + group: VPN + - + oid: cpvCurrEspSAsIn + num_oid: '.1.3.6.1.4.1.2620.1.2.5.2.1.{{ $index }}' + index: 'cpvCurrEspSAsIn.{{ $index }}' + descr: 'Number of IPsec current Inbound ESP SAs' + group: VPN + - + oid: cpvCurrEspSAsOut + num_oid: '.1.3.6.1.4.1.2620.1.2.5.2.3.{{ $index }}' + index: 'cpvCurrEspSAsOut.{{ $index }}' + descr: 'Number of IPsec current Outbound ESP SAs' + group: VPN +#Logging + - + oid: mgLSLogReceiveRate + num_oid: '.1.3.6.1.4.1.2620.1.7.14.1.{{ $index }}' + index: 'mgLSLogReceiveRate.{{ $index }}' + descr: 'Log Receive Rate' + group: Logging + - + oid: mgLSLogReceiveRatePeak + num_oid: '.1.3.6.1.4.1.2620.1.7.14.2.{{ $index }}' + index: 'mgLSLogReceiveRatePeak.{{ $index }}' + descr: 'Log Receive Rate Peak' + group: Logging + - + oid: fwLoggingHandlingRate + num_oid: '.1.3.6.1.4.1.2620.1.1.30.7.{{ $index }}' + index: 'fwLoggingHandlingRate.{{ $index }}' + descr: 'Log Rate' + group: Logging diff --git a/priv/profiles/os_discovery/gam.yaml b/priv/profiles/os_discovery/gam.yaml new file mode 100644 index 00000000..d19614ab --- /dev/null +++ b/priv/profiles/os_discovery/gam.yaml @@ -0,0 +1,42 @@ +mib: GAM-SYSUTIL-MIB +modules: + os: + hardware: GAM-SYSUTIL-MIB::gamSysutilStatusBoardInfoBoardType.0 + serial: GAM-SYSUTIL-MIB::gamSysutilStatusBoardInfoBoardSerial.0 + sysDescr_regex: '/(?v[0-9\.]+)/' + processors: + data: + - + oid: GAM-SYSUTIL-MIB::gamSysutilStatusCpuLoadAverage10sec + num_oid: '.1.3.6.1.4.1.20095.2001.24.1.3.1.3.{{ $index }}' + sensors: + state: + data: + - + oid: GAM-SYSUTIL-MIB::gamSysutilStatusPowerSupplyTable + value: GAM-SYSUTIL-MIB::gamSysutilStatusPowerSupplyState + num_oid: '.1.3.6.1.4.1.20095.2001.24.1.3.2.1.3.{{ $index }}' + descr: GAM-SYSUTIL-MIB::gamSysutilStatusPowerSupplyDescription + index: 'gamSysutilStatusPowerSupplyState.{{ $index }}' + states: + - { value: 0, descr: Active, graph: 1, generic: 0 } + - { value: 1, descr: Standby, graph: 1, generic: 1 } + - { value: 2, descr: 'Not Present', graph: 1, generic: 3 } + + temperature: + data: + - + oid: GAM-SYSUTIL-MIB::gamSysutilStatusTemperatureSensorsTable + value: GAM-SYSUTIL-MIB::gamSysutilStatusTemperatureSensorsTemperatureX10 + num_oid: '.1.3.6.1.4.1.20095.2001.24.1.3.7.1.3.{{ $index }}' + descr: GAM-SYSUTIL-MIB::gamSysutilStatusTemperatureSensorsName + index: 'gamSysutilStatusTemperatureSensorsTemperatureX10.{{ $index }}' + divisor: 10 + fanspeed: + data: + - + oid: GAM-SYSUTIL-MIB::gamSysutilStatusFanTable + value: GAM-SYSUTIL-MIB::gamSysutilStatusFanRPM + num_oid: '.1.3.6.1.4.1.20095.2001.24.1.3.8.1.2.{{ $index }}' + descr: 'Fan #{{ $index }}' + index: 'gamSysutilStatusFanRPM.{{ $index }}' diff --git a/priv/profiles/os_discovery/geist-pdu.yaml b/priv/profiles/os_discovery/geist-pdu.yaml new file mode 100644 index 00000000..11816c8a --- /dev/null +++ b/priv/profiles/os_discovery/geist-pdu.yaml @@ -0,0 +1,74 @@ +modules: + os: + hardware: GEIST-MIB-V3::productHardware.0 + version: GEIST-MIB-V3::productVersion.0 + sensors: + power: + options: + skip_values: 0 + data: + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECRealPowerA + num_oid: '.1.3.6.1.4.1.21239.2.25.1.10.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase A' + index: 'ctrl3ChIECRealPowerA.{{ $index }}' + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECRealPowerB + num_oid: '.1.3.6.1.4.1.21239.2.25.1.18.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase B' + index: 'ctrl3ChIECRealPowerB.{{ $index }}' + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECRealPowerC + num_oid: '.1.3.6.1.4.1.21239.2.25.1.26.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase C' + index: 'ctrl3ChIECRealPowerC.{{ $index }}' + voltage: + options: + skip_values: 0 + data: + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECVoltsA + num_oid: '.1.3.6.1.4.1.21239.2.25.1.6.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase A' + index: 'ctrl3ChIECVoltsA.{{ $index }}' + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECVoltsB + num_oid: '.1.3.6.1.4.1.21239.2.25.1.14.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase B' + index: 'ctrl3ChIECVoltsB.{{ $index }}' + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECVoltsC + num_oid: '.1.3.6.1.4.1.21239.2.25.1.22.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase C' + index: 'ctrl3ChIECVoltsC.{{ $index }}' + current: + options: + skip_values: 0 + data: + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECDeciAmpsA + num_oid: '.1.3.6.1.4.1.21239.2.25.1.8.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase A' + index: 'ctrl3ChIECDeciAmpsA.{{ $index }}' + divisor: 10 + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECDeciAmpsB + num_oid: '.1.3.6.1.4.1.21239.2.25.1.16.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase B' + index: 'ctrl3ChIECDeciAmpsB.{{ $index }}' + divisor: 10 + - + oid: GEIST-MIB-V3::ctrl3ChIECTable + value: GEIST-MIB-V3::ctrl3ChIECDeciAmpsC + num_oid: '.1.3.6.1.4.1.21239.2.25.1.24.{{ $index }}' + descr: '{{ $GEIST-MIB-V3::ctrl3ChIECName }} Phase C' + index: 'ctrl3ChIECDeciAmpsC.{{ $index }}' + divisor: 10 diff --git a/priv/profiles/os_discovery/geist-watchdog.yaml b/priv/profiles/os_discovery/geist-watchdog.yaml new file mode 100644 index 00000000..6b55bad4 --- /dev/null +++ b/priv/profiles/os_discovery/geist-watchdog.yaml @@ -0,0 +1,428 @@ +mib: GEIST-V4-MIB:GEIST-MIB-V3 +modules: + os: + version: GEIST-MIB-V3::productVersion.0 + serial: GEIST-MIB-V3::climateSerial.1 + sensors: + temperature: + options: + divisor: 10 + data: + - + oid: internalTable + value: internalTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.2.1.5.{{ $index }}' + descr: internalName + - + oid: tempSensorTable + value: tempSensorTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.4.1.5.{{ $index }}' + descr: tempSensorName + - + oid: airFlowSensorTable + value: airFlowSensorTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.5.1.5.{{ $index }}' + descr: airFlowSensorName + - + oid: dewPointSensorTable + value: dewPointSensorTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.6.1.5.{{ $index }}' + descr: dewPointSensorName + - + oid: t3hdSensorTable + value: t3hdSensorIntTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.8.1.6.{{ $index }}' + descr: t3hdSensorIntName + - + oid: thdSensorTable + value: thdSensorTemp + num_oid: '.1.3.6.1.4.1.21239.5.1.9.1.5.{{ $index }}' + descr: thdSensorName + - + oid: thdSensorTable + value: thdSensorTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.32.1.5.{{ $index }}' + descr: thdSensorName + skip_values: + - + oid: thdSensorAvail + op: '!=' + value: 1 + - + oid: t3hdSensorTable + value: t3hdSensorIntTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.31.1.6.{{ $index }}' + descr: t3hdSensorName + skip_values: + - + oid: t3hdSensorAvail + op: '!=' + value: 1 + - + oid: climateRelayTable + value: climateRelayTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.26.1.5.{{ $index }}' + descr: climateRelayName + skip_values: + - + oid: climateRelayAvail + op: '!=' + value: 1 + - + oid: dewPointSensorTable + value: dewPointSensorTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.17.1.5.{{ $index }}' + descr: dewPointSensorName + skip_values: + - + oid: dewPointSensorAvail + op: '!=' + value: 1 + - + oid: vsfcTable + value: vsfcIntTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.13.1.8.{{ $index }}' + descr: vsfcName + skip_values: + - + oid: vsfcAvail + op: '!=' + value: 1 + - + oid: airFlowSensorTable + value: airFlowSensorTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.5.1.5.{{ $index }}' + descr: airFlowSensorName + skip_values: + - + oid: airFlowSensorAvail + op: '!=' + value: 1 + - + oid: tempSensorTable + value: tempSensorTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.4.1.5.{{ $index }}' + descr: tempSensorName + skip_values: + - + oid: tempSensorAvail + op: '!=' + value: 1 + - + oid: climateTable + value: climateTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.2.1.5.{{ $index }}' + descr: climateName + skip_values: + - + oid: climateAvail + op: '!=' + value: 1 + - + oid: dstsTable + value: dstsSourceATempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.19.1.13.{{ $index }}' + descr: dstsName + skip_values: + - + oid: dstsAvail + op: '!=' + value: 1 + - + oid: dstsTable + value: dstsSourceBTempC + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.19.1.14.{{ $index }}' + descr: dstsName + skip_values: + - + oid: dstsAvail + op: '!=' + value: 1 + current: + data: + - + oid: rpmSensorTable + value: rpmSensorCurrent + num_oid: '.1.3.6.1.4.1.21239.5.1.10.1.10.{{ $index }}' + descr: rpmSensorName + divisor: 10 + voltage: + data: + - + oid: rpmSensorTable + value: rpmSensorVoltage + num_oid: '.1.3.6.1.4.1.21239.5.1.10.1.6.{{ $index }}' + descr: rpmSensorName + - + oid: pos60VdcSensorTable + value: pos60VdcSensorVoltage + num_oid: '.1.3.6.1.4.1.21239.2.33.1.5.{{ $index }}' + descr: pos60VdcSensorName + skip_values: + - + oid: pos60VdcSensorAvail + op: '!=' + value: 1 + - + oid: ctrl3ChIECTable + value: ctrl3ChIECVoltsA + num_oid: '.1.3.6.1.4.1.21239.2.25.1.6.{{ $index }}' + descr: ctrl3ChIECName + skip_values: + - + oid: ctrl3ChIECAvail + op: '!=' + value: 1 + - + oid: ctrl3ChIECTable + value: ctrl3ChIECVoltsB + num_oid: '.1.3.6.1.4.1.21239.2.25.1.14.{{ $index }}' + descr: ctrl3ChIECName + skip_values: + - + oid: ctrl3ChIECAvail + op: '!=' + value: 1 + - + oid: ctrl3ChIECTable + value: ctrl3ChIECVoltsC + num_oid: '.1.3.6.1.4.1.21239.2.25.1.22.{{ $index }}' + descr: ctrl3ChIECName + skip_values: + - + oid: ctrl3ChIECAvail + op: '!=' + value: 1 + - + oid: pos30VdcSensorTable + value: pos30VdcSensorVoltage + num_oid: '.1.3.6.1.4.1.21239.2.23.1.5.{{ $index }}' + descr: pos30VdcSensorName + skip_values: + - + oid: pos30VdcSensorAvail + op: '!=' + value: 1 + - + oid: neg48VdcSensorTable + value: neg48VdcSensorVoltage + num_oid: '.1.3.6.1.4.1.21239.2.22.1.5.{{ $index }}' + descr: neg48VdcSensorName + skip_values: + - + oid: neg48VdcSensorAvail + op: '!=' + value: 1 + - + oid: dstsTable + value: dstsVoltsA + num_oid: '.1.3.6.1.4.1.21239.2.19.1.5.{{ $index }}' + descr: dstsName + skip_values: + - + oid: dstsAvail + op: '!=' + value: 1 + - + oid: dstsTable + value: dstsVoltsB + num_oid: '.1.3.6.1.4.1.21239.2.19.1.7.{{ $index }}' + descr: dstsName + skip_values: + - + oid: dstsAvail + op: '!=' + value: 1 + - + oid: ctrl3ChTable + value: ctrl3ChVoltsA + num_oid: '.1.3.6.1.4.1.21239.2.14.1.5.{{ $index }}' + descr: ctrl3ChName + skip_values: + - + oid: ctrl3ChAvail + op: '!=' + value: 1 + - + oid: ctrl3ChTable + value: ctrl3ChVoltsB + num_oid: '.1.3.6.1.4.1.21239.2.14.1.12.{{ $index }}' + descr: ctrl3ChName + skip_values: + - + oid: ctrl3ChAvail + op: '!=' + value: 1 + - + oid: ctrl3ChTable + value: ctrl3ChVoltsC + num_oid: '.1.3.6.1.4.1.21239.2.14.1.19.{{ $index }}' + descr: ctrl3ChName + skip_values: + - + oid: ctrl3ChAvail + op: '!=' + value: 1 + - + oid: pow3ChTable + value: pow3ChVoltsA + num_oid: '.1.3.6.1.4.1.21239.2.11.1.6.{{ $index }}' + descr: pow3ChName + skip_values: + - + oid: pow3ChAvail + op: '!=' + value: 1 + - + oid: pow3ChTable + value: pow3ChVoltsB + num_oid: '.1.3.6.1.4.1.21239.2.11.1.15.{{ $index }}' + descr: pow3ChName + skip_values: + - + oid: pow3ChAvail + op: '!=' + value: 1 + - + oid: pow3ChTable + value: pow3ChVoltsC + num_oid: '.1.3.6.1.4.1.21239.2.11.1.24.{{ $index }}' + descr: pow3ChName + skip_values: + - + oid: pow3ChAvail + op: '!=' + value: 1 + - + oid: powMonTable + value: powMonVolts + num_oid: '.1.3.6.1.4.1.21239.2.3.1.6.{{ $index }}' + descr: powMonName + skip_values: + - + oid: powMonAvail + op: '!=' + value: 1 + - + oid: climateTable + value: climateVolts + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.2.1.14.{{ $index }}' + descr: climateName + skip_values: + - + oid: climateAvail + op: '!=' + value: 1 + humidity: + data: + - + oid: thdSensorTable + value: thdSensorHumidity + num_oid: '.1.3.6.1.4.1.21239.5.1.9.1.6.{{ $index }}' + descr: thdSensorName + - + oid: t3hdSensorTable + value: t3hdSensorIntHumidity + num_oid: '.1.3.6.1.4.1.21239.5.1.8.1.7.{{ $index }}' + descr: t3hdSensorIntName + - + oid: internalTable + value: internalHumidity + num_oid: '.1.3.6.1.4.1.21239.5.1.2.1.6.{{ $index }}' + descr: internalName + - + oid: thdSensorTable + value: thdSensorHumidity + num_oid: '.1.3.6.1.4.1.21239.2.32.1.7.{{ $index }}' + descr: thdSensorName + skip_values: + - + oid: thdSensorAvail + op: '!=' + value: 1 + - + oid: t3hdSensorTable + value: t3hdSensorIntHumidity + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.31.1.8.{{ $index }}' + descr: t3hdSensorName + skip_values: + - + oid: t3hdSensorAvail + op: '!=' + value: 1 + - + oid: dewPointSensorTable + value: dewPointSensorHumidity + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.17.1.7.{{ $index }}' + descr: dewPointSensorName + skip_values: + - + oid: dewPointSensorAvail + op: '!=' + value: 1 + - + oid: airFlowSensorTable + value: airFlowSensorHumidity + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.5.1.8.{{ $index }}' + descr: airFlowSensorName + skip_values: + - + oid: airFlowSensorAvail + op: '!=' + value: 1 + - + oid: climateTable + value: climateHumidity + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.2.1.7.{{ $index }}' + descr: climateName + skip_values: + - + oid: climateAvail + op: '!=' + value: 1 + airflow: + data: + - + oid: airFlowSensorTable + value: airFlowSensorFlow + num_oid: '.1.3.6.1.4.1.21239.5.1.5.1.6.{{ $index }}' + descr: airFlowSensorName + - + oid: climateTable + value: climateAirflow + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.2.1.9.{{ $index }}' + descr: climateName + skip_values: + - + oid: climateAvail + op: '!=' + value: 1 + fanspeed: + data: + - + oid: vsfcTable + value: vsfcFanSpeed + divisor: 1 + num_oid: '.1.3.6.1.4.1.21239.2.13.1.7.{{ $index }}' + descr: vsfcName + skip_values: + - + oid: vsfcAvail + op: '!=' + value: 1 diff --git a/priv/profiles/os_discovery/gemds.yaml b/priv/profiles/os_discovery/gemds.yaml new file mode 100644 index 00000000..b7ba3d97 --- /dev/null +++ b/priv/profiles/os_discovery/gemds.yaml @@ -0,0 +1,170 @@ +mib: MDS-SYSTEM-MIB:MDS-SERVICES-MIB:MDS-SERVICE-GPS-MIB:MDS-SERIAL-MIB:MDS-IF-CELL-MIB:MDS-EVENT-MIB:MDS-REG-MIB:MDS-ORBIT-SMI-MIB:MDS-IF-NX-MIB:MDS-IF-LW-MIB:MDS-IF-LN-MIB:MDS-IF-IEEE80211-MIB +modules: + os: + hardware: 'MDS-SYSTEM-MIB::mSysProductConfiguration.0' + serial: 'MDS-SYSTEM-MIB::mSysSerialNumberPlatform.0' + version: 'MDS-SYSTEM-MIB::mSysVersion.2' + + sensors: + state: + data: + - oid: mIfCellStatusTable + value: mIfCellServiceState + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.11.{{ $index }}' + state_name: mIfCellServiceState + group: Cellular Information + descr: 'Service State' + index: 'mIfCellServiceState.{{ $index }}' + states: + - { descr: gprs, graph: 0, value: 1, generic: 0 } + - { descr: edge, graph: 0, value: 2, generic: 0 } + - { descr: umts, graph: 0, value: 3, generic: 0 } + - { descr: hsdpa, graph: 0, value: 4, generic: 0 } + - { descr: hsupa, graph: 0, value: 5, generic: 0 } + - { descr: hspaPlus, graph: 0, value: 6, generic: 0 } + - { descr: is95a, graph: 0, value: 7, generic: 0 } + - { descr: is95b, graph: 0, value: 8, generic: 0 } + - { descr: onexRtt, graph: 0, value: 9, generic: 0 } + - { descr: evdoRev0, graph: 0, value: 10, generic: 0 } + - { descr: evdoReva, graph: 0, value: 11, generic: 0 } + - { descr: evdoRevb, graph: 0, value: 12, generic: 0 } + - { descr: evdoEhrpd, graph: 0, value: 13, generic: 0 } + - { descr: lte, graph: 0, value: 14, generic: 0 } + - { descr: not running, graph: 0, value: 0, generic: 3 } + + - oid: mIfCellStatusTable + value: mIfCellSimState + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.8.{{ $index }}' + state_name: mIfCellSimState + group: Cellular Information + descr: 'Sim State' + index: 'mIfCellSimState.{{ $index }}' + states: + - { descr: not inserted, graph: 0, value: 0, generic: 3 } + - { descr: locked, graph: 0, value: 1, generic: 1 } + - { descr: ready, graph: 0, value: 2, generic: 0 } + - { descr: failed, graph: 0, value: 3, generic: 2 } + - { descr: unknown, graph: 0, value: 4, generic: 1 } + + - oid: mIfCellStatusTable + value: mIfCellModemType + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.17.{{ $index }}' + state_name: mIfCellModemType + group: Cellular Information + descr: 'Modem Type' + index: 'mIfCellModemType.{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: E4VLteNaVerizon, graph: 0, value: 1, generic: 3 } + - { descr: 3G1GsmGlobal, graph: 0, value: 2, generic: 3 } + - { descr: E4xLteEmea, graph: 0, value: 3, generic: 3 } + - { descr: 4GxLteNa, graph: 0, value: 4, generic: 3 } + - { descr: 4GPLteNa, graph: 0, value: 5, generic: 3 } + - { descr: EZ1LteEmea, graph: 0, value: 6, generic: 3 } + - { descr: 4GyLteNaEu, graph: 0, value: 7, generic: 3 } + - { descr: 4GzLteApac, graph: 0, value: 8, generic: 3 } + - { descr: 4GaLteGlobal, graph: 0, value: 9, generic: 3 } + - { descr: 4GbLteAmericas, graph: 0, value: 10, generic: 3 } + - { descr: 4GcLteEu, graph: 0, value: 11, generic: 3 } + - { descr: 4GdLteGlobal, graph: 0, value: 12, generic: 3 } + - { descr: evdoEhrpd, graph: 0, value: 13, generic: 0 } + + - oid: mIfCellStatusTable + value: mIfCellModemState + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.9.{{ $index }}' + state_name: mIfCellModemState + group: Cellular Information + descr: 'Modem State' + index: 'mIfCellModemState.{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: notRegistered, graph: 0, value: 1, generic: 3 } + - { descr: searching, graph: 0, value: 2, generic: 3 } + - { descr: registrationDenied, graph: 0, value: 3, generic: 2 } + - { descr: idle, graph: 0, value: 4, generic: 3 } + - { descr: connected, graph: 0, value: 5, generic: 0 } + - { descr: fwRequired, graph: 0, value: 6, generic: 1 } + + - oid: mIfCellStatusTable + value: mIfCellBandwidth + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.23.{{ $index }}' + state_name: mIfCellBandwidth + group: Cellular Information + descr: 'Bandwidth' + index: 'mIfCellBandwidth.{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: 1.4Mhz, graph: 0, value: 1, generic: 0 } + - { descr: 3Mhz, graph: 0, value: 2, generic: 0 } + - { descr: 5Mhz, graph: 0, value: 3, generic: 0 } + - { descr: 10Mhz, graph: 0, value: 4, generic: 0 } + - { descr: 15Mhz, graph: 0, value: 5, generic: 0 } + - { descr: 20Mhz, graph: 0, value: 6, generic: 0 } + + - oid: mIfCellStatusTable + value: mIfCellRoamingState + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.10.{{ $index }}' + state_name: mIfCellRoamingState + group: Cellular Information + descr: 'Roaming State' + index: 'mIfCellRoamingState.{{ $index }}' + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: home, graph: 0, value: 1, generic: 0 } + - { descr: roaming, graph: 0, value: 2, generic: 1 } + + temperature: + data: + - oid: mSysTemperature + num_oid: '.1.3.6.1.4.1.4130.10.1.1.1.2.6.{{ $index }}' + index: 'mSysTemperature.{{ $index }}' + descr: 'System Temperature' + low_warn_limit: -35 + low_limit: -40 + warn_limit: 65 + high_limit: 70 + voltage: + data: + - oid: mSysPowerSupplyVoltage + num_oid: '.1.3.6.1.4.1.4130.10.1.1.1.2.9.{{ $index }}' + index: 'mSysPowerSupplyVoltage.{{ $index }}' + descr: 'Input Voltage' + low_warn_limit: 12 + low_limit: 10 + warn_limit: 58 + high_limit: 61 + signal: + data: + - oid: mIfCellStatusTable + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.12.{{ $index }}' + index: 'mIfCellRssi.{{ $index }}' + descr: 'Cellular RSSI' + value: mIfCellRssi + low_warn_limit: -60 + low_limit: -70 + high_limit: -5 + + - oid: mIfCellStatusTable + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.13.{{ $index }}' + index: 'mIfCellRsrp.{{ $index }}' + descr: 'Cellular RSRP' + value: mIfCellRsrp + low_warn_limit: -106 + low_limit: -120 + high_limit: -20 + + - oid: mIfCellStatusTable + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.14.{{ $index }}' + index: 'mIfCellRsrq.{{ $index }}' + descr: 'Cellular RSRQ' + value: mIfCellRsrq + low_warn_limit: -10 + low_limit: -13 + high_limit: -1 + + - oid: mIfCellStatusTable + num_oid: '.1.3.6.1.4.1.4130.10.2.1.1.2.1.1.15.{{ $index }}' + index: 'mIfCellSnr.{{ $index }}' + descr: 'Cellular SNR' + value: mIfCellSnr + high_limit: 100 diff --git a/priv/profiles/os_discovery/generex-ups.yaml b/priv/profiles/os_discovery/generex-ups.yaml new file mode 100644 index 00000000..7547f3c6 --- /dev/null +++ b/priv/profiles/os_discovery/generex-ups.yaml @@ -0,0 +1,8 @@ +modules: + os: + sysDescr_regex: '/^(?\w+) v (?[\d.]+$)/' + hardware: + - UPS-MIB::upsIdentManufacturer.0 + - UPS-MIB::upsIdentModel.0 + hardware_template: '{{ UPS-MIB::upsIdentManufacturer.0 }} {{ UPS-MIB::upsIdentModel.0 }}' + version: UPS-MIB::upsIdentAgentSoftwareVersion.0 diff --git a/priv/profiles/os_discovery/gepulsar.yaml b/priv/profiles/os_discovery/gepulsar.yaml new file mode 100644 index 00000000..de8d8b03 --- /dev/null +++ b/priv/profiles/os_discovery/gepulsar.yaml @@ -0,0 +1,61 @@ +mib: NE843-MIB +modules: + sensors: + state: + data: + - + oid: ne843Dc1Rss + num_oid: '.1.3.6.1.4.1.10520.2.1.3.1.13.{{ $index }}' + descr: 'System Status' + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: critical, graph: 1, value: 1, generic: 0 } + - + oid: ne843RecTable + value: ne843RecEntryRfa1 + num_oid: '.1.3.6.1.4.1.10520.2.1.3.7.1.44.{{ $index }}' + index: 'ne843RecEntryRfa1.{{ $index }}' + descr: '{{ $ne843RecEntryDes }}' + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: critical, graph: 1, value: 1, generic: 0 } + voltage: + data: + - + oid: ne843Dc1Vdc + num_oid: '.1.3.6.1.4.1.10520.2.1.3.1.4.{{ $index }}' + descr: 'System DC Voltage' + divisor: 1000 + - + oid: ne843RecTable + value: ne843RecEntryVac + num_oid: '.1.3.6.1.4.1.10520.2.1.3.7.1.10.{{ $index }}' + index: 'ne843RecEntryVac.{{ $index }}' + descr: 'AC Voltage - {{ $ne843RecEntryDes }}' + current: + data: + - + oid: ne843Dc1Adc + num_oid: '.1.3.6.1.4.1.10520.2.1.3.1.5.{{ $index }}' + descr: 'System Current' + - + oid: ne843RecTable + value: ne843RecEntryAdc + num_oid: '.1.3.6.1.4.1.10520.2.1.3.7.1.6.{{ $index }}' + descr: 'DC Current - {{ $ne843RecEntryDes }}' + index: 'ne843RecEntryAdc.{{ $index }}' + - + oid: ne843RecTable + value: ne843RecEntryAac + num_oid: '.1.3.6.1.4.1.10520.2.1.3.7.1.11.{{ $index }}' + index: 'ne843RecEntryAac.{{ $index }}' + descr: 'AC Current - {{ $ne843RecEntryDes }}' + divisor: 1000 + temperature: + data: + - + oid: ne843RecTable + num_oid: '.1.3.6.1.4.1.10520.2.1.3.7.1.12.{{ $index }}' + value: ne843RecEntryTmp + index: 'ne843RecEntryTmp.{{ $index }}' + descr: '{{ $ne843RecEntryDes }}' diff --git a/priv/profiles/os_discovery/gestetner.yaml b/priv/profiles/os_discovery/gestetner.yaml new file mode 100644 index 00000000..789e1816 --- /dev/null +++ b/priv/profiles/os_discovery/gestetner.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.367.3.2.1.1.1.1.0 + serial: .1.3.6.1.4.1.367.3.2.1.2.1.4.0 + version: .1.3.6.1.4.1.367.3.2.1.1.1.2.0 diff --git a/priv/profiles/os_discovery/gigavue.yaml b/priv/profiles/os_discovery/gigavue.yaml new file mode 100644 index 00000000..e6ecf017 --- /dev/null +++ b/priv/profiles/os_discovery/gigavue.yaml @@ -0,0 +1,6 @@ +modules: + os: + sysDescr_regex: '/Gigamon (?.*) (?v[\d.]+)/' + version: GIGAMON-SNMP-MIB::version.0 + serial: GIGAMON-SNMP-MIB::serialNumber.0 + hardware: GIGAMON-SNMP-MIB::model.0 diff --git a/priv/profiles/os_discovery/grandstream-gxw.yaml b/priv/profiles/os_discovery/grandstream-gxw.yaml new file mode 100644 index 00000000..94c9554f --- /dev/null +++ b/priv/profiles/os_discovery/grandstream-gxw.yaml @@ -0,0 +1,8 @@ +modules: + os: + serial: + - GS-GXW42XX-MIB::partNo.0.0 + version: + - GS-GXW42XX-MIB::versionCore.0.0 + - GS-GXW42XX-MIB::versionBase.0.0 + version_template: 'Core: {{ GS-GXW42XX-MIB::versionCore.0.0 }}, Base: {{ GS-GXW42XX-MIB::versionBase.0.0 }}' diff --git a/priv/profiles/os_discovery/grandstream-sw.yaml b/priv/profiles/os_discovery/grandstream-sw.yaml new file mode 100644 index 00000000..ce659806 --- /dev/null +++ b/priv/profiles/os_discovery/grandstream-sw.yaml @@ -0,0 +1,15 @@ +modules: + os: + hardware: + - .1.3.6.1.2.1.1.5.0 + - .1.3.6.1.2.1.47.1.1.1.1.8.67108992 + hardware_template: '{{ .1.3.6.1.2.1.1.5.0 }} {{ .1.3.6.1.2.1.47.1.1.1.1.8.67108992 }}' + serial: .1.3.6.1.2.1.47.1.1.1.1.11.67108992 + version: .1.3.6.1.2.1.47.1.1.1.1.10.67108992 + sensors: + temperature: + data: + - + oid: GRANDSTREAM-GWN-PRODUCTS-SWITCH-MIB::gwnSystemTemper + num_oid: '.1.3.6.1.4.1.42397.1.4.12.1.1.{{ $index }}' + descr: 'switch-temperature-{{ $index }}' diff --git a/priv/profiles/os_discovery/gude-esb.yaml b/priv/profiles/os_discovery/gude-esb.yaml new file mode 100644 index 00000000..04f8c401 --- /dev/null +++ b/priv/profiles/os_discovery/gude-esb.yaml @@ -0,0 +1,148 @@ +mib: GUDEADS-ESB7213-MIB:GUDEADS-ESB7214-MIB +modules: + sensors: + temperature: + data: + - + oid: esb7213SensorTable + value: esb7213TempSensor + num_oid: '.1.3.6.1.4.1.28507.66.1.6.1.1.2.{{ $index }}' + descr: 'Temperature' + index: 'esb7213TempSensor.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7213ExtSensorName }})' + divisor: 10 + + - + oid: esb7213SensorTable + value: esb7213DewPoint + num_oid: '.1.3.6.1.4.1.28507.66.1.6.1.1.6.{{ $index }}' + descr: 'Dew Point' + index: 'esb7213DewPoint.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7213ExtSensorName }})' + divisor: 10 + + - + oid: esb7213SensorTable + value: esb7213DewPointDiff + num_oid: '.1.3.6.1.4.1.28507.66.1.6.1.1.7.{{ $index }}' + descr: 'Dew Diff' + index: 'esb7213DewPointDiff.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7213ExtSensorName }})' + divisor: 10 + + - + oid: esb7214SensorTable + value: esb7214TempSensor + num_oid: '.1.3.6.1.4.1.28507.67.1.6.1.1.2.{{ $index }}' + descr: 'Temperature' + index: 'esb7214TempSensor.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7214ExtSensorName }})' + divisor: 10 + + - + oid: esb7214SensorTable + value: esb7214DewPoint + num_oid: '.1.3.6.1.4.1.28507.67.1.6.1.1.6.{{ $index }}' + descr: 'Dew Point' + index: 'esb7214DewPoint.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7214ExtSensorName }})' + divisor: 10 + + - + oid: esb7214SensorTable + value: esb7214DewPointDiff + num_oid: '.1.3.6.1.4.1.28507.67.1.6.1.1.7.{{ $index }}' + descr: 'Dew Diff' + index: 'esb7214DewPointDiff.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7214ExtSensorName }})' + divisor: 10 + humidity: + data: + - + oid: esb7213SensorTable + value: esb7213HygroSensor + num_oid: '.1.3.6.1.4.1.28507.66.1.6.1.1.3.{{ $index }}' + descr: 'Humidity' + index: 'esb7213HygroSensor.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7213ExtSensorName }})' + divisor: 10 + + - + oid: esb7214SensorTable + value: esb7214HygroSensor + num_oid: '.1.3.6.1.4.1.28507.67.1.6.1.1.3.{{ $index }}' + descr: 'Humidity' + index: 'esb7214HygroSensor.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7214ExtSensorName }})' + divisor: 10 + pressure: + data: + - + oid: esb7213SensorTable + value: esb7213AirPressure + num_oid: '.1.3.6.1.4.1.28507.66.1.6.1.1.5.{{ $index }}' + descr: 'Pressure' + index: 'esb7213AirPressure.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7213ExtSensorName }})' + divisor: 10 + + - + oid: esb7214SensorTable + value: esb7214AirPressure + num_oid: '.1.3.6.1.4.1.28507.67.1.6.1.1.5.{{ $index }}' + descr: 'Pressure' + index: 'esb7214AirPressure.{{ $index }}' + group: 'Sensor {{ $index }} ({{ esb7214ExtSensorName }})' + divisor: 10 + state: + data: + - + oid: esb7213POE + num_oid: '.1.3.6.1.4.1.28507.66.1.5.10.{{ $index }}' + descr: 'Available' + group: POE + state_name: 'esb7213POE' + states: + - { descr: No, graph: 1, value: 0, generic: 3 } + - { descr: Yes, graph: 1, value: 1, generic: 0 } + - + oid: esb7214POE + num_oid: '.1.3.6.1.4.1.28507.67.1.5.10.{{ $index }}' + descr: 'Available' + group: POE + state_name: 'esb7214POE' + states: + - { descr: No, graph: 1, value: 0, generic: 0 } + - { descr: Yes, graph: 1, value: 1, generic: 0 } + + - + oid: esb7214portTable + value: esb7214PortState + num_oid: '.1.3.6.1.4.1.28507.67.1.3.1.2.1.3.{{ $index }}' + descr: 'Relay' + group: 'Output {{ $index }} ({{ esb7214PortName }})' + state_name: 'esb7214PortState' + states: + - { descr: Off, graph: 1, value: 0, generic: 1 } + - { descr: On, graph: 1, value: 1, generic: 0 } + - + oid: esb7214InputTable + value: esb7214Input + num_oid: '.1.3.6.1.4.1.28507.67.1.5.6.2.1.2.{{ $index }}' + descr: 'Logical state' + group: 'Input {{ $index }} ({{ esb7214InputName }})' + state_name: 'esb7214Input' + states: + - { descr: Low, graph: 1, value: 0, generic: 1 } + - { descr: High, graph: 1, value: 1, generic: 0 } + + + + count: + data: + - + oid: esb7214portTable + value: esb7214PortSwitchCount + num_oid: '.1.3.6.1.4.1.28507.67.1.3.1.2.1.4.{{ $index }}' + descr: 'Toggle count {{ esb7214PortName }}' + group: Relay diff --git a/priv/profiles/os_discovery/gw-eydfa.yaml b/priv/profiles/os_discovery/gw-eydfa.yaml new file mode 100644 index 00000000..cf0ebc69 --- /dev/null +++ b/priv/profiles/os_discovery/gw-eydfa.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: NSCRTV-HFCEMS-COMMON-MIB::commonDeviceModelNumber.1 + serial: NSCRTV-HFCEMS-COMMON-MIB::commonDeviceSerialNumber.1 + version: NSCRTV-HFCEMS-COMMON-MIB::commonDeviceVendorInfo.1 diff --git a/priv/profiles/os_discovery/gwd.yaml b/priv/profiles/os_discovery/gwd.yaml new file mode 100644 index 00000000..8f97ec53 --- /dev/null +++ b/priv/profiles/os_discovery/gwd.yaml @@ -0,0 +1,46 @@ +mib: GW-EPON-DEV-MIB:GWTT-SMI:GW-EPON-MIB +modules: + mempools: + data: + - + total: .1.3.6.1.4.1.10072.2.20.1.1.2.1.1.28.1.1 + used: .1.3.6.1.4.1.10072.2.20.1.1.2.1.1.20.1.1 + index: 0 + precision: 1048576 + os: + hardware: .1.3.6.1.4.1.10072.2.20.1.1.1.1.1.9.1 + serial: .1.3.6.1.4.1.10072.2.20.1.1.2.1.1.18.1.1 + version: .1.3.6.1.4.1.10072.2.20.1.1.1.1.1.8.1 + processors: + data: + - + oid: GW-EPON-MIB::boardCpuUsage + value: boardCpuUsage + num_oid: '.1.3.6.1.4.1.10072.2.20.1.1.2.1.1.19.{{ $index }}' + sensors: + temperature: + data: + - + oid: devTemperature + num_oid: '.1.3.6.1.4.1.10072.2.15.1.6.1.1.2.{{ $index }}' + descr: 'Temperature board {{ $index }}' + - + oid: powerTemperature + num_oid: '.1.3.6.1.4.1.10072.2.15.1.5.1.1.3.{{ $index }}' + descr: 'Temperature power supply {{ $index }}' + state: + data: + - + oid: powerRunStatus + num_oid: '.1.3.6.1.4.1.10072.2.15.1.5.1.1.2.{{ $index }}' + descr: 'Power Run Status {{ $index }}' + states: + - { descr: Normal, graph: 0, value: 0, generic: 0 } + - { descr: Abnormal, graph: 0, value: 1, generic: 2 } + - + oid: devFanAlarmStatus + num_oid: '.1.3.6.1.4.1.10072.2.15.1.4.1.1.3.{{ $index }}' + descr: 'Fun status {{ $index }}' + states: + - { descr: Normal, graph: 0, value: 0, generic: 0 } + - { descr: Abnormal, graph: 0, value: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/halon.yaml b/priv/profiles/os_discovery/halon.yaml new file mode 100644 index 00000000..182bd769 --- /dev/null +++ b/priv/profiles/os_discovery/halon.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: HALON-SP-MIB::serialNumber.0 + sysDescr_regex: '/Halon (?.*)/' diff --git a/priv/profiles/os_discovery/harmony-enhanced.yaml b/priv/profiles/os_discovery/harmony-enhanced.yaml new file mode 100644 index 00000000..7ce110bd --- /dev/null +++ b/priv/profiles/os_discovery/harmony-enhanced.yaml @@ -0,0 +1,27 @@ +mib: MWR-ETHERNET-MIB:MWR-RADIO-MC-MIB +modules: + os: + version: MWR-ETHERNET-MIB::mwrSwInvOmniRelease.bankA + serial: MWR-ETHERNET-MIB::mwrUnitSerialNo.0 + sensors: + temperature: + data: + - + oid: mwrSystemTemperature + num_oid: '.1.3.6.1.4.1.7262.4.5.2.2.3.{{ $index }}' + descr: 'Current System Temperature' + index: 'mwrSystemTemperature.{{ $index }}' + skip_value_lt: 0 + state: + data: + - + oid: mwrEmcRadioStatusTable + value: mwrEmcRadioLinkStatus + num_oid: '.1.3.6.1.4.1.7262.4.5.12.202.1.1.11.{{ $index }}' + descr: 'Wireless Link {{ $index }}' + index: 'mwrEmcRadioLinkStatus.{{ $index }}' + state_name: mwrEmcRadioLinkStatus + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 1, generic: 0, graph: 1, descr: up } + - { value: 2, generic: 2, graph: 1, descr: down } diff --git a/priv/profiles/os_discovery/helios.yaml b/priv/profiles/os_discovery/helios.yaml new file mode 100644 index 00000000..332f10bf --- /dev/null +++ b/priv/profiles/os_discovery/helios.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: IGNITENET-MIB::model.0 + version: IGNITENET-MIB::fwVersion.0 diff --git a/priv/profiles/os_discovery/heliosip.yaml b/priv/profiles/os_discovery/heliosip.yaml new file mode 100644 index 00000000..6a045cc9 --- /dev/null +++ b/priv/profiles/os_discovery/heliosip.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: TEL2N-MIB::hipProductName.0 + serial: TEL2N-MIB::hipSerial.0 + version: TEL2N-MIB::hipVersion.0 diff --git a/priv/profiles/os_discovery/hikvision-cam.yaml b/priv/profiles/os_discovery/hikvision-cam.yaml new file mode 100644 index 00000000..cd2ff1cd --- /dev/null +++ b/priv/profiles/os_discovery/hikvision-cam.yaml @@ -0,0 +1,28 @@ +mib: HIK-DEVICE-MIB:HIKVISION-MIB +modules: + mempools: + data: + - + total: HIK-DEVICE-MIB::memSize + percent_used: HIK-DEVICE-MIB::memUsed + precision: 1048576 + os: + hardware: HIK-DEVICE-MIB::deviceType.0 + version: HIK-DEVICE-MIB::softwVersion.0 + features: + - HIK-DEVICE-MIB::videoEncode.0 + - HIK-DEVICE-MIB::videoNetTrans.0 + features_template: "{{ HIK-DEVICE-MIB::videoEncode.0 }}-{{ HIK-DEVICE-MIB::videoNetTrans.0 }}" + processors: + data: + - + oid: cpuPercent + num_oid: '.1.3.6.1.4.1.39165.1.7.{{ $index }}' + index: 0 + storage: + data: + - + descr: Storage + size: HIK-DEVICE-MIB::diskSize.0 + percent_used: HIK-DEVICE-MIB::diskPercent.0 + percent_used_num_oid: '.1.3.6.1.4.1.39165.1.9.{{ $index }}' diff --git a/priv/profiles/os_discovery/hikvision-nvr.yaml b/priv/profiles/os_discovery/hikvision-nvr.yaml new file mode 100644 index 00000000..9053f828 --- /dev/null +++ b/priv/profiles/os_discovery/hikvision-nvr.yaml @@ -0,0 +1,18 @@ +modules: + mempools: + data: + - + total: HIKVISION-MIB::hikMemoryCapability + percent_used: HIKVISION-MIB::hikMemoryUsage + precision: 1048576 + os: + hardware: HIKVISION-MIB::hikEntityType.0 + serial: HIKVISION-MIB::hikEntityIndex.0 + version: HIKVISION-MIB::hikEntity.101.0 + storage: + data: + - + descr: Storage + size: HIKVISION-MIB::hikDiskCapability.1.0 + free: HIKVISION-MIB::hikDiskFreeSpace.1.0 + free_num_oid: '.1.3.6.1.4.1.50001.1.241.1.4.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/himoinsa-gensets.yaml b/priv/profiles/os_discovery/himoinsa-gensets.yaml new file mode 100644 index 00000000..34d09b7e --- /dev/null +++ b/priv/profiles/os_discovery/himoinsa-gensets.yaml @@ -0,0 +1,254 @@ +mib: HIMOINSAv14-MIB +modules: + os: + version: HIMOINSAv14-MIB::version + sensors: + frequency: + data: + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.2.{{ $index }}' + value: mainsFreqConm + index: 'mainsFreqConm.{{ $index }}' + descr: Frequency + group: Mains + divisor: 10 + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.9.{{ $index }}' + value: genFreqConm + index: 'genFreqConm.{{ $index }}' + descr: Frequency + group: Genset + divisor: 10 + voltage: + data: + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.3.{{ $index }}' + value: mainsVL12Conm + index: 'mainsVL12Conm.{{ $index }}' + descr: Voltage 12 + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.4.{{ $index }}' + value: mainsVL23Conm + index: 'mainsVL23Conm.{{ $index }}' + descr: Voltage 23 + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.5.{{ $index }}' + value: mainsVL13Conm + index: 'mainsVL13Conm.{{ $index }}' + descr: Voltage 13 + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.6.{{ $index }}' + value: mainsVL1NConm + index: 'mainsVL1NConm.{{ $index }}' + descr: Voltage 1N + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.7.{{ $index }}' + value: mainsVL2NConm + index: 'mainsVL2NConm.{{ $index }}' + descr: Voltage 2N + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.8.{{ $index }}' + value: mainsVL3NConm + index: 'mainsVL3NConm.{{ $index }}' + descr: Voltage 3N + group: Mains + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.10.{{ $index }}' + value: genVL12Conm + index: 'genVL12Conm.{{ $index }}' + descr: Voltage 12 + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.11.{{ $index }}' + value: genVL23Conm + index: 'genVL23Conm.{{ $index }}' + descr: Voltage 23 + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.12.{{ $index }}' + value: genVL13Conm + index: 'genVL13Conm.{{ $index }}' + descr: Voltage 13 + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.13.{{ $index }}' + value: genVL1NConm + index: 'genVL1NConm.{{ $index }}' + descr: Voltage 1N + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.14.{{ $index }}' + value: genVL2NConm + index: 'genVL2NConm.{{ $index }}' + descr: Voltage 2N + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.15.{{ $index }}' + value: genVL3NConm + index: 'genVL3NConm.{{ $index }}' + descr: Voltage 3N + group: Genset + - + oid: batteryVolt + num_oid: '.1.3.6.1.4.1.41809.1.29.{{ $index }}' + index: 'batteryVolt.{{ $index }}' + descr: Battery Voltage + divisor: 10 + group: Genset + - + oid: altenatorVolt + num_oid: '.1.3.6.1.4.1.41809.1.28.{{ $index }}' + index: 'altenatorVolt.{{ $index }}' + descr: Alternator Voltage + divisor: 10 + group: Genset + current: + data: + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.15.{{ $index }}' + value: ph1AmpConm + index: 'ph1AmpConm.{{ $index }}' + descr: Phase 1 + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.16.{{ $index }}' + value: ph2AmpConm + index: 'ph2AmpConm.{{ $index }}' + descr: Phase 2 + group: Genset + - + oid: measuresConmTable + num_oid: '.1.3.6.1.4.1.41809.1.55.1.17.{{ $index }}' + value: ph3AmpConm + index: 'ph3AmpConm.{{ $index }}' + descr: Phase 3 + group: Genset + percent: + data: + - + oid: fuelLevel + num_oid: '.1.3.6.1.4.1.41809.1.27.{{ $index }}' + index: 'fuelLevel.{{ $index }}' + descr: Fuel level + divisor: 10 + group: Genset + state: + data: + - + oid: status + num_oid: '.1.3.6.1.4.1.41809.1.46.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::motorStatus + index: motor + descr: Motor + group: 'CEA7/CEM7' + state_name: HimoinsaMotorStatus + states: + - {value: 1, generic: 2, graph: 0, descr: Running} + - {value: 2, generic: 0, graph: 0, descr: Stopped} + - {value: 0, generic: 3, graph: 0, descr: Unknown} + - + oid: status + num_oid: '.1.3.6.1.4.1.41809.1.46.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::modeStatus + index: mode + descr: Mode + group: 'CEA7/CEM7' + state_name: HimoinsaModeStatus + states: + - {value: 4, generic: 0, graph: 0, descr: Auto} + - {value: 8, generic: 2, graph: 0, descr: Manual} + - {value: 16, generic: 1, graph: 0, descr: Test} + - {value: 32, generic: 2, graph: 0, descr: Blocked} + - {value: 0, generic: 3, graph: 0, descr: Unknown} + - + oid: status + num_oid: '.1.3.6.1.4.1.41809.1.46.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::transferPumpStatus + index: transfer_pump + descr: Transfer Pump + group: 'CEA7/CEM7' + state_name: HimoinsaTransferPumpStatus + states: + - {value: 0, generic: 0, graph: 0, descr: Off} + - {value: 64, generic: 1, graph: 0, descr: On} + - + oid: status + num_oid: '.1.3.6.1.4.1.41809.1.46.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::alarmStatus + index: alarm + descr: Alarm + group: 'CEA7/CEM7' + state_name: HimoinsaAlarmStatus + states: + - {value: 0, generic: 0, graph: 0, descr: No Alarm} + - {value: 128, generic: 2, graph: 0, descr: Alarm} + - + oid: status + num_oid: '.1.3.6.1.4.1.41809.1.46.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::commStatus + index: comm + descr: Commutator Mode + group: 'CEA7/CEM7' + state_name: HimoinsaCommStatus + states: + - {value: 512, generic: 2, graph: 0, descr: Genset} + - {value: 256, generic: 0, graph: 0, descr: Mains} + - {value: 0, generic: 3, graph: 0, descr: Unknown} + - + oid: statusConm + num_oid: '.1.3.6.1.4.1.41809.1.55.1.28.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::cec7CommStatus + index: 'cec7_comm.{{ $index }}' + descr: Commutator Mode + group: 'CEC7' + state_name: HimoinsaCec7CommStatus + states: + - {value: 32, generic: 2, graph: 0, descr: Genset} + - {value: 64, generic: 0, graph: 0, descr: Mains} + - {value: 0, generic: 3, graph: 0, descr: Unknown} + - + oid: statusConm + num_oid: '.1.3.6.1.4.1.41809.1.55.1.28.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::cec7CommAlarmStatus + index: 'cec7_alarm.{{ $index }}' + descr: Alarm + group: 'CEC7' + state_name: HimoinsaCec7AlarmStatus + states: + - {value: 0, generic: 0, graph: 0, descr: No Alarm} + - {value: 1, generic: 2, graph: 0, descr: Alarm} + - + oid: statusConm + num_oid: '.1.3.6.1.4.1.41809.1.55.1.28.{{ $index }}' + user_func: \LibreNMS\OS\HimoinsaGensets::cec7ModeStatus + index: 'cec7_mode.{{ $index }}' + descr: Mode + group: 'CEC7' + state_name: HimoinsaCec7ModeStatus + states: + - {value: 2, generic: 0, graph: 0, descr: Auto} + - {value: 4, generic: 2, graph: 0, descr: Manual} + - {value: 8, generic: 1, graph: 0, descr: Test} + - {value: 16, generic: 2, graph: 0, descr: Blocked} + - {value: 0, generic: 3, graph: 0, descr: Unknown} diff --git a/priv/profiles/os_discovery/hirschmann.yaml b/priv/profiles/os_discovery/hirschmann.yaml new file mode 100644 index 00000000..5ed64703 --- /dev/null +++ b/priv/profiles/os_discovery/hirschmann.yaml @@ -0,0 +1,130 @@ +mib: HMPRIV-MGMT-SNMP-MIB +modules: + mempools: + data: + - + used: HMPRIV-MGMT-SNMP-MIB::hmMemoryAllocated + free: HMPRIV-MGMT-SNMP-MIB::hmMemoryFree + descr: 'Main Memory' + precision: 1024 + os: + hardware: + - HMPRIV-MGMT-SNMP-MIB::hmPNIOOrderID.0 + - HMPRIV-MGMT-SNMP-MIB::hmSysGroupDescription.1 + version: + - HMPRIV-MGMT-SNMP-MIB::hmPNIOSoftwareRelease.0 + - HMPRIV-MGMT-SNMP-MIB::hmSysVersion.0 + serial: HMPRIV-MGMT-SNMP-MIB::hmSysGroupSerialNum.1 + processors: + data: + - + oid: hmCpuUtilization + num_oid: '.1.3.6.1.4.1.248.14.2.15.2.1.{{ $index }}' + sensors: + temperature: + data: + - + oid: hmSFPTable + value: hmSfpTemperature + index: 'hmSfpTemperature{{ $index }}' + group: SFP + num_oid: '.1.3.6.1.4.1.248.14.1.1.13.1.12.{{ $index }}' + descr: 'Temperature {{ $hmSfpInfoPartId }} {{ $subindex0 }}/{{ $subindex1 }}' + - + oid: hmTempTable + value: hmTemperature + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.248.14.2.5.1.{{ $index }}' + descr: 'Temperature {{ $index }}' + low_limit: hmTempLwrLimit + high_limit: hmTempUprLimit + dbm: + data: + - + oid: hmSFPTable + value: hmSfpTxPowerdBm + index: 'hmSfpTxPowerdBm{{ $index }}' + group: 'SFP {{ $subindex0 }}/{{ $subindex1 }}' + descr: 'Power TX {{ $hmSfpInfoPartId }} {{ $subindex0 }}/{{ $subindex1 }}' + num_oid: '.1.3.6.1.4.1.248.14.1.1.13.1.34.{{ $index }}' + - + oid: hmSFPTable + value: hmSfpRxPowerdBm + index: 'hmSfpRxPowerdBm{{ $index }}' + group: 'SFP {{ $subindex0 }}/{{ $subindex1 }}' + descr: 'Power RX {{ $hmSfpInfoPartId }} {{ $subindex0 }}/{{ $subindex1 }}' + num_oid: '.1.3.6.1.4.1.248.14.1.1.13.1.35.{{ $index }}' + state: + data: + - + oid: hmRS2OperMode + num_oid: '.1.3.6.1.4.1.248.14.1.10.1.{{ $index }}' + descr: 'Operation Mode {{ $index }}' + state_name: hmRS2OperMode + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: standby-active, graph: 1, value: 2, generic: 0 } + - { descr: standby-inactive, graph: 1, value: 3, generic: 3 } + - { descr: redundancy-manager-active, graph: 1, value: 4, generic: 0 } + - { descr: redundancy-manager-inactive, graph: 1, value: 5, generic: 3 } + - + oid: hmPSTable + value: hmPSState + num_oid: '.1.3.6.1.4.1.248.14.1.2.1.3.{{ $index }}' + descr: 'Power Supply {{ $hmPSID }}' + index: 'hmPowerSupplyStatus{{ $index }}' + state_name: hmPowerSupplyStatus + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: failed, graph: 0, value: 2, generic: 2 } + - { descr: notInstalled, graph: 0, value: 3, generic: 1 } + - { descr: unknown, graph: 0, value: 4, generic: 3 } + - + oid: hmLEDRSPowerSupply + value: hmLEDRSPowerSupply + num_oid: '.1.3.6.1.4.1.248.14.1.1.35.1.1.{{ $index }}' + descr: 'LED Status Power Supply' + index: 'hmLEDRSPowerSupply.{{ $index }}' + state_name: hmLEDRSPowerSupply + states: + - { descr: off, graph: 0, value: 1, generic: 3 } + - { descr: green, graph: 0, value: 2, generic: 0 } + - { descr: yellow, graph: 0, value: 3, generic: 1 } + - { descr: red, graph: 0, value: 4, generic: 2 } + - + oid: hmLEDRStandby + value: hmLEDRStandby + num_oid: '.1.3.6.1.4.1.248.14.1.1.35.1.2.{{ $index }}' + descr: 'LED Status Standby' + index: 'hmLEDRStandby.{{ $index }}' + state_name: hmLEDRStandby + states: + - { descr: off, graph: 0, value: 1, generic: 3 } + - { descr: green, graph: 0, value: 2, generic: 0 } + - { descr: yellow, graph: 0, value: 3, generic: 1 } + - { descr: red, graph: 0, value: 4, generic: 2 } + - + oid: hmLEDRSRedundancyManager + value: hmLEDRSRedundancyManager + num_oid: '.1.3.6.1.4.1.248.14.1.1.35.1.3.{{ $index }}' + descr: 'LED Status Redundancy Manager' + index: 'hmLEDRSRedundancyManager.{{ $index }}' + state_name: hmLEDRSRedundancyManager + states: + - { descr: off, graph: 0, value: 1, generic: 3 } + - { descr: green, graph: 0, value: 2, generic: 0 } + - { descr: yellow, graph: 0, value: 3, generic: 1 } + - { descr: red, graph: 0, value: 4, generic: 2 } + - + oid: hmLEDRSFault + value: hmLEDRSFault + num_oid: '.1.3.6.1.4.1.248.14.1.1.35.1.4.{{ $index }}' + descr: 'LED Status Fault' + index: 'hmLEDRSFault.{{ $index }}' + state_name: hmLEDRSFault + states: + - { descr: off, graph: 0, value: 1, generic: 3 } + - { descr: green, graph: 0, value: 2, generic: 0 } + - { descr: yellow, graph: 0, value: 3, generic: 1 } + - { descr: red, graph: 0, value: 4, generic: 2 } + diff --git a/priv/profiles/os_discovery/hiveos-wireless.yaml b/priv/profiles/os_discovery/hiveos-wireless.yaml new file mode 100644 index 00000000..8fbc0393 --- /dev/null +++ b/priv/profiles/os_discovery/hiveos-wireless.yaml @@ -0,0 +1,21 @@ +mib: AH-SYSTEM-MIB +modules: + mempools: + data: + - + percent_used: AH-SYSTEM-MIB::ahMemUtilization + os: + sysDescr_regex: '/^(?.*), HiveOS (?.*)$/' + hardware: AH-SYSTEM-MIB::ahDeviceMode.0 + serial: AH-SYSTEM-MIB::ahSystemSerial.0 + version: AH-SYSTEM-MIB::ahFirmwareVersion.0 + version_regex: '/^(HiveOS )?(?.*)/' + sensors: + temperature: + data: + - + oid: ahSystem + value: ahEnvirmentTemp + num_oid: '.1.3.6.1.4.1.26928.1.2.10.{{ $index }}' + index: 0 + descr: 'Internal Temperature' diff --git a/priv/profiles/os_discovery/horizon-compact.yaml b/priv/profiles/os_discovery/horizon-compact.yaml new file mode 100644 index 00000000..4774ee51 --- /dev/null +++ b/priv/profiles/os_discovery/horizon-compact.yaml @@ -0,0 +1,105 @@ +mib: HORIZON-ODU-MIB +modules: + os: + version: HORIZON-ODU-MIB::hzOduSystemOmniVersionNo.0 + serial: HORIZON-ODU-MIB::hzOduUnitSerialNo.0 + hardware: HORIZON-ODU-MIB::hzOduUnitAssemblylNo.0 + sensors: + temperature: + data: + - + oid: hzOduRadio1Temperature + num_oid: '.1.3.6.1.4.1.7262.2.2.5.1.3.6.{{ $index }}' + index: 'hzOduRadio1Temperature.{{ $index }}' + divisor: 10 + descr: 'Radio1 Temperature' + state: + data: + - + oid: hzOduModem1RxLossOfSignal + num_oid: '.1.3.6.1.4.1.7262.2.2.8.4.4.1.{{ $index }}' + index: 'hzOduModem1RxLossOfSignal.{{ $index }}' + descr: 'Modem1 Rx Loss of Signal' + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: hzOduEnetPort1EthernetLinkDown + num_oid: '.1.3.6.1.4.1.7262.2.2.8.3.1.9.{{ $index }}' + index: 'hzOduEnetPort1EthernetLinkDown.{{ $index }}' + descr: 'Enet Port1 Link State' + states: + - { value: 1, generic: 0, graph: 0, descr: 'Up' } + - { value: 2, generic: 2, graph: 0, descr: 'Down' } + - + oid: hzOduEnetPort2EthernetLinkDown + num_oid: '.1.3.6.1.4.1.7262.2.2.8.3.2.1.{{ $index }}' + index: 'hzOduEnetPort2EthernetLinkDown.{{ $index }}' + descr: 'Enet Port2 Link State' + states: + - { value: 1, generic: 0, graph: 0, descr: 'Up' } + - { value: 2, generic: 2, graph: 0, descr: 'Down' } + - + oid: hzOduRadio1TemperatureOutOfLimit + num_oid: '.1.3.6.1.4.1.7262.2.2.8.4.5.9.{{ $index }}' + index: 'hzOduRadio1TemperatureOutOfLimit.{{ $index }}' + descr: 'Radio1 Temp Out of Limit' + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: hzOduModem1ModulationType + num_oid: '.1.3.6.1.4.1.7262.2.2.5.1.2.5.{{ $index }}' + index: 'hzOduModem1ModulationType.{{ $index }}' + descr: 'Modem1 Modulation' + states: + - { value: 1, generic: 2, graph: 0, descr: 'qpsk' } + - { value: 2, generic: 2, graph: 0, descr: 'qam' } + - { value: 3, generic: 2, graph: 0, descr: 'qam16' } + - { value: 4, generic: 1, graph: 0, descr: 'qam32' } + - { value: 5, generic: 1, graph: 0, descr: 'qam64' } + - { value: 6, generic: 1, graph: 0, descr: 'qam128' } + - { value: 7, generic: 0, graph: 0, descr: 'qam256' } + - { value: 8, generic: 0, graph: 0, descr: 'x8psk' } + count: + data: + - + oid: hzOduModem1RxLossOfSignalCount + num_oid: '.1.3.6.1.4.1.7262.2.2.8.4.4.2.{{ $index }}' + index: 'hzOduModem1RxLossOfSignalCount.{{ $index }}' + descr: 'Modem1 Rx Loss of Signals' + - + oid: hzOduEnetPort1EthernetLinkDownActivatedCount + num_oid: '.1.3.6.1.4.1.7262.2.2.8.3.1.10.{{ $index }}' + index: 'hzOduEnetPort1EthernetLinkDownActivatedCount.{{ $index }}' + descr: 'Enet Port1 Link Downs' + - + oid: hzOduEnetPort2EthernetLinkDownActivatedCount + num_oid: '.1.3.6.1.4.1.7262.2.2.8.3.2.2.{{ $index }}' + index: 'hzOduEnetPort2EthernetLinkDownActivatedCount.{{ $index }}' + descr: 'Enet Port2 Link Downs' + - + oid: hzOduRadio1TemperatureOutOfLimitCount + num_oid: '.1.3.6.1.4.1.7262.2.2.8.4.5.10.{{ $index }}' + index: 'hzOduRadio1TemperatureOutOfLimitCount.{{ $index }}' + descr: 'Radio1 Temp Out Of Limits' + - + oid: hzOduEnetPort1RxFramesInError + num_oid: '.1.3.6.1.4.1.7262.2.2.4.1.4.5.{{ $index }}' + index: 'hzOduEnetPort1RxFramesInError.{{ $index }}' + descr: 'Enet Port1 Input Error' + - + oid: hzOduEnetPort1RxFramesCRCError + num_oid: '.1.3.6.1.4.1.7262.2.2.4.1.4.6.{{ $index }}' + index: 'hzOduEnetPort1RxFramesCRCError.{{ $index }}' + descr: 'Enet Port1 CRC Error' + - + oid: hzOduEnetPort2RxFramesInError + num_oid: '.1.3.6.1.4.1.7262.2.2.4.2.4.5.{{ $index }}' + index: 'hzOduEnetPort2RxFramesInError.{{ $index }}' + descr: 'Enet Port2 Input Error' + - + oid: hzOduEnetPort2RxFramesCRCError + num_oid: '.1.3.6.1.4.1.7262.2.2.4.2.4.6.{{ $index }}' + index: 'hzOduEnetPort2RxFramesCRCError.{{ $index }}' + descr: 'Enet Port2 CRC Error' diff --git a/priv/profiles/os_discovery/horizon-compactplus.yaml b/priv/profiles/os_discovery/horizon-compactplus.yaml new file mode 100644 index 00000000..c0ade466 --- /dev/null +++ b/priv/profiles/os_discovery/horizon-compactplus.yaml @@ -0,0 +1,73 @@ +modules: + os: + version: DRAGONWAVE-HCP-MIB::hzCpSwInvOmniRelease.bank-A + serial: DRAGONWAVE-HCP-MIB::hzCpUnitSerialNo.0 + hardware: DRAGONWAVE-HCP-MIB::hzCpUnitAssemblyNo.0 + sensors: + temperature: + data: + - + oid: DRAGONWAVE-HCP-MIB::hzCpRadioTemperature + num_oid: '.1.3.6.1.4.1.7262.2.5.4.4.1.1.11.{{ $index }}' + index: 'hzCpRadioTemperature.{{ $index }}' + divisor: 10 + descr: 'Radio{{ $index }} Temp' + state: + data: + - + oid: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus.modemRxLossOfSignal + value: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus + num_oid: '.1.3.6.1.4.1.7262.2.5.5.3.1.3.{{ $index }}' + index: 'hzCpAlarmStatus.modemRxLossOfSignal.{{ $subindex1 }}' + descr: 'Modem{{ $subindex1 }} Rx Loss Of Signal' + state_name: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: DRAGONWAVE-HCP-MIB::hzCpEnetPortLinkStatus + num_oid: '.1.3.6.1.4.1.7262.2.5.3.1.2.1.2.{{ $index }}' + index: 'hzCpEnetPortLinkStatus.{{ $index }}' + descr: 'Enet Port{{ $index }} Link State' + state_name: DRAGONWAVE-HCP-MIB::hzCpEnetPortLinkStatus + states: + - { value: 1, generic: 2, graph: 0, descr: 'Down' } + - { value: 2, generic: 0, graph: 0, descr: 'Up' } + - + oid: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus.tempOutOfLimits + value: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus + num_oid: '.1.3.6.1.4.1.7262.2.5.5.3.1.3.{{ $index }}' + index: 'hzCpAlarmStatus.tempOutOfLimits.{{ $subindex1 }}' + descr: 'Radio{{ $subindex1 }} Temp Out of Limit' + state_name: DRAGONWAVE-HCP-MIB::hzCpAlarmStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: DRAGONWAVE-HCP-MIB::hzCpModemModulationType + num_oid: '.1.3.6.1.4.1.7262.2.5.4.2.1.1.5.{{ $index }}' + index: 'hzCpModemModulationType.{{ $index }}' + descr: 'Modem{{ $index }} Modulation' + state_name: DRAGONWAVE-HCP-MIB::hzCpModemModulationType + states: + - { value: 1, generic: 2, graph: 0, descr: 'qpsk' } + - { value: 2, generic: 2, graph: 0, descr: 'qam16' } + - { value: 3, generic: 2, graph: 0, descr: 'qam32' } + - { value: 4, generic: 1, graph: 0, descr: 'qam64' } + - { value: 5, generic: 1, graph: 0, descr: 'qam128' } + - { value: 6, generic: 1, graph: 0, descr: 'qam256' } + - { value: 7, generic: 0, graph: 0, descr: 'qam512' } + - { value: 8, generic: 0, graph: 0, descr: 'qam1024' } + - { value: 9, generic: 0, graph: 0, descr: 'qam2048' } + count: + data: + - + oid: DRAGONWAVE-HCP-MIB::hzCpEnetPortRxFramesLengthErrors + num_oid: '.1.3.6.1.4.1.7262.2.5.3.1.3.1.6.{{ $index }}' + index: 'hzCpEnetPortRxFramesLengthErrors.{{ $index }}' + descr: 'Enet Port{{ $index }} Input Errors' + - + oid: DRAGONWAVE-HCP-MIB::hzCpEnetPortRxFramesCRCErrors + num_oid: '.1.3.6.1.4.1.7262.2.5.3.1.3.1.7.{{ $index }}' + index: 'hzCpEnetPortRxFramesCRCErrors.{{ $index }}' + descr: 'Enet Port{{ $index }} CRC Errors' diff --git a/priv/profiles/os_discovery/horizon-duo.yaml b/priv/profiles/os_discovery/horizon-duo.yaml new file mode 100644 index 00000000..4b82d1f2 --- /dev/null +++ b/priv/profiles/os_discovery/horizon-duo.yaml @@ -0,0 +1,84 @@ +mib: DRAGONWAVE-HORIZON-IDU-MIB +modules: + os: + version: DRAGONWAVE-HORIZON-IDU-MIB::hzIduSwInvSystemOmniVersionNo.0 + serial: DRAGONWAVE-HORIZON-IDU-MIB::hzIduUnitSerialNo.0 + hardware: DRAGONWAVE-HORIZON-IDU-MIB::hzIduUnitAssemblylNo.0 + sensors: + state: + data: + - + oid: hzIduModemRxLossOfSignal + index: 'hzIduModemRxLossOfSignal.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.4.1.1.1.2.{{ $index }}' + descr: 'Modem{{ $index }} Rx Loss of Signal' + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: hzIduEnetPort1EthernetLinkDown + index: 'hzIduEnetPort1EthernetLinkDown.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.3.1.9.{{ $index }}' + descr: 'Enet Port1 Link State' + states: + - { value: 1, generic: 0, graph: 0, descr: 'Up' } + - { value: 2, generic: 2, graph: 0, descr: 'Down' } + - + oid: hzIduEnetPort2EthernetLinkDown + index: 'hzIduEnetPort2EthernetLinkDown.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.3.2.1.{{ $index }}' + descr: 'Enet Port2 Link State' + states: + - { value: 1, generic: 0, graph: 0, descr: 'Up' } + - { value: 2, generic: 2, graph: 0, descr: 'Down' } + - + oid: hzIduModemModulationType + num_oid: '.1.3.6.1.4.1.7262.2.3.5.2.2.1.6.{{ $index }}' + index: 'hzIduModemModulationType.{{ $index }}' + descr: 'Modem{{ $index }} Modulation' + states: + - { value: 1, generic: 2, graph: 0, descr: 'qpsk' } + - { value: 2, generic: 2, graph: 0, descr: 'qam' } + - { value: 3, generic: 2, graph: 0, descr: 'qam16' } + - { value: 4, generic: 1, graph: 0, descr: 'qam32' } + - { value: 5, generic: 1, graph: 0, descr: 'qam64' } + - { value: 6, generic: 1, graph: 0, descr: 'qam128' } + - { value: 7, generic: 0, graph: 0, descr: 'qam256' } + - { value: 8, generic: 0, graph: 0, descr: 'x8psk' } + count: + data: + - + oid: hzIduModemRxLossOfSignalCounts + index: 'hzIduModemRxLossOfSignalCounts.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.4.1.1.1.3.{{ $index }}' + descr: 'Modem{{ $index }} Rx Loss of Signals' + - + oid: hzIduEnetPort1EthernetLinkDownActivatedCounts + index: 'hzIduEnetPort1EthernetLinkDownActivatedCounts.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.3.1.10.{{ $index }}' + descr: 'Enet Port1 Link Downs' + - + oid: hzIduEnetPort2EthernetLinkDownActivatedCounts + index: 'hzIduEnetPort2EthernetLinkDownActivatedCounts.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.7.3.2.2.{{ $index }}' + descr: 'Enet Port2 Link Downs' + - + oid: hzIduEnetPort1RxFramesInErrors + index: 'hzIduEnetPort1RxFramesInErrors.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.4.1.4.5.{{ $index }}' + descr: 'Enet Port1 Input Error' + - + oid: hzIduEnetPort1RxFramesCRCErrors + index: 'hzIduEnetPort1RxFramesCRCErrors.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.4.1.4.6.{{ $index }}' + descr: 'Enet Port1 CRC Error' + - + oid: hzIduEnetPort2RxFramesInErrors + index: 'hzIduEnetPort2RxFramesInErrors.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.4.2.4.5.{{ $index }}' + descr: 'Enet Port2 Input Error' + - + oid: hzIduEnetPort2RxFramesCrcErrors + index: 'hzIduEnetPort2RxFramesCrcErrors.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7262.2.3.4.2.4.6.{{ $index }}' + descr: 'Enet Port2 CRC Error' diff --git a/priv/profiles/os_discovery/horizon-quantum.yaml b/priv/profiles/os_discovery/horizon-quantum.yaml new file mode 100644 index 00000000..71d89428 --- /dev/null +++ b/priv/profiles/os_discovery/horizon-quantum.yaml @@ -0,0 +1,52 @@ +mib: DRAGONWAVE-HORIZON-QUANTUM-MIB +modules: + os: + version: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmSwInvAppOmniVersionNo.0 + serial: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmUnitSerialNo.0 + hardware: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmUnitAssemblylNo.0 + sensors: + temperature: + data: + - + oid: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmIduTemperature.0 + value: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmIduTemperature + num_oid: '.1.3.6.1.4.1.7262.2.4.1.1.8.{{ $index }}' + divisor: 100 + descr: 'IDU Temperature' + - + oid: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmRadioTemperature.1 + value: DRAGONWAVE-HORIZON-QUANTUM-MIB::hzQtmRadioTemperature + num_oid: '.1.3.6.1.4.1.7262.2.4.5.4.1.1.14.{{ $index }}' + divisor: 10 + descr: 'Radio Temperature' + state: + data: + - + oid: hzQtmModemRxLossOfSignalAlarm + num_oid: '.1.3.6.1.4.1.7262.2.4.7.4.1.1.1.2.{{ $index }}' + index: 'hzQtmModemAlarmsIndex.{{ $index }}' + descr: 'Radio {{ $index }} Loss of Signal' + states: + - { value: 1, generic: 0, graph: 0, descr: 'No' } + - { value: 2, generic: 2, graph: 0, descr: 'Yes' } + - + oid: hzQtmModemModulationType + num_oid: '.1.3.6.1.4.1.7262.2.4.5.2.1.1.5.{{ $index }}' + index: 'hzQtmModemIndex.{{ $index }}' + descr: 'Radio {{ $index }} Modulation' + states: + - { value: 1, generic: 2, graph: 0, descr: 'qpsk' } + - { value: 2, generic: 2, graph: 0, descr: 'qam' } + - { value: 3, generic: 2, graph: 0, descr: 'qam16' } + - { value: 4, generic: 1, graph: 0, descr: 'qam32' } + - { value: 5, generic: 1, graph: 0, descr: 'qam64' } + - { value: 6, generic: 1, graph: 0, descr: 'qam128' } + - { value: 7, generic: 0, graph: 0, descr: 'qam256' } + - { value: 8, generic: 0, graph: 0, descr: 'x8psk' } + count: + data: + - + oid: hzQtmModemRxLossOfSignalCounts + num_oid: '.1.3.6.1.4.1.7262.2.4.7.4.1.1.1.3.{{ $index }}' + index: 'hzQtmModemAlarmsIndex.{{ $index }}' + descr: 'Radio {{ $index }} Loss of Signals' diff --git a/priv/profiles/os_discovery/hpblmos.yaml b/priv/profiles/os_discovery/hpblmos.yaml new file mode 100644 index 00000000..3baac5e8 --- /dev/null +++ b/priv/profiles/os_discovery/hpblmos.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: CPQRACK-MIB::cpqRackCommonEnclosureModel.1 + version: CPQRACK-MIB::cpqRackCommonEnclosureFWRev.1 diff --git a/priv/profiles/os_discovery/hpe-ilo.yaml b/priv/profiles/os_discovery/hpe-ilo.yaml new file mode 100644 index 00000000..d567b42f --- /dev/null +++ b/priv/profiles/os_discovery/hpe-ilo.yaml @@ -0,0 +1,227 @@ +mib: CPQHLTH-MIB:CPQIDA-MIB:CPQSTDEQ-MIB:CPQHOST-MIB +modules: + mempools: + data: + - + total: CPQHOST-MIB::cpqHoPhysicalMemorySize + free: CPQHOST-MIB::cpqHoPhysicalMemoryFree + index: 0 + precision: 1048576 + descr: 'Physical Memory' + - + total: CPQHOST-MIB::cpqHoPagingMemorySize + free: CPQHOST-MIB::cpqHoPagingMemoryFree + index: 1 + precision: 1048576 + descr: 'Paging Memory' + storage: + data: + - + oid: CPQHOST-MIB::cpqHoFileSysTable + descr: CPQHOST-MIB::cpqHoFileSysDesc + size: CPQHOST-MIB::cpqHoFileSysSpaceTotal + used: CPQHOST-MIB::cpqHoFileSysSpaceUsed + units: 1048576 + + os: + sysDescr_regex: '/Integrated Lights-Out \d (?[\d.]+)/' + hardware: CPQSINFO-MIB::cpqSiProductName.0 + serial: CPQSINFO-MIB::cpqSiSysSerialNum.0 + version: CPQHOST-MIB::cpqHoFwVerVersion.0 + version_regex: '/(?[\d.]+)/' + sensors: + power: + data: + - + oid: cpqHeFltTolPowerSupplyTable + value: cpqHeFltTolPowerSupplyCapacityUsed + num_oid: '.1.3.6.1.4.1.232.6.2.9.3.1.7.{{ $index }}' + index: 'cpqHeFltTolPowerSupplyBay.{{ $index }}' + descr: 'PowerSupply #{{ $cpqHeFltTolPowerSupplyBay }}' + high_limit: cpqHeFltTolPowerSupplyCapacityMaximum + temperature: + data: + - + oid: cpqHeTemperatureTable + value: cpqHeTemperatureCelsius + num_oid: '.1.3.6.1.4.1.232.6.2.6.8.1.4.{{ $index }}' + snmp_flags: '-OQUs' + index: 'cpqHeTemperatureCelsius.{{ $index }}' + descr: cpqHeTemperatureLocale + high_limit: '90' #cpqHeTemperatureThreshold + - + oid: cpqDaPhyDrvTable + value: cpqDaPhyDrvCurrentTemperature + num_oid: '.1.3.6.1.4.1.232.3.2.5.1.1.70.{{ $index }}' + snmp_flags: '-OQUs' + index: 'cpqDaPhyDrvCurrentTemperature.{{ $index }}' + descr: cpqDaPhyDrvLocationString + state: + data: + - + oid: cpqDaPhyDrvTable + value: cpqDaPhyDrvCondition + num_oid: '.1.3.6.1.4.1.232.3.2.5.1.1.37.{{ $index }}' + descr: 'Disk #{{ $cpqDaPhyDrvLocationString }}' + index: 'cpqDaPhyDrvCondition.{{ $index }}' + state_name: cpqDaPhyDrvCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 2 } + - { descr: failed, graph: 1, value: 4, generic: 2 } + - + oid: cpqHeFltTolPowerSupplyTable + value: cpqHeFltTolPowerSupplyCondition + num_oid: '.1.3.6.1.4.1.232.6.2.9.3.1.4.{{ $index }}' + descr: 'PowerSupply #{{ $cpqHeFltTolPowerSupplyBay }}' + index: 'cpqHeFltTolPowerSupplyCondition.{{ $index }}' + state_name: cpqHeFltTolPowerSupplyCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - + oid: cpqHeFltTolFanTable + value: cpqHeFltTolFanCondition + num_oid: '.1.3.6.1.4.1.232.6.2.6.7.1.9.{{ $index }}' + descr: 'Fan #{{ $cpqHeFltTolFanIndex }}' + index: 'cpqHeFltTolFanCondition.{{ $index }}' + state_name: cpqHeFltTolFanCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - + oid: cpqSeCpuTable + value: cpqSeCpuStatus + num_oid: '.1.3.6.1.4.1.232.1.2.2.1.1.6.{{ $index }}' + descr: 'Processor #{{ $cpqSeCpuSocketNumber }}' + index: 'cpqSeCpuStatus.{{ $index }}' + state_name: cpqSeCpuStatus + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - + oid: cpqHeResMem2ModuleTable + value: cpqHeResMem2ModuleCondition + num_oid: '.1.3.6.1.4.1.232.6.2.14.13.1.20.{{ $index }}' + descr: cpqHeResMem2ModuleHwLocation + index: 'cpqHeResMem2ModuleCondition.{{ $index }}' + state_name: cpqHeResMem2ModuleCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: degradedModuleIndexUnknown, graph: 1, value: 4, generic: 1 } + - + oid: cpqHeSysBatteryTable + value: cpqHeSysBatteryCondition + num_oid: '.1.3.6.1.4.1.232.6.2.17.2.1.4.{{ $index }}' + descr: 'Battery Condition ({{ $cpqHeSysBatteryCapacityMaximum }}W {{ $cpqHeSysBatteryModel }})' + index: 'cpqHeSysBatteryCondition.{{ $index }}' + state_name: cpqHeSysBatteryCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 2 } + - { descr: failed, graph: 1, value: 4, generic: 2 } + - + oid: cpqHeSysBatteryTable + value: cpqHeSysBatteryStatus + num_oid: '.1.3.6.1.4.1.232.6.2.17.2.1.5.{{ $index }}' + descr: 'Battery Status ({{ $cpqHeSysBatteryCapacityMaximum }}W {{ $cpqHeSysBatteryModel }})' + index: 'cpqHeSysBatteryStatus.{{ $index }}' + state_name: cpqHeSysBatteryStatus + states: + - { descr: ok, graph: 1, value: 1, generic: 0 } + - { descr: generalFailure, graph: 1, value: 2, generic: 2 } + - { descr: shutdownHighResistance, graph: 3, value: 3, generic: 2 } + - { descr: shutdownLowVoltage, graph: 1, value: 4, generic: 2 } + - { descr: shutdownShortCircuit, graph: 1, value: 5, generic: 2 } + - { descr: shutdownChargeTimeout, graph: 1, value: 6, generic: 2 } + - { descr: shutdownOverTemperature, graph: 1, value: 7, generic: 2 } + - { descr: shutdownDischargeMinVoltage, graph: 1, value: 8, generic: 2 } + - { descr: shutdownDischargeCurrent, graph: 1, value: 9, generic: 2 } + - { descr: shutdownLoadCountHigh, graph: 1, value: 10, generic: 2 } + - { descr: shutdownEnablePin, graph: 1, value: 11, generic: 2 } + - { descr: shutdownOverCurrent, graph: 1, value: 12, generic: 2 } + - { descr: shutdownPermanentFailure, graph: 1, value: 13, generic: 2 } + - { descr: shutdownBackupTimeExceeded, graph: 1, value: 14, generic: 2 } + - { descr: predictiveFailure, graph: 1, value: 15, generic: 2 } + - + oid: cpqDaCntlrTable + value: cpqDaCntlrCondition + num_oid: '.1.3.6.1.4.1.232.3.2.2.1.1.6.{{ $index }}' + descr: 'Array Controller Slot#{{ $cpqDaCntlrSlot }}' + index: 'cpqDaCntlrCondition.{{ $index }}' + state_name: cpqDaCntlrCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - + oid: cpqDaAccelTable + value: cpqDaAccelBattery + num_oid: '.1.3.6.1.4.1.232.3.2.2.2.1.6.{{ $index }}' + descr: 'Cache Module Board {{ $cpqDaAccelCntlrIndex }} Battery' + index: 'cpqDaAccelBattery.{{ $index }}' + state_name: cpqDaAccelBattery + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: recharging, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - { descr: degraded, graph: 1, value: 5, generic: 1 } + - { descr: notPresent, graph: 1, value: 6, generic: 3 } + - { descr: capacitorFailed, graph: 1, value: 7, generic: 1 } + - + oid: cpqDaLogDrvTable + value: cpqDaLogDrvCondition + num_oid: '.1.3.6.1.4.1.232.3.2.3.1.1.11.{{ $index }}' + descr: 'Logical Drive #{{ $cpqDaLogDrvIndex }}' + index: 'cpqDaLogDrvCondition.{{ $index }}' + state_name: cpqDaLogDrvCondition + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: degraded, graph: 1, value: 3, generic: 1 } + - { descr: failed, graph: 1, value: 4, generic: 1 } + - + oid: cpqDaLogDrvTable + value: cpqDaLogDrvStatus + num_oid: '.1.3.6.1.4.1.232.3.2.3.1.1.4.{{ $index }}' + descr: 'Logical Drive Status #{{ $cpqDaLogDrvIndex }}' + index: 'cpqDaLogDrvIndex.{{ $index }}' + state_name: cpqDaLogDrvStatus + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: ok, graph: 1, value: 2, generic: 0 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - { descr: unconfigured, graph: 1, value: 4, generic: 3 } + - { descr: recovering, graph: 1, value: 5, generic: 2 } + - { descr: readyRebuild, graph: 1, value: 6, generic: 1 } + - { descr: rebuilding, graph: 1, value: 7, generic: 2 } + - { descr: wrongDrive, graph: 1, value: 8, generic: 2 } + - { descr: badConnect, graph: 1, value: 9, generic: 1 } + - { descr: overheating, graph: 1, value: 10, generic: 2 } + - { descr: shutdown, graph: 1, value: 11, generic: 2 } + - { descr: expanding, graph: 1, value: 12, generic: 1 } + - { descr: notAvailable, graph: 1, value: 13, generic: 3 } + - { descr: queuedForExpansion, graph: 1, value: 14, generic: 1 } + - { descr: multipathAccessDegraded, graph: 1, value: 15, generic: 1 } + - { descr: erasing, graph: 1, value: 16, generic: 1 } + - { descr: predictiveSpareRebuildReady, graph: 1, value: 17, generic: 1 } + - { descr: rapidParityInitializationInProgress, graph: 1, value: 18, generic: 1 } + - { descr: rapidParityInitializationPending, graph: 1, value: 19, generic: 1 } + - { descr: noAccessEncryptedWithNoControllerKey, graph: 1, value: 20, generic: 0 } + - { descr: unencryptedToEncryptedTransformationInProgress, graph: 1, value: 21, generic: 1 } + - { descr: newLogicalDriveKeyRekeyInProgress, graph: 1, value: 22, generic: 1 } + - { descr: noAccessEncryptedWithControllerEncryptionNotEnabled, graph: 1, value: 23, generic: 1 } + - { descr: unencryptedToEncryptedTransformationNotStarted, graph: 1, value: 24, generic: 1 } + - { descr: newLogicalDriveKeyRekeyRequestReceived, graph: 1, value: 25, generic: 1 } diff --git a/priv/profiles/os_discovery/hpe-ipdu.yaml b/priv/profiles/os_discovery/hpe-ipdu.yaml new file mode 100644 index 00000000..7daf60ca --- /dev/null +++ b/priv/profiles/os_discovery/hpe-ipdu.yaml @@ -0,0 +1,49 @@ +mib: CPQPOWER-MIB +modules: + os: + hardware: CPQPOWER-MIB::mpduModel.1 + serial: CPQPOWER-MIB::mpduSerialNumber.1 + version: CPQPOWER-MIB::mpduSerialNumber.1 + sensors: + current: + data: + - + oid: mpduOutputEntry + value: mpduOutputCurrent + num_oid: '.1.3.6.1.4.1.232.165.5.2.1.1.7.{{ $index }}' + skip_values: -1 + divisor: 100 + index: 'mpduOutputCurrent.{{ $index }}' + descr: 'MPDU #{{ $mpduOutputIndex }} Current' + load: + data: + - + oid: mpduOutputEntry + value: mpduOutputPercentLoad + num_oid: '.1.3.6.1.4.1.232.165.5.2.1.1.5.{{ $index }}' + skip_values: -1 + divisor: 10 + index: 'mpduOutputPercentLoad.{{ $index }}' + descr: 'MPDU #{{ $mpduOutputIndex }} Load' + warn_limit: 80 + high_limit: 90 + power: + data: + - + oid: mpduOutputEntry + value: mpduOutputPowerFactor + num_oid: '.1.3.6.1.4.1.232.165.5.2.1.1.10.{{ $index }}' + skip_values: -1 + divisor: 100 + index: 'mpduOutputPowerFactor.{{ $index }}' + descr: 'MPDU #{{ $mpduOutputIndex }} Power' + voltage: + data: + - + oid: mpduOutputEntry + value: mpduOutputVoltage + num_oid: '.1.3.6.1.4.1.232.165.5.2.1.1.6.{{ $index }}' + skip_values: -1 + divisor: 10 + index: 'mpduOutputVoltage.{{ $index }}' + descr: 'MPDU #{{ $mpduOutputIndex }} Voltage' diff --git a/priv/profiles/os_discovery/hpe-mapdu.yaml b/priv/profiles/os_discovery/hpe-mapdu.yaml new file mode 100644 index 00000000..5950cb27 --- /dev/null +++ b/priv/profiles/os_discovery/hpe-mapdu.yaml @@ -0,0 +1,418 @@ +mib: CPQPOWER-MIB +modules: + os: + serial: + - CPQPOWER-MIB::deviceSerialNumber.0 + version: + - CPQPOWER-MIB::deviceFirmwareVersion.0 + hardware: + - CPQPOWER-MIB::deviceModel.0 + sensors: + additional_oids: + data: + - + oid: + - pdu2OutletName + - pdu2OutletControlStatus + - pdu2InputPhaseIndex + - pdu3OutletName + - pdu3OutletControlStatus + - pdu3InputPhaseIndex + state: + data: + - + oid: pdu2OutletControlStatus + value: pdu2OutletControlStatus + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.5.2.1.1.{{ $index }}' + descr: '{{ $pdu2OutletName }} State' + group: 'Outlets' + states: + - { value: 1, generic: 3, descr: off, graph: 0 } + - { value: 2, generic: 0, descr: on, graph: 0 } + - { value: 3, generic: 1, descr: pendingOff, graph: 0 } + - { value: 4, generic: 2, descr: pendingOn, graph: 0 } + - + oid: pdu2InputType + value: pdu2InputType + num_oid: '.1.3.6.1.4.1.232.165.7.2.1.1.1.{{ $index }}' + descr: 'PDU Type' + states: + - { value: 1, generic: 0, descr: singlePhase, graph: 0 } + - { value: 2, generic: 1, descr: splitPhase, graph: 0 } + - { value: 3, generic: 2, descr: threePhaseDelta, graph: 0 } + - { value: 4, generic: 3, descr: threePhaseWye, graph: 0 } + - + oid: pdu3OutletControlStatus + value: pdu3OutletControlStatus + index: 'pdu3OutletControlStatus.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.5.2.1.1.{{ $index }}' + descr: '{{ $pdu3OutletName }} State' + group: 'Outlets' + states: + - { value: 1, generic: 3, descr: off, graph: 0 } + - { value: 2, generic: 0, descr: on, graph: 0 } + - { value: 3, generic: 1, descr: pendingOff, graph: 0 } + - { value: 4, generic: 2, descr: pendingOn, graph: 0 } + skip_values: + - + oid: 'pdu3OutletName' + op: '==' + value: '........' + - + oid: pdu3InputType + value: pdu3InputType + index: 'pdu3InputType.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.1.1.1.{{ $index }}' + descr: 'PDU Type' + states: + - { value: 1, generic: 0, descr: singlePhase, graph: 0 } + - { value: 2, generic: 1, descr: splitPhase, graph: 0 } + - { value: 3, generic: 2, descr: threePhaseDelta, graph: 0 } + - { value: 4, generic: 3, descr: threePhaseWye, graph: 0 } + frequency: + data: + - + oid: pdu2InputFrequency + value: pdu2InputFrequency + index: 'pdu2InputFrequency.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.1.1.2.{{ $index }}' + descr: 'Input Frequency' + divisor: 10 + - + oid: pdu3InputFrequency + value: pdu3InputFrequency + index: 'pdu3InputFrequency.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.1.1.2.{{ $index }}' + descr: 'Input Frequency' + divisor: 10 + voltage: + data: + - + oid: pdu2InputPhaseVoltage + value: pdu2InputPhaseVoltage + index: 'pdu2InputPhaseIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.2.1.3.{{ $index }}' + descr: 'Input Phase {{ $pdu2InputPhaseIndex }} Voltage' + divisor: 1000 + low_limit: pdu2InputPhaseVoltageThLowerCritical + low_warn_limit: pdu2InputPhaseVoltageThLowerWarning + warn_limit: pdu2InputPhaseVoltageThUpperWarning + high_limit: pdu2InputPhaseVoltageThUpperCritical + - + oid: pdu3InputPhaseVoltage + value: pdu3InputPhaseVoltage + index: 'pdu3InputPhaseIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.2.1.3.{{ $index }}' + descr: 'Input Phase {{ $pdu3InputPhaseIndex }} Voltage' + divisor: 10 + low_limit: pdu3InputPhaseVoltageThLowerCritical + low_warn_limit: pdu3InputPhaseVoltageThLowerWarning + warn_limit: pdu3InputPhaseVoltageThUpperWarning + high_limit: pdu3InputPhaseVoltageThUpperCritical + skip_values: 0 + current: + data: + - + oid: pdu2InputPhaseCurrent + value: pdu2InputPhaseCurrent + index: 'pdu2InputPhaseCurrent.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.2.1.11.{{ $index }}' + descr: 'Input Phase {{ $pdu2InputPhaseIndex }} Current' + skip_values: -1 + divisor: 1000 + - + oid: pdu2OutletCurrent + value: pdu2OutletCurrent + num_oid: '.1.3.6.1.4.1.232.165.7.5.1.1.5.{{ $index }}' + index: 'pdu2OutletCurrent.{{ $index }}' + descr: '{{ $pdu2OutletName }} Current' + divisor: 1000 + group: 'Outlets' + skip_values: + - + oid: 'pdu2OutletControlStatus' + op: '==' + value: '1' + - + oid: pdu3InputPhaseCurrent + value: pdu3InputPhaseCurrent + index: 'pdu3InputPhaseCurrent.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.2.1.11.{{ $index }}' + descr: 'Input Phase {{ $pdu3InputPhaseIndex }} Current' + divisor: 100 + skip_values: + - + oid: 'pdu3InputPhaseIndex' + op: '==' + value: '0' + - + oid: pdu3OutletCurrent + value: pdu3OutletCurrent + num_oid: '.1.3.6.1.4.1.232.165.11.5.1.1.5.{{ $index }}' + index: 'pdu3OutletCurrent.{{ $index }}' + descr: '{{ $pdu3OutletName }} Current' + divisor: 100 + group: 'Outlets' + skip_value_lt: 0 + skip_values: + - + oid: 'pdu3OutletControlStatus' + op: '==' + value: '1' + - + oid: 'pdu3OutletName' + op: '==' + value: '........' + power: + data: + - + oid: pdu2InputPowerWatts + value: pdu2InputPowerWatts + num_oid: '.1.3.6.1.4.1.232.165.7.2.1.1.5.{{ $index }}' + index: 'Pdu2InputEntry.{{ $index }}' + descr: 'Total Input Power' + skip_values: -1 + - + oid: pdu2InputPhasePowerWatts + value: pdu2InputPhasePowerWatts + num_oid: '.1.3.6.1.4.1.232.165.7.2.2.1.21.{{ $index }}' + index: 'Pdu2InputEntry.{{ $index }}' + descr: 'Input Phase {{ $pdu2InputPhaseIndex }} Power' + skip_values: + - + oid: 'pdu2InputType:0' + op: '!=' + value: '1' + - + oid: pdu2OutletWatts + value: pdu2OutletWatts + index: 'Pdu2OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.5.1.1.14.{{ $index }}' + descr: '{{ $pdu2OutletName }} Power' + group: 'Outlets' + skip_values: + - + oid: 'pdu2OutletControlStatus' + op: '==' + value: '1' + - + oid: pdu3InputPowerWatts + value: pdu3InputPowerWatts + num_oid: '.1.3.6.1.4.1.232.165.11.2.1.1.5.{{ $index }}' + index: 'Pdu3InputEntry.{{ $index }}' + descr: 'Total Input Power' + skip_values: 0 + - + oid: pdu3InputPhasePowerWatts + value: pdu3InputPhasePowerWatts + num_oid: '.1.3.6.1.4.1.232.165.11.2.2.1.20.{{ $index }}' + index: 'Pdu3InputEntry.{{ $index }}' + descr: 'Input Phase {{ $pdu3InputPhaseIndex }} Power' + skip_values: + - + oid: 'pdu3InputType:0' + op: '!=' + value: '1' + - + oid: pdu3OutletWatts + value: pdu3OutletWatts + index: 'Pdu3OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.5.1.1.13.{{ $index }}' + descr: '{{ $pdu3OutletName }} Power' + group: 'Outlets' + skip_value_lt: 0 + skip_values: + - + oid: 'pdu3OutletControlStatus' + op: '==' + value: '1' + - + oid: 'pdu3OutletName' + op: '==' + value: '........' + power_factor: + data: + - + oid: pdu2InputPhasePowerFactor + value: pdu2InputPhasePowerFactor + index: 'Pdu2InputIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.1.1.8.{{ $index }}' + descr: 'Input Phase {{ $pdu2InputPhaseIndex }} Power Factor' + divisor: 1000 + skip_values: + - + oid: 'pdu2InputType:0' + op: '!=' + value: '1' + - + oid: 'pdu2InputPhasePowerFactor' + op: '==' + value: '-1' + - + oid: pdu2InputPowerFactor + value: pdu2InputPowerFactor + index: 'Pdu2InputIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.1.1.8.{{ $index }}' + descr: 'Input Power Factor' + skip_values: -1 + divisor: 1000 + - + oid: pdu2OutletPowerFactor + value: pdu2OutletPowerFactor + index: 'pdu2OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.5.1.1.17.{{ $index }}' + descr: '{{ $pdu2OutletName }} Power Factor' + divisor: -1000 + group: 'Outlets' + skip_values: + - + oid: 'pdu2OutletControlStatus' + op: '==' + value: '1' + - + oid: pdu3InputPowerFactor + value: pdu3InputPowerFactor + index: 'Pdu3InputIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.1.1.9.{{ $index }}' + descr: 'Input Phase {{ $pdu3InputPhaseIndex }} Power Factor' + skip_values: -1 + divisor: 100 + - + oid: pdu3OutletPowerFactor + value: pdu3OutletPowerFactor + index: 'pdu3OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.5.1.1.16.{{ $index }}' + descr: '{{ $pdu3OutletName }} Power Factor' + divisor: 100 + group: 'Outlets' + skip_value_lt: 0 + skip_values: + - + oid: 'pdu3OutletControlStatus' + op: '==' + value: '1' + - + oid: 'pdu3OutletName' + op: '==' + value: '........' + load: + data: + - + oid: pdu2OutletCurrentPercentLoad + value: pdu2OutletCurrentPercentLoad + index: 'pdu2OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.5.1.1.12.{{ $index }}' + descr: '{{ $pdu2OutletName }} Load' + group: 'Outlets' + skip_value_lt: 0 + skip_values: + - + oid: 'pdu2OutletControlStatus' + op: '==' + value: '1' + - + oid: pdu2InputPhaseCurrentPercentLoad + value: pdu2InputPhaseCurrentPercentLoad + index: 'pdu2InputPhaseIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.2.2.1.18.{{ $index }}' + descr: 'Input Phase {{ $pdu2InputPhaseIndex }} Load' + skip_value_lt: 0 + - + oid: pdu3OutletCurrentPercentLoad + value: pdu3OutletCurrentPercentLoad + index: 'pdu3OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.5.1.1.11.{{ $index }}' + descr: '{{ $pdu3OutletName }} Load' + divisor: 10 + group: 'Outlets' + skip_value_lt: 0 + skip_values: + - + oid: 'pdu3OutletControlStatus' + op: '==' + value: '1' + - + oid: 'pdu3OutletName' + op: '==' + value: '........' + - + oid: pdu3InputPhaseCurrentPercentLoad + value: pdu3InputPhaseCurrentPercentLoad + index: 'pdu3InputPhaseIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.2.2.1.17.{{ $index }}' + descr: 'Input Phase {{ $pdu3InputPhaseIndex }} Load' + divisor: 10 + skip_values: + - + oid: 'pdu3InputPhaseIndex' + op: '==' + value: '0' + temperature: + data: + - + oid: pdu2TemperatureTable + value: pdu2TemperatureValue + index: 'pdu2TemperatureIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.4.2.1.4.{{ $index }}' + descr: '{{ $pdu2TemperatureName }} Temperature sensor' + low_limit: pdu2TemperatureThLowerCritical + low_warn_limit: pdu2TemperatureThLowerWarning + warn_limit: pdu2TemperatureThUpperWarning + high_limit: pdu2TemperatureThUpperCritical + group: 'Sensors' + skip_values: + - + oid: 'pdu2TemperatureProbeStatus' + op: '==' + value: '1' + - + oid: pdu3TemperatureTable + value: pdu3TemperatureValue + index: 'pdu3TemperatureIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.4.2.1.4.{{ $index }}' + descr: '{{ $pdu3TemperatureName }} Temperature sensor' + low_limit: pdu3TemperatureThLowerCritical + low_warn_limit: pdu3TemperatureThLowerWarning + warn_limit: pdu3TemperatureThUpperWarning + high_limit: pdu3TemperatureThUpperCritical + group: 'Sensors' + skip_values: + - + oid: 'pdu3TemperatureProbeStatus' + op: '==' + value: '1' + humidity: + data: + - + oid: pdu2HumidityTable + value: pdu2HumidityValue + index: 'pdu2HumidityIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.7.4.3.1.4.{{ $index }}' + descr: '{{ $pdu2HumidityName.0.1 }} Humidity sensor' + low_limit: pdu2HumidityThLowerCritical + low_warn_limit: pdu2HumidityThLowerWarning + warn_limit: pdu2HumidityThUpperWarning + high_limit: pdu2HumidityThUpperCritical + group: 'Sensors' + skip_values: + - + oid: 'pdu2HumidityProbeStatus' + op: '==' + value: '1' + - + oid: pdu3HumidityTable + value: pdu3HumidityValue + index: 'pdu3HumidityIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.232.165.11.4.3.1.4.{{ $index }}' + descr: '{{ $pdu3HumidityName.0.1 }} Humidity sensor' + low_limit: pdu3HumidityThLowerCritical + low_warn_limit: pdu3HumidityThLowerWarning + warn_limit: pdu3HumidityThUpperWarning + high_limit: pdu3HumidityThUpperCritical + group: 'Sensors' + skip_values: + - + oid: 'pdu3HumidityProbeStatus' + op: '==' + value: '1' diff --git a/priv/profiles/os_discovery/hpe-msa.yaml b/priv/profiles/os_discovery/hpe-msa.yaml new file mode 100644 index 00000000..95a6564a --- /dev/null +++ b/priv/profiles/os_discovery/hpe-msa.yaml @@ -0,0 +1,45 @@ +mib: FCMGMT-MIB +modules: + os: + hardware: CPQSINFO-MIB::cpqSiProductName.0 + serial: CPQSINFO-MIB::cpqSiSysSerialNum.0 + sensors: + state: + data: + - + oid: connUnitSensorTable + value: connUnitSensorStatus + num_oid: '.1.3.6.1.3.94.1.8.1.4.{{ $index }}' + descr: connUnitSensorName + index: 'connUnitSensorStatus.{{ $index }}' + state_name: connUnitSensorStatus + states: + - { value: 1, generic: 3, graph: 1, descr: unknown } + - { value: 2, generic: 1, graph: 1, descr: other } + - { value: 3, generic: 0, graph: 1, descr: ok } + - { value: 4, generic: 1, graph: 1, descr: warning } + - { value: 5, generic: 2, graph: 1, descr: failed } + - + oid: connUnitTable + value: connUnitState + num_oid: '.1.3.6.1.3.94.1.6.1.5.{{ $index }}' + descr: connUnitName + index: 'connUnitState.{{ $index }}' + state_name: connUnitState + states: + - { value: 1, generic: 3, graph: 1, descr: unknown } + - { value: 2, generic: 0, graph: 1, descr: online } + - { value: 3, generic: 2, graph: 1, descr: offline } + - + oid: connUnitTable + value: connUnitStatus + num_oid: '.1.3.6.1.3.94.1.6.1.6.{{ $index }}' + descr: connUnitName + index: 'connUnitStatus.{{ $index }}' + state_name: connUnitStatus + states: + - { value: 1, generic: 3, graph: 1, descr: unknown } + - { value: 2, generic: 3, graph: 1, descr: unused } + - { value: 3, generic: 0, graph: 1, descr: ok } + - { value: 4, generic: 1, graph: 1, descr: warning } + - { value: 5, generic: 2, graph: 1, descr: failed } diff --git a/priv/profiles/os_discovery/hpe-msl.yaml b/priv/profiles/os_discovery/hpe-msl.yaml new file mode 100644 index 00000000..bfdff767 --- /dev/null +++ b/priv/profiles/os_discovery/hpe-msl.yaml @@ -0,0 +1,21 @@ +mib: SEMI-MIB +modules: + os: + hardware: SEMI-MIB::hpHttpMgDeviceProductName.1 + version: SEMI-MIB::hpHttpMgDeviceVersion.1 + serial: SEMI-MIB::hpHttpMgDeviceSerialNumber.1 + sensors: + state: + data: + - + oid: hpHttpMgHealth + num_oid: '.1.3.6.1.4.1.11.2.36.1.1.2.3.{{ $index }}' + index: 'hpHttpMgHealth.{{ $index }}' + descr: Operating Status + states: + - { descr: Unknown, graph: 1, value: 1, generic: 3 } + - { descr: Information, graph: 1, value: 2, generic: 0 } + - { descr: OK, graph: 1, value: 3, generic: 0 } + - { descr: Warning, graph: 1, value: 4, generic: 1 } + - { descr: Critical, graph: 1, value: 5, generic: 2 } + - { descr: Non recoverable, graph: 1, value: 6, generic: 2 } diff --git a/priv/profiles/os_discovery/hpe-pdumm.yaml b/priv/profiles/os_discovery/hpe-pdumm.yaml new file mode 100644 index 00000000..241f4ea1 --- /dev/null +++ b/priv/profiles/os_discovery/hpe-pdumm.yaml @@ -0,0 +1,61 @@ +mib: CPQPOWER-MIB +modules: + os: + sysDescr_regex: '/firmware version (?[\d.]+)/' + sensors: + current: + data: + - + oid: pduOutputBreakerTable + value: breakerCurrent + num_oid: '.1.3.6.1.4.1.232.165.2.3.2.1.3.{{ $index }}' + index: 'breakerCurrent.{{ $index }}' + descr: 'PDU {{ $subindex0 }} Phase {{ $subindex1 }}' + skip_values: -1 + load: + data: + - + oid: pduOutputBreakerTable + value: breakerPercentLoad + num_oid: '.1.3.6.1.4.1.232.165.2.3.2.1.4.{{ $index }}' + index: 'breakerPercentLoad.{{ $index }}' + descr: 'PDU {{ $subindex0 }} Phase {{ $subindex1 }}' + skip_values: -1 + - + oid: pduOutputTable + value: pduOutputLoad + num_oid: '.1.3.6.1.4.1.232.165.2.3.1.1.2.{{ $index }}' + index: 'pduOutputLoad.{{ $index }}' + descr: 'PDU {{ $index }}' + skip_values: -1 + + voltage: + data: + - + oid: pduOutputBreakerTable + value: breakerVoltage + num_oid: '.1.3.6.1.4.1.232.165.2.3.2.1.2.{{ $index }}' + index: 'breakerVoltage.{{ $index }}' + descr: 'PDU {{ $subindex0 }} Phase {{ $subindex1 }}' + skip_values: -1 + power: + data: + - + oid: pduOutputTable + value: pduOutputPower + num_oid: '.1.3.6.1.4.1.232.165.2.3.1.1.4.{{ $index }}' + index: 'pduOutputPower.{{ $index }}' + descr: 'PDU {{ $index }}' + skip_values: -1 + state: + data: + - + oid: pduIdentTable + value: pduStatus + num_oid: '.1.3.6.1.4.1.232.165.2.1.2.1.8.{{ $index }}' + descr: 'PDU {{ $index }}' + states: + - { value: 1, generic: 3, descr: other, graph: 0 } + - { value: 2, generic: 0, descr: ok, graph: 0 } + - { value: 3, generic: 1, descr: degraded, graph: 0 } + - { value: 4, generic: 2, descr: failed, graph: 0 } diff --git a/priv/profiles/os_discovery/hpe-rtups.yaml b/priv/profiles/os_discovery/hpe-rtups.yaml new file mode 100644 index 00000000..db9590ce --- /dev/null +++ b/priv/profiles/os_discovery/hpe-rtups.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: CPQPOWER-MIB::deviceSerialNumber.0 + version: CPQPOWER-MIB::deviceFirmwareVersion.0 diff --git a/priv/profiles/os_discovery/hpmsm.yaml b/priv/profiles/os_discovery/hpmsm.yaml new file mode 100644 index 00000000..e66a184a --- /dev/null +++ b/priv/profiles/os_discovery/hpmsm.yaml @@ -0,0 +1,16 @@ +mib: COLUBRIS-USAGE-INFORMATION-MIB +modules: + mempools: + data: + - + total: COLUBRIS-USAGE-INFORMATION-MIB::coUsInfoRamTotal + free: COLUBRIS-USAGE-INFORMATION-MIB::coUsInfoRamFree + precision: 1024 + descr: 'Memory Utilization' + os: + sysDescr_regex: '/(?MSM\S+) .* Serial number (?\S+) - Firmware version (?\S+)/' + processors: + data: + - + oid: coUsInfoCpuUseNow + num_oid: '.1.3.6.1.4.1.8744.5.21.1.1.5.{{ $index }}' diff --git a/priv/profiles/os_discovery/hpvc.yaml b/priv/profiles/os_discovery/hpvc.yaml new file mode 100644 index 00000000..5c0132de --- /dev/null +++ b/priv/profiles/os_discovery/hpvc.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/HP (VC )?(?.*)Module (Virtual Connect )?(?[\d.]+)/' diff --git a/priv/profiles/os_discovery/huawei-optixrtn.yaml b/priv/profiles/os_discovery/huawei-optixrtn.yaml new file mode 100644 index 00000000..7185c7a4 --- /dev/null +++ b/priv/profiles/os_discovery/huawei-optixrtn.yaml @@ -0,0 +1,127 @@ +mib: OPTIX-BOARD-MANAGE-MIB +modules: + os: + hardware: + - OPTIX-NE-MIB::optixNeDeviceType.0 + serial: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduFactoryInfo.23.255 + sysDescr_regex: '/Huawei Optix RTN (?\S+)/' #Huawei Optix RTN V100R011C00SPC200 + sensors: + additional_oids: + data: + - + oid: + - optixPhyBoardType + - OPTIX-NE-MIB::optixNeName + state: + data: + - + oid: optixPhyBoardTable + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.14.1.2.1.3.{{ $index }}' + value: optixPhyBoardState + descr: '"{{ optixPhyBoardType:0 }}" working status' + index: 'optixPhyBoardType.{{ $index }}' + state_name: optixPhyBoardState + group: 'Board "{{ optixPhyBoardType:0 }}"' + states: + - { descr: Work, graph: 1, value: 1, generic: 0 } + - { descr: NotWork, graph: 1, value: 0, generic: 2 } + - + oid: optixLogBoardTable + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.14.1.1.1.6.{{ $index }}' + value: optixLogBoardBusdetect + descr: '"{{ optixPhyBoardType:0 }}" status' + index: 'optixLogBoardBusdetect.{{ $index }}' + state_name: optixLogBoardBusdetect + group: 'Board "{{ optixPhyBoardType:0 }}"' + states: + - { descr: Enable, graph: 1, value: 1, generic: 0 } + - { descr: Disable, graph: 1, value: 0, generic: 2 } + - + oid: OptixPhyBoardEntry + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.14.1.2.1.8.{{ $index }}' + value: optixPhyBDOnlineFlag + descr: '"{{ optixPhyBoardType:0 }}" Board Online Flag' + index: 'optixPhyBoardType.{{ $index }}' + state_name: optixPhyBDOnlineFlag + group: 'Board "{{ optixPhyBoardType:0 }}"' + states: + - { descr: offline, graph: 1, value: 0, generic: 2 } + - { descr: online, graph: 1, value: 1, generic: 0 } + - { descr: not match, graph: 1, value: 2, generic: 1 } + - + oid: OPTIX-MISC-MIB::optixFanSpeed + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.39.1.1.{{ $index }}' + descr: 'NE Fan State' + index: 'optixFanSpeed.{{ $index }}' + state_name: optixFanSpeed + group: 'NE {{ OPTIX-NE-MIB::optixNeName }}' + states: + - { descr: stop, graph: 1, value: 4, generic: 2 } + - { descr: low, graph: 1, value: 1, generic: 0 } + - { descr: mid, graph: 1, value: 2, generic: 0 } + - { descr: high, graph: 1, value: 3, generic: 1 } + - { descr: autoLow, graph: 1, value: 5, generic: 0 } + - { descr: autoMid, graph: 1, value: 6, generic: 0 } + - { descr: autoHigh, graph: 1, value: 7, generic: 0 } + - { descr: auto, graph: 1, value: 9, generic: 0 } + - + oid: OPTIX-MISC-MIB::optixFanMinDispersion + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.39.1.2.{{ $index }}' + descr: 'NE Fan Min Temp Difference' + index: 'optixFanMinDispersion.{{ $index }}' + state_name: optixFanMinDispersion + group: 'NE {{ OPTIX-NE-MIB::optixNeName }}' + states: + - { descr: stop, graph: 1, value: 0, generic: 2 } + - { descr: low, graph: 1, value: 45, generic: 0 } + - { descr: mid, graph: 1, value: 58, generic: 0 } + - { descr: high, graph: 1, value: 65, generic: 1 } + dbm: + data: + - + oid: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduPowerTable + value: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualRxPower + num_oid: '.1.3.6.1.4.1.2011.2.25.4.40.4.10.30.1.9.{{ $index }}' + descr: '"{{ optixPhyBoardType:0 }}" Rx Power' + divisor: 10 + index: 'optixRtnOduActualRxPower.{{ $index }}' + group: 'Board "{{ optixPhyBoardType:0 }}"' + - + oid: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduPowerTable + value: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualTxPower + num_oid: '.1.3.6.1.4.1.2011.2.25.4.40.4.10.30.1.8.{{ $index }}' + descr: '"{{ optixPhyBoardType:0 }}" Tx Power' + divisor: 10 + index: 'optixRtnOduActualTxPower.{{ $index }}' + group: 'Board "{{ optixPhyBoardType:0 }}"' + temperature: + data: + - + oid: optixLogBoardTable + value: optixLogBoardCurTemp + num_oid: '.1.3.6.1.4.1.2011.2.25.4.30.14.1.1.1.5.{{ $index }}' + descr: '"{{ optixPhyBoardType:0 }}" current Temp (C)' + index: 'optixLogBoardCurTemp.{{ $index }}' + group: 'Board "{{ optixPhyBoardType:0 }}"' + low_limit: optixLogBoardTempLowTh + high_limit: optixLogBoardTempHighTh + frequency: + data: + - + oid: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualTxFreq + value: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualTxFreq + num_oid: '.1.3.6.1.4.1.2011.2.25.4.40.4.10.20.1.3.{{ $index }}' + descr: '"{{ optixPhyBoardType:0 }}" Tx Freq RF Unit (kHz)' + multiplier: 1000 + index: 'optixRtnOduActualTxFreq.{{ $index }}' + group: 'Board "{{ optixPhyBoardType:0 }}"' + low_limit: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduMinTxFreq + high_limit: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduMaxTxFreq + - + oid: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualRxFreq + value: OPTIX-RTN-ODU-MGR-MIB::optixRtnOduActualRxFreq + num_oid: '.1.3.6.1.4.1.2011.2.25.4.40.4.10.20.1.4.{{ $index }}' + descr: '"{{ optixPhyBoardType:0 }}" Rx Freq RF Unit (kHz)' + multiplier: 1000 + index: 'optixRtnOduActualRxFreq.{{ $index }}' + group: 'Board "{{ optixPhyBoardType:0 }}"' diff --git a/priv/profiles/os_discovery/huawei-smu.yaml b/priv/profiles/os_discovery/huawei-smu.yaml new file mode 100644 index 00000000..a5b2fbb9 --- /dev/null +++ b/priv/profiles/os_discovery/huawei-smu.yaml @@ -0,0 +1,191 @@ +mib: HUAWEI-MIB:HUAWEI-SITE-MONITOR-MIB +modules: + os: + version: HUAWEI-SITE-MONITOR-MIB::hwMonEquipSoftwareVersion.1 + additional_oids: + data: + - + oid: + - hwLvdUnitEquipName + sensors: + voltage: + data: + - + oid: hwRectsRatedVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.5.{{ $index }}' + divisor: 10 + descr: Rectifier Rated Voltage + index: "ratedRectifier-{{ $index }}" + group: Rectifier + - + oid: hwModifyRectsOutputVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.6.{{ $index }}' + divisor: 10 + descr: Rectifier Adjusted Voltage + index: "adjustedRectifier-{{ $index }}" + group: Rectifier + - + oid: hwApOrAblVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.5.2.1.1.4.{{ $index }}' + descr: "AC Input (A-Phase)" + index: "acInput-{{ $index }}" + group: AC + divisor: 10 + - + oid: hwDcsTotalVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.6.1.3.{{ $index }}' + descr: "DC Total Voltage" + index: "dcTotal-{{ $index }}" + group: DC + divisor: 10 + - + oid: hwDcOutputVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.6.2.1.1.4.{{ $index }}' + descr: "DC Output Voltage" + index: "dcOutput-{{ $index }}" + group: DC + divisor: 10 + - + oid: hwSetLvdVoltage + num_oid: '.1.3.6.1.4.1.2011.6.164.1.7.2.1.1.5.{{ $index }}' + descr: hwLvdUnitEquipName + index: "lvd-{{ $index }}" + group: LVD + divisor: 10 + current: + data: + - + oid: hwBattsTotalCurrent + num_oid: '.1.3.6.1.4.1.2011.6.164.1.4.2.1.{{ $index }}' + descr: Battery Current + index: "battery-{{ $index }}" + group: Battery + - + oid: hwRectsTotalCurrent + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.3.{{ $index }}' + descr: Rectifier Current + index: "rectifier-{{ $index }}" + group: Rectifier + - + oid: hwDcsTotalCurrent + num_oid: '.1.3.6.1.4.1.2011.6.164.1.6.1.4.{{ $index }}' + descr: DC Total Current + index: "dcTotal-{{ $index }}" + group: DC + - + oid: hwDcOutputCurrent + num_oid: '.1.3.6.1.4.1.2011.6.164.1.6.2.1.1.5.{{ $index }}' + descr: DC Output Current + index: "dcOutput-{{ $index }}" + group: DC + count: + data: + - + oid: hwBattsTotalQuantity + num_oid: '.1.3.6.1.4.1.2011.6.164.1.4.1.3.{{ $index }}' + descr: "Quantity of Batteries" + index: "battery-{{ $index }}" + group: Battery + - + oid: hwRectsTotalQuantity + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.4.{{ $index }}' + descr: "Quantity of Rectifiers" + index: "rectifier-{{ $index }}" + group: Rectifier + - + oid: hwDcsTotalQuantity + num_oid: '.1.3.6.1.4.1.2011.6.164.1.6.1.6.{{ $index }}' + descr: "Quantity of DCs" + index: "dc-{{ $index }}" + group: DC + - + oid: hwAcsTotalQuantity + num_oid: '.1.3.6.1.4.1.2011.6.164.1.5.1.4.{{ $index }}' + descr: "Quantity of ACs" + index: "ac-{{ $index }}" + group: AC + + charge: + data: + - + oid: hwBattStringRemainCapacityPercent + num_oid: '.1.3.6.1.4.1.2011.6.164.1.4.4.2.1.3.{{ $index }}' + descr: 'Remaining battery capacity' + index: 'hwBattStringRemainCapacityPercent.{{ $index }}' + divisor: 10 + state: + data: + - + oid: hwSiteDGWorkStatus + num_oid: '.1.3.6.1.4.1.2011.6.164.1.1.1.9.{{ $index }}' + group: Site Summary + descr: "Site Status" + state_name: hwSiteDGWorkStatus + states: + - { value: 1, generic: 3, graph: 1, descr: 'idle' } + - { value: 2, generic: 0, graph: 1, descr: 'working' } + - { value: 3, generic: 3, graph: 1, descr: 'unknown' } + - + oid: hwMonitorOperStatus + num_oid: '.1.3.6.1.4.1.2011.6.164.1.2.2.1.1.99.{{ $index }}' + descr: "Monitor Status" + group: Site Summary + state_name: hwMonitorOperStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'normal' } + - { value: 2, generic: 2, graph: 1, descr: 'commRs485Fail' } + - { value: 3, generic: 2, graph: 1, descr: 'commNetFail' } + - { value: 4, generic: 2, graph: 1, descr: 'fault' } + - { value: 254, generic: 1, graph: 1, descr: 'alarmResume' } + - { value: 255, generic: 3, graph: 1, descr: 'other' } + - + oid: hwSetMonEquipCtrlState + num_oid: '.1.3.6.1.4.1.2011.6.164.1.2.2.1.1.11.{{ $index }}' + descr: "Monitor Control Status" + group: Site Summary + state_name: hwSetMonEquipCtrlState + states: + - { value: 1, generic: 0, graph: 1, descr: 'manualMode' } + - { value: 2, generic: 0, graph: 1, descr: 'autoMode' } + - { value: 255, generic: 3, graph: 1, descr: 'unknown' } + - + oid: hwSetRectsRedundEnable + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.7.{{ $index }}' + descr: "Sleep Function" + group: Rectifier + state_name: hwSetRectsRedundEnable + states: + - { value: 1, generic: 0, graph: 1, descr: 'disable' } + - { value: 2, generic: 0, graph: 1, descr: 'enable' } + - { value: 3, generic: 3, graph: 1, descr: 'funcNotSuppport' } + - + oid: hwCtrlRectsAllOnOff + num_oid: '.1.3.6.1.4.1.2011.6.164.1.3.1.8.{{ $index }}' + descr: "Recirifier Module Status" + group: Rectifier + state_name: hwCtrlRectsAllOnOff + states: + - { value: 1, generic: 0, graph: 1, descr: 'on' } + - { value: 2, generic: 1, graph: 1, descr: 'off' } + - { value: 255, generic: 3, graph: 1, descr: 'nullOper' } + - + oid: hwBattsChargeStatus + num_oid: '.1.3.6.1.4.1.2011.6.164.1.4.2.3.{{ $index }}' + descr: "Battery Charge Status" + group: Battery + state_name: hwBattsChargeStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'floatCharge' } + - { value: 2, generic: 1, graph: 1, descr: 'boostCharge' } + - { value: 3, generic: 2, graph: 1, descr: 'disCharge' } + - { value: 255, generic: 3, graph: 1, descr: 'unknown' } + - + oid: hwBattsCurrLimitStatus + num_oid: '.1.3.6.1.4.1.2011.6.164.1.4.2.4.{{ $index }}' + descr: "Battery Limiting Status" + group: Battery + state_name: hwBattsCurrLimitStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'unlimit' } + - { value: 2, generic: 0, graph: 1, descr: 'limit' } + - { value: 255, generic: 3, graph: 1, descr: 'unknown' } diff --git a/priv/profiles/os_discovery/huaweiups.yaml b/priv/profiles/os_discovery/huaweiups.yaml new file mode 100644 index 00000000..39189630 --- /dev/null +++ b/priv/profiles/os_discovery/huaweiups.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: UPS-MIB::upsIdentModel.0 + version: UPS-MIB::upsIdentUPSSoftwareVersion.0 diff --git a/priv/profiles/os_discovery/hwg-perseus.yaml b/priv/profiles/os_discovery/hwg-perseus.yaml new file mode 100644 index 00000000..eec251be --- /dev/null +++ b/priv/profiles/os_discovery/hwg-perseus.yaml @@ -0,0 +1,86 @@ +modules: + os: + hardware: SNMPv2-MIB::sysDescr.0 + hardware_regex: '/(?\w*.*),.*/' + version: Perseus-MIB::fwVersion.0 + serial: Perseus-MIB::serNumber.0 + sensors: + state: + data: + - + oid: Perseus-MIB::meterTable + value: Perseus-MIB::meterEnable + num_oid: '.1.3.6.1.4.1.21796.5.1.2.1.4.{{ $index }}' + descr: 'Port ID {{ Perseus-MIB::meterPortID }} - {{ Perseus-MIB::meterName }} - State' + index: 'meterEnable.{{ $index }}' + states: + - { descr: 'disabled', graph: 1, value: 0, generic: 3 } + - { descr: 'enabled', graph: 1, value: 1, generic: 0 } + - + oid: Perseus-MIB::meterTable + value: Perseus-MIB::meterState + num_oid: '.1.3.6.1.4.1.21796.5.1.2.1.3.{{ $index }}' + descr: 'Port ID {{ Perseus-MIB::meterPortID }} - {{ Perseus-MIB::meterName }} - Status' + state_name: meterState + index: 'meterState.{{ $index }}' + states: + - { descr: 'unknown', graph: 1, value: 0, generic: 0 } + - { descr: 'ok', graph: 1, value: 1, generic: 0 } + - { descr: 'varInvalid', graph: 1, value: 2, generic: 0 } + - { descr: 'meterInvalid', graph: 1, value: 3, generic: 0 } + - { descr: 'alarmLow', graph: 1, value: 4, generic: 0 } + - { descr: 'alarmHigh', graph: 1, value: 5, generic: 0 } + - { descr: 'inactive', graph: 1, value: 6, generic: 0 } + - + oid: Perseus-MIB::meterTable + value: Perseus-MIB::meterType + num_oid: '.1.3.6.1.4.1.21796.5.1.2.1.5.{{ $index }}' + descr: 'Port ID {{ Perseus-MIB::meterPortID }} - {{ Perseus-MIB::meterName }} - Type' + index: 'meterType.{{ $index }}' + state_name: meterType + states: + - { descr: 'local', graph: 1, value: 0, generic: 3 } + - { descr: 'oneWire', graph: 1, value: 1, generic: 0 } + - { descr: 'varInvalid', graph: 1, value: 2, generic: 0 } + - { descr: 'unknown', graph: 1, value: 3, generic: 0 } + - { descr: 'mbus', graph: 1, value: 4, generic: 0 } + - { descr: 'modbusRTU', graph: 1, value: 5, generic: 0 } + - { descr: 'modbusTCP', graph: 1, value: 6, generic: 0 } + - { descr: 'httpXML', graph: 1, value: 7, generic: 0 } + - { descr: 'virtual', graph: 1, value: 8, generic: 0 } + - { descr: 'mQTT', graph: 1, value: 9, generic: 0 } + - { descr: 'snmp', graph: 1, value: 10, generic: 0 } + - { descr: 'localGPS', graph: 1, value: 11, generic: 0 } + - + oid: Perseus-MIB::varTable + value: Perseus-MIB::varState + num_oid: '.1.3.6.1.4.1.21796.5.1.3.1.3.{{ $index }}' + descr: 'Sensor - {{ Perseus-MIB::varName }} - Status' + index: 'varState.{{ $index }}' + state_name: varState + states: + - { descr: 'unknown', graph: 1, value: 0, generic: 3 } + - { descr: 'ok', graph: 1, value: 1, generic: 0 } + - { descr: 'varInvalid', graph: 1, value: 2, generic: 0 } + - { descr: 'meterInvalid', graph: 1, value: 3, generic: 0 } + - { descr: 'alarmLow', graph: 1, value: 4, generic: 0 } + - { descr: 'alarmHigh', graph: 1, value: 5, generic: 0 } + - { descr: 'inactive', graph: 1, value: 6, generic: 0 } + - + oid: Perseus-MIB::varTable + value: Perseus-MIB::varEnable + num_oid: '.1.3.6.1.4.1.21796.5.1.3.1.6.{{ $index }}' + descr: 'Sensor - {{ Perseus-MIB::varName }} - State' + index: 'varEnable.{{ $index }}' + state_name: varEnable + states: + - { descr: 'disabled', graph: 2, value: 0, generic: 1 } + - { descr: 'enabled', graph: 2, value: 1, generic: 0 } + count: + data: + - + oid: Perseus-MIB::varTable + value: Perseus-MIB::varValue + num_oid: '.1.3.6.1.4.1.21796.5.1.3.1.4.{{ $index }}' + descr: '{{ Perseus-MIB::varName }} Value in {{ Perseus-MIB::varUnit }}' + index: 'varValue.{{ $index }}' diff --git a/priv/profiles/os_discovery/hwg-poseidon.yaml b/priv/profiles/os_discovery/hwg-poseidon.yaml new file mode 100644 index 00000000..ad52e290 --- /dev/null +++ b/priv/profiles/os_discovery/hwg-poseidon.yaml @@ -0,0 +1,67 @@ +mib: POSEIDON-MIB +modules: + os: + sysDescr_regex: '/(?Poseidon [0-9]+) .* v(?[\d.]+)/' + sensors: + temperature: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.3.3.3.1.6.{{ $index }}' + divisor: 10 + descr: sensName + index: 'sensTable.{{ $index }}' + skip_values: + - + oid: sensUnit + op: '!=' + value: 0 + humidity: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.3.3.3.1.6.{{ $index }}' + divisor: 10 + descr: sensName + index: 'sensTable.{{ $index }}' + skip_values: + - + oid: sensUnit + op: '!=' + value: 3 + state: + data: + - + oid: inpTable + value: inpValue + num_oid: '.1.3.6.1.4.1.21796.3.3.1.1.2.{{ $index }}' + descr: inpName + index: 'inpValue.{{ $index }}' + state_name: inpValue + states: + - { descr: open, graph: 0, value: 0, generic: 0 } + - { descr: closed, graph: 0, value: 1, generic: 2 } + - + oid: inpTable + value: inpAlarmState + num_oid: '.1.3.6.1.4.1.21796.3.3.1.1.5.{{ $index }}' + descr: 'alarm : {{ $inpName }}' + index: 'inpAlarmState.{{ $index }}' + state_name: inpAlarmState + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: alarm, graph: 0, value: 1, generic: 2 } + - + oid: sensTable + value: sensState + num_oid: '.1.3.6.1.4.1.21796.3.3.3.1.4.{{ $index }}' + descr: sensName + index: 'sensState.{{ $index }}' + state_name: sensName + states: + - { descr: invalid, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: alarmstate, graph: 0, value: 2, generic: 2 } + - { descr: alarm, graph: 0, value: 3, generic: 2 } diff --git a/priv/profiles/os_discovery/hwg-ste.yaml b/priv/profiles/os_discovery/hwg-ste.yaml new file mode 100644 index 00000000..1276582f --- /dev/null +++ b/priv/profiles/os_discovery/hwg-ste.yaml @@ -0,0 +1,67 @@ +mib: STE-MIB +modules: + sensors: + temperature: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.4.1.3.1.5.{{ $index }}' + divisor: 10 + descr: sensName + index: 'sensTable.{{ $index }}' + skip_values: + - + oid: sensUnit + op: '!=' + value: 1 + humidity: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.4.1.3.1.5.{{ $index }}' + divisor: 10 + descr: sensName + index: 'sensTable.{{ $index }}' + skip_values: + - + oid: sensUnit + op: '!=' + value: 4 + state: + data: + - + oid: inpTable + value: inpValue + num_oid: '.1.3.6.1.4.1.21796.4.1.1.1.2.{{ $index }}' + descr: inpName + index: 'inpValue.{{ $index }}' + state_name: inpValue + states: + - { descr: open, graph: 0, value: 0, generic: 0 } + - { descr: closed, graph: 0, value: 1, generic: 2 } + - + oid: inpTable + value: inpAlarmState + num_oid: '.1.3.6.1.4.1.21796.4.1.1.1.4.{{ $index }}' + descr: 'alarm : {{ $inpName }}' + index: 'inpAlarmState.{{ $index }}' + state_name: inpAlarmState + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: alarm, graph: 0, value: 1, generic: 2 } + - + oid: sensTable + value: sensState + num_oid: '.1.3.6.1.4.1.21796.4.1.3.1.3.{{ $index }}' + descr: sensName + index: 'sensState.{{ $index }}' + state_name: sensName + states: + - { descr: invalid, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: outOfRangeLo, graph: 0, value: 2, generic: 2 } + - { descr: outofRangeHi, graph: 0, value: 3, generic: 2 } + - { descr: alarmLo, graph: 0, value: 4, generic: 2 } + - { descr: alarmHi, graph: 0, value: 5, generic: 2 } diff --git a/priv/profiles/os_discovery/hwg-ste2.yaml b/priv/profiles/os_discovery/hwg-ste2.yaml new file mode 100644 index 00000000..ad02eeda --- /dev/null +++ b/priv/profiles/os_discovery/hwg-ste2.yaml @@ -0,0 +1,62 @@ +mib: STE2-MIB +modules: + os: + sysDescr_regex: '/(?.*),\s+fw:(?.*)?/' + sensors: + temperature: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.4.9.3.1.5.{{ $index }}' + descr: sensName + index: '{{ $index }}' + divisor: 10 + skip_values: + - + oid: sensUnit + op: '!=' + value: 1 + humidity: + data: + - + oid: sensTable + value: sensValue + num_oid: '.1.3.6.1.4.1.21796.4.9.3.1.5.{{ $index }}' + descr: sensName + index: '{{ $index }}' + divisor: 10 + skip_values: + - + oid: sensUnit + op: '!=' + value: 4 + state: + data: + - + oid: inpTable + value: inpAlarmState + num_oid: '.1.3.6.1.4.1.21796.4.9.1.1.4.{{ $index }}' + descr: 'Alarm: {{ $inpName }}' + index: 'inpAlarmState.{{ $index }}' + state_name: inpAlarmState + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: alarm, graph: 0, value: 1, generic: 2 } + - + oid: sensTable + value: sensState + num_oid: '.1.3.6.1.4.1.21796.4.9.3.1.3.{{ $index }}' + descr: sensName + index: 'sensState.{{ $index }}' + state_name: sensState + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: alarm, graph: 0, value: 4, generic: 2 } + - { descr: alarm, graph: 0, value: 5, generic: 2 } + skip_values: + - + oid: sensUnit + op: '!=' + value: 5 diff --git a/priv/profiles/os_discovery/hwg-wld.yaml b/priv/profiles/os_discovery/hwg-wld.yaml new file mode 100644 index 00000000..a693a094 --- /dev/null +++ b/priv/profiles/os_discovery/hwg-wld.yaml @@ -0,0 +1,36 @@ +mib: HWg-WLD-MIB +modules: + os: + serial: + - HWg-WLD-MIB::wldSN.1 + sensors: + state: + data: + - + oid: wldTable + value: wldState + num_oid: '.1.3.6.1.4.1.21796.4.5.4.1.3.{{ $index }}' + descr: '"{{ $wldName }}" state' + index: 'wldState.{{ $index }}' + state_name: wldState + states: + - { descr: invalid, graph: 0, value: 0, generic: 2 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: alarm, graph: 0, value: 3, generic: 2 } + skip_values: + - + oid: wldValue + op: '=' + value: 2 + - + oid: wldTable + value: wldValue + num_oid: '.1.3.6.1.4.1.21796.4.5.4.1.6.{{ $index }}' + descr: '"{{ $wldName }}" detailed state' + index: 'wldValue.{{ $index }}' + state_name: wldValue + states: + - { descr: disconnect, graph: 0, value: 2, generic: 3 } + - { descr: flooded, graph: 0, value: 1, generic: 2 } + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: invalid, graph: 0, value: 3, generic: 2 } diff --git a/priv/profiles/os_discovery/hyperion.yaml b/priv/profiles/os_discovery/hyperion.yaml new file mode 100644 index 00000000..5a4e6bb5 --- /dev/null +++ b/priv/profiles/os_discovery/hyperion.yaml @@ -0,0 +1,13 @@ +mib: ENTITY-MIB:BTS-TELEMETRY:BTS-SMI:BTS-POE-MONITOR +modules: + os: + sysDescr_regex: '/(?MSM\S+) .* Serial number (?\S+) - Firmware version (?\S+)/' + hardware: SNMPv2-MIB::sysDescr.0 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName diff --git a/priv/profiles/os_discovery/ibm-amm.yaml b/priv/profiles/os_discovery/ibm-amm.yaml new file mode 100644 index 00000000..982b09e3 --- /dev/null +++ b/priv/profiles/os_discovery/ibm-amm.yaml @@ -0,0 +1,142 @@ +modules: + sensors: + temperature: + data: + - + oid: BLADE-MIB::mmTemp + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.1.1.2.{{ $index }}' + index: 'mmTemp' + descr: Management module temperature + - + oid: BLADE-MIB::frontPanelTemp + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.1.5.1.{{ $index }}' + index: 'frontPanelTemp' + descr: Front panel temperature + fanspeed: + data: + - + oid: BLADE-MIB:blower1speedRPM + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.20.{{ $index }}' + index: 'blower1speedRPM' + descr: Blower 1 + - + oid: BLADE-MIB:blower2speedRPM + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.21.{{ $index }}' + index: 'blower2speedRPM' + descr: Blower 2 + - + oid: BLADE-MIB:blower3speedRPM + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.22.{{ $index }}' + index: 'blower3speedRPM' + descr: Blower 3 + - + oid: BLADE-MIB:blower4speedRPM + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.23.{{ $index }}' + index: 'blower4speedRPM' + descr: Blower 4 + state: + data: + - + oid: BLADE-MIB::blower1State + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.10.{{ $index }}' + index: 'blower1State' + descr: Blower 1 + state_name: ibm-amm_BlowerState + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 0, graph: 1, descr: 'good' } + - { value: 2, generic: 1, graph: 1, descr: 'warning' } + - { value: 3, generic: 2, graph: 1, descr: 'bad' } + - + oid: BLADE-MIB::blower2State + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.11.{{ $index }}' + index: 'blower2State' + descr: Blower 2 + state_name: ibm-amm_BlowerState + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 0, graph: 1, descr: 'good' } + - { value: 2, generic: 1, graph: 1, descr: 'warning' } + - { value: 3, generic: 2, graph: 1, descr: 'bad' } + - + oid: BLADE-MIB::blower3State + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.12.{{ $index }}' + index: 'blower3State' + descr: Blower 3 + state_name: ibm-amm_BlowerState + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 0, graph: 1, descr: 'good' } + - { value: 2, generic: 1, graph: 1, descr: 'warning' } + - { value: 3, generic: 2, graph: 1, descr: 'bad' } + - + oid: BLADE-MIB::blower4State + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.13.{{ $index }}' + index: 'blower4State' + descr: Blower 4 + state_name: ibm-amm_BlowerState + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 0, graph: 1, descr: 'good' } + - { value: 2, generic: 1, graph: 1, descr: 'warning' } + - { value: 3, generic: 2, graph: 1, descr: 'bad' } + - + oid: BLADE-MIB::blower1ControllerState + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.30.{{ $index }}' + index: 'blower1ControllerState' + descr: Blower Controller 1 + state_name: ibm-amm_BlowerControllerState + states: + - { value: 0, generic: 0, graph: 1, descr: 'operational' } + - { value: 1, generic: 1, graph: 1, descr: 'flashing' } + - { value: 2, generic: -1, graph: 1, descr: 'notPresent' } + - { value: 3, generic: 2, graph: 1, descr: 'communicationError' } + - { value: 255, generic: 3, graph: 0, descr: 'unknown' } + - + oid: BLADE-MIB::blower2ControllerState + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.31.{{ $index }}' + index: 'blower2ControllerState' + descr: Blower Controller 2 + state_name: ibm-amm_BlowerControllerState + states: + - { value: 0, generic: 0, graph: 1, descr: 'operational' } + - { value: 1, generic: 1, graph: 1, descr: 'flashing' } + - { value: 2, generic: -1, graph: 1, descr: 'notPresent' } + - { value: 3, generic: 2, graph: 1, descr: 'communicationError' } + - { value: 255, generic: 3, graph: 0, descr: 'unknown' } + - + oid: BLADE-MIB::blower3ControllerState + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.32.{{ $index }}' + index: 'blower3ControllerState' + descr: Blower Controller 3 + state_name: ibm-amm_BlowerControllerState + states: + - { value: 0, generic: 0, graph: 1, descr: 'operational' } + - { value: 1, generic: 1, graph: 1, descr: 'flashing' } + - { value: 2, generic: -1, graph: 1, descr: 'notPresent' } + - { value: 3, generic: 2, graph: 1, descr: 'communicationError' } + - { value: 255, generic: 3, graph: 0, descr: 'unknown' } + - + oid: BLADE-MIB::blower4ControllerState + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.3.33.{{ $index }}' + index: 'blower4ControllerState' + descr: Blower Controller 4 + state_name: ibm-amm_BlowerControllerState + states: + - { value: 0, generic: 0, graph: 1, descr: 'operational' } + - { value: 1, generic: 1, graph: 1, descr: 'flashing' } + - { value: 2, generic: -1, graph: 1, descr: 'notPresent' } + - { value: 3, generic: 2, graph: 1, descr: 'communicationError' } + - { value: 255, generic: 3, graph: 0, descr: 'unknown' } + - + oid: BLADE-MIB::powerModuleState + num_oid: '.1.3.6.1.4.1.2.3.51.2.2.4.1.1.3.{{ $index }}' + index: 'powerModuleState.{{ $index }}' + descr: 'Power Module {{ $index }}' + state_name: ibm-amm_PowerModuleState + states: + - { value: 0, generic: 3, graph: 0, descr: 'unknown' } + - { value: 1, generic: 0, graph: 1, descr: 'good' } + - { value: 2, generic: 1, graph: 1, descr: 'warning' } + - { value: 3, generic: -1, graph: 1, descr: 'notAvailable' } + - { value: 4, generic: 2, graph: 1, descr: 'critical' } diff --git a/priv/profiles/os_discovery/ibm-i.yaml b/priv/profiles/os_discovery/ibm-i.yaml new file mode 100644 index 00000000..74f4a047 --- /dev/null +++ b/priv/profiles/os_discovery/ibm-i.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?\w+)$/' diff --git a/priv/profiles/os_discovery/ibm-imm.yaml b/priv/profiles/os_discovery/ibm-imm.yaml new file mode 100644 index 00000000..d8453008 --- /dev/null +++ b/priv/profiles/os_discovery/ibm-imm.yaml @@ -0,0 +1,46 @@ +modules: + os: + serial: IMM-MIB::machineLevelSerialNumber.0 + hardware: IMM-MIB::machineLevelProductName.0 + version: IMM-MIB::immVpdVersionString.1 + sysName: IMM-MIB::spTxtId.0 + sensors: + percent: + data: + - + oid: IMM-MIB::fanTable + value: IMM-MIB::fanSpeed + num_oid: '.1.3.6.1.4.1.2.3.51.3.1.3.2.1.3.{{ $index }}' + index: 'fanSpeed.{{ $index }}' + descr: '{{ $IMM-MIB::fanDescr }}' + temperature: + data: + - + oid: IMM-MIB::tempTable + value: IMM-MIB::tempReading + num_oid: '.1.3.6.1.4.1.2.3.51.3.1.1.2.1.3.{{ $index }}' + index: 'tempReading.{{ $index }}' + descr: '{{ $IMM-MIB::tempDescr }}' + voltage: + data: + - + oid: IMM-MIB::voltTable + value: IMM-MIB::voltReading + num_oid: '.1.3.6.1.4.1.2.3.51.3.1.2.2.1.3.{{ $index }}' + index: 'voltReading.{{ $index }}' + descr: '{{ $IMM-MIB::voltDescr }}' + divisor: 1000 + state: + data: + - + oid: IMM-MIB::systemHealthStat + num_oid: '.1.3.6.1.4.1.2.3.51.3.1.4.1.{{ $index }}' + descr: 'System Health Status' + index: 'systemHealthStat.1' + state_name: systemHealth + states: + - { descr: nonRecoverable, graph: 1, value: 0, generic: 2 } + - { descr: Critical, graph: 1, value: 2, generic: 2 } + - { descr: nonCritical, graph: 1, value: 4, generic: 1 } + - { descr: Ok, graph: 1, value: 255, generic: 0 } + diff --git a/priv/profiles/os_discovery/ibmc.yaml b/priv/profiles/os_discovery/ibmc.yaml new file mode 100644 index 00000000..98d09f3d --- /dev/null +++ b/priv/profiles/os_discovery/ibmc.yaml @@ -0,0 +1,126 @@ +mib: HUAWEI-SERVER-IBMC-MIB +modules: + os: + hardware: HUAWEI-SERVER-IBMC-MIB::deviceName.0 + serial: HUAWEI-SERVER-IBMC-MIB::deviceSerialNo.0 + version: .1.3.6.1.4.1.2011.2.235.1.1.11.50.1.4.11.65.99.116.105.118.101.32.105.66.77.67 # HUAWEI-SERVER-IBMC-MIB::firmwareVersion."Active iBMC" + features: .1.3.6.1.4.1.2011.2.235.1.1.11.50.1.4.4.66.73.79.83 # HUAWEI-SERVER-IBMC-MIB::firmwareVersion."BIOS" + features_template: 'BIOS {{ .1.3.6.1.4.1.2011.2.235.1.1.11.50.1.4.4.66.73.79.83 }}' + processors: + data: + - + oid: systemCpuUsage + value: systemCpuUsage + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.1.23.{{ $index }}' + descr: 'Main(s) CPU average usage' + sensors: + fanspeed: + data: + - + oid: fanDescriptionEntry + value: fanSpeed + skip_value_lt: 0 + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.8.50.1.2.{{ $index }}' + descr: 'fanDevicename' + index: 'fanSpeed.{{ $index }}' + power: + data: + - + oid: powerSupplyDescriptionEntry + value: powerSupplyInputPower + skip_value_lt: 0 + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.6.50.1.8.{{ $index }}' + descr: 'Power Supply {{ $index }} Input' + index: 'powerSupplyIndex.{{ $index }}' + temperature: + data: + - + oid: TemperatureDescriptionEntry + value: temperatureReading + divisor: 10 + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.26.50.1.3.{{ $index }}' + descr: 'temperatureObject' + index: 'temperatureIndex.{{ $index }}' + state: + data: + - + oid: cpuDescriptionEntry + value: cpuStatus + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.15.50.1.6.{{ $index }}' + descr: 'Processor {{ $cpuFamily }} @{{ $cpuClockRate }} #{{ $cpuIndex }}' + index: 'cpuStatus.{{ $index }}' + state_name: cpuStatus + group: 'CPU' + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: minor, graph: 0, value: 2, generic: 1 } + - { descr: major, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: absent, graph: 0, value: 5, generic: 3 } + - { descr: unknown, graph: 0, value: 6, generic: 3 } + - + oid: hardDiskDescriptionEntry + value: hardDiskStatus + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.18.50.1.3.{{ $index }}' + descr: 'Drive Bay {{ $index }} {{ $hardDiskDevicename }}' + index: 'hardDiskStatus.{{ $index }}' + state_name: hardDiskStatus + group: 'Drive Bays' + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: minor, graph: 0, value: 2, generic: 1 } + - { descr: major, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: absent, graph: 0, value: 5, generic: 3 } + - { descr: unknown, graph: 0, value: 6, generic: 3 } + - + oid: fanDescriptionEntry + value: fanStatus + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.8.50.1.4.{{ $index }}' + descr: 'fanDevicename' + index: 'fanSpeed.{{ $index }}' + state_name: fanStatus + group: 'Fans' + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: minor, graph: 0, value: 2, generic: 1 } + - { descr: major, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: absent, graph: 0, value: 5, generic: 3 } + - { descr: unknown, graph: 0, value: 6, generic: 3 } + - + oid: memoryEntireStatus + value: memoryEntireStatus + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.16.1.{{ $index }}' + descr: 'Memory Status' + index: 'memoryEntireStatus.{{ $index }}' + state_name: memoryEntireStatus + group: 'RAM' + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: minor, graph: 0, value: 2, generic: 1 } + - { descr: major, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: absent, graph: 0, value: 5, generic: 3 } + - { descr: unknown, graph: 0, value: 6, generic: 3 } + - + oid: memoryDescriptionEntry + value: memoryStatus + num_oid: '.1.3.6.1.4.1.2011.2.235.1.1.16.50.1.6.{{ $index }}' + descr: '{{ $memoryLogic }} {{ $memoryManufacturer }} {{ $memorySize }} {{ $memoryClockRate }}' + index: 'memoryStatus.{{ $index }}' + state_name: memoryStatus + group: 'RAM' + states: + - { descr: ok, graph: 0, value: 1, generic: 0 } + - { descr: minor, graph: 0, value: 2, generic: 1 } + - { descr: major, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: absent, graph: 0, value: 5, generic: 3 } + - { descr: unknown, graph: 0, value: 6, generic: 3 } + skip_values: + - + oid: memoryStatus + op: '=' + value: 5 + diff --git a/priv/profiles/os_discovery/ibmnos.yaml b/priv/profiles/os_discovery/ibmnos.yaml new file mode 100644 index 00000000..b39a6c71 --- /dev/null +++ b/priv/profiles/os_discovery/ibmnos.yaml @@ -0,0 +1,11 @@ +modules: + os: + sysDescr_regex: '/(IBM Networking Operating System|Flex System Fabric|IBM Networking OS) (?.*?)\s?( for IBM BladeCenter)?(\([^)]+\))?(, Stack)?$/' + version: + - IBM-GbTOR-G8264CS-MIB::agSoftwareVersion.0 + - IBM-GbTOR-G8264T-MIB::agSoftwareVersion.0 + - ENTITY-MIB::entPhysicalSoftwareRev.1 + serial: + - IBM-GbTOR-G8264-MIB::hardwareSerialNumber.0 + - IBM-GbTOR-G8264T-MIB::hardwareSerialNumber.0 + - ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/ibmtl.yaml b/priv/profiles/os_discovery/ibmtl.yaml new file mode 100644 index 00000000..19dd851d --- /dev/null +++ b/priv/profiles/os_discovery/ibmtl.yaml @@ -0,0 +1,35 @@ +mib: SNIA-SML-MIB +modules: + os: + hardware: .1.3.6.1.4.1.14851.3.1.4.2.0 + serial: .1.3.6.1.4.1.14851.3.1.3.2.0 + version: .1.3.6.1.4.1.14851.3.1.3.4.0 + sensors: + state: + data: + - + oid: SNIA-SML-MIB::scsiProtocolControllerTable + value: SNIA-SML-MIB::scsiProtocolController-OperationalStatus + num_oid: '.1.3.6.1.4.1.14851.3.1.12.2.1.4.{{ $index }}' + descr: SNIA-SML-MIB::scsiProtocolController-Description + states: + - { value: 0, generic: 3, descr: unknown, graph: 1 } + - { value: 1, generic: 3, descr: other, graph: 1 } + - { value: 2, generic: 0, descr: ok, graph: 1 } + - { value: 3, generic: 1, descr: degraded, graph: 1 } + - { value: 4, generic: 1, descr: stressed, graph: 1 } + - { value: 5, generic: 1, descr: predictiveFailure, graph: 1 } + - { value: 6, generic: 2, descr: error, graph: 1 } + - { value: 7, generic: 2, descr: non-RecoverableError, graph: 1 } + - { value: 8, generic: 1, descr: starting, graph: 1 } + - { value: 9, generic: 1, descr: stopping, graph: 1 } + - { value: 10, generic: 1, descr: stopped, graph: 1 } + - { value: 11, generic: 1, descr: inService, graph: 1 } + - { value: 12, generic: 1, descr: noContact, graph: 1 } + - { value: 13, generic: 1, descr: lostCommunication, graph: 1 } + - { value: 14, generic: 1, descr: aborted, graph: 1 } + - { value: 15, generic: 1, descr: dormant, graph: 1 } + - { value: 16, generic: 1, descr: supportingEntityInError, graph: 1 } + - { value: 17, generic: 0, descr: completed, graph: 1 } + - { value: 18, generic: 1, descr: powerMode, graph: 1 } + - { value: 19, generic: 1, descr: dMTFReserved, graph: 1 } diff --git a/priv/profiles/os_discovery/iboot.yaml b/priv/profiles/os_discovery/iboot.yaml new file mode 100644 index 00000000..2e50ceaf --- /dev/null +++ b/priv/profiles/os_discovery/iboot.yaml @@ -0,0 +1,70 @@ +mib: IBOOTPDU-MIB +modules: + os: + hardware: IBOOTPDU-MIB::deviceModelName.0 + version: IBOOTPDU-MIB::firmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - outletTable + temperature: + options: + skip_values: [999, 99999] + data: + - + oid: temperature1 + value: temperature1 + num_oid: '.1.3.6.1.4.1.1418.6.6.5.{{ $index }}' + index: 'temp1.{{ $index }}' + descr: 'Temperature 1' + - + oid: temperature2 + value: temperature2 + num_oid: '.1.3.6.1.4.1.1418.6.6.6.{{ $index }}' + index: 'temp2.{{ $index }}' + descr: 'Temperature 2' + current: + data: + - + oid: currentLC1 + value: currentLC1 + num_oid: '.1.3.6.1.4.1.1418.6.6.2.{{ $index }}' + index: 'currentLC1.{{ $index }}' + descr: 'Current LC1' + divisor: 100 + - + oid: currentLC2 + value: currentLC2 + num_oid: '.1.3.6.1.4.1.1418.6.6.4.{{ $index }}' + index: 'currentLC2.{{ $index }}' + descr: 'Current LC2' + divisor: 100 + voltage: + data: + - + oid: voltageLC1 + value: voltageLC1 + num_oid: '.1.3.6.1.4.1.1418.6.6.1.{{ $index }}' + index: 'voltageLC1.{{ $index }}' + descr: 'Voltage LC1' + divisor: 100 + - + oid: voltageLC2 + value: voltageLC2 + num_oid: '.1.3.6.1.4.1.1418.6.6.3.{{ $index }}' + index: 'voltageLC2.{{ $index }}' + descr: 'Voltage LC2' + divisor: 100 + state: + data: + - + oid: outletTable + value: outletActualStatus + num_oid: '.1.3.6.1.4.1.1418.6.5.1.7.{{ $index }}' + descr: '{{ $outletName }} (ID {{ $index }})' + group: 'Actual Status' + states: + - { value: 1, generic: 0, descr: on, graph: 0 } + - { value: 0, generic: 3, descr: off, graph: 0 } diff --git a/priv/profiles/os_discovery/ibos.yaml b/priv/profiles/os_discovery/ibos.yaml new file mode 100644 index 00000000..711460a2 --- /dev/null +++ b/priv/profiles/os_discovery/ibos.yaml @@ -0,0 +1,58 @@ +mib: WAYSTREAM-MIB +modules: + os: + sysDescr_regex: '/(?.*), iBOS Version ibos-.*?-(?.*)\s+Copyright/' + sensors: + temperature: + data: + - + descr: Temperature {{ $index }} + oid: wsTempEntry + value: wsTempMeasured + num_oid: '.1.3.6.1.4.1.9303.4.1.2.1.1.2.{{ $index }}' + low_warn_limit: wsTempThresholdLow + warn_limit: wsTempThresholdHigh + divisor: 100 + + voltage: + data: + - + descr: Voltage {{ $index }} + oid: wsVoltEntry + value: wsVoltMeasured + num_oid: '.1.3.6.1.4.1.9303.4.1.2.2.1.3.{{ $index }}' + low_warn_limit: wsVoltThresholdLow + warn_limit: wsVoltThresholdHigh + divisor: 1000 + skip_values: 0 + + fanspeed: + data: + - + descr: Fan speed {{ $index }} + oid: wsFanEntry + value: wsFanRPM + num_oid: '.1.3.6.1.4.1.9303.4.1.2.3.1.2.{{ $index }}' + + dbm: + options: + divisor: 1000 + skip_values: 0 + data: + - + oid: wsSFPEntry + descr: Receive power {{ $index }} + value: wsSFPRXdBmPower + index: 'wsSFPRXdBmPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.9303.4.1.4.1.23.{{ $index }}' + low_warn_limit: wsSFPRXInputPowNormalLowdBm + warn_limit: wsSFPRXInputPowNormalHighdBm + + - + oid: wsSFPEntry + descr: Transmit power {{ $index }} + value: wsSFPTXdBmPower + index: 'wsSFPTXdBmPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.9303.4.1.4.1.22.{{ $index }}' + low_warn_limit: wsSFPTXOutputPowNormalLowdBm + warn_limit: wsSFPTXOutputPowNormalHighdBm diff --git a/priv/profiles/os_discovery/icotera.yaml b/priv/profiles/os_discovery/icotera.yaml new file mode 100644 index 00000000..63c8a70b --- /dev/null +++ b/priv/profiles/os_discovery/icotera.yaml @@ -0,0 +1,40 @@ +mib: ICOTERA-I6400-SERIES +modules: + sensors: + voltage: + data: + - + oid: transceiverDdmVoltage + num_oid: '.1.3.6.1.4.1.29865.11.3.1.3.4.{{ $index }}' + descr: "WAN port transceiver" + divisor: 10000 + current: + data: + - + oid: transceiverDdmTxBiasCurrent + num_oid: '.1.3.6.1.4.1.29865.11.3.1.3.5.{{ $index }}' + descr: "WAN port transceiver" + divisor: 1000 + dbm: + data: + - + oid: transceiverDdmRxPower + num_oid: '.1.3.6.1.4.1.29865.11.3.1.3.3.{{ $index }}' + index: 'transceiverDdmRxPower.{{ $index }}' + descr: "WAN port Rx Power" + user_func: uw_to_dbm + divisor: 10 + - + oid: transceiverDdmTxPower + num_oid: '.1.3.6.1.4.1.29865.11.3.1.3.2.{{ $index }}' + index: 'transceiverDdmTxPower.{{ $index }}' + descr: "WAN port Tx Power" + user_func: uw_to_dbm + divisor: 10 + temperature: + data: + - + oid: transceiverDdmTemperature + num_oid: '.1.3.6.1.4.1.29865.11.3.1.3.1.{{ $index }}' + descr: "WAN port transceiver" + divisor: 256 diff --git a/priv/profiles/os_discovery/icr-os.yaml b/priv/profiles/os_discovery/icr-os.yaml new file mode 100644 index 00000000..c0eee47d --- /dev/null +++ b/priv/profiles/os_discovery/icr-os.yaml @@ -0,0 +1,70 @@ +modules: + os: + serial: CONEL-INFO-MIB::infoSN.0 + version: CONEL-INFO-MIB::infoFirmware.0 + hardware: CONEL-INFO-MIB::infoProduct.0 + + mempools: + data: + - + total: CONEL-STATUS-MIB::statusRAMTotal + used: CONEL-STATUS-MIB::statusRAMUsed + processors: + data: + - + oid: CONEL-STATUS-MIB::statusCPUUsage + num_oid: '.1.3.6.1.4.1.30140.3.6.{{ $index }}' + sensors: + temperature: + data: + - + oid: CONEL-STATUS-MIB::statusTemperature + num_oid: '.1.3.6.1.4.1.30140.3.3.{{ $index }}' + descr: Temperature + index: 'CONEL-STATUS-MIB::status.Temperature.{{ $ index }}' + voltage: + data: + - + oid: CONEL-STATUS-MIB::statusVoltage + num_oid: '.1.3.6.1.4.1.30140.3.4.{{ $index }}' + descr: Voltage + divisor: 1000 + index: 'CONEL-STATUS-MIB::statusVoltage.{{ $ index }}' + state: + data: + - + oid: CONEL-STATUS-MIB::statusRTCBattery + num_oid: '.1.3.6.1.4.1.30140.3.5.{{ $index }}' + descr: RTC battery status + states: + - { descr: Unknown, graph: 0, value: 0, generic: 3 } + - { descr: OK, graph: 2, value: 1, generic: 0 } + - { descr: Empty, graph: 1, value: 2, generic: 1 } + - + oid: CONEL-IO-MIB::ioBin0 + num_oid: '.1.3.6.1.4.1.30140.2.3.1.{{ $index }}' + descr: IO BIN0 status + states: + - { descr: Low, graph: 0, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 1 } + - + oid: CONEL-IO-MIB::ioBin1 + num_oid: '.1.3.6.1.4.1.30140.2.3.3.{{ $index }}' + descr: IO BIN1 status + states: + - { descr: Low, graph: 0, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 1 } + - + oid: CONEL-IO-MIB::ioOut0 + num_oid: '.1.3.6.1.4.1.30140.2.3.2.{{ $index }}' + descr: IO OUT0 status + states: + - { descr: Low, graph: 0, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 1 } + - + oid: CONEL-IO-MIB::ioOut1 + num_oid: '.1.3.6.1.4.1.30140.2.3.4.{{ $index }}' + descr: IO OUT1 status + states: + - { descr: Low, graph: 0, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 1 } diff --git a/priv/profiles/os_discovery/ict-mps.yaml b/priv/profiles/os_discovery/ict-mps.yaml new file mode 100644 index 00000000..8be44c48 --- /dev/null +++ b/priv/profiles/os_discovery/ict-mps.yaml @@ -0,0 +1,80 @@ +mib: ICT-POWERSYSTEM-MIB +modules: + os: + hardware: ICT-POWERSYSTEM-MIB::deviceModel.0 + version: ICT-POWERSYSTEM-MIB::deviceFirmware.0 + sensors: + current: + data: + - + oid: outputCurrent + num_oid: '.1.3.6.1.4.1.39145.13.8.{{ $index }}' + descr: 'Output Current' + index: 'outputCurrent.{{ $index }}' + voltage: + data: + - + oid: inputVoltage + num_oid: '.1.3.6.1.4.1.39145.13.6.{{ $index }}' + descr: 'Input Voltage' + index: 'inputVoltage.{{ $index }}' + - + oid: outputVoltage + num_oid: '.1.3.6.1.4.1.39145.13.7.{{ $index }}' + descr: 'Output Voltage' + index: 'outputVoltage.{{ $index }}' + - + oid: moduleTable + value: moduleVoltage + num_oid: '.1.3.6.1.4.1.39145.13.10.1.4.{{ $index }}' + descr: 'Module #{{ $index }} Voltage (VDC)' + index: 'moduleVoltage.{{ $index }}' + skip_values: + - + oid: moduleVoltage + op: = + value: '.' + state: + data: + - + oid: moduleStatus + value: moduleStatus + num_oid: '.1.3.6.1.4.1.39145.13.10.1.2.{{ $index }}' + descr: 'Module #{{ $index }} Status' + index: 'moduleStatus.{{ $index }}' + states: + - { graph: 0, value: 1, generic: 1, descr: notInstalled } + - { graph: 0, value: 2, generic: 0, descr: ok } + - { graph: 0, value: 3, generic: 2, descr: alarm } + - + oid: moduleType + value: moduleType + num_oid: '.1.3.6.1.4.1.39145.13.10.1.3.{{ $index }}' + descr: 'Module #{{ $index }} Type' + index: 'moduleType.{{ $index }}' + states: + - { graph: 0, value: 1, generic: 1, descr: notInstalled } + - { graph: 0, value: 2, generic: 0, descr: power } + - { graph: 0, value: 3, generic: 0, descr: battery } + - { graph: 0, value: 4, generic: 0, descr: distribution } + temperature: + data: + - + oid: probeTemperature.0 + num_oid: '.1.3.6.1.4.1.39145.13.12.{{ $index }}' + descr: 'Battery Probe' + value: probeTemperature + charge: + data: + - + oid: batterySoc.0 + num_oid: '.1.3.6.1.4.1.39145.13.13.{{ $index }}' + descr: 'Battery Charge' + value: batterySoc + runtime: + data: + - + oid: batteryRunTime.0 + num_oid: '.1.3.6.1.4.1.39145.13.15.{{ $index }}' + descr: 'Battery Run-time' + value: batteryRunTime diff --git a/priv/profiles/os_discovery/ict-pdu.yaml b/priv/profiles/os_discovery/ict-pdu.yaml new file mode 100644 index 00000000..0f47ea83 --- /dev/null +++ b/priv/profiles/os_discovery/ict-pdu.yaml @@ -0,0 +1,5 @@ +mib: ICT-PDU-MIB +modules: + os: + hardware: ICT-PDU-MIB::deviceModel.0 + version: ICT-PDU-MIB::deviceFirmware.0 diff --git a/priv/profiles/os_discovery/ict-psu.yaml b/priv/profiles/os_discovery/ict-psu.yaml new file mode 100644 index 00000000..0449707b --- /dev/null +++ b/priv/profiles/os_discovery/ict-psu.yaml @@ -0,0 +1,5 @@ +mib: ICT-PLATINUM-MIB +modules: + os: + hardware: ICT-PLATINUM-MIB::deviceModel.0 + version: ICT-PLATINUM-MIB::deviceFirmware.0 diff --git a/priv/profiles/os_discovery/ict-swi.yaml b/priv/profiles/os_discovery/ict-swi.yaml new file mode 100644 index 00000000..9640b155 --- /dev/null +++ b/priv/profiles/os_discovery/ict-swi.yaml @@ -0,0 +1,54 @@ +mib: ICT-INVERTER-MIB +modules: + os: + hardware: ICT-INVERTER-MIB::deviceHardware.0 + version: ICT-INVERTER-MIB::deviceFirmware.0 + sensors: + voltage: + data: + - + oid: batteryVoltage + num_oid: '.1.3.6.1.4.1.39145.12.6.{{ $index }}' + descr: 'Battery Voltage (VDC)' + index: 'batteryVoltage.{{ $index }}' + - + oid: inverterVoltage + num_oid: '.1.3.6.1.4.1.39145.12.7.{{ $index }}' + descr: 'Inverter Voltage (VAC)' + index: 'inverterVoltage.{{ $index }}' + load: + data: + - + oid: inverterPower + num_oid: '.1.3.6.1.4.1.39145.12.8.{{ $index }}' + descr: 'Inverter Load' + index: 'inverterPower.{{ $index }}' + state: + data: + - + oid: inverterStatus + value: inverterStatus + num_oid: '.1.3.6.1.4.1.39145.12.9.{{ $index }}' + descr: 'Inverter Status' + index: 'inverterStatus.{{ $index }}' + states: + - { graph: 0, value: 1, generic: 0, descr: enabled } + - { graph: 0, value: 2, generic: 1, descr: disabled } + - + oid: inverterControl + value: inverterControl + num_oid: '.1.3.6.1.4.1.39145.12.10.{{ $index }}' + descr: 'Inverter Control' + index: 'inverterControl.{{ $index }}' + states: + - { graph: 0, value: 1, generic: 0, descr: enabled } + - { graph: 0, value: 2, generic: 1, descr: disabled } + - + oid: transferRelayStatus + value: transferRelayStatus + num_oid: '.1.3.6.1.4.1.39145.12.11.{{ $index }}' + descr: 'Transfer Relay Status' + index: 'transferRelayStatus.{{ $index }}' + states: + - { graph: 0, value: 1, generic: 0, descr: inverter } + - { graph: 0, value: 2, generic: 1, descr: grid } diff --git a/priv/profiles/os_discovery/ies.yaml b/priv/profiles/os_discovery/ies.yaml new file mode 100644 index 00000000..fb8b7b26 --- /dev/null +++ b/priv/profiles/os_discovery/ies.yaml @@ -0,0 +1,4 @@ +modules: + os: + version: ZYXEL-AS-MIB::accessSwitchFWVersion.0 + sysDescr_regex: '/IES-1000.(?.*) version V(?\S+)/' diff --git a/priv/profiles/os_discovery/ies5000.yaml b/priv/profiles/os_discovery/ies5000.yaml new file mode 100644 index 00000000..fd781c3d --- /dev/null +++ b/priv/profiles/os_discovery/ies5000.yaml @@ -0,0 +1,110 @@ +mib: ZYXEL-IES5000-MIB +modules: + mempools: + data: + - + oid: ZYXEL-IES5000-MIB::memoryUsageTable + percent_used: ZYXEL-IES5000-MIB::memoryCurValue + descr: ZYXEL-IES5000-MIB::memoryDescr + warn_percent: ZYXEL-IES5000-MIB::memoryHighThresh + os: + serial: .1.3.6.1.4.1.890.1.5.13.5.6.2.1.3.0 + version: + - .1.3.6.1.4.1.890.1.5.13.5.6.3.1.4.0.1 + - .1.3.6.1.4.1.890.1.5.13.5.6.3.1.4.0.6 + + processors: + data: + - + oid: cpuUtilizationTable + value: cpuCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.4.1.2.{{ $index }}' + descr: '{{ $index }} {{ $cpuDescr }}' + #high_limit: cpuHighThresh + sensors: + fanspeed: + data: + - + oid: fanRpmTable + value: fanRpmCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.1.1.2.{{ $index }}' + descr: '{{ $fanRpmDescr }} Speed' + low_limit: fanRpmLowThresh + high_limit: fanRpmHighThresh + voltage: + data: + - + oid: voltageTable + value: voltageCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.2.1.2.{{ $index }}' + descr: '{{ $voltageDescr }} {{ $voltageNominalValue }}mA' + divisor: 1000 + low_limit: voltageLowThresh + high_limit: voltageHighThresh + temperature: + data: + - + oid: temperatureTable + value: temperatureCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.3.3.1.2.{{ $index }}' + descr: '{{ $temperatureDescr }}' + low_limit: temperatureLowThresh + high_limit: temperatureHighThresh + state: + data: + - + oid: chassisTable + value: chassisStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.2.1.5.{{ $index }}' + descr: 'Chassis {{ $chassisNumber }} Status' + state_name: chassisStatus + states: + - { descr: empty, graph: 0, value: 1, generic: 3 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - { descr: down, graph: 0, value: 3, generic: 2 } + - { descr: testing, graph: 0, value: 4, generic: 1 } + - + oid: slotTable + value: slotModuleStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.6.3.1.7.{{ $index }}' + descr: '{{ $index }} {{ $slotModuleDescr }} {{ $slotModuleFWVersion }} Status' + state_name: slotModuleStatus + skip_values: 1 + states: + - { descr: empty, graph: 0, value: 1, generic: 3 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - { descr: down, graph: 0, value: 3, generic: 2 } + - { descr: testing, graph: 0, value: 4, generic: 1 } + - { descr: standby, graph: 0, value: 5, generic: 3 } + - + oid: systemStatus + value: systemStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.1.1.{{ $index }}' + descr: 'System Status' + state_name: systemStatus + states: + - { value: 1, generic: 0, graph: 0, descr: moduleNoDefect } + - { value: 2, generic: 2, graph: 0, descr: moduleOverHeat } + - { value: 4, generic: 2, graph: 0, descr: moduleFanRpmLow } + - { value: 8, generic: 2, graph: 0, descr: moduleVoltageLow } + - { value: 16, generic: 2, graph: 0, descr: moduleThermalSensorFailure } + - { value: 32, generic: 2, graph: 0, descr: modulePullOut } + - { value: 64, generic: 2, graph: 0, descr: powerDC48VAFailure } + - { value: 128, generic: 2, graph: 0, descr: powerDC48VBFailure } + - { value: 256, generic: 2, graph: 0, descr: extAlarmInputTrigger } + - { value: 512, generic: 2, graph: 0, descr: moduleDown } + - { value: 1024, generic: 2, graph: 0, descr: mscSwitchOverOK } + - { value: 2048, generic: 2, graph: 0, descr: networkTopologyChange } + - { value: 4096, generic: 2, graph: 0, descr: macSpoof } + - { value: 8192, generic: 2, graph: 0, descr: cpuHigh } + - { value: 16384, generic: 2, graph: 0, descr: memoryUsageHigh } +# - { value: 32768, generic: 2, graph: 0, descr: packetBufferUsageHigh } # state value larger than smallint 32767 + - + oid: ledAlarmStatus + value: ledAlarmStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.5.11.1.2.1.{{ $index }}' + descr: 'Alarm LED Status' + state_name: alarmLedStatus + states: + - { value: 1, generic: 2, graph: 0, descr: on } + - { value: 2, generic: 0, graph: 0, descr: off } diff --git a/priv/profiles/os_discovery/ies52xxM.yaml b/priv/profiles/os_discovery/ies52xxM.yaml new file mode 100644 index 00000000..73b4daec --- /dev/null +++ b/priv/profiles/os_discovery/ies52xxM.yaml @@ -0,0 +1,116 @@ +mib: IES5206-MIB +modules: + mempools: + data: + - + oid: IES5206-MIB::memStatsTable + percent_used: IES5206-MIB::memStatsCurrent + descr: 'Memory {{ $index }}' + type: ies52xxM-mem + warn_percent: IES5206-MIB::memStatsHighThreshold + os: + hardware: IES5206-MIB::sysProductDescr.0 + serial: IES5206-MIB::sysSerialNumber.0 + version: IES5206-MIB::sysBootupFwVersion.0 + processors: + data: + - + oid: cpuStatsTable + value: cpuStatsCurrent + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.5.9.1.3.{{ $index }}' + descr: 'Processor {{ $index }}' + warn_percent: cpuStatsHighThreshold + skip_values: + - + oid: cpuStatsIndex + op: '=' + value: 0 + sensors: + additional_oids: + data: + - + oid: + - fanConfLowThreshold + - fanConfHighThreshold + - temperatureConfLowThreshold + - temperatureConfHighThreshold + - voltageConfLowThreshold + - voltageConfHighThreshold + state: + data: + - + oid: slotModuleTable + value: slotModuleStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.8.1.1.5.{{ $index }}' + descr: 'Slot {{ $index }} {{ $slotModuleDescr }}' + state_name: moduleStatus + skip_values: 0 + states: + - { descr: empty, graph: 0, value: 0, generic: 3 } + - { descr: inactive, graph: 0, value: 1, generic: 2 } + - { descr: init, graph: 0, value: 2, generic: 1 } + - { descr: active, graph: 0, value: 3, generic: 0 } + - { descr: standby, graph: 0, value: 4, generic: 3 } + - { descr: disable, graph: 0, value: 5, generic: 2 } + - + oid: slotModuleTable + value: slotModuleAlarmStatus + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.8.1.1.6.{{ $index }}' + descr: 'Slot {{ $index }} {{ $slotModuleDescr }}' + state_name: moduleAlarm + group: Alarm + states: + - { descr: hasAlarm, graph: 0, value: 1, generic: 2 } + - { descr: noAlarm, graph: 0, value: 2, generic: 0 } + dbm: + options: + skip_values: 0 + data: + - + oid: geDdmiTable + value: geDdmiTxPowerdBm + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.4.4.1.128.{{ $index }}' + descr: '{{ $geDdmiVendorName }} {{ $geDdmiVendorPn }} Tx' + entPhysicalIndex: '{{ $index }}' + divisor: 10000 + index: 'tx-dbm.{{ $index }}' + low_limit: geDdmiTxPowerLowAlarmdBm + high_limit: geDdmiTxPowerHighAlarmdBm + - + oid: geDdmiTable + value: geDdmiRxPowerdBm + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.4.4.1.21.{{ $index }}' + descr: '{{ $geDdmiVendorName }} {{ $geDdmiVendorPn }} Rx' + index: 'rx-dbm.{{ $index }}' + divisor: 10000 + entPhysicalIndex: '{{ $index }}' + low_limit: geDdmiRxPowerLowAlarmdBm + high_limit: geDdmiRxPowerHighAlarmdBm + fanspeed: + data: + - + oid: fanStatsTable + value: fanRpmCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.5.4.1.1.{{ $index }}' + descr: fanRpmDescr + low_limit: fanConfLowThreshold + high_limit: fanConfHighThreshold + temperature: + data: + - + oid: temperatureStatsTable + value: temperatureCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.5.5.1.1.{{ $index }}' + descr: 'Slot {{ $index }} {{ $temperatureDescr }}' + low_limit: temperatureConfLowThreshold + high_limit: temperatureConfHighThreshold + voltage: + data: + - + oid: voltageStatsTable + value: voltageCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.13.13.5.6.1.1.{{ $index }}' + descr: 'Slot {{ $index }} {{ $voltageDescr }}' + low_limit: voltageConfLowThreshold + high_limit: voltageConfHighThreshold + divisor: 1000 diff --git a/priv/profiles/os_discovery/illustra.yaml b/priv/profiles/os_discovery/illustra.yaml new file mode 100644 index 00000000..1676e312 --- /dev/null +++ b/priv/profiles/os_discovery/illustra.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/illustra (?\w+) .* Illustra\.(?.*)/' diff --git a/priv/profiles/os_discovery/imcopower-big.yaml b/priv/profiles/os_discovery/imcopower-big.yaml new file mode 100644 index 00000000..dd596378 --- /dev/null +++ b/priv/profiles/os_discovery/imcopower-big.yaml @@ -0,0 +1,469 @@ +mib: IMCO-BIG-MIB +modules: + os: + hardware: IMCO-BIG-MIB::imco3IdentModel.0 + serial: IMCO-BIG-MIB::imPM1SystemIDserNumb.0 + version: IMCO-BIG-MIB::imco3IdentSwVersion.0 + sensors: + temperature: + data: + - + oid: imPm1BatLeg1Temperature + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.7.11.{{ $index }}' + index: imPm1BatLeg1Temperature.{{ $index }} + descr: Battery Temperature + current: + data: + - + oid: imPm1Power1OutputCurrent + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.24.{{ $index }}' + index: 'imPm1Power1OutputCurrent.{{ $index }}' + descr: 'Power 1 Current' + divisor: 10 + - + oid: imPm1Power2OutputCurrent + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.4.24.{{ $index }}' + index: 'imPm1Power2OutputCurrent.{{ $index }}' + descr: 'Power 2 Current' + divisor: 10 + - + oid: imPm1Power3OutputCurrent + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.5.24.{{ $index }}' + index: 'imPm1Power3OutputCurrent.{{ $index }}' + descr: 'Power 3 Current' + divisor: 10 + charge: + data: + - + oid: imPm1BatLeg1ChargeState + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.7.12.{{ $index }}' + index: 'imPm1BatLeg1ChargeState.{{ $index }}' + descr: 'Battery Charge' + + load: + data: + - + oid: imPm1Power1OutputLoad + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.29.{{ $index }}' + index: 'imPm1Power1OutputLoad.{{ $index }}' + descr: 'Power 1 Load (VA)' + - + oid: imPm1Power2OutputLoad + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.4.29.{{ $index }}' + index: 'imPm1Power2OutputLoad.{{ $index }}' + descr: 'Power 2 Load (VA)' + - + oid: imPm1Power3OutputLoad + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.5.29.{{ $index }}' + index: 'imPm1Power3OutputLoad.{{ $index }}' + descr: 'Power 3 Load (VA)' + power: + data: + - + oid: imPm1Power1OutputPowerW + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.27.{{ $index }}' + index: 'imPm1Power1OutputPowerW.{{ $index }}' + descr: 'Output Power 1' + - + oid: imPm1Power2OutputPowerW + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.4.27.{{ $index }}' + index: 'imPm1Power2OutputPowerW.{{ $index }}' + descr: 'Output Power 2' + - + oid: imPm1Power3OutputPowerW + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.5.27.{{ $index }}' + index: 'imPm1Power3OutputPowerW.{{ index }}' + descr: 'Output Power 3' + + runtime: + data: + - + oid: imPm1BatLeg1Autonomytime + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.7.14.{{ $index }}' + index: 'imPm1BatLeg1Autonomytime.{{ $index }}' + descr: 'Runtime' + state: + data: + - + oid: imPM1Power1Running1 + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.32.{{ $index }}' + index: 'imPM1Power1Running1.{{ $index }}' + descr: 'Power Unit 1' + group: Power + states: + - { descr: Ok , graph: 0, value: 0, generic: 0 } + - { descr: Error , graph: 0, value: 1, generic: 2 } + + - + oid: imPM1Power1Running2 + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.33.{{ $index }}' + index: 'imPM1Power1Running2.{{ $index }}' + descr: 'Power Unit 2' + group: Power + states: + - { descr: Ok , graph: 0, value: 0, generic: 0 } + - { descr: Error , graph: 0, value: 1, generic: 2 } + + - + oid: imPM1Power1Running3 + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.34.{{ $index }}' + index: 'imPM1Power1Running3.{{ $index }}' + descr: 'Power Unit 3' + group: Power + states: + - { descr: Ok , graph: 0, value: 0, generic: 0 } + - { descr: Error , graph: 0, value: 1, generic: 2 } + + - + oid: imco3AlarmDescr + num_oid: '.1.3.6.1.4.1.2185.1.3.11.3.2.1.2.{{ $index }}' + descr: 'Alarm' + group: 'Alarms' + index: '{{ $index }}' + states: + - { descr: Communication Lost, graph: 0, value: 1, generic: 2 } + - { descr: Low Battery, graph: 0, value: 2, generic: 1 } + - { descr: Running on Battery, graph: 0, value: 3, generic: 2 } + - { descr: Action Alarm 4, graph: 0, value: 4, generic: 2 } + - { descr: Action Alarm 5, graph: 0, value: 5, generic: 2 } + - { descr: Action Alarm 6, graph: 0, value: 6, generic: 2 } + - { descr: Action Alarm 7, graph: 0, value: 7, generic: 2 } + - { descr: Action Alarm 8, graph: 0, value: 8, generic: 2 } + - { descr: Time for Service, graph: 0, value: 9, generic: 2 } + - { descr: General Surge Arrester Activated, graph: 0, value: 10, generic: 2 } + - { descr: General Door 1 Opened, graph: 0, value: 11, generic: 2 } + - { descr: General Door 2 Opened, graph: 0, value: 12, generic: 2 } + - { descr: General Fan Alarm, graph: 0, value: 13, generic: 2 } + - { descr: General Overtemperature, graph: 0, value: 14, generic: 2 } + - { descr: General Undertemperature, graph: 0, value: 15, generic: 2 } + - { descr: General User Alarm 1, graph: 0, value: 16, generic: 2 } + - { descr: General User Alarm 2, graph: 0, value: 17, generic: 2 } + - { descr: General User Alarm 3, graph: 0, value: 18, generic: 2 } + - { descr: General User Alarm 4, graph: 0, value: 19, generic: 2 } + - { descr: Time for Power Supply 1 Service, graph: 0, value: 20, generic: 2 } + - { descr: Power Supply 1 Input Overvoltage, graph: 0, value: 21, generic: 2 } + - { descr: Power Supply 1 Input Undervoltage, graph: 0, value: 22, generic: 2 } + - { descr: Power Supply 1 Input Overcurrent, graph: 0, value: 23, generic: 2 } + - { descr: Power Supply 1 Input Overload, graph: 0, value: 24, generic: 2 } + - { descr: Power Supply 1 Output Overvoltage, graph: 0, value: 25, generic: 2 } + - { descr: Power Supply 1 Output Undervoltage, graph: 0, value: 26, generic: 2 } + - { descr: Power Supply 1 Output Overcurrent, graph: 0, value: 27, generic: 2 } + - { descr: Power Supply 1 Output Overload, graph: 0, value: 28, generic: 2 } + - { descr: Power Supply 1 Overtemperature, graph: 0, value: 29, generic: 2 } + - { descr: Power Supply 1 Undertemperature, graph: 0, value: 30, generic: 2 } + - { descr: Power Supply 1 Converter 1 Not Running, graph: 0, value: 31, generic: 2 } + - { descr: Power Supply 1 Converter 2 Not Running, graph: 0, value: 32, generic: 2 } + - { descr: Power Supply 1 Converter 3 Not Running, graph: 0, value: 33, generic: 2 } + - { descr: Power Supply 1 Converter 4 Not Running, graph: 0, value: 34, generic: 2 } + - { descr: Power Supply 1 Converter 5 Not Running, graph: 0, value: 35, generic: 2 } + - { descr: Power Supply 1 Converter 6 Not Running, graph: 0, value: 36, generic: 2 } + - { descr: Power Supply 1 Converter 7 Not Running, graph: 0, value: 37, generic: 2 } + - { descr: Power Supply 1 Converter 8 Not Running, graph: 0, value: 38, generic: 2 } + - { descr: Power Supply 1 Input Fuse Off, graph: 0, value: 39, generic: 2 } + - { descr: Power Supply 1 Input Fuse 1 Off, graph: 0, value: 40, generic: 2 } + - { descr: Power Supply 1 Input Fuse 2 Off, graph: 0, value: 41, generic: 2 } + - { descr: Power Supply 1 Input Fuse 3 Off, graph: 0, value: 42, generic: 2 } + - { descr: Power Supply 1 Input Breaker Off, graph: 0, value: 43, generic: 2 } + - { descr: Power Supply 1 Input Breaker 1 Off, graph: 0, value: 44, generic: 2 } + - { descr: Power Supply 1 Input Breaker 2 Off, graph: 0, value: 45, generic: 2 } + - { descr: Power Supply 1 Input Breaker 3 Off, graph: 0, value: 46, generic: 2 } + - { descr: Power Supply 1 Input Surge Arrester, graph: 0, value: 47, generic: 2 } + - { descr: Power Supply 1 Output Fuse Off, graph: 0, value: 48, generic: 2 } + - { descr: Power Supply 1 Output Fuse 1 Off, graph: 0, value: 49, generic: 2 } + - { descr: Power Supply 1 Output Fuse 2 Off, graph: 0, value: 50, generic: 2 } + - { descr: Power Supply 1 Output Breaker Off, graph: 0, value: 51, generic: 2 } + - { descr: Power Supply 1 Output Breaker 1 Off, graph: 0, value: 52, generic: 2 } + - { descr: Power Supply 1 Output Breaker 2 Off, graph: 0, value: 53, generic: 2 } + - { descr: Power Supply 1 Fan Malfunction, graph: 0, value: 54, generic: 2 } + - { descr: Power Supply 1 Output Out of Phase, graph: 0, value: 55, generic: 2 } + - { descr: Power Supply 1 User Alarm 1, graph: 0, value: 56, generic: 2 } + - { descr: Power Supply 1 User Alarm 2, graph: 0, value: 57, generic: 2 } + - { descr: Time for Power Supply 2 Service, graph: 0, value: 58, generic: 2 } + - { descr: Power Supply 2 Input Overvoltage, graph: 0, value: 59, generic: 2 } + - { descr: Power Supply 2 Input Undervoltage, graph: 0, value: 60, generic: 2 } + - { descr: Power Supply 2 Input Overcurrent, graph: 0, value: 61, generic: 2 } + - { descr: Power Supply 2 Input Overload, graph: 0, value: 62, generic: 2 } + - { descr: Power Supply 2 Output Overvoltage, graph: 0, value: 63, generic: 2 } + - { descr: Power Supply 2 Output Undervoltage, graph: 0, value: 64, generic: 2 } + - { descr: Power Supply 2 Output Overcurrent, graph: 0, value: 65, generic: 2 } + - { descr: Power Supply 2 Output Overload, graph: 0, value: 66, generic: 2 } + - { descr: Power Supply 2 Overtemperature, graph: 0, value: 67, generic: 2 } + - { descr: Power Supply 2 Undertemperature, graph: 0, value: 68, generic: 2 } + - { descr: Power Supply 2 Converter 1 Not Running, graph: 0, value: 69, generic: 2 } + - { descr: Power Supply 2 Converter 2 Not Running, graph: 0, value: 70, generic: 2 } + - { descr: Power Supply 2 Converter 3 Not Running, graph: 0, value: 71, generic: 2 } + - { descr: Power Supply 2 Converter 4 Not Running, graph: 0, value: 72, generic: 2 } + - { descr: Power Supply 2 Converter 5 Not Running, graph: 0, value: 73, generic: 2 } + - { descr: Power Supply 2 Converter 6 Not Running, graph: 0, value: 74, generic: 2 } + - { descr: Power Supply 2 Converter 7 Not Running, graph: 0, value: 75, generic: 2 } + - { descr: Power Supply 2 Converter 8 Not Running, graph: 0, value: 76, generic: 2 } + - { descr: Power Supply 2 Input Fuse Off, graph: 0, value: 77, generic: 2 } + - { descr: Power Supply 2 Input Fuse 1 Off, graph: 0, value: 78, generic: 2 } + - { descr: Power Supply 2 Input Fuse 2 Off, graph: 0, value: 79, generic: 2 } + - { descr: Power Supply 2 Input Fuse 3 Off, graph: 0, value: 80, generic: 2 } + - { descr: Power Supply 2 Input Breaker Off, graph: 0, value: 81, generic: 2 } + - { descr: Power Supply 2 Input Breaker 1 Off, graph: 0, value: 82, generic: 2 } + - { descr: Power Supply 2 Input Breaker 2 Off, graph: 0, value: 83, generic: 2 } + - { descr: Power Supply 2 Input Breaker 3 Off, graph: 0, value: 84, generic: 2 } + - { descr: Power Supply 2 Input Surge Arrester, graph: 0, value: 85, generic: 2 } + - { descr: Power Supply 2 Output Fuse Off, graph: 0, value: 86, generic: 2 } + - { descr: Power Supply 2 Output Fuse 1 Off, graph: 0, value: 87, generic: 2 } + - { descr: Power Supply 2 Output Fuse 2 Off, graph: 0, value: 88, generic: 2 } + - { descr: Power Supply 2 Output Breaker Off, graph: 0, value: 89, generic: 2 } + - { descr: Power Supply 2 Output Breaker 1 Off, graph: 0, value: 90, generic: 2 } + - { descr: Power Supply 2 Output Breaker 2 Off, graph: 0, value: 91, generic: 2 } + - { descr: Power Supply 2 Fan Malfunction, graph: 0, value: 92, generic: 2 } + - { descr: Power Supply 2 Output Out of Phase, graph: 0, value: 93, generic: 2 } + - { descr: Power Supply 2 User Alarm 1, graph: 0, value: 94, generic: 2 } + - { descr: Power Supply 2 User Alarm 2, graph: 0, value: 95, generic: 2 } + - { descr: Time for Power Supply 3 Service, graph: 0, value: 96, generic: 2 } + - { descr: Power Supply 3 Input Overvoltage, graph: 0, value: 97, generic: 2 } + - { descr: Power Supply 3 Input Undervoltage, graph: 0, value: 98, generic: 2 } + - { descr: Power Supply 3 Input Overcurrent, graph: 0, value: 99, generic: 2 } + - { descr: Power Supply 3 Input Overload, graph: 0, value: 100, generic: 2 } + - { descr: Power Supply 3 Output Overvoltage, graph: 0, value: 101, generic: 2 } + - { descr: Power Supply 3 Output Undervoltage, graph: 0, value: 102, generic: 2 } + - { descr: Power Supply 3 Output Overcurrent, graph: 0, value: 103, generic: 2 } + - { descr: Power Supply 3 Output Overload, graph: 0, value: 104, generic: 2 } + - { descr: Power Supply 3 Overtemperature, graph: 0, value: 105, generic: 2 } + - { descr: Power Supply 3 Undertemperature, graph: 0, value: 106, generic: 2 } + - { descr: Power Supply 3 Converter 1 Not Running, graph: 0, value: 107, generic: 2 } + - { descr: Power Supply 3 Converter 2 Not Running, graph: 0, value: 108, generic: 2 } + - { descr: Power Supply 3 Converter 3 Not Running, graph: 0, value: 109, generic: 2 } + - { descr: Power Supply 3 Converter 4 Not Running, graph: 0, value: 110, generic: 2 } + - { descr: Power Supply 3 Converter 5 Not Running, graph: 0, value: 111, generic: 2 } + - { descr: Power Supply 3 Converter 6 Not Running, graph: 0, value: 112, generic: 2 } + - { descr: Power Supply 3 Converter 7 Not Running, graph: 0, value: 113, generic: 2 } + - { descr: Power Supply 3 Converter 8 Not Running, graph: 0, value: 114, generic: 2 } + - { descr: Power Supply 3 Input Fuse Off, graph: 0, value: 115, generic: 2 } + - { descr: Power Supply 3 Input Fuse 1 Off, graph: 0, value: 116, generic: 2 } + - { descr: Power Supply 3 Input Fuse 2 Off, graph: 0, value: 117, generic: 2 } + - { descr: Power Supply 3 Input Fuse 3 Off, graph: 0, value: 118, generic: 2 } + - { descr: Power Supply 3 Input Breaker Off, graph: 0, value: 119, generic: 2 } + - { descr: Power Supply 3 Input Breaker 1 Off, graph: 0, value: 120, generic: 2 } + - { descr: Power Supply 3 Input Breaker 2 Off, graph: 0, value: 121, generic: 2 } + - { descr: Power Supply 3 Input Breaker 3 Off, graph: 0, value: 122, generic: 2 } + - { descr: Power Supply 3 Input Surge Arrester, graph: 0, value: 123, generic: 2 } + - { descr: Power Supply 3 Output Fuse Off, graph: 0, value: 124, generic: 2 } + - { descr: Power Supply 3 Output Fuse 1 Off, graph: 0, value: 125, generic: 2 } + - { descr: Power Supply 3 Output Fuse 2 Off, graph: 0, value: 126, generic: 2 } + - { descr: Power Supply 3 Output Breaker Off, graph: 0, value: 127, generic: 2 } + - { descr: Power Supply 3 Output Breaker 1 Off, graph: 0, value: 128, generic: 2 } + - { descr: Power Supply 3 Output Breaker 2 Off, graph: 0, value: 129, generic: 2 } + - { descr: Power Supply 3 Fan Malfunction, graph: 0, value: 130, generic: 2 } + - { descr: Power Supply 3 Output Out of Phase, graph: 0, value: 131, generic: 2 } + - { descr: Power Supply 3 User Alarm 1, graph: 0, value: 132, generic: 2 } + - { descr: Power Supply 3 User Alarm 2, graph: 0, value: 133, generic: 2 } + - { descr: Battery Overvoltage, graph: 0, value: 134, generic: 2 } + - { descr: Battery Undervoltage, graph: 0, value: 135, generic: 2 } + - { descr: Battery Overcurrent, graph: 0, value: 136, generic: 2 } + - { descr: Running on Battery, graph: 0, value: 137, generic: 2 } + - { descr: Battery Low, graph: 0, value: 138, generic: 2 } + - { descr: Time for Battery Service, graph: 0, value: 139, generic: 2 } + - { descr: Battery Leg 1 Lifetime Expired, graph: 0, value: 140, generic: 2 } + - { descr: Battery Leg 1 Overvoltage, graph: 0, value: 141, generic: 2 } + - { descr: Battery Leg 1 Undervoltage, graph: 0, value: 142, generic: 2 } + - { descr: Battery Leg 1 Overcurrent, graph: 0, value: 143, generic: 2 } + - { descr: Battery Leg 1 Overtemperature, graph: 0, value: 144, generic: 2 } + - { descr: Battery Leg 1 Undertemperature, graph: 0, value: 145, generic: 2 } + - { descr: Running on Battery Leg 1, graph: 0, value: 146, generic: 2 } + - { descr: Battery Leg 1 Low, graph: 0, value: 147, generic: 2 } + - { descr: Battery Leg 1 Critical, graph: 0, value: 148, generic: 2 } + - { descr: Battery Leg 1 Fuse Off, graph: 0, value: 149, generic: 2 } + - { descr: Battery Leg 1 Breaker Off, graph: 0, value: 150, generic: 2 } + - { descr: Battery Leg 1 LVD Off, graph: 0, value: 151, generic: 2 } + - { descr: Battery Leg 1 User Alarm 1, graph: 0, value: 152, generic: 2 } + - { descr: Battery Leg 1 User Alarm 2, graph: 0, value: 153, generic: 2 } + - { descr: Time for Battery Leg 2 Service, graph: 0, value: 154, generic: 2 } + - { descr: Battery Leg 2 Lifetime Expired, graph: 0, value: 155, generic: 2 } + - { descr: Battery Leg 2 Overvoltage, graph: 0, value: 156, generic: 2 } + - { descr: Battery Leg 2 Undervoltage, graph: 0, value: 157, generic: 2 } + - { descr: Battery Leg 2 Overcurrent, graph: 0, value: 158, generic: 2 } + - { descr: Battery Leg 2 Overtemperature, graph: 0, value: 159, generic: 2 } + - { descr: Battery Leg 2 Undertemperature, graph: 0, value: 160, generic: 2 } + - { descr: Running on Battery Leg 2, graph: 0, value: 161, generic: 2 } + - { descr: Battery Leg 2 Low, graph: 0, value: 162, generic: 2 } + - { descr: Battery Leg 2 Critical, graph: 0, value: 163, generic: 2 } + - { descr: Battery Leg 2 Fuse Off, graph: 0, value: 164, generic: 2 } + - { descr: Battery Leg 2 Breaker Off, graph: 0, value: 165, generic: 2 } + - { descr: Battery Leg 2 LVD Off, graph: 0, value: 166, generic: 2 } + - { descr: Battery Leg 2 User Alarm 1, graph: 0, value: 167, generic: 2 } + - { descr: Battery Leg 2 User Alarm 2, graph: 0, value: 168, generic: 2 } + - { descr: Time for Battery Leg 3 Service, graph: 0, value: 169, generic: 2 } + - { descr: Battery Leg 3 Lifetime Expired, graph: 0, value: 170, generic: 2 } + - { descr: Battery Leg 3 Overvoltage, graph: 0, value: 171, generic: 2 } + - { descr: Battery Leg 3 Undervoltage, graph: 0, value: 172, generic: 2 } + - { descr: Battery Leg 3 Overcurrent, graph: 0, value: 173, generic: 2 } + - { descr: Battery Leg 3 Overtemperature, graph: 0, value: 174, generic: 2 } + - { descr: Battery Leg 3 Undertemperature, graph: 0, value: 175, generic: 2 } + - { descr: Running on Battery Leg 3, graph: 0, value: 176, generic: 2 } + - { descr: Battery Leg 3 Low, graph: 0, value: 177, generic: 2 } + - { descr: Battery Leg 3 Critical, graph: 0, value: 178, generic: 2 } + - { descr: Battery Leg 3 Fuse Off, graph: 0, value: 179, generic: 2 } + - { descr: Battery Leg 3 Breaker Off, graph: 0, value: 180, generic: 2 } + - { descr: Battery Leg 3 LVD Off, graph: 0, value: 181, generic: 2 } + - { descr: Battery Leg 3 User Alarm 1, graph: 0, value: 182, generic: 2 } + - { descr: Battery Leg 3 User Alarm 2, graph: 0, value: 183, generic: 2 } + - { descr: Distribution Fuse 1 Off, graph: 0, value: 184, generic: 2 } + - { descr: Distribution Fuse 2 Off, graph: 0, value: 185, generic: 2 } + - { descr: Distribution Fuse 3 Off, graph: 0, value: 186, generic: 2 } + - { descr: Distribution Fuse 4 Off, graph: 0, value: 187, generic: 2 } + - { descr: Distribution Fuse 5 Off, graph: 0, value: 188, generic: 2 } + - { descr: Distribution Fuse 6 Off, graph: 0, value: 189, generic: 2 } + - { descr: Distribution Fuse 7 Off, graph: 0, value: 190, generic: 2 } + - { descr: Distribution Fuse 8 Off, graph: 0, value: 191, generic: 2 } + - { descr: Distribution Fuse 9 Off, graph: 0, value: 192, generic: 2 } + - { descr: Distribution Fuse 10 Off, graph: 0, value: 193, generic: 2 } + - { descr: Distribution Fuse 11 Off, graph: 0, value: 194, generic: 2 } + - { descr: Distribution Fuse 12 Off, graph: 0, value: 195, generic: 2 } + - { descr: Distribution Fuse 13 Off, graph: 0, value: 196, generic: 2 } + - { descr: Distribution Fuse 14 Off, graph: 0, value: 197, generic: 2 } + - { descr: Distribution Fuse 15 Off, graph: 0, value: 198, generic: 2 } + - { descr: Distribution Fuse 16 Off, graph: 0, value: 199, generic: 2 } + - { descr: Distribution Fuse 17 Off, graph: 0, value: 200, generic: 2 } + - { descr: Distribution Fuse 18 Off, graph: 0, value: 201, generic: 2 } + - { descr: Distribution Fuse 19 Off, graph: 0, value: 202, generic: 2 } + - { descr: Distribution Fuse 20 Off, graph: 0, value: 203, generic: 2 } + - { descr: Distribution Fuse 21 Off, graph: 0, value: 204, generic: 2 } + - { descr: Distribution Fuse 22 Off, graph: 0, value: 205, generic: 2 } + - { descr: Distribution Fuse 23 Off, graph: 0, value: 206, generic: 2 } + - { descr: Distribution Fuse 24 Off, graph: 0, value: 207, generic: 2 } + - { descr: Distribution Fuse 25 Off, graph: 0, value: 208, generic: 2 } + - { descr: Distribution Fuse 26 Off, graph: 0, value: 209, generic: 2 } + - { descr: Distribution Fuse 27 Off, graph: 0, value: 210, generic: 2 } + - { descr: Distribution Fuse 28 Off, graph: 0, value: 211, generic: 2 } + - { descr: Distribution Fuse 29 Off, graph: 0, value: 212, generic: 2 } + - { descr: Distribution Fuse 30 Off, graph: 0, value: 213, generic: 2 } + - { descr: Distribution Fuse 31 Off, graph: 0, value: 214, generic: 2 } + - { descr: Distribution Fuse 32 Off, graph: 0, value: 215, generic: 2 } + - { descr: Distribution Breaker 1 Off, graph: 0, value: 216, generic: 2 } + - { descr: Distribution Breaker 2 Off, graph: 0, value: 217, generic: 2 } + - { descr: Distribution Breaker 3 Off, graph: 0, value: 218, generic: 2 } + - { descr: Distribution Breaker 4 Off, graph: 0, value: 219, generic: 2 } + - { descr: Distribution Breaker 5 Off, graph: 0, value: 220, generic: 2 } + - { descr: Distribution Breaker 6 Off, graph: 0, value: 221, generic: 2 } + - { descr: Distribution Breaker 7 Off, graph: 0, value: 222, generic: 2 } + - { descr: Distribution Breaker 8 Off, graph: 0, value: 223, generic: 2 } + - { descr: Distribution Breaker 9 Off, graph: 0, value: 224, generic: 2 } + - { descr: Distribution Breaker 10 Off, graph: 0, value: 225, generic: 2 } + - { descr: Distribution Breaker 11 Off, graph: 0, value: 226, generic: 2 } + - { descr: Distribution Breaker 12 Off, graph: 0, value: 227, generic: 2 } + - { descr: Distribution Breaker 13 Off, graph: 0, value: 228, generic: 2 } + - { descr: Distribution Breaker 14 Off, graph: 0, value: 229, generic: 2 } + - { descr: Distribution Breaker 15 Off, graph: 0, value: 230, generic: 2 } + - { descr: Distribution Breaker 16 Off, graph: 0, value: 231, generic: 2 } + - { descr: Distribution Breaker 17 Off, graph: 0, value: 232, generic: 2 } + - { descr: Distribution Breaker 18 Off, graph: 0, value: 233, generic: 2 } + - { descr: Distribution Breaker 19 Off, graph: 0, value: 234, generic: 2 } + - { descr: Distribution Breaker 20 Off, graph: 0, value: 235, generic: 2 } + - { descr: Distribution Breaker 21 Off, graph: 0, value: 236, generic: 2 } + - { descr: Distribution Breaker 22 Off, graph: 0, value: 237, generic: 2 } + - { descr: Distribution Breaker 23 Off, graph: 0, value: 238, generic: 2 } + - { descr: Distribution Breaker 24 Off, graph: 0, value: 239, generic: 2 } + - { descr: Distribution Breaker 25 Off, graph: 0, value: 240, generic: 2 } + - { descr: Distribution Breaker 26 Off, graph: 0, value: 241, generic: 2 } + - { descr: Distribution Breaker 27 Off, graph: 0, value: 242, generic: 2 } + - { descr: Distribution Breaker 28 Off, graph: 0, value: 243, generic: 2 } + - { descr: Distribution Breaker 29 Off, graph: 0, value: 244, generic: 2 } + - { descr: Distribution Breaker 30 Off, graph: 0, value: 245, generic: 2 } + - { descr: Distribution Breaker 31 Off, graph: 0, value: 246, generic: 2 } + - { descr: Distribution Breaker 32 Off, graph: 0, value: 247, generic: 2 } + - { descr: Distribution Breaker 33 Off, graph: 0, value: 248, generic: 2 } + - { descr: Distribution Breaker 34 Off, graph: 0, value: 249, generic: 2 } + - { descr: Distribution Breaker 35 Off, graph: 0, value: 250, generic: 2 } + - { descr: Distribution Breaker 36 Off, graph: 0, value: 251, generic: 2 } + - { descr: Distribution Breaker 37 Off, graph: 0, value: 252, generic: 2 } + - { descr: Distribution Breaker 38 Off, graph: 0, value: 253, generic: 2 } + - { descr: Distribution Breaker 39 Off, graph: 0, value: 254, generic: 2 } + - { descr: Distribution Breaker 40 Off, graph: 0, value: 255, generic: 2 } + - { descr: Distribution Breaker 41 Off, graph: 0, value: 256, generic: 2 } + - { descr: Distribution Breaker 42 Off, graph: 0, value: 257, generic: 2 } + - { descr: Distribution Breaker 43 Off, graph: 0, value: 258, generic: 2 } + - { descr: Distribution Breaker 44 Off, graph: 0, value: 259, generic: 2 } + - { descr: Distribution Breaker 45 Off, graph: 0, value: 260, generic: 2 } + - { descr: Distribution Breaker 46 Off, graph: 0, value: 261, generic: 2 } + - { descr: Distribution Breaker 47 Off, graph: 0, value: 262, generic: 2 } + - { descr: Distribution Breaker 48 Off, graph: 0, value: 263, generic: 2 } + - { descr: Distribution Breaker 49 Off, graph: 0, value: 264, generic: 2 } + - { descr: Distribution Breaker 50 Off, graph: 0, value: 265, generic: 2 } + - { descr: Distribution Breaker 51 Off, graph: 0, value: 266, generic: 2 } + - { descr: Distribution Breaker 52 Off, graph: 0, value: 267, generic: 2 } + - { descr: Distribution Breaker 53 Off, graph: 0, value: 268, generic: 2 } + - { descr: Distribution Breaker 54 Off, graph: 0, value: 269, generic: 2 } + - { descr: Distribution Breaker 55 Off, graph: 0, value: 270, generic: 2 } + - { descr: Distribution Breaker 56 Off, graph: 0, value: 271, generic: 2 } + - { descr: Distribution Breaker 57 Off, graph: 0, value: 272, generic: 2 } + - { descr: Distribution Breaker 58 Off, graph: 0, value: 273, generic: 2 } + - { descr: Distribution Breaker 59 Off, graph: 0, value: 274, generic: 2 } + - { descr: Distribution Breaker 60 Off, graph: 0, value: 275, generic: 2 } + - { descr: Distribution Breaker 61 Off, graph: 0, value: 276, generic: 2 } + - { descr: Distribution Breaker 62 Off, graph: 0, value: 277, generic: 2 } + - { descr: Distribution Breaker 63 Off, graph: 0, value: 278, generic: 2 } + - { descr: Distribution Breaker 64 Off, graph: 0, value: 279, generic: 2 } + - { descr: Distribution Strip Overtemperature, graph: 0, value: 280, generic: 2 } + - { descr: Supply 1 Unit Any, graph: 0, value: 281, generic: 2 } + - { descr: Supply 1 Unit All, graph: 0, value: 282, generic: 2 } + - { descr: Supply 1 Unit Mains, graph: 0, value: 283, generic: 2 } + - { descr: Supply 1 Unit Input Phase 1, graph: 0, value: 284, generic: 2 } + - { descr: Supply 1 Unit Input Phase 2, graph: 0, value: 285, generic: 2 } + - { descr: Supply 1 Unit Input Phase 3, graph: 0, value: 286, generic: 2 } + - { descr: Supply 1 Unit Input Phase All, graph: 0, value: 287, generic: 2 } + - { descr: Supply 1 Reserva 1, graph: 0, value: 288, generic: 2 } + - { descr: Supply 1 Reserva 2, graph: 0, value: 289, generic: 2 } + - { descr: Supply 1 Reserva 3, graph: 0, value: 290, generic: 2 } + - { descr: Supply 1 Reserva 4, graph: 0, value: 291, generic: 2 } + - { descr: Supply 1 Reserva 5, graph: 0, value: 292, generic: 2 } + - { descr: Supply 2 Unit Any, graph: 0, value: 293, generic: 2 } + - { descr: Supply 2 Unit All, graph: 0, value: 294, generic: 2 } + - { descr: Supply 2 Unit Mains, graph: 0, value: 295, generic: 2 } + - { descr: Supply 2 Unit Input Phase 1, graph: 0, value: 296, generic: 2 } + - { descr: Supply 2 Unit Input Phase 2, graph: 0, value: 297, generic: 2 } + - { descr: Supply 2 Unit Input Phase 3, graph: 0, value: 298, generic: 2 } + - { descr: Supply 2 Unit Input Phase All, graph: 0, value: 299, generic: 2 } + - { descr: Supply 2 Reserva 1, graph: 0, value: 300, generic: 2 } + - { descr: Supply 2 Reserva 2, graph: 0, value: 301, generic: 2 } + - { descr: Supply 2 Reserva 3, graph: 0, value: 302, generic: 2 } + - { descr: Supply 2 Reserva 4, graph: 0, value: 303, generic: 2 } + - { descr: Supply 2 Reserva 5, graph: 0, value: 304, generic: 2 } + - { descr: Supply 3 Unit Any, graph: 0, value: 305, generic: 2 } + - { descr: Supply 3 Unit All, graph: 0, value: 306, generic: 2 } + - { descr: Supply 3 Unit Mains, graph: 0, value: 307, generic: 2 } + - { descr: Supply 3 Unit Input Phase 1, graph: 0, value: 308, generic: 2 } + - { descr: Supply 3 Unit Input Phase 2, graph: 0, value: 309, generic: 2 } + - { descr: Supply 3 Unit Input Phase 3, graph: 0, value: 310, generic: 2 } + - { descr: Supply 3 Unit Input Phase All, graph: 0, value: 311, generic: 2 } + - { descr: Supply 3 Reserva 1, graph: 0, value: 312, generic: 2 } + - { descr: Supply 3 Reserva 2, graph: 0, value: 313, generic: 2 } + - { descr: Supply 3 Reserva 3, graph: 0, value: 314, generic: 2 } + - { descr: Supply 3 Reserva 4, graph: 0, value: 315, generic: 2 } + - { descr: Supply 3 Reserva 5, graph: 0, value: 316, generic: 2 } + voltage: + data: + - + oid: imPm1Power1OutputVoltage + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.3.23.{{ $index }}' + index: 'imPm1Power1OutputVoltage.{{ $index }}' + descr: 'Power 1 Voltage' + group: Power + divisor: 10 + - + oid: imPm1Power2OutputVoltage + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.4.23.{{ $index }}' + index: 'imPm1Power2OutputVoltage.{{ $index }}' + descr: 'Power 2 Voltage' + group: Power + divisor: 10 + - + oid: imPm1Power3OutputVoltage + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.5.23.{{ $index }}' + index: 'imPm1Power3OutputVoltage.{{ $index }}' + descr: 'Power 3 Voltage' + group: Power + divisor: 10 + - + oid: imPm1BatteryVoltage + num_oid: '.1.3.6.1.4.1.2185.1.3.11.2.1.6.2.{{ $index }}' + index: 'imPm1BatteryVoltage.{{ $index }}' + descr: 'Battery Voltage' + group: Battery + divisor: 10 diff --git a/priv/profiles/os_discovery/imcopower-ls110.yaml b/priv/profiles/os_discovery/imcopower-ls110.yaml new file mode 100644 index 00000000..4d73955f --- /dev/null +++ b/priv/profiles/os_discovery/imcopower-ls110.yaml @@ -0,0 +1,80 @@ +mib: IMCO-LSPS-MIB +modules: + os: + hardware: IMCO-LSPS-MIB::sdsModel.0 + serial: IMCO-LSPS-MIB::sdsSerialNumber.0 + version: IMCO-LSPS-MIB::sdsSoftware.0 + sysName: IMCO-LSPS-MIB::sdsName.0 + sensors: + temperature: + data: + - + oid: sdsTempSensValue + num_oid: '.1.3.6.1.4.1.33283.1.30.5.1.3.{{ $index }}' + index: sdsTempSensValue.{{ $index }} + descr: Battery Temperature + divisor: 100 + + skip_values: + - + oid: sdsTempSensValue + op: '>=' + value: 100000 + + charge: + data: + - + oid: sdsBatteryCapacity + num_oid: '.1.3.6.1.4.1.33283.1.30.7.7.{{ $index }}' + index: sdsBatteryCapacity.{{ $index }} + descr: 'Battery Charge' + divisor: 10 + + load: + data: + - + oid: sdsLoad + num_oid: '.1.3.6.1.4.1.33283.1.30.7.8.{{ $index }}' + index: sdsLoad.{{ $index }} + descr: 'Load(VA)' + divisor: 10 + + + state: + data: + - + oid: opto3 + num_oid: '.1.3.6.1.4.1.33283.1.30.2.3.{{ $index }}' + index: opto3.{{ $index }} + descr: 'Power state' + states: + - { descr: Battery, graph: 0, value: 2, generic: 2 } + - { descr: Online, graph: 0, value: 0, generic: 0 } + + + + voltage: + data: + - + oid: sdsOutputVoltage1 + num_oid: '.1.3.6.1.4.1.33283.1.30.7.4.{{ $index }}' + index: 'sdsOutputVoltage1.{{ $index }}' + descr: 'Voltage1' + divisor: 100 + - + oid: sdsOutputVoltage2 + num_oid: '.1.3.6.1.4.1.33283.1.30.7.5.{{ $index }}' + index: 'sdsOutputVoltage2.{{ $index }}' + descr: 'Voltage2' + divisor: 100 + skip_values: -9999999 + + current: + data: + - + oid: sdsOutputCurrent + num_oid: '.1.3.6.1.4.1.33283.1.30.7.6.{{ $index }}' + index: 'sdsOutputCurrent.{{ $index }}' + descr: 'Current' + divisor: 10 + diff --git a/priv/profiles/os_discovery/infinera-groove.yaml b/priv/profiles/os_discovery/infinera-groove.yaml new file mode 100644 index 00000000..4c511646 --- /dev/null +++ b/priv/profiles/os_discovery/infinera-groove.yaml @@ -0,0 +1,33 @@ +mib: CORIANT-GROOVE-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - portId + + power: + data: + - + oid: shelfTable + descr: 'Chassis Power Consumption' + value: systemPowerConsumptionCurrent + num_oid: '.1.3.6.1.4.1.42229.1.2.2.2.2.{{ $index }}' + + temperature: + data: + - + oid: shelfTable + descr: 'Chassis Inlet' + value: shelfInletTemperature + num_oid: '.1.3.6.1.4.1.42229.1.2.3.1.1.1.3.{{ $index }}' + index: 'shelfInletTemperature.{{ $index }}' + skip_values: -99 + - + oid: shelfTable + descr: 'Chassis Outlet' + value: shelfOutletTemperature + num_oid: '.1.3.6.1.4.1.42229.1.2.3.1.1.1.4.{{ $index }}' + index: 'shelfOutletTemperature.{{ $index }}' + skip_values: -99 diff --git a/priv/profiles/os_discovery/infinera-pon.yaml b/priv/profiles/os_discovery/infinera-pon.yaml new file mode 100644 index 00000000..adfa0969 --- /dev/null +++ b/priv/profiles/os_discovery/infinera-pon.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: .1.3.6.1.4.1.42229.1801.3.4.0 diff --git a/priv/profiles/os_discovery/infinera-xtm.yaml b/priv/profiles/os_discovery/infinera-xtm.yaml new file mode 100644 index 00000000..4349de22 --- /dev/null +++ b/priv/profiles/os_discovery/infinera-xtm.yaml @@ -0,0 +1,590 @@ +mib: LUM-EQUIPMENT-MIB:LUM-IFBASIC-MIB:LUM-IFOTN-MIB:LUM-IFOTNMON-MIB:LUM-OA-MIB:LUM-OCM-MIB:LUM-REG:LUM-SYSTEM-MIB:LUM-IFPERF-MIB:LUM-IFPHYSICAL-MIB:LUM-SYSINFO-MIB:LUM-WDM-MIB + +modules: + os: + version: LUM-SYSTEM-MIB::sysNodeVersion.0 + location: LUM-SYSTEM-MIB::sysNodeLocation.0 + hardware: LUM-INVENTORY-MIB::invPhysDescr.100000000 + + mempools: + data: + - + oid: LUM-SYSINFO-MIB::sysinfoBoardMemoryTable + total: LUM-SYSINFO-MIB::sysinfoBoardMemoryTotalMem + free: LUM-SYSINFO-MIB::sysinfoBoardMemoryFreeMem + percent_used: LUM-SYSINFO-MIB::sysinfoBoardMemoryUsageMemPercent + descr: '{{ LUM-SYSINFO-MIB::sysinfoBoardMemoryName }}' + + processors: + data: + - + oid: sysinfoBoardLoadTable + value: sysinfoBoardLoadLoad1Min + num_oid: '.1.3.6.1.4.1.8708.2.71.2.2.1.1.3.{{ $index }}' + descr: '{{ $sysinfoBoardLoadName }} {{ $count }}' + + sensors: + additional_oids: + data: + - + oid: + - equipmentSubrackTempThreshold + - equipmentBoardTempThreshold + - equipmentBoardTempLowThreshold + + state: + data: + - + oid: equipmentSubrackTable + value: equipmentSubrackOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.11.2.2.1.1.19.{{ $index }}' + descr: 'Operational State Subrack {{ $index }}' + group: Subrack Operational States + entPhysicalIndex: 'sr-{{ $index }}' + state_name: equipmentSubrackOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + + - + oid: equipmentSubrackTable + value: equipmentSubrackTempHighExceeded + num_oid: '.1.3.6.1.4.1.8708.2.11.2.2.1.1.12.{{ $index }}' + descr: 'Temperature High Alarm Subrack {{ $index }}' + group: Subrack Temperature States + entPhysicalIndex: 'sr-{{ $index }}' + state_name: equipmentSubrackTempHighExceeded + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: equipmentBoardTable + value: equipmentBoardOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.11.2.3.1.1.12.{{ $index }}' + descr: '{{ $equipmentBoardName }} - {{ $equipmentBoardDescr }}' + group: Board Operational States + entPhysicalIndex: 'board-{{ $index }}' + state_name: BoardOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: equipmentBoardAdminStatus + op: '=' + value: 1 + - + oid: equipmentBoardTable + value: equipmentBoardTempHighExceeded + num_oid: '.1.3.6.1.4.1.8708.2.11.2.3.1.1.17.{{ $index }}' + descr: 'Temperature High Alarm {{ $equipmentBoardName }}' + group: Board Temperature States + entPhysicalIndex: 'board-{{ $index }}' + state_name: BoardTempHighExceeded + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: equipmentPowerTable + value: equipmentPowerPowerFailed + num_oid: '.1.3.6.1.4.1.8708.2.11.2.4.1.1.21.{{ $index }}' + descr: 'PSU Status {{ $equipmentPowerName }}, Type: {{ $equipmentPowerType }}' + group: PSU States + entPhysicalIndex: 'psu-{{ $index }}' + state_name: PSUOperStatus + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: equipmentFanTable + value: equipmentFanMainUnitFailed + num_oid: '.1.3.6.1.4.1.8708.2.11.2.5.1.1.10.{{ $index }}' + descr: 'Fan Status {{ $equipmentFanName }}' + group: Fan States + entPhysicalIndex: 'fan-{{ $index }}' + state_name: FanOperStatus + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: oaIfTable + value: oaIfOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.10.{{ $index }}' + descr: '{{ $oaIfName }} - {{ $oaIfDescr }}' + group: Amplifier Operational States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmpOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaIfTable + value: oaIfSaturationFault + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.52.{{ $index }}' + descr: 'Amplifier Saturation Fault {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Signal States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmpSaturationFault + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + - + oid: oaIfTable + value: oaIfLaserTempOutOfRange + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.57.{{ $index }}' + descr: 'Temperature Amplifier {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Temperature States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmpTempExceeded + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaIfTable + value: oaIfLossOfSignal + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.26.{{ $index }}' + descr: 'Amplifier LoS {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Signal States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmpLoS + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaIfTable + value: oaIfTxSignalStatus + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.59.{{ $index }}' + descr: 'Amplifier Tx Signals {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Signal States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmplifierTxSignalStatus + states: + - { descr: down, graph: 0, value: 1, generic: 2 } + - { descr: degraded, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaIfTable + value: oaIfRxSignalStatus + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.60.{{ $index }}' + descr: 'Amplifier Rx Signals {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Signal States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmplifierRxSignalStatus + states: + - { descr: down, graph: 0, value: 1, generic: 2 } + - { descr: degraded, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaIfTable + value: oaIfOutputPowerFail + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.61.{{ $index }}' + descr: 'Amplifier Output Power {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Signal States + entPhysicalIndex: 'oa-{{ $index }}' + state_name: AmpLoS + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: oaIfAdminStatus + op: '=' + value: 1 + + - + oid: oaVoaClientIfTable + value: oaVoaClientIfOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.19.2.5.1.1.10.{{ $index }}' + descr: '{{ $oaVoaClientIfName }} - {{ $oaVoaClientIfDescr }}' + group: oaVoa Operational States + state_name: OaVoaOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: oaVoaClientIfAdminStatus + op: '=' + value: 1 + + - + oid: oaVoaLineIfTable + value: oaVoaLineIfOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.19.2.6.1.1.10.{{ $index }}' + descr: '{{ $oaVoaLineIfName }} - {{ $oaVoaLineIfDescr }}' + group: oaVoa Operational States + state_name: OaVoaOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: oaVoaLineIfAdminStatus + op: '=' + value: 1 + + - + oid: ocmIfTable + value: ocmIfOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.33.2.2.1.1.9.{{ $index }}' + descr: '{{ $ocmIfName }} - {{ $ocmIfDescr }}' + group: OCM Operational States + entPhysicalIndex: 'ocm-{{ $index }}' + state_name: OCMOperStatus + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: ocmIfAdminStatus + op: '=' + value: 1 + + - + oid: ocmIfTable + value: ocmIfSwitchFailure + num_oid: '.1.3.6.1.4.1.8708.2.33.2.2.1.1.22.{{ $index }}' + descr: 'OCM Switch Status {{ $ocmIfSubrack }}:{{ $ocmIfName }}' + group: OCM Module States + entPhysicalIndex: 'ocm-{{ $index }}' + state_name: OCMSwitch + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ocmIfTable + value: ocmIfModuleFailure + num_oid: '.1.3.6.1.4.1.8708.2.33.2.2.1.1.25.{{ $index }}' + descr: 'OCM Module Status {{ $ocmIfSubrack }}:{{ $ocmIfName }}' + group: OCM Module States + entPhysicalIndex: 'ocm-{{ $index }}' + state_name: OCMModule + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnOtuTable + value: ifOtnOtuLossOfFrame + num_oid: '.1.3.6.1.4.1.8708.2.50.2.2.1.1.6.{{ $index }}' + descr: 'OTN Loss of Frame {{ $ifOtnOtuName }}' + group: OTN Port States + entPhysicalIndex: 'otn-{{ $index }}' + state_name: OTNLoF + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnOtuTable + value: ifOtnOtuLossOfMultiframe + num_oid: '.1.3.6.1.4.1.8708.2.50.2.2.1.1.8.{{ $index }}' + descr: 'OTN Loss of Multiframe {{ $ifOtnOtuName }}' + group: OTN Port States + entPhysicalIndex: 'otn-{{ $index }}' + state_name: OTNLoMF + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnOtuTable + value: ifOtnOtuRxAlarmIndicationSignal + num_oid: '.1.3.6.1.4.1.8708.2.50.2.2.1.1.7.{{ $index }}' + descr: 'OTN Indication Signal {{ $ifOtnOtuName }}' + group: OTN Port States + entPhysicalIndex: 'otn-{{ $index }}' + state_name: OTNIndicationSignal + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnMonSmTable + value: ifOtnMonSmBackwardDefectIndication + num_oid: '.1.3.6.1.4.1.8708.2.55.2.2.1.1.6.{{ $index }}' + descr: 'OTN BDI {{ $ifOtnMonSmName }}' + group: OTN Port States + entPhysicalIndex: 'otnmon-{{ $index }}' + state_name: OTNBDIState + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnMonSmTable + value: ifOtnMonSmIncomingAlignmentError + num_oid: '.1.3.6.1.4.1.8708.2.55.2.2.1.1.7.{{ $index }}' + descr: 'OTN IAE {{ $ifOtnMonSmName }}' + group: OTN Port States + entPhysicalIndex: 'otnmon-{{ $index }}' + state_name: OTNIAEState + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: ifOtnMonSmTable + value: ifOtnMonSmBackwardIncomingAlignmentError + num_oid: '.1.3.6.1.4.1.8708.2.55.2.2.1.1.8.{{ $index }}' + descr: 'OTN BIAE {{ $ifOtnMonSmName }}' + group: OTN Port States + entPhysicalIndex: 'otnmon-{{ $index }}' + state_name: OTNBIAEState + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + + - + oid: wdmCtrlChannelTable + value: wdmCtrlChannelStatus + num_oid: '.1.3.6.1.4.1.8708.2.4.2.8.1.1.16.{{ $index }}' + descr: 'WDM Channel Status {{ $wdmCtrlChannelName }}' + group: WDM Channel States + state_name: WDMChannelStatus + states: + - { descr: initial, graph: 0, value: 1, generic: 3 } + - { descr: searching, graph: 0, value: 2, generic: 1 } + - { descr: regulating, graph: 0, value: 3, generic: 1 } + - { descr: ok, graph: 0, value: 4, generic: 0 } + - { descr: not found, graph: 0, value: 5, generic: 2 } + - { descr: error, graph: 0, value: 6, generic: 2 } + - { descr: waiting, graph: 0, value: 7, generic: 1 } + skip_values: + - + oid: wdmCtrlChannelAdminStatus + op: '=' + value: 1 + + - + oid: wdmCtrlChannelTable + value: wdmCtrlChannelLossOfSignal + num_oid: '.1.3.6.1.4.1.8708.2.4.2.8.1.1.22.{{ $index }}' + descr: 'WDM Channel LoS {{ $wdmCtrlChannelName }}' + group: WDM Channel States + state_name: WDMChannelLoSStatus + states: + - { descr: alarm, graph: 0, value: 2, generic: 2 } + - { descr: ok, graph: 0, value: 1, generic: 0 } + skip_values: + - + oid: wdmCtrlChannelAdminStatus + op: '=' + value: 1 + + - + oid: ifBasicAdminTable + value: ifBasicAdminOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.46.2.3.1.1.9.{{ $index }}' + descr: '{{ $ifBasicAdminName }} {{ $ifBasicAdminDescr }}' + group: Physical Port States + entPhysicalIndex: 'physport-{{ $index }}' + state_name: PhysPortState + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: ifBasicAdminAdminStatus + op: '=' + value: 1 + + - + oid: dcnIfTable + value: dcnIfOperStatus + num_oid: '.1.3.6.1.4.1.8708.2.20.2.2.1.1.13.{{ $index }}' + descr: '{{ $dcnIfName }} - {{ $dcnIfDescr }}' + group: DCN Port States + state_name: DCNPortState + states: + - { descr: notPresent, graph: 0, value: 1, generic: 0 } + - { descr: down, graph: 0, value: 2, generic: 2 } + - { descr: up, graph: 0, value: 3, generic: 0 } + skip_values: + - + oid: dcnIfAdminStatus + op: '=' + value: 1 + + + temperature: + data: + - + oid: equipmentSubrackTable + value: equipmentSubrackTemp + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.11.2.2.1.1.11.{{ $index }}' + descr: 'Subrack Temperature {{ $index }}' + group: Subrack Temperature + entPhysicalIndex: 'sr-{{ $index }}' + high_limit: equipmentSubrackTempThreshold + low_limit: 3 + + - + oid: equipmentBoardTable + value: equipmentBoardTemp + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.11.2.3.1.1.8.{{ $index }}' + descr: 'Temperature {{ $equipmentBoardSubrack }}:{{ $equipmentBoardName }}' + group: Board Temperature + entPhysicalIndex: 'board-{{ $index }}' + high_limit: equipmentBoardTempThreshold + low_limit: equipmentBoardTempLowThreshold + + - + oid: oaIfTable + value: oaIfActualLaserTemp + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.43.{{ $index }}' + descr: 'Temperature {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Laser Temperature + entPhysicalIndex: 'oa-{{ $index }}' + + - + oid: ifPhysicalTrxTable + value: ifPhysicalTrxLaserTemp + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.47.2.2.1.1.5.{{ $index }}' + descr: 'Laser Temperature {{ $ifPhysicalTrxName }}' + group: Laser Temperature + entPhysicalIndex: 'laser-{{ $index }}' + skip_values: [2147483646, 2147483647, -2147483648] + + + + + dbm: + options: + skip_values: 0 + data: + - + oid: oaIfTable + value: oaIfRxPowerLevel + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.20.{{ $index }}' + descr: 'Amplifier Rx {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Laser dBm + index: oa-rx-dbm.{{ $index }} + entPhysicalIndex: 'oa-{{ $index }}' + + - + oid: oaIfTable + value: oaIfTxPowerLevel + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.19.{{ $index }}' + descr: 'Amplifier Tx {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Laser dBm + index: oa-tx-dbm.{{ $index }} + entPhysicalIndex: 'oa-{{ $index }}' + + - + oid: oaIfTable + value: oaIfActualGain + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.51.{{ $index }}' + descr: 'Amplifier Gain {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Laser Gain dBm + index: oa-gain-dbm.{{ $index }} + entPhysicalIndex: 'oa-{{ $index }}' + + - + oid: ifPerfL0Table + value: ifPerfL0RxPower + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.56.2.6.1.1.4.{{ $index }}' + descr: 'Laser Rx {{ $ifPerfL0Name }}' + group: Laser dBm + index: laser-rx-dbm.{{ $index }} + entPhysicalIndex: 'laser-{{ $index }}' + skip_values: [2147483646, -2147483648] + + - + oid: ifPerfL0Table + value: ifPerfL0TxPower + divisor: 10 + num_oid: '.1.3.6.1.4.1.8708.2.56.2.6.1.1.5.{{ $index }}' + descr: 'Laser Tx {{ $ifPerfL0Name }}' + group: Laser dBm + index: laser-tx-dbm.{{ $index }} + entPhysicalIndex: 'laser-{{ $index }}' + skip_values: [2147483646, -2147483648] + + current: + data: + - + oid: oaIfTable + value: oaIfLaserBias + divisor: 10000 + num_oid: '.1.3.6.1.4.1.8708.2.19.2.2.1.1.22.{{ $index }}' + descr: 'Amplifier current {{ $oaIfSubrack }}:{{ $oaIfName }}' + group: Amplifier Laser Current + entPhysicalIndex: 'oa-{{ $index }}' + + - + oid: ifPhysicalTrxTable + value: ifPhysicalTrxLaserBias + divisor: 10000 + num_oid: '.1.3.6.1.4.1.8708.2.47.2.2.1.1.4.{{ $index }}' + descr: 'Laser current {{ $ifPhysicalTrxName }}' + group: Laser Current + entPhysicalIndex: 'laser-{{ $index }}' + skip_values: [2147483646, 2147483647, -2147483648, 4294967293, 4294967294, 2147483648] + + chromatic_dispersion: + data: + - + oid: ifPerfL0Table + value: ifPerfL0ChromaticDispersion + num_oid: '.1.3.6.1.4.1.8708.2.56.2.6.1.1.7.{{ $index }}' + descr: 'Laser CD {{ $ifPerfL0Name }}' + group: Laser Chromatic Dispersion + index: laser-cd.{{ $index }} + entPhysicalIndex: 'laser-{{ $index }}' + skip_values: [2147483646, 2147483647, -2147483648] diff --git a/priv/profiles/os_discovery/infinity.yaml b/priv/profiles/os_discovery/infinity.yaml new file mode 100644 index 00000000..cf593244 --- /dev/null +++ b/priv/profiles/os_discovery/infinity.yaml @@ -0,0 +1,9 @@ +modules: + mempools: + data: + - + total: FROGFOOT-RESOURCES-MIB::memTotal + free: FROGFOOT-RESOURCES-MIB::memFree + precision: 1024 + os: + sysDescr_regex: '/(?NFT \S+)( (?.*))?/' diff --git a/priv/profiles/os_discovery/informos.yaml b/priv/profiles/os_discovery/informos.yaml new file mode 100644 index 00000000..cbeb7950 --- /dev/null +++ b/priv/profiles/os_discovery/informos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(HPE?_)?(?(3PAR|InServ) .*), (?ID: .*), Serial number: (?.*), InForm OS version: (?.*)/' diff --git a/priv/profiles/os_discovery/infortrend.yaml b/priv/profiles/os_discovery/infortrend.yaml new file mode 100644 index 00000000..b33989f1 --- /dev/null +++ b/priv/profiles/os_discovery/infortrend.yaml @@ -0,0 +1,36 @@ +mib: IFT-SNMP-MIB +modules: + os: + serial: + - IFT-SNMP-MIB::serialNum.0 + hardware: + - IFT-SNMP-MIB::privateLogoModel.0 + sensors: + temperature: + data: + - + oid: luDevTable + value: luDevValue + num_oid: '.1.3.6.1.4.1.1714.1.1.9.1.9.{{ $index }}' + divisor: 10 + index: 'temp{{ $index }}' + descr: luDevDescription + skip_values: + - + oid: luDevTypeCode + op: '!=' + value: 3 + voltage: + data: + - + oid: luDevTable + value: luDevValue + num_oid: '.1.3.6.1.4.1.1714.1.1.9.1.9.{{ $index }}' + divisor: 1000 + index: 'voltage{{ $index }}' + descr: luDevDescription + skip_values: + - + oid: luDevTypeCode + op: '!=' + value: 5 diff --git a/priv/profiles/os_discovery/innovaphone.yaml b/priv/profiles/os_discovery/innovaphone.yaml new file mode 100644 index 00000000..960f8a9d --- /dev/null +++ b/priv/profiles/os_discovery/innovaphone.yaml @@ -0,0 +1,68 @@ +mib: INNO-MIB +modules: + sensors: + state: + data: + - + oid: l2Table + value: l2State + num_oid: '.1.3.6.1.4.1.6666.1.1.1.2.{{ $index }}' + descr: 'LAPD {{ $l2Label }}' + group: '{{ $l2Label }}' + state_name: L2State + states: + - { descr: down, graph: 0, value: 1, generic: 2 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - + oid: l2Table + value: l2Mode + num_oid: '.1.3.6.1.4.1.6666.1.1.1.3.{{ $index }}' + descr: 'Mode {{ $l2Label }}' + state_name: L2Mode + group: '{{ $l2Label }}' + states: + - { descr: TE, graph: 0, value: 1, generic: 0 } + - { descr: NT, graph: 0, value: 2, generic: 0 } + + - + oid: l1BriTable + value: l1BriState + num_oid: '.1.3.6.1.4.1.6666.1.3.1.2.{{ $index }}' + descr: 'Basic rate interface {{ $l1BriLabel }}' + state_name: l1BriLabel + group: '{{ $l1BriLabel }}' + states: + - { descr: down, graph: 0, value: 1, generic: 2 } + - { descr: up, graph: 0, value: 2, generic: 0 } + - + oid: l3Table + value: l3Protocol + num_oid: '.1.3.6.1.4.1.6666.1.4.1.2.{{ $index }}' + descr: 'ISDN signaling protocol {{ $l3Label }}' + state_name: l3Label + group: '{{ $l3Label }}' + states: + - { descr: none, graph: 0, value: 1, generic: 3 } + - { descr: other, graph: 0, value: 2, generic: 3 } + - { descr: etsi, graph: 0, value: 3, generic: 0 } + - { descr: qsig, graph: 0, value: 23, generic: 0 } + count: + data: + - + oid: l3Table + value: l3NumBchanActive + num_oid: '.1.3.6.1.4.1.6666.1.4.1.4.{{ $index }}' + descr: 'Active calls {{ $l3Label }}' + index: 'l3NumBchanActive.{{ $index }}' + - + oid: l3Table + value: l3CallsBoot + num_oid: '.1.3.6.1.4.1.6666.1.4.1.5.{{ $index }}' + descr: "Calls since boot {{ $l3Label }}" + index: 'l3CallsBoot.{{ $index }}' + - + oid: l3Table + value: l3NumBchan + num_oid: '.1.3.6.1.4.1.6666.1.4.1.3.{{ $index }}' + descr: 'Available Channels {{ $l3Label }}' + index: 'l3NumBchan.{{ $index }}' diff --git a/priv/profiles/os_discovery/inteno.yaml b/priv/profiles/os_discovery/inteno.yaml new file mode 100644 index 00000000..b3c3e002 --- /dev/null +++ b/priv/profiles/os_discovery/inteno.yaml @@ -0,0 +1,45 @@ +mib: XAVI-XG6846-MIB +modules: + os: + sysDescr_regex: '/(?.*)_(?.*)/' + serial: XAVI-XG6846-MIB::serialnum.0 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + temperature: + data: + - + oid: ddminfo + value: temperature + num_oid: '.1.3.6.1.4.1.12919.6.5.{{ $index }}' + index: 'ddmTp{{ $index }}' + group: 'DDM for {{ $vendorName }} {{ $vendorPn }}' + descr: 'SFP {{ $index }}' + dbm: + data: + - + oid: ddminfo + value: txPower + num_oid: '.1.3.6.1.4.1.12919.6.8.{{ $index }}' + index: 'ddmtxPw{{ $index }}' + group: 'DDM for {{ $vendorName }} {{ $vendorPn }}' + descr: 'SFP {{ $index }} TX' + - + oid: ddminfo + value: rxPower + num_oid: '.1.3.6.1.4.1.12919.6.9.{{ $index }}' + index: 'ddmrxPw{{ $index }}' + group: 'DDM for {{ $vendorName }} {{ $vendorPn }}' + descr: 'SFP {{ $index }} RX' + voltage: + data: + - + oid: ddminfo + value: voltage + num_oid: '.1.3.6.1.4.1.12919.6.6.{{ $index }}' + index: 'ddmVolt{{ $index }}' + group: 'DDM for {{ $vendorName }} {{ $vendorPn }}' + descr: 'SFP {{ $index }}' diff --git a/priv/profiles/os_discovery/interseptor.yaml b/priv/profiles/os_discovery/interseptor.yaml new file mode 100644 index 00000000..a6a06f94 --- /dev/null +++ b/priv/profiles/os_discovery/interseptor.yaml @@ -0,0 +1,22 @@ +mib: InterSeptor-MIB +modules: + sensors: + temperature: + data: + - + oid: inSeptsensorMonitorDeviceTemperature + num_oid: '.1.3.6.1.4.1.19011.1.3.1.1.3.2.1.3.{{ $index }}' + index: '{{ $index }}' + descr: Temperature {{ $index }} + group: Temperature + divisor: 10 + + humidity: + data: + - + oid: inSeptsensorMonitorDeviceHumidity + num_oid: '.1.3.6.1.4.1.19011.1.3.1.1.3.2.1.5.{{ $index }}' + index: '{{ $index }}' + descr: Humidity {{ $index }} + group: Humidity + divisor: 10 diff --git a/priv/profiles/os_discovery/ionodes.yaml b/priv/profiles/os_discovery/ionodes.yaml new file mode 100644 index 00000000..06fd5d00 --- /dev/null +++ b/priv/profiles/os_discovery/ionodes.yaml @@ -0,0 +1,41 @@ +mib: IONODES-IONSERIES-MIB +modules: + mempools: + data: + - + percent_used: IONODES-IONSERIES-MIB::ionSysMemUsage + descr: 'System Memory' + processors: + data: + - + oid: ionSysCpuUsage + num_oid: '.1.3.6.1.4.1.40748.2.1.{{ $index }}' + descr: 'CPU usage' + index: 'ionSysCpuUsage.{{ $index }}' + value: ionSysCpuUsage + sensors: + additional_oids: + data: + - + oid: + - ionVInDescr + state: + data: + - + oid: ionVInAnalogSignalLock + num_oid: '.1.3.6.1.4.1.40748.3.2.1.3.{{ $index }}' + descr: '{{ $ionVInDescr }}' + index: 'ionVInAnalogSignalLock.{{ $index }}' + value: ionVInAnalogSignalLock + state_name: videoInputStatus + states: + - { value: 1, generic: 0, graph: 0, descr: present } + - { value: 2, generic: 2, graph: 0, descr: not present } + temperature: + data: + - + oid: ionSysTemperature + num_oid: '.1.3.6.1.4.1.40748.2.3.{{ $index }}' + descr: 'System Temperature' + index: 'ionSysTemperature.{{ $index }}' + value: ionSysTemperature diff --git a/priv/profiles/os_discovery/ionos.yaml b/priv/profiles/os_discovery/ionos.yaml new file mode 100644 index 00000000..85ef8d07 --- /dev/null +++ b/priv/profiles/os_discovery/ionos.yaml @@ -0,0 +1,21 @@ +mib: EQUIPMENT-MIB +modules: + sensors: + state: + data: + - + oid: equipStatusV2 + num_oid: '.1.3.6.1.4.1.1038.107.11.{{ $index }}' + descr: Status of all equipment objects + state_name: Severity + states: + - { value: 1, generic: 0, graph: 0, descr: nonAlarmed } + - { value: 2, generic: 0, graph: 0, descr: minor } + - { value: 3, generic: 1, graph: 0, descr: major } + - { value: 4, generic: 2, graph: 0, descr: critical } + - { value: 5, generic: 1, graph: 0, descr: warning } + - { value: 6, generic: 0, graph: 0, descr: invNonAlarmed } + - { value: 7, generic: 0, graph: 0, descr: invMinor } + - { value: 8, generic: 1, graph: 0, descr: invMajor } + - { value: 9, generic: 2, graph: 0, descr: invCritical } + - { value: 10, generic: 1, graph: 0, descr: invWarning } diff --git a/priv/profiles/os_discovery/ios.yaml b/priv/profiles/os_discovery/ios.yaml new file mode 100644 index 00000000..571c84e2 --- /dev/null +++ b/priv/profiles/os_discovery/ios.yaml @@ -0,0 +1,86 @@ +mib: POWER-ETHERNET-MIB:CISCO-POWER-ETHERNET-EXT-MIB:CISCO-ENTITY-FRU-CONTROL-MIB:CISCO-HSRP-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + power: + data: + - + oid: pethMainPseTable + value: pethMainPsePower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.2.{{ $index }}' + index: 'pethMainPsePower.{{ $index }}' + group: "PoE" + descr: "PoE Budget Total - ID {{ $index }}" + - + oid: pethMainPseTable + value: pethMainPseConsumptionPower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.4.{{ $index }}' + index: 'pethMainPseConsumptionPower.{{ $index }}' + high_limit: pethMainPsePower + group: "PoE" + descr: "PoE Budget Consumed - ID {{ $index }}" + count: + data: + - + oid: cpeExtPdStatistics + value: cpeExtPdStatsTotalDevices + num_oid: '.1.3.6.1.4.1.9.9.402.1.4.1.{{ $index }}' + group: "PoE" + descr: "PoE Devices Connected" + state: + data: + - + oid: cHsrpGrpTable + value: cHsrpGrpStandbyState + num_oid: '.1.3.6.1.4.1.9.9.106.1.2.1.1.15.{{ $index }}' + descr: 'HSRP Status {{ $cHsrpGrpVirtualIpAddr }}' + index: 'cHsrpGrpStandbyState.{{ $index }}' + group: 'HSRP' + states: + - { value: 1, generic: 2, graph: 0, descr: 'initial' } + - { value: 2, generic: 2, graph: 0, descr: 'learn' } + - { value: 3, generic: 1, graph: 0, descr: 'listen' } + - { value: 4, generic: 1, graph: 0, descr: 'speak' } + - { value: 5, generic: 0, graph: 0, descr: 'standby' } + - { value: 6, generic: 0, graph: 0, descr: 'active' } + - + oid: cefcModuleOperStatus + value: cefcModuleOperStatus + num_oid: '.1.3.6.1.4.1.9.9.117.1.2.1.1.2.{{ $index }}' + descr: 'Operating Status - {{ $entPhysicalName }}' + group: Module Operating Status + index: 'cefcModuleOperStatus.{{ $index }}' + entPhysicalIndex: '{{ index }}' + state_name: cefcModuleOperStatus + states: + - { value: 1, generic: 3, graph: 0, descr: 'unknown' } + - { value: 2, generic: 0, graph: 0, descr: 'ok' } + - { value: 3, generic: 0, graph: 0, descr: 'disabled' } + - { value: 4, generic: 1, graph: 0, descr: 'okButDiagFailed' } + - { value: 5, generic: 1, graph: 0, descr: 'boot' } + - { value: 6, generic: 1, graph: 0, descr: 'selfTest' } + - { value: 7, generic: 2, graph: 0, descr: 'failed' } + - { value: 8, generic: 2, graph: 0, descr: 'missing' } + - { value: 9, generic: 2, graph: 0, descr: 'mismatchWithParent' } + - { value: 10, generic: 2, graph: 0, descr: 'mismatchConfig' } + - { value: 11, generic: 2, graph: 0, descr: 'diagFailed' } + - { value: 12, generic: 2, graph: 0, descr: 'dormant' } + - { value: 13, generic: 2, graph: 0, descr: 'outOfServiceAdmin' } + - { value: 14, generic: 2, graph: 0, descr: 'outOfServiceEnvTemp' } + - { value: 15, generic: 2, graph: 0, descr: 'poweredDown' } + - { value: 16, generic: 2, graph: 0, descr: 'poweredUp' } + - { value: 17, generic: 2, graph: 0, descr: 'powerDenied' } + - { value: 18, generic: 2, graph: 0, descr: 'powerCycled' } + - { value: 19, generic: 1, graph: 0, descr: 'okButPowerOverWarning' } + - { value: 20, generic: 2, graph: 0, descr: 'okButPowerOverCritical' } + - { value: 21, generic: 1, graph: 0, descr: 'syncInProgress' } + - { value: 22, generic: 1, graph: 0, descr: 'upgrading' } + - { value: 23, generic: 2, graph: 0, descr: 'okButAuthFailed' } + - { value: 24, generic: 1, graph: 0, descr: 'mdr'} + - { value: 25, generic: 2, graph: 0, descr: 'fwMismatchFound' } + - { value: 26, generic: 1, graph: 0, descr: 'fwDownloadSuccess' } + - { value: 27, generic: 2, graph: 0, descr: 'fwDownloadFailure' } diff --git a/priv/profiles/os_discovery/iosxe.yaml b/priv/profiles/os_discovery/iosxe.yaml new file mode 100644 index 00000000..b8380c19 --- /dev/null +++ b/priv/profiles/os_discovery/iosxe.yaml @@ -0,0 +1,73 @@ +mib: POWER-ETHERNET-MIB:CISCO-POWER-ETHERNET-EXT-MIB:CISCO-HSRP-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - CISCO-VOICE-DIAL-CONTROL-MIB::cvSipMsgRateWMValue + power: + data: + - + oid: pethMainPseTable + value: pethMainPsePower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.2.{{ $index }}' + index: 'pethMainPsePower.{{ $index }}' + group: "PoE" + descr: "PoE Budget Total - ID {{ $index }}" + - + oid: cpeExtMainPseTable + value: cpeExtMainPseUsedPower + divisor: 1000 + num_oid: '.1.3.6.1.4.1.9.9.402.1.3.1.4.{{ $index }}' + index: 'cpeExtMainPseUsedPower.{{ $index }}' + group: "PoE" + descr: "PoE Budget Consumed - {{ $cpeExtMainPseDescr }}" + - + oid: cpeExtMainPseTable + value: cpeExtMainPseRemainingPower + divisor: 1000 + num_oid: '.1.3.6.1.4.1.9.9.402.1.3.1.5.{{ $index }}' + index: 'cpeExtMainPseRemainingPower.{{ $index }}' + low_limit: 0 + group: "PoE" + descr: "PoE Budget Remaining - {{ $cpeExtMainPseDescr }}" + count: + data: + - + oid: cpeExtPdStatistics + value: cpeExtPdStatsTotalDevices + num_oid: '.1.3.6.1.4.1.9.9.402.1.4.1.{{ $index }}' + group: "PoE" + descr: "PoE Devices Connected" + - + oid: CISCO-VOICE-DIAL-CONTROL-MIB::cvCallVolConnActiveConnection + num_oid: '.1.3.6.1.4.1.9.9.63.1.3.8.1.1.2.{{ $index }}' + group: "Voice" + descr: "SIP Active Connections" + skip_values: + - + oid: index + op: '!=' + value: 2 + - + oid: 'CISCO-VOICE-DIAL-CONTROL-MIB::cvSipMsgRateWMValue.3.1' + op: '=' + value: 0 + state: + data: + - + oid: cHsrpGrpTable + value: cHsrpGrpStandbyState + num_oid: '.1.3.6.1.4.1.9.9.106.1.2.1.1.15.{{ $index }}' + descr: 'HSRP Status {{ $cHsrpGrpVirtualIpAddr }}' + index: 'cHsrpGrpStandbyState.{{ $index }}' + group: 'HSRP' + states: + - { value: 1, generic: 2, graph: 0, descr: 'initial' } + - { value: 2, generic: 2, graph: 0, descr: 'learn' } + - { value: 3, generic: 1, graph: 0, descr: 'listen' } + - { value: 4, generic: 1, graph: 0, descr: 'speak' } + - { value: 5, generic: 0, graph: 0, descr: 'standby' } + - { value: 6, generic: 0, graph: 0, descr: 'active' } + diff --git a/priv/profiles/os_discovery/iosxr.yaml b/priv/profiles/os_discovery/iosxr.yaml new file mode 100644 index 00000000..96627769 --- /dev/null +++ b/priv/profiles/os_discovery/iosxr.yaml @@ -0,0 +1,24 @@ +mib: CISCO-HSRP-MIB +modules: + sensors: + state: + data: + - + oid: cHsrpGrpTable + value: cHsrpGrpStandbyState + num_oid: '.1.3.6.1.4.1.9.9.106.1.2.1.1.15.{{ $index }}' + descr: 'HSRP Status {{ $cHsrpGrpVirtualIpAddr }}' + index: 'cHsrpGrpStandbyState.{{ $index }}' + group: 'HSRP' + states: + - { value: 1, generic: 2, graph: 0, descr: 'initial' } + - { value: 2, generic: 2, graph: 0, descr: 'learn' } + - { value: 3, generic: 1, graph: 0, descr: 'listen' } + - { value: 4, generic: 1, graph: 0, descr: 'speak' } + - { value: 5, generic: 0, graph: 0, descr: 'standby' } + - { value: 6, generic: 0, graph: 0, descr: 'active' } + skip_values: + - + oid: cHsrpGrpVirtualIpAddr + op: '=' + value: '0.0.0.0' diff --git a/priv/profiles/os_discovery/ipoman.yaml b/priv/profiles/os_discovery/ipoman.yaml new file mode 100644 index 00000000..d9c1efd3 --- /dev/null +++ b/priv/profiles/os_discovery/ipoman.yaml @@ -0,0 +1,6 @@ +modules: + os: + serial: IPOMANII-MIB::ipmIdentAgentSoftwareVersion.0 + serial_regex: '/\(SN (?\S+)\)/' + version: IPOMANII-MIB::ipmIdentAgentSoftwareVersion.0 + version_regex: '/v(?\S+)/' diff --git a/priv/profiles/os_discovery/iqnos.yaml b/priv/profiles/os_discovery/iqnos.yaml new file mode 100644 index 00000000..6f080dd1 --- /dev/null +++ b/priv/profiles/os_discovery/iqnos.yaml @@ -0,0 +1,91 @@ +mib: INFINERA-ENTITY-CHASSIS-MIB:INFINERA-PM-BANDCTP-MIB:IF-MIB:INFINERA-PM-OSCCTP-MIB:INFINERA-PM-SCHCTP-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - ifName + temperature: + data: + - + oid: INFINERA-ENTITY-CHASSIS-MIB::chassisTable + value: INFINERA-ENTITY-CHASSIS-MIB::chassisInletTemperature + num_oid: '.1.3.6.1.4.1.21296.2.2.2.1.13.1.1.9.{{ $index }}' + descr: 'Chassis {{ $index }} Inlet' + index: 'chassisInletTemperature.{{ $index }}' + + dbm: + data: + - + oid: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealTable + value: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealBandOptTx + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.1.1.1.9.{{ $index }}' + descr: '{{ $ifName }} Band-C optical power transmitted' + index: 'bandCtpPmRealBandOptTx.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + - + oid: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealTable + value: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealBandOpr + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.1.1.1.3.{{ $index }}' + descr: '{{ $ifName }} Band-C Optical Power Received' + index: 'bandCtpPmRealBandOpr.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + - + oid: INFINERA-PM-OSCCTP-MIB::oscCtpPmRealTable + value: INFINERA-PM-OSCCTP-MIB::oscCtpPmRealOscOPT + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.10.1.1.2.{{ $index }}' + descr: '{{ $ifName }} OSC Optical Power Transmitted' + index: 'oscCtpPmRealOscOPT.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + divisor: 100 + - + oid: INFINERA-PM-OSCCTP-MIB::oscCtpPmRealTable + value: INFINERA-PM-OSCCTP-MIB::oscCtpPmRealOscOPR + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.10.1.1.3.{{ $index }}' + descr: '{{ $ifName }} OSC Optical Power Received' + index: 'oscCtpPmRealOscOPR.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + divisor: 100 + - + oid: INFINERA-PM-SCHCTP-MIB::schCtpPmRealTable + value: INFINERA-PM-SCHCTP-MIB::schCtpPmRealSchOpt + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.38.1.1.4.{{ $index }}' + descr: '{{ $ifName }} SCH Optical Power Transmitted' + index: 'schCtpPmRealSchOpt.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + divisor: 100 + - + oid: INFINERA-PM-SCHCTP-MIB::schCtpPmRealTable + value: INFINERA-PM-SCHCTP-MIB::schCtpPmRealSchOpr + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.38.1.1.7.{{ $index }}' + descr: '{{ $ifName }} SCH Optical Power Received' + index: 'schCtpPmRealSchOpr.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: '{{ $ifName }}' + divisor: 100 + signal_loss: + data: + - + oid: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealTable + value: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealOchSpanLoss + num_oid: '.1.3.6.1.4.1.21296.2.2.2.3.1.1.1.1.{{ $index }}' + descr: '{{ $ifName }} Span Loss' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + skip_values: + - + oid: INFINERA-PM-BANDCTP-MIB::bandCtpPmRealOchSpanLoss + op: '==' + value: '9.9000E+37' diff --git a/priv/profiles/os_discovery/ird.yaml b/priv/profiles/os_discovery/ird.yaml new file mode 100644 index 00000000..43718641 --- /dev/null +++ b/priv/profiles/os_discovery/ird.yaml @@ -0,0 +1,93 @@ +mib: PBI-4000P-5000P-MIB +modules: + sensors: + dbm: + data: + - + oid: tunerBER + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.1.7.{{ $index }}' + descr: 'BER' + index: 'tunerBER.{{ $index }}' + - + oid: tunerCN + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.1.8.{{ $index }}' + descr: 'C/N' + index: 'tunerCN.{{ $index }}' + divisor: 10 + - + oid: tunerEbNo + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.1.9.{{ $index }}' + descr: 'Eb/N0' + index: 'tunerEbNo.{{ $index }}' + divisor: 10 + signal: + data: + - + oid: tunerStrength + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.1.6.{{ $index }}' + descr: 'Signal Strength' + index: 'tunerStrength.{{ $index }}' + divisor: -10 + state: + data: + - + oid: tunerLock + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.1.1.{{ $index }}' + descr: Tuner Lock + state_name: tunerLock + states: + - { descr: No, graph: 1, value: 0, generic: 3 } + - { descr: Yes, graph: 1, value: 1, generic: 0 } + - + oid: lnbVoltage + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.3.4.{{ $index }}' + descr: LNB Voltage + state_name: lnbVoltage + states: + - { descr: Off, graph: 1, value: 0, generic: 3 } + - { descr: 13V, graph: 1, value: 1, generic: 0 } + - { descr: 18V, graph: 1, value: 2, generic: 0 } + - + oid: lnb22KHz + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.3.5.{{ $index }}' + descr: LNB 22KHz + state_name: lnb22KHz + states: + - { descr: Off, graph: 1, value: 0, generic: 3 } + - { descr: On, graph: 1, value: 1, generic: 0 } + - + oid: diseqc + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.3.6.{{ $index }}' + descr: DiSEqC + state_name: diseq + states: + - { descr: Off, graph: 1, value: 0, generic: 3 } + - { descr: PortA, graph: 1, value: 1, generic: 0 } + - { descr: PortB, graph: 1, value: 2, generic: 0 } + - { descr: PortC, graph: 1, value: 3, generic: 0 } + - { descr: PortD, graph: 1, value: 4, generic: 0 } + - + oid: linkStatus + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.1.3.4.{{ $index }}' + descr: Eth Link Status + state_name: linkStatus + states: + - { descr: Off, graph: 1, value: 0, generic: 3 } + - { descr: 10 MB, graph: 1, value: 1, generic: 2 } + - { descr: 100 MB, graph: 1, value: 2, generic: 0 } + - + oid: ciSource + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.11.1.{{ $index }}' + descr: CI Source + state_name: ciSource + states: + - { descr: ASI, graph: 1, value: 0, generic: 0 } + - { descr: Tuner, graph: 1, value: 1, generic: 0 } + - + oid: ciLock + num_oid: '.1.3.6.1.4.1.1070.3.1.1.104.11.6.{{ $index }}' + descr: CI Lock + state_name: ciLock + states: + - { descr: No, graph: 1, value: 0, generic: 3 } + - { descr: Yes, graph: 1, value: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/ironware.yaml b/priv/profiles/os_discovery/ironware.yaml new file mode 100644 index 00000000..c8270b5d --- /dev/null +++ b/priv/profiles/os_discovery/ironware.yaml @@ -0,0 +1,244 @@ +mib: FOUNDRY-SN-AGENT-MIB:FOUNDRY-SN-SWITCH-GROUP-MIB:FOUNDRY-SN-STACKING-MIB +modules: + mempools: + additional_oids: + oids: + - FOUNDRY-SN-AGENT-MIB::snAgentBrdMainBrdDescription + data: +# - +# total: FOUNDRY-SN-AGENT-MIB::snAgGblDynMemTotal +# free: FOUNDRY-SN-AGENT-MIB::snAgGblDynMemFree +# type: ironware-dyn +# descr: 'Dynamic Memory' + - + total: FOUNDRY-SN-AGENT-MIB::snAgSystemDRAMTotal + free: FOUNDRY-SN-AGENT-MIB::snAgSystemDRAMFree + descr: 'System Memory' + type: ironware-system + - + total: FOUNDRY-SN-AGENT-MIB::snAgentBrdMemoryTotal + percent_used: FOUNDRY-SN-AGENT-MIB::snAgentBrdMemoryUtil100thPercent + type: ironware-dyn + descr: '{{ FOUNDRY-SN-AGENT-MIB::snAgentBrdMainBrdDescription }}' + os: + hardware_mib: FOUNDRY-SN-ROOT-MIB + sysDescr_regex: '/IronWare Version V(?.*) Compiled on/' + serial: FOUNDRY-SN-AGENT-MIB::snChasSerNum.0 + version: FOUNDRY-SN-AGENT-MIB::snAgImgVer.0 +# version: FOUNDRY-SN-AGENT-MIB::snAgBuildVer.0 + sensors: + additional_oids: + data: + - + oid: + - ifDescr + - snAgentTemp2SensorDescr + dbm: + data: + - + oid: snIfOpticalMonitoringInfoTable + value: snIfOpticalMonitoringRxPower + num_oid: '.1.3.6.1.4.1.1991.1.1.3.3.6.1.3.{{ $index }}' + descr: '{{ $ifDescr }} Rx Power' + index: 'snIfOpticalMonitoringRxPower.{{ $index }}' + - + oid: snIfOpticalMonitoringInfoTable + value: snIfOpticalMonitoringTxPower + num_oid: '.1.3.6.1.4.1.1991.1.1.3.3.6.1.2.{{ $index }}' + descr: '{{ $ifDescr }} Tx Power' + index: 'snIfOpticalMonitoringTxPower.{{ $index }}' + count: + data: + - + oid: FOUNDRY-POE-MIB::snAgentPoeGblPowerAllocationsRequestsHonored + value: FOUNDRY-POE-MIB::snAgentPoeGblPowerAllocationsRequestsHonored + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.1.3.{{ $index }}' + index: 'snAgentPoeGblPowerAllocationsRequestsHonored.{{ $index }}' + descr: 'Allocations Requests Honored' + - + oid: FOUNDRY-POE-MIB::snAgentPoeUnitTable + value: FOUNDRY-POE-MIB::snAgentPoeUnitPowerAllocationsRequestsHonored + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.4.1.1.4.{{ $index }}' + index: 'snAgentPoeUnitPowerAllocationsRequestsHonored.{{ $index }}' + group: 'Unit PoE' + descr: 'Unit {{ $index }} Allocations Requests Honored' + current: + options: + divisor: 1000 + data: + - + oid: snIfOpticalMonitoringInfoTable + value: snIfOpticalMonitoringTxBiasCurrent + num_oid: '.1.3.6.1.4.1.1991.1.1.3.3.6.1.4.{{ $index }}' + descr: '{{ $ifDescr }} Tx Bias Current' + index: 'snIfOpticalMonitoringTxBiasCurrent.{{ $index }}' + power: + data: + - + oid: FOUNDRY-POE-MIB::snAgentPoeGblPowerCapacityTotal + value: FOUNDRY-POE-MIB::snAgentPoeGblPowerCapacityTotal + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.1.1.{{ $index }}' + index: 'snAgentPoeGblPowerCapacityTotal.{{ $index }}' + group: 'Device PoE' + divisor: 1000 + descr: 'Total Power Capacity' + - + oid: FOUNDRY-POE-MIB::snAgentPoeGblPowerCapacityFree + value: FOUNDRY-POE-MIB::snAgentPoeGblPowerCapacityFree + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.1.2.{{ $index }}' + index: 'snAgentPoeGblPowerCapacityFree.{{ $index }}' + group: 'Device PoE' + divisor: 1000 + descr: 'Free Power Capacity' + - + oid: FOUNDRY-POE-MIB::snAgentPoePortTable + value: FOUNDRY-POE-MIB::snAgentPoePortConsumed + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.2.2.1.6.{{ $index }}' + index: 'snAgentPoePortConsumed.{{ $index }}' + group: 'Port PoE' + divisor: 1000 + descr: 'Port {{ ifDescr }} Consumed Power' + - + oid: FOUNDRY-POE-MIB::snAgentPoeUnitTable + value: FOUNDRY-POE-MIB::snAgentPoeUnitPowerCapacityTotal + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.4.1.1.2.{{ $index }}' + index: 'snAgentPoeUnitPowerCapacityTotal.{{ $index }}' + group: 'Unit PoE' + divisor: 1000 + descr: 'Unit {{ $index }} Total Power' + - + oid: FOUNDRY-POE-MIB::snAgentPoeUnitTable + value: FOUNDRY-POE-MIB::snAgentPoeUnitPowerCapacityFree + num_oid: '.1.3.6.1.4.1.1991.1.1.2.14.4.1.1.3.{{ $index }}' + index: 'snAgentPoeUnitPowerCapacityFree.{{ $index }}' + group: 'Unit PoE' + divisor: 1000 + descr: 'Unit {{ $index }} Free Power' + temperature: + data: + - + oid: snAgentTempTable + value: snAgentTempValue + divisor: 2 + num_oid: '.1.3.6.1.4.1.1991.1.1.2.13.1.1.4.{{ $index }}' + descr: snAgentTempSensorDescr + index: '{{ $index }}' + group: 'Module Temperatures' + skip_values: + - + oid: snAgentTemp2SensorDescr.1.1.1 + op: 'exists' + value: true + - + oid: snAgentTemp2Table + value: snAgentTemp2Value + divisor: 2 + num_oid: '.1.3.6.1.4.1.1991.1.1.2.13.3.1.5.{{ $index }}' + descr: '{{ $subindex0 }}/{{ $subindex1 }} {{ $snAgentTemp2SensorDescr }}' + index: '{{ $index }}' + group: 'Module Temperatures' + - + oid: snIfOpticalMonitoringInfoTable + value: snIfOpticalMonitoringTemperature + num_oid: '.1.3.6.1.4.1.1991.1.1.3.3.6.1.1.{{ $index }}' + descr: '{{ $ifDescr }} Tx Laser' + index: 'snIfOpticalMonitoringTemperature.{{ $index }}' + group: 'Transceiver Temperatures' + state: + data: + - + oid: snChasPwrSupplyTable + value: snChasPwrSupplyOperStatus + num_oid: '.1.3.6.1.4.1.1991.1.1.1.2.1.1.3.{{ $index }}' + descr: 'Power Supply {{ $index }}' + index: '{{ $index }}' + skip_values: 1 + group: Power Supply Status + state_name: snChasPwrSupplyOperStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: normal, graph: 1, generic: 0 } + - { value: 3, descr: failure, graph: 0, generic: 2 } + - + oid: snChasFanTable + value: snChasFanOperStatus + num_oid: '.1.3.6.1.4.1.1991.1.1.1.3.1.1.3.{{ $index }}' + descr: '{{ $snChasFanDescription }}' + index: 'snChasFanOperStatus.{{ $index }}' + group: Fan Status + state_name: snChasFanOperStatus + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: normal, graph: 1, generic: 0 } + - { value: 3, descr: failure, graph: 0, generic: 2 } + - + oid: snStackingGlobalConfigState + num_oid: '.1.3.6.1.4.1.1991.1.1.3.31.1.1.{{ $index }}' + descr: 'Global Stack Config State' + index: 'snStackingGlobalConfigState.{{ $index }}' + group: Stacking Status + state_name: snStackingGlobalConfigState + states: + - { value: 0, descr: none, graph: 0, generic: 3 } + - { value: 1, descr: enabled, graph: 1, generic: 0 } + - { value: 2, descr: disabled, graph: 0, generic: 0 } + - + oid: snStackingOperUnitTable + value: snStackingOperUnitState + num_oid: '.1.3.6.1.4.1.1991.1.1.3.31.2.2.1.5.{{ $index }}' + descr: 'Unit {{ $index }} Stack State' + index: 'snStackingOperUnitState.{{ $index }}' + skip_values: + - + oid: snStackingGlobalConfigState.0 + op: '!=' + value: 1 + group: Stacking Status + state_name: snStackingOperUnitState + states: + - { value: 1, descr: local, graph: 0, generic: 0 } + - { value: 2, descr: remote, graph: 1, generic: 0 } + - { value: 3, descr: reserved, graph: 0, generic: 2 } + - { value: 4, descr: empty, graph: 0, generic: 2 } + - + oid: snStackingOperUnitTable + value: snStackingOperUnitStackPort1State + num_oid: '.1.3.6.1.4.1.1991.1.1.3.31.2.2.1.8.{{ $index }}' + descr: 'Unit {{ $index }} Stack-port 1 to Unit {{ $snStackingOperUnitNeighbor1 }}' + index: 'snStackingOperUnitStackPort1State.{{ $index }}' + skip_values: + - + oid: snStackingGlobalConfigState.0 + op: '!=' + value: 1 + - + oid: snStackingOperUnitStackPort1 + op: '=' + value: 0 + group: Stacking Status + state_name: snStackingOperUnitStackPortState + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: up, graph: 1, generic: 0 } + - { value: 3, descr: down, graph: 0, generic: 2 } + - + oid: snStackingOperUnitTable + value: snStackingOperUnitStackPort2State + num_oid: '.1.3.6.1.4.1.1991.1.1.3.31.2.2.1.10.{{ $index }}' + descr: 'Unit {{ $index }} Stack-port 2 to Unit {{ $snStackingOperUnitNeighbor2 }}' + index: 'snStackingOperUnitStackPort2State.{{ $index }}' + skip_values: + - + oid: snStackingGlobalConfigState.0 + op: '!=' + value: 1 + - + oid: snStackingOperUnitStackPort2 + op: '=' + value: 0 + group: Stacking Status + state_name: snStackingOperUnitStackPortState + states: + - { value: 1, descr: other, graph: 0, generic: 3 } + - { value: 2, descr: up, graph: 1, generic: 0 } + - { value: 3, descr: down, graph: 0, generic: 2 } diff --git a/priv/profiles/os_discovery/ise.yaml b/priv/profiles/os_discovery/ise.yaml new file mode 100644 index 00000000..2f6fde2f --- /dev/null +++ b/priv/profiles/os_discovery/ise.yaml @@ -0,0 +1,11 @@ +mib: ENTITY-MIB +modules: + os: + hardware: + - ENTITY-MIB::entPhysicalModelName.1 + - ENTITY-MIB::entPhysicalHardwareRev.1 + hardware_template: '{{ ENTITY-MIB::entPhysicalModelName.1 }} rev {{ ENTITY-MIB::entPhysicalHardwareRev.1 }}' + serial: + - ENTITY-MIB::entPhysicalSerialNum.1 + version: + - ENTITY-MIB::entPhysicalSoftwareRev.1 diff --git a/priv/profiles/os_discovery/istars.yaml b/priv/profiles/os_discovery/istars.yaml new file mode 100644 index 00000000..d2d5e1b8 --- /dev/null +++ b/priv/profiles/os_discovery/istars.yaml @@ -0,0 +1,12 @@ +modules: + os: + sysDescr_regex: '/_SWV(?.*)$/' + hardware: + - UPS-MIB::upsIdentManufacturer.0 + - UPS-MIB::upsIdentModel.0 + hardware_template: '{{ UPS-MIB::upsIdentManufacturer.0 }} {{ UPS-MIB::upsIdentModel.0 }}' + version: + - UPS-MIB::upsIdentAgentSoftwareVersion.0 + - UPS-MIB::upsIdentUPSSoftwareVersion.0 + version_template: '{{ UPS-MIB::upsIdentAgentSoftwareVersion.0 }} {{ UPS-MIB::upsIdentUPSSoftwareVersion.0 }}' + features: UPS-MIB::upsIdentAttachedDevices.0 diff --git a/priv/profiles/os_discovery/janitza-umg96.yaml b/priv/profiles/os_discovery/janitza-umg96.yaml new file mode 100644 index 00000000..8a30f151 --- /dev/null +++ b/priv/profiles/os_discovery/janitza-umg96.yaml @@ -0,0 +1,356 @@ +mib: JANITZA-MIB-UMG96 +modules: + sensors: + additional_oids: + data: + - + oid: + - janitza + + power_consumed: + options: + divisor: 10 + data: + - + oid: whL1 + num_oid: .1.3.6.1.4.1.34278.3.1.{{ $index }} + index: whL1.{{ $index }} + descr: 'L1' + - + oid: whL2 + num_oid: .1.3.6.1.4.1.34278.3.2.{{ $index }} + index: whL2.{{ $index }} + descr: 'L2' + - + oid: whL3 + num_oid: .1.3.6.1.4.1.34278.3.3.{{ $index }} + index: whL3.{{ $index }} + descr: 'L3' + - + oid: wh3 + num_oid: .1.3.6.1.4.1.34278.4.1.{{ $index }} + index: wh3.{{ $index }} + group: 'Sum' + descr: 'L1-L3' + - + oid: qh3 + num_oid: .1.3.6.1.4.1.34278.4.2.{{ $index }} + index: qh3.{{ $index }} + group: 'Sum' + descr: 'L1-L3 Reactive' + voltage: + options: + divisor: 10 + skip_value_lt: 40 + data: + - + oid: uLN1 + num_oid: .1.3.6.1.4.1.34278.1.1.{{ $index }} + index: uLN1.{{ $index }} + group: 'L to N' + descr: 'L1' + - + oid: uLN2 + num_oid: .1.3.6.1.4.1.34278.1.2.{{ $index }} + index: uLN2.{{ $index }} + group: 'L to N' + descr: 'L2' + - + oid: uLN3 + num_oid: .1.3.6.1.4.1.34278.1.3.{{ $index }} + index: uLN3.{{ $index }} + group: 'L to N' + descr: 'L3' + - + oid: uL1L2 + num_oid: .1.3.6.1.4.1.34278.1.4.{{ $index }} + index: uL1L2.{{ $index }} + group: 'L to L' + descr: 'L1 to L2' + - + oid: uL2L3 + num_oid: .1.3.6.1.4.1.34278.1.5.{{ $index }} + index: uL2L3.{{ $index }} + group: 'L to L' + descr: 'L2 to L3' + - + oid: uL3L1 + num_oid: .1.3.6.1.4.1.34278.1.6.{{ $index }} + index: uL3L1.{{ $index }} + group: 'L to L' + descr: 'L3 to L1' + current: + options: + divisor: 1000 + data: + - + oid: iL1 + num_oid: .1.3.6.1.4.1.34278.1.7.{{ $index }} + index: iL1.{{ $index }} + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: iL2 + num_oid: .1.3.6.1.4.1.34278.1.8.{{ $index }} + index: iL2.{{ $index }} + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: iL3 + num_oid: .1.3.6.1.4.1.34278.1.9.{{ $index }} + index: iL3.{{ $index }} + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + power: + data: + - + oid: pL1 + num_oid: .1.3.6.1.4.1.34278.1.13.{{ $index }} + index: pL1.{{ $index }} + group: 'Real' + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: pL2 + num_oid: .1.3.6.1.4.1.34278.1.14.{{ $index }} + index: pL2.{{ $index }} + group: 'Real' + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: pL3 + num_oid: .1.3.6.1.4.1.34278.1.15.{{ $index }} + index: pL3.{{ $index }} + group: 'Real' + descr: L3 + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: p3 + num_oid: .1.3.6.1.4.1.34278.2.1.{{ $index }} + index: p3.{{ $index }} + group: 'Real' + descr: 'SUM L1-3' + - + oid: qL1 + num_oid: .1.3.6.1.4.1.34278.1.16.{{ $index }} + index: qL1.{{ $index }} + group: 'Reactiv' + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: qL2 + num_oid: .1.3.6.1.4.1.34278.1.17.{{ $index }} + index: qL2.{{ $index }} + group: 'Reactiv' + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: qL3 + num_oid: .1.3.6.1.4.1.34278.1.18.{{ $index }} + index: qL3.{{ $index }} + group: 'Reactiv' + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: q3 + num_oid: .1.3.6.1.4.1.34278.2.2.{{ $index }} + index: q3.{{ $index }} + group: 'Reactiv' + descr: 'SUM L1-3' + - + oid: sL1 + num_oid: .1.3.6.1.4.1.34278.1.19.{{ $index }} + index: sL1.{{ $index }} + group: 'Complex' + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: sL2 + num_oid: .1.3.6.1.4.1.34278.1.20.{{ $index }} + index: sL2.{{ $index }} + group: 'Complex' + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: sL3 + num_oid: .1.3.6.1.4.1.34278.1.21.{{ $index }} + index: sL3.{{ $index }} + group: 'Complex' + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: s3 + num_oid: .1.3.6.1.4.1.34278.2.3.{{ $index }} + index: s3.{{ $index }} + group: 'Complex' + descr: 'SUM L1-3' + quality_factor: + data: + - + oid: cosPL1 + num_oid: .1.3.6.1.4.1.34278.1.22.{{ $index }} + index: cosPL1.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L1' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: cosPL2 + num_oid: .1.3.6.1.4.1.34278.1.23.{{ $index }} + index: cosPL2.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L2' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: cosPL3 + num_oid: .1.3.6.1.4.1.34278.1.24.{{ $index }} + index: cosPL3.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L3' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: thdULN1 + num_oid: .1.3.6.1.4.1.34278.5.1.{{ $index }} + index: thdULN1.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: thdULN2 + num_oid: .1.3.6.1.4.1.34278.5.2.{{ $index }} + index: thdULN2.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: thdULN3 + num_oid: .1.3.6.1.4.1.34278.5.3.{{ $index }} + index: thdULN3.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: thdIL1 + num_oid: .1.3.6.1.4.1.34278.5.4.{{ $index }} + index: thdIL1.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: thdIL2 + num_oid: .1.3.6.1.4.1.34278.5.5.{{ $index }} + index: thdIL2.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: thdIL3 + num_oid: .1.3.6.1.4.1.34278.5.6.{{ $index }} + index: thdIL3.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + frequency: + options: + divisor: 100 + data: + - + oid: frequence + num_oid: .1.3.6.1.4.1.34278.6.1.{{ $index }} + index: frequenz.{{ $index }} + descr: 'Frequency' diff --git a/priv/profiles/os_discovery/janitza.yaml b/priv/profiles/os_discovery/janitza.yaml new file mode 100644 index 00000000..f41b7ba0 --- /dev/null +++ b/priv/profiles/os_discovery/janitza.yaml @@ -0,0 +1,441 @@ +mib: JANITZA-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - janitza + power_consumed: + options: + divisor: 10 + data: + - + oid: whL1 + num_oid: .1.3.6.1.4.1.34278.4.1.{{ $index }} + index: whL1.{{ $index }} + descr: 'L1' + - + oid: whL2 + num_oid: .1.3.6.1.4.1.34278.4.2.{{ $index }} + index: whL2.{{ $index }} + descr: 'L2' + - + oid: whL3 + num_oid: .1.3.6.1.4.1.34278.4.3.{{ $index }} + index: whL3.{{ $index }} + descr: 'L3' + - + oid: whL4 + num_oid: .1.3.6.1.4.1.34278.4.4.{{ $index }} + index: whL4.{{ $index }} + descr: 'L4' + - + oid: wh3 + num_oid: .1.3.6.1.4.1.34278.5.1.{{ $index }} + index: wh3.{{ $index }} + group: 'Sum' + descr: 'L1-L3' + - + oid: qh3 + num_oid: .1.3.6.1.4.1.34278.5.2.{{ $index }} + index: qh3.{{ $index }} + group: 'Sum' + descr: 'L1-L3 Reactive' + voltage: + options: + divisor: 10 + skip_value_lt: 40 + data: + - + oid: uLN1 + num_oid: .1.3.6.1.4.1.34278.1.1.{{ $index }} + index: uLN1.{{ $index }} + group: 'L to N' + descr: 'L1' + - + oid: uLN2 + num_oid: .1.3.6.1.4.1.34278.1.2.{{ $index }} + index: uLN2.{{ $index }} + group: 'L to N' + descr: 'L2' + - + oid: uLN3 + num_oid: .1.3.6.1.4.1.34278.1.3.{{ $index }} + index: uLN3.{{ $index }} + group: 'L to N' + descr: 'L3' + - + oid: uLN4 + num_oid: .1.3.6.1.4.1.34278.1.4.{{ $index }} + index: uLN4.{{ $index }} + group: 'L to N' + descr: 'L4' + - + oid: uL1L2 + num_oid: .1.3.6.1.4.1.34278.1.5.{{ $index }} + index: uL1L2.{{ $index }} + group: 'L to L' + descr: 'L1 to L2' + - + oid: uL2L3 + num_oid: .1.3.6.1.4.1.34278.1.6.{{ $index }} + index: uL2L3.{{ $index }} + group: 'L to L' + descr: 'L2 to L3' + - + oid: uL3L1 + num_oid: .1.3.6.1.4.1.34278.1.7.{{ $index }} + index: uL3L1.{{ $index }} + group: 'L to L' + descr: 'L3 to L1' + current: + options: + divisor: 1000 + data: + - + oid: iL1 + num_oid: .1.3.6.1.4.1.34278.1.8.{{ $index }} + index: iL1.{{ $index }} + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: iL2 + num_oid: .1.3.6.1.4.1.34278.1.9.{{ $index }} + index: iL2.{{ $index }} + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: iL3 + num_oid: .1.3.6.1.4.1.34278.1.10.{{ $index }} + index: iL3.{{ $index }} + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: iL4 + num_oid: .1.3.6.1.4.1.34278.1.11.{{ $index }} + index: iL4.{{ $index }} + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + power: + data: + - + oid: pL1 + num_oid: .1.3.6.1.4.1.34278.1.12.{{ $index }} + index: pL1.{{ $index }} + group: 'Real' + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: pL2 + num_oid: .1.3.6.1.4.1.34278.1.13.{{ $index }} + index: pL2.{{ $index }} + group: 'Real' + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: pL3 + num_oid: .1.3.6.1.4.1.34278.1.14.{{ $index }} + index: pL3.{{ $index }} + group: 'Real' + descr: L3 + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: pL4 + num_oid: .1.3.6.1.4.1.34278.1.15.{{ $index }} + index: pL4.{{ $index }} + group: 'Real' + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + - + oid: p3 + num_oid: .1.3.6.1.4.1.34278.2.1.{{ $index }} + index: p3.{{ $index }} + group: 'Real' + descr: 'SUM L1-3' + - + oid: qL1 + num_oid: .1.3.6.1.4.1.34278.1.16.{{ $index }} + index: qL1.{{ $index }} + group: 'Reactiv' + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: qL2 + num_oid: .1.3.6.1.4.1.34278.1.17.{{ $index }} + index: qL2.{{ $index }} + group: 'Reactiv' + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: qL3 + num_oid: .1.3.6.1.4.1.34278.1.18.{{ $index }} + index: qL3.{{ $index }} + group: 'Reactiv' + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: qL4 + num_oid: .1.3.6.1.4.1.34278.1.19.{{ $index }} + index: iL4.{{ $index }} + group: 'Reactiv' + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + - + oid: q3 + num_oid: .1.3.6.1.4.1.34278.2.2.{{ $index }} + index: q3.{{ $index }} + group: 'Reactiv' + descr: 'SUM L1-3' + - + oid: sL1 + num_oid: .1.3.6.1.4.1.34278.1.20.{{ $index }} + index: sL1.{{ $index }} + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: sL2 + num_oid: .1.3.6.1.4.1.34278.1.21.{{ $index }} + index: sL2.{{ $index }} + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: sL3 + num_oid: .1.3.6.1.4.1.34278.1.22.{{ $index }} + index: sL3.{{ $index }} + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: sL4 + num_oid: .1.3.6.1.4.1.34278.1.23.{{ $index }} + index: iL4.{{ $index }} + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + - + oid: s3 + num_oid: .1.3.6.1.4.1.34278.2.3.{{ $index }} + index: s3.{{ $index }} + descr: 'SUM L1-3' + quality_factor: + data: + - + oid: cosPL1 + num_oid: .1.3.6.1.4.1.34278.1.24.{{ $index }} + index: cosPL1.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L1' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: cosPL2 + num_oid: .1.3.6.1.4.1.34278.1.25.{{ $index }} + index: cosPL2.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L2' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: cosPL3 + num_oid: .1.3.6.1.4.1.34278.1.26.{{ $index }} + index: cosPL3.{{ $index }} + group: 'Cos Phi' + divisor: 1000 + descr: 'L3' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: cosP4 + num_oid: .1.3.6.1.4.1.34278.1.27.{{ $index }} + index: cosPL4.{{ $index }} + group: Cos Phi + divisor: 1000 + descr: 'L4' + low_warn_limit: '0.9' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + - + oid: thdULN1 + num_oid: .1.3.6.1.4.1.34278.7.1.{{ $index }} + index: thdULN1.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: thdULN2 + num_oid: .1.3.6.1.4.1.34278.7.2.{{ $index }} + index: thdULN2.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: thdULN3 + num_oid: .1.3.6.1.4.1.34278.7.3.{{ $index }} + index: thdULN3.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: thdULN4 + num_oid: .1.3.6.1.4.1.34278.7.4.{{ $index }} + index: thdULN4.{{ $index }} + group: 'Harmonic Distortion Current' + divisor: 10 + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + - + oid: thdIL1 + num_oid: .1.3.6.1.4.1.34278.7.5.{{ $index }} + index: thdIL1.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L1' + skip_values: + - + oid: uLN1 + op: '<' + value: 40 + - + oid: thdIL2 + num_oid: .1.3.6.1.4.1.34278.7.6.{{ $index }} + index: thdIL2.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L2' + skip_values: + - + oid: uLN2 + op: '<' + value: 40 + - + oid: thdIL3 + num_oid: .1.3.6.1.4.1.34278.7.7.{{ $index }} + index: thdIL3.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L3' + skip_values: + - + oid: uLN3 + op: '<' + value: 40 + - + oid: thdIL4 + num_oid: .1.3.6.1.4.1.34278.7.8.{{ $index }} + index: thdIL4.{{ $index }} + group: 'Harmonic Distortion Voltage' + divisor: 10 + descr: 'L4' + skip_values: + - + oid: uLN4 + op: '<' + value: 40 + frequency: + options: + divisor: 100 + data: + - + oid: frequenz + num_oid: .1.3.6.1.4.1.34278.8.1.{{ $index }} + index: frequenz.{{ $index }} + descr: 'Frequency' diff --git a/priv/profiles/os_discovery/jetdirect.yaml b/priv/profiles/os_discovery/jetdirect.yaml new file mode 100644 index 00000000..2359d2f1 --- /dev/null +++ b/priv/profiles/os_discovery/jetdirect.yaml @@ -0,0 +1,77 @@ +mib: HP-LASERJET-COMMON-MIB +modules: + os: + serial: + - Printer-MIB::prtGeneralSerialNumber.1 + - HP-LASERJET-COMMON-MIB::serial-number.0 + version: + - HP-LASERJET-COMMON-MIB::fw-rom-revision.0 + - HP-LASERJET-COMMON-MIB::fw-rom-datecode.0 + hardware: + - HP-LASERJET-COMMON-MIB::model-name.0 + features: + - HP-LASERJET-COMMON-MIB::mio1-manufacturing-info.0 + - HP-LASERJET-COMMON-MIB::mio2-manufacturing-info.0 + - HP-LASERJET-COMMON-MIB::mio3-manufacturing-info.0 + - HP-LASERJET-COMMON-MIB::mio4-manufacturing-info.0 + + sensors: + state: + data: + - + oid: default-media-size + value: default-media-size + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.3.3.1.13.{{ $index }}' + descr: 'Default Paper {{ $index }}' + state_name: defaultMediaSize + states: + - { graph: 0, value: 1, generic: 0, descr: US_Executive } + - { graph: 0, value: 2, generic: 0, descr: US_Letter } + - { graph: 0, value: 2, generic: 0, descr: US_Legal } + - { graph: 0, value: 25, generic: 0, descr: ISO_A5 } + - { graph: 0, value: 26, generic: 0, descr: ISO_A4 } + + count: + data: + - + oid: scanner + value: scanner-flatbed-page-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.2.2.1.74.{{ $index }}' + group: "HP-Scanner" + descr: "Lifetime scanned" + index: 'scannerFlatbedPageCount.{{ $index }}' + - + oid: total-engine-page-count + value: total-engine-page-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.5.{{ $index }}' + group: "HP-Printer" + descr: "Total page cnt" + index: 'totalEnginePageCount.{{ $index }}' + - + oid: total-mono-page-count + value: total-mono-page-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.6.{{ $index }}' + group: "HP-Printer" + descr: "Total Mono cnt" + index: 'totalMonoPageCount.{{ $index }}' + - + oid: total-color-page-count + value: total-color-page-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.7.{{ $index }}' + group: "HP-Printer" + descr: "Total Color cnt" + index: 'totalColorPageCount.{{ $index }}' + - + oid: duplex-page-count + value: duplex-page-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.22.{{ $index }}' + group: "HP-Printer" + descr: "Total Duplex cnt" + index: 'duplexPageCount.{{ $index }}' + - + oid: print-engine-jam-count + value: print-engine-jam-count + num_oid: '.1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.34.{{ $index }}' + group: "HP-Printer" + descr: "Total Jam cnt" + index: 'printEngineJamCount.{{ $index }}' diff --git a/priv/profiles/os_discovery/jetstream.yaml b/priv/profiles/os_discovery/jetstream.yaml new file mode 100644 index 00000000..a6249bdb --- /dev/null +++ b/priv/profiles/os_discovery/jetstream.yaml @@ -0,0 +1,225 @@ +modules: + os: + hardware: TPLINK-SYSINFO-MIB::tpSysInfoHwVersion.0 + serial: TPLINK-SYSINFO-MIB::tpSysInfoSerialNum.0 + version: TPLINK-SYSINFO-MIB::tpSysInfoSwVersion.0 + mempools: + data: + - + percent_used: TPLINK-SYSMONITOR-MIB::tpSysMonitorMemoryUtilization + descr: 'Memory #{{ $index }}' + processors: + data: + - + oid: TPLINK-SYSMONITOR-MIB::tpSysMonitorCpu5Seconds + num_oid: '.1.3.6.1.4.1.11863.6.4.1.1.1.1.2.{{ $index }}' + index: '{{ $index }}' + descr: 'Proc #{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - TPLINK-DDMSTATUS-MIB::ddmStatusTable + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowAlarm + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowWarn + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighAlarm + - TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighWarn + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowAlarm + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowWarn + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighAlarm + - TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighWarn + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowAlarm + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowWarn + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighAlarm + - TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighWarn + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowAlarm + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowWarn + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighAlarm + - TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighWarn + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowAlarm + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowWarn + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighAlarm + - TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighWarn + - LLDP-MIB::lldpLocPortTable + current: + data: + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.4.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusBiasCurrent + descr: 'DDM Bias Current {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: 'ddmStatusBiasCurrent.{{ $index }}' + low_limit: TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowAlarm + low_warn_limit: TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdLowWarn + high_limit: TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighAlarm + warn_limit: TPLINK-DDMBIASCURTHRESHOLD-MIB::ddmBiasCurThresholdHighWarn + dbm: + data: + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.5.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusTxPow + descr: 'DDM TX Power {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: 'ddmStatusTxPow.{{ $index }}' + user_func: mw_to_dbm + low_limit: TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowAlarm + low_warn_limit: TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdLowWarn + high_limit: TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighAlarm + warn_limit: TPLINK-DDMTXPOWTHRESHOLD-MIB::ddmTxPowThresholdHighWarn + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.6.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusRxPow + descr: 'DDM RX Power {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: 'ddmStatusRxPow.{{ $index }}' + user_func: mw_to_dbm + low_limit: TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowAlarm + low_warn_limit: TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdLowWarn + high_limit: TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighAlarm + warn_limit: TPLINK-DDMRXPOWTHRESHOLD-MIB::ddmRxPowThresholdHighWarn + power: + data: + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoeGlobal + num_oid: '.1.3.6.1.4.1.11863.6.56.1.1.1.3.{{ $index }}' + value: TPLINK-POWER-OVER-ETHERNET-MIB::tpSystemPowerConsumption + descr: 'Power Consumption' + divisor: 10 + index: tpSystemPowerConsumption + group: PoE + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoeGlobal + num_oid: '.1.3.6.1.4.1.11863.6.56.1.1.1.4.{{ $index }}' + value: TPLINK-POWER-OVER-ETHERNET-MIB::tpSystemPowerRemain + descr: 'Power Remaining' + divisor: 10 + index: tpSystemPowerRemain + group: PoE + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoeGlobal + num_oid: '.1.3.6.1.4.1.11863.6.56.1.1.1.1.{{ $index }}' + value: TPLINK-POWER-OVER-ETHERNET-MIB::tpSystemPowerLimit + descr: 'Power Limit' + divisor: 10 + index: tpSystemPowerLimit + group: PoE + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePortConfigTable + num_oid: '.1.3.6.1.4.1.11863.6.56.1.1.2.1.1.7.{{ $index }}' + value: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePower + descr: '{{ $LLDP-MIB::lldpLocPortDesc }}' + divisor: 10 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: PoE_Ports + index: 'tpPoePower.{{ $index }}' + high_limit: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePowerLimit + skip_values: + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePowerStatus + op: '=' + value: 0 + + state: + data: + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.7.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusDataReady + descr: 'DDM Data Ready {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: '{{ $index }}' + skip_values: 2 + states: &ddm_states + - {value: 0, generic: 0, graph: 0, descr: 'False'} + - {value: 1, generic: 2, graph: 1, descr: 'True'} + - {value: 2, generic: 2, graph: 2, descr: N/A} + state_name: ddmStatusDataReady + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.8.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusLossSignal + descr: 'DDM Loss of Signal {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: '{{ $index }}' + skip_values: 2 + states: *ddm_states + state_name: ddmStatusLossSignal + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.9.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusTxFault + descr: 'DDM TX Fault {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: '{{ $index }}' + skip_values: 2 + states: *ddm_states + state_name: ddmStatusTxFault + - + oid: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePortConfigTable + num_oid: '.1.3.6.1.4.1.11863.6.56.1.1.2.1.1.11.{{ $index }}' + value: TPLINK-POWER-OVER-ETHERNET-MIB::tpPoePowerStatus + descr: '{{ $LLDP-MIB::lldpLocPortDesc }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: PoE_Ports + index: 'tpPoePowerStatus.{{ $index }}' + states: + - {value: 0, generic: 3, graph: 1, descr: 'Off'} + - {value: 1, generic: 1, graph: 1, descr: 'Turning-on'} + - {value: 2, generic: 0, graph: 1, descr: 'On'} + - {value: 3, generic: 2, graph: 1, descr: 'Overload'} + - {value: 4, generic: 2, graph: 1, descr: 'Short'} + - {value: 5, generic: 1, graph: 1, descr: 'Nonstandard'} + - {value: 6, generic: 2, graph: 1, descr: 'VoltageHigh'} + - {value: 7, generic: 2, graph: 1, descr: 'VoltageLow'} + - {value: 8, generic: 2, graph: 1, descr: 'HardwareFault'} + - {value: 9, generic: 2, graph: 1, descr: 'OverTemperature'} + state_name: tpPoePowerStatus + temperature: + data: + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.2.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusTemperature + descr: 'DDM Temperature {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: 'ddmStatusTemperature.{{ $index }}' + low_limit: TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowAlarm + low_warn_limit: TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdLowWarn + high_limit: TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighAlarm + warn_limit: TPLINK-DDMTEMPTHRESHOLD-MIB::ddmTempThresholdHighWarn + voltage: + data: + - + oid: TPLINK-DDMSTATUS-MIB::ddmStatusTable + num_oid: '.1.3.6.1.4.1.11863.6.96.1.7.1.1.3.{{ $index }}' + value: TPLINK-DDMSTATUS-MIB::ddmStatusVoltage + descr: 'DDM Voltage {{ $TPLINK-DDMSTATUS-MIB::ddmStatusPort }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: SFPs + index: 'ddmStatusVoltage.{{ $index }}' + low_limit: TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowAlarm + low_warn_limit: TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdLowWarn + high_limit: TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighAlarm + warn_limit: TPLINK-DDMVOLTHRESHOLD-MIB::ddmVolThresholdHighWarn diff --git a/priv/profiles/os_discovery/juniper-mss.yaml b/priv/profiles/os_discovery/juniper-mss.yaml new file mode 100644 index 00000000..e1a199db --- /dev/null +++ b/priv/profiles/os_discovery/juniper-mss.yaml @@ -0,0 +1,15 @@ +mib: TRAPEZE-NETWORKS-SYSTEM-MIB +modules: + mempools: + data: + - + total: TRAPEZE-NETWORKS-SYSTEM-MIB::trpzSysCpuMemorySize + used: TRAPEZE-NETWORKS-SYSTEM-MIB::trpzSysCpuMemoryInstantUsage + precision: 1024 + os: + sysDescr_regex: '/Juniper Networks, Inc (?\S+) (?\S+)/' + processors: + data: + - + oid: trpzSysCpuInstantLoad + num_oid: '.1.3.6.1.4.1.14525.4.8.1.1.11.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/junos.yaml b/priv/profiles/os_discovery/junos.yaml new file mode 100644 index 00000000..31a54812 --- /dev/null +++ b/priv/profiles/os_discovery/junos.yaml @@ -0,0 +1,369 @@ +mib: JUNIPER-IFOPTICS-MIB:JNX-OPT-IF-EXT-MIB:IF-MIB:JUNIPER-MIB:JUNIPER-SRX5000-SPU-MONITORING-MIB:JUNIPER-ALARM-MIB:JUNIPER-VIRTUALCHASSIS-MIB:JUNIPER-VIRTUALCHASSIS-MIB:JUNIPER-RPM-MIB:POWER-ETHERNET-MIB +modules: + mempools: + data: + - + oid: JUNIPER-MIB::jnxOperatingTable + total: JUNIPER-MIB::jnxOperatingMemory + percent_used: JUNIPER-MIB::jnxOperatingBuffer + descr: '{{ JUNIPER-MIB::jnxOperatingDescr }}' + precision: 1048576 + skip_values: + - + oid: JUNIPER-MIB::jnxOperatingMemory + op: '=' + value: 0 + - + oid: JUNIPER-MIB::jnxOperatingDescr + op: 'regex' + value: '/(fan|sensor)/i' + - + oid: JUNIPER-SRX5000-SPU-MONITORING-MIB::jnxJsSPUMonitoringObjectsEntry + percent_used: JUNIPER-SRX5000-SPU-MONITORING-MIB::jnxJsSPUMonitoringMemoryUsage + descr: '{{ $JUNIPER-SRX5000-SPU-MONITORING-MIB::jnxJsSPUMonitoringNodeDescr }} SPU {{ $JUNIPER-SRX5000-SPU-MONITORING-MIB::jnxJsSPUMonitoringFPCIndex }}/{{ $JUNIPER-SRX5000-SPU-MONITORING-MIB::jnxJsSPUMonitoringSPUIndex }}' + processors: + data: + - + oid: jnxOperatingTable + value: jnxOperatingCPU + num_oid: '.1.3.6.1.4.1.2636.3.1.13.1.8.{{ $index }}' + descr: jnxOperatingDescr + skip_values: + - + oid: jnxOperatingMemory + op: '=' + value: 0 + - + oid: jnxOperatingDescr + op: 'regex' + value: '/(fan|sensor)/i' + - + oid: jnxJsSPUMonitoringObjectsEntry + value: jnxJsSPUMonitoringCPUUsage + num_oid: '.1.3.6.1.4.1.2636.3.39.1.12.1.1.1.4.{{ $index }}' + descr: '{{ $jnxJsSPUMonitoringNodeDescr }} SPU {{ $jnxJsSPUMonitoringFPCIndex }}/{{ $jnxJsSPUMonitoringSPUIndex }}' + sensors: + additional_oids: + data: + - + oid: + - ifDescr + - jnxFruName + ber: + data: + - + oid: JNX-OPT-IF-EXT-MIB::jnxoptIfOTNPMFECCurrentTable + value: JNX-OPT-IF-EXT-MIB::jnxoptIfOTNPMCurrentFECBERMantissa + num_oid: '.1.3.6.1.4.1.2636.3.73.1.3.3.8.1.5.{{ $index }}' + divisor: '1.0E+{{ JNX-OPT-IF-EXT-MIB::jnxoptIfOTNPMCurrentFECBERExponent }}' + descr: '{{ ifDescr:0 }} preFEC BER' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + chromatic_dispersion: + data: + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurChromaticDispersion + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.1.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifDescr }} CD' + group: transceiver + index: 'jnxPMCurChromaticDispersion.{{ $index }}' + delay: + data: + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurDiffGroupDelay + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.2.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 1000000000000 + descr: '{{ $ifDescr }} DGD' + group: transceiver + index: 'jnxPMCurDiffGroupDelay.{{ $index }}' + dbm: + data: + - + oid: JUNIPER-DOM-MIB::jnxDomCurrentTable + value: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPower + num_oid: '.1.3.6.1.4.1.2636.3.60.1.1.1.1.5.{{ $index }}' + descr: '{{ $ifDescr }} Rx Power' + divisor: 100 + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerLowAlarmThreshold + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerLowWarningThreshold + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerHighAlarmThreshold + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerHighWarningThreshold + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + index: 'rx-{{ $index }}' + group: transceiver + - + oid: JUNIPER-DOM-MIB::jnxDomCurrentTable + value: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPower + num_oid: '.1.3.6.1.4.1.2636.3.60.1.1.1.1.7.{{ $index }}' + descr: '{{ $ifDescr }} Tx Power' + divisor: 100 + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerLowAlarmThreshold + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerLowWarningThreshold + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerHighAlarmThreshold + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerHighWarningThreshold + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + index: 'tx-{{ $index }}' + group: transceiver + - + oid: JUNIPER-DOM-MIB::jnxDomModuleLaneTable + value: JUNIPER-DOM-MIB::jnxDomCurrentLaneRxLaserPower + num_oid: '.1.3.6.1.4.1.2636.3.60.1.2.1.1.6.{{ $index }}' + descr: '{{ ifDescr:0 }} lane {{ $subindex1 }} Rx Power' + divisor: 100 + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerLowAlarmThreshold:0 + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerLowWarningThreshold:0 + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerHighAlarmThreshold:0 + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentRxLaserPowerHighWarningThreshold:0 + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: 'ports' + index: 'rx-{{ $index }}' + group: transceiver + - + oid: JUNIPER-DOM-MIB::jnxDomModuleLaneTable + value: JUNIPER-DOM-MIB::jnxDomCurrentLaneTxLaserOutputPower + num_oid: '.1.3.6.1.4.1.2636.3.60.1.2.1.1.8.{{ $index }}' + descr: '{{ ifDescr:0 }} lane {{ $subindex1 }} Tx Power' + divisor: 100 + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerLowAlarmThreshold:0 + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerLowWarningThreshold:0 + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerHighAlarmThreshold:0 + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserOutputPowerHighWarningThreshold:0 + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: 'ports' + index: 'tx-{{ $index }}' + group: transceiver + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurRxInputPower + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.8.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 100 + descr: '{{ $ifDescr }} Rx Power' + group: transceiver + index: 'jnxPMCurRxInputPower.{{ $index }}' + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurTxOutputPower + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.7.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 100 + descr: '{{ $ifDescr }} Tx Power' + group: transceiver + index: 'jnxPMCurTxOutputPower.{{ $index }}' + quality_factor: + data: + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurQ + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.5.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 10 + descr: '{{ $ifDescr }} Q2-factor' + group: transceiver + index: 'jnxPMCurQ.{{ $index }}' + snr: + data: + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurSNR + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.6.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 10 + descr: '{{ $ifDescr }} electrical SNR' + group: transceiver + index: 'jnxPMCurSNR.{{ $index }}' + frequency: + data: + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurCarFreqOffset + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.43.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + multiplier: 1000000 + descr: '{{ $ifDescr }} Carrier Freq Offset' + group: transceiver + index: 'jnxPMCurCarFreqOffset.{{ $index }}' + temperature: + data: + - + oid: JUNIPER-MIB::jnxOperatingTable + value: JUNIPER-MIB::jnxOperatingTemp + num_oid: '.1.3.6.1.4.1.2636.3.1.13.1.7.{{ $index }}' + descr: JUNIPER-MIB::jnxOperatingDescr + skip_values: 0 + - + oid: JUNIPER-DOM-MIB::jnxDomCurrentTable + value: JUNIPER-DOM-MIB::jnxDomCurrentModuleTemperature + num_oid: '.1.3.6.1.4.1.2636.3.60.1.1.1.1.8.{{ $index }}' + descr: '{{ $ifDescr }} Temperature' + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentModuleTemperatureLowAlarmThreshold + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentModuleTemperatureLowWarningThreshold + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentModuleTemperatureHighAlarmThreshold + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentModuleTemperatureHighWarningThreshold + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + index: 'rx-{{ $index }}' # match old php discovery + group: transceiver + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurTemperature + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.39.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $ifDescr }} Temperature' + index: 'jnxPMCurTemperature.{{ $index }}' + group: transceiver + current: + data: + - + oid: JUNIPER-DOM-MIB::jnxDomCurrentTable + value: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserBiasCurrent + num_oid: '.1.3.6.1.4.1.2636.3.60.1.1.1.1.6.{{ $index }}' + descr: '{{ $ifDescr }} Tx Current' + divisor: 1000000 + skip_values: 0 + low_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserBiasCurrentLowAlarmThreshold + low_warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserBiasCurrentLowWarningThreshold + high_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserBiasCurrentHighAlarmThreshold + warn_limit: JUNIPER-DOM-MIB::jnxDomCurrentTxLaserBiasCurrentHighWarningThreshold + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + index: 'rx-{{ $index }}' + group: transceiver + - + oid: jnxOpticsPMCurrentTable + value: jnxPMCurTxLaserBiasCurrent + num_oid: '.1.3.6.1.4.1.2636.3.71.1.2.1.1.35.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + divisor: 1000 + descr: '{{ $ifDescr }} Tx Bias' + group: transceiver + index: 'jnxPMCurTxLaserBiasCurrent.{{ $index }}' + loss: + data: + - + oid: jnxRpmResultsSummaryTable + value: jnxRpmResSumPercentLost + num_oid: '.1.3.6.1.4.1.2636.3.50.1.2.1.{{ $index }}' + group: RPM Probes + descr: '{{ $index_string:s }} {{ $index_string:ss }} Probe Loss' + index: 'jnxRpmResSumPercentLost.{{ $index_string:s }}.{{ $index_string:ss }}.allTests' + skip_values: + - + oid: index + op: 'not_ends' + value: '.2' # only the last completed test result + count: + data: + - + oid: jnxJsSPUMonitoringObjectsTable + value: jnxJsSPUMonitoringCurrentFlowSession + num_oid: '.1.3.6.1.4.1.2636.3.39.1.12.1.1.1.6.{{ $index }}' + high_limit: jnxJsSPUMonitoringMaxFlowSession + group: Sessions + descr: 'Node {{ $jnxJsSPUMonitoringNodeIndex }} FPC {{ $jnxJsSPUMonitoringFPCIndex }} SPU {{ $jnxJsSPUMonitoringSPUIndex }} Flow Count' + index: 'jnxJsSPUMonitoringCurrentFlowSession.{{ $index }}' + skip_values: + - 0 + - + oid: jnxJsSPUMonitoringObjectsTable + value: jnxJsSPUMonitoringCurrentCPSession + num_oid: '.1.3.6.1.4.1.2636.3.39.1.12.1.1.1.8.{{ $index }}' + high_limit: jnxJsSPUMonitoringMaxCPSession + group: Sessions + descr: 'Node {{ $jnxJsSPUMonitoringNodeIndex }} FPC {{ $jnxJsSPUMonitoringFPCIndex }} SPU {{ $jnxJsSPUMonitoringSPUIndex }} CP Flow Count' + index: 'jnxJsSPUMonitoringCurrentCPSession.{{ $index }}' + skip_values: + - 0 + state: + data: + - + oid: jnxYellowAlarmState + value: jnxYellowAlarmState + num_oid: '.1.3.6.1.4.1.2636.3.4.2.2.1.{{ $index }}' + descr: 'Yellow Alarm' + index: '{{ $index }}' + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: off, graph: 1, generic: 0 } + - { value: 3, descr: on, graph: 1, generic: 2 } + - + oid: jnxRedAlarmState + value: jnxRedAlarmState + num_oid: '.1.3.6.1.4.1.2636.3.4.2.3.1.{{ $index }}' + descr: 'Red Alarm' + index: '{{ $index }}' + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: off, graph: 1, generic: 0 } + - { value: 3, descr: on, graph: 1, generic: 2 } + - + oid: jnxFruTable + value: jnxFruState + num_oid: '.1.3.6.1.4.1.2636.3.1.15.1.8.{{ $index }}' + descr: jnxFruName + index: 'jnxFruName.{{ $index }}' + skip_value_lt: 3 + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: empty, graph: 1, generic: 3 } + - { value: 3, descr: present, graph: 1, generic: 1 } + - { value: 4, descr: ready, graph: 1, generic: 0 } + - { value: 5, descr: announceOnline, graph: 1, generic: 0 } + - { value: 6, descr: online, graph: 1, generic: 0 } + - { value: 7, descr: anounceOffline, graph: 1, generic: 1 } + - { value: 8, descr: offline, graph: 1, generic: 2 } + - { value: 9, descr: diagnostic, graph: 1, generic: 3 } + - { value: 10, descr: standby, graph: 1, generic: 3 } + - + oid: jnxVirtualChassisMemberTable + value: jnxVirtualChassisMemberRole + num_oid: '.1.3.6.1.4.1.2636.3.40.1.4.1.1.1.3.{{ $index }}' + descr: jnxVirtualChassisMemberSerialnumber + group: Virtual Chassis Members + index: 'jnxVirtualChassisMemberSerialnumber.{{ $index }}' + states: + - { value: 1, generic: 0, graph: 0, descr: master } + - { value: 2, generic: 0, graph: 0, descr: backup } + - { value: 3, generic: 0, graph: 0, descr: linecard } + - + oid: POWER-ETHERNET-MIB::pethMainPseTable + value: POWER-ETHERNET-MIB::pethMainPseOperStatus + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.3.{{ $index }}' + descr: 'PoE Controller {{ $index }} Status' + index: 'pethMainPseOperStatus.{{ $index }}' + states: + - { value: 1, generic: 0, graph: 0, descr: on } + - { value: 2, generic: 0, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: fault } + power: + data: + - + oid: POWER-ETHERNET-MIB::pethMainPseTable + value: POWER-ETHERNET-MIB::pethMainPseConsumptionPower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.4.{{ $index }}' + descr: 'PoE Controller {{ $index }} Load' + index: 'pethMainPseConsumptionPower.{{ $index }}' + high_limit: POWER-ETHERNET-MIB::pethMainPsePower + low_limit: -1 + low_warn_limit: -1 diff --git a/priv/profiles/os_discovery/junose.yaml b/priv/profiles/os_discovery/junose.yaml new file mode 100644 index 00000000..b97e2759 --- /dev/null +++ b/priv/profiles/os_discovery/junose.yaml @@ -0,0 +1,12 @@ +mib: Juniper-System-MIB +modules: + processors: + data: + - + oid: juniSystemModule + value: juniSystemModuleCpuUtilPct + num_oid: '.1.3.6.1.4.1.4874.2.2.2.1.3.5.1.3.{{ $index }}' + descr: juniSystemModuleDescr + entPhysicalIndex: juniSystemModulePhysicalIndex + skip_values: + - -1 diff --git a/priv/profiles/os_discovery/jwos.yaml b/priv/profiles/os_discovery/jwos.yaml new file mode 100644 index 00000000..531fb6de --- /dev/null +++ b/priv/profiles/os_discovery/jwos.yaml @@ -0,0 +1,9 @@ +modules: + os: + version: JUNIPER-WX-GLOBAL-REG::jnxWxSysSwVersion.0 + serial: JUNIPER-WX-GLOBAL-REG::jnxWxSysSerialNumber.0 + hardware: + - JUNIPER-WX-GLOBAL-REG::jnxWxChassisType.0 + - JUNIPER-WX-GLOBAL-REG::jnxWxSysHwVersion.0 + hardware_regex: '/(jnx)?(?.*)/' + hardware_template: '/{{ JUNIPER-WX-GLOBAL-REG::jnxWxChassisType.0 }} {{ JUNIPER-WX-GLOBAL-REG::jnxWxSysHwVersion.0 }}/' diff --git a/priv/profiles/os_discovery/keeneticos.yaml b/priv/profiles/os_discovery/keeneticos.yaml new file mode 100644 index 00000000..3d81c5e5 --- /dev/null +++ b/priv/profiles/os_discovery/keeneticos.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/Keenetic.+\(KeeneticOS\s(?\S+)\):.+/' + serial: ENTITY-MIB::entPhysicalSerialNum + hardware: ENTITY-MIB::entPhysicalModelName diff --git a/priv/profiles/os_discovery/kemp.yaml b/priv/profiles/os_discovery/kemp.yaml new file mode 100644 index 00000000..0b011f61 --- /dev/null +++ b/priv/profiles/os_discovery/kemp.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: B100-MIB::patchVersion.0 diff --git a/priv/profiles/os_discovery/konica.yaml b/priv/profiles/os_discovery/konica.yaml new file mode 100644 index 00000000..046122fe --- /dev/null +++ b/priv/profiles/os_discovery/konica.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.18334.1.1.1.1.6.2.1.0 + hardware_regex: '/(KONICA MINOLTA )?(?.*)/i' + version: .1.3.6.1.4.1.18334.1.1.1.1.6.1.0 diff --git a/priv/profiles/os_discovery/kti.yaml b/priv/profiles/os_discovery/kti.yaml new file mode 100644 index 00000000..247e7a8c --- /dev/null +++ b/priv/profiles/os_discovery/kti.yaml @@ -0,0 +1,4 @@ +modules: + os: + version: .1.3.6.1.2.1.47.1.1.1.1.9.1 + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/kyocera.yaml b/priv/profiles/os_discovery/kyocera.yaml new file mode 100644 index 00000000..4eacbe96 --- /dev/null +++ b/priv/profiles/os_discovery/kyocera.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.1347.43.5.1.1.1.1 + serial: .1.3.6.1.4.1.1347.43.5.1.1.28.1 + version: .1.3.6.1.4.1.1347.43.5.4.1.5.1.1 diff --git a/priv/profiles/os_discovery/lambdatrail.yaml b/priv/profiles/os_discovery/lambdatrail.yaml new file mode 100644 index 00000000..9359491a --- /dev/null +++ b/priv/profiles/os_discovery/lambdatrail.yaml @@ -0,0 +1,299 @@ +mib: LAMBDATRAIL-MIB:Lambdatrail2s-MIB +modules: + os: + hardware: .1.3.6.1.4.1.35616.5.1.2.0 + serial: .1.3.6.1.4.1.35616.5.1.5.0 + version: .1.3.6.1.4.1.35616.5.1.10.0 + version_regex: '/(?\S+),.*/' + sensors: + temperature: + data: + #LT2-S Variant + - + oid: lt2sMgmtPortTable + value: lt2sMgmtSfpLaserTemp + num_oid: '.1.3.6.1.4.1.35616.5.1.26.1.15.{{ $index }}' + descr: Mgmt {{ $index }} Temp + index: 'lt2sMgmtSfpLaserTemp.{{ $index }}' + skip_values: + - + oid: lt2sMgmtSfpLaserTemp + op: '=' + value: 0 + - + oid: lt2sPortTable + value: lt2sLineLaserTemp + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.15.{{ $index }}' + descr: Line {{ $index }} Temp + index: 'lt2sLineLaserTemp.{{ $index }}' + - + oid: lt2sPortTable + value: lt2sClientLaserTemp + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.28.{{ $index }}' + descr: Client {{ $index }} Temp + index: 'lt2sClientLaserTemp.{{ $index }}' + - + oid: lt2sTemperature + value: lt2sTemperature + num_oid: '.1.3.6.1.4.1.35616.5.2.1.{{ $index }}' + descr: Chassis Temp + #HS variant + - + oid: portEntry + value: portClientLaserTemp + num_oid: '.1.3.6.1.4.1.35616.2.1.1.12.1.17.{{ $index }}' + descr: Client {{ $index }} Temp + index: 'portClientLaserTemp.{{ $index }}' + skip_values: + - + oid: portClientLaserTemp + op: '=' + value: -1 + - + oid: systemTemperature + value: systemTemperature + num_oid: '.1.3.6.1.4.1.35616.2.1.1.1.{{ $index }}' + descr: Chassis Temp + dbm: + data: + #LT2-S Variant + - + oid: lt2sMgmtPortTable + value: lt2sMgmtSfpRxPower + num_oid: '.1.3.6.1.4.1.35616.5.1.26.1.14.{{ $index }}' + descr: Mgmt {{ $index }} Rx + index: 'lt2sMgmtSfpRxPower.{{ $index }}' + group: 'Mgmt {{ $index }}' + divisor: 1000 + skip_values: + - + oid: lt2sMgmtSfpRxPower + op: '=' + value: 0 + - + oid: lt2sMgmtSfpRxPower + op: '=' + value: -1 + - + oid: lt2sMgmtPortTable + value: lt2sMgmtSfpTxPower + num_oid: '.1.3.6.1.4.1.35616.5.1.26.1.13.{{ $index }}' + index: 'lt2sMgmtSfpTxPower.{{ $index }}' + descr: Mgmt {{ $index }} Tx + group: 'Mgmt {{ $index }}' + divisor: 1000 + skip_values: + - + oid: lt2sMgmtSfpTxPower + op: '=' + value: 0 + - + oid: lt2sMgmtSfpTxPower + op: '=' + value: -1 + - + oid: lt2sPortTable + value: lt2sLineTxPower + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.13.{{ $index }}' + index: 'lt2sLineTxPower.{{ $index }}' + descr: Line {{ $index }} Tx + group: 'Line {{ $index }}' + # low_limit: lt2sLineTxLow --> does not work well, the thresholds dont have a divior + # high_limit: lt2sLineTxHigh + divisor: 1000 + + - + oid: lt2sPortTable + value: lt2sLineRxPower + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.14.{{ $index }}' + index: 'lt2sLineRxPower.{{ $index }}' + descr: Line {{ $index }} Rx + group: 'Line {{ $index }}' + # low_limit: lt2sLineRxLow + # high_limit: lt2sLineRxHigh + divisor: 1000 + - + oid: lt2sPortTable + value: lt2sClientTxPower + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.26.{{ $index }}' + index: 'lt2sClientTxPower.{{ $index }}' + descr: Client {{ $index }} Tx + group: 'Client {{ $index }}' + # low_limit: lt2sClientTxLow + # high_limit: lt2sClientTxHigh + divisor: 1000 + - + oid: lt2sPortTable + value: lt2sClientRxPower + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.27.{{ $index }}' + index: 'lt2sClientRxPower.{{ $index }}' + descr: 'Client {{ $index }} Rx' + group: 'Client {{ $index }}' + # low_limit: lt2sClientRxLow + # high_limit: lt2sClientRxHigh + divisor: 1000 + #HS variantes + - + oid: portEntry + value: portLineTxPower + num_oid: '.1.3.6.1.4.1.35616.2.1.1.12.1.8.{{ $index }}' + index: 'portLineTxPower.{{ $index }}' + descr: Line {{ $index }} Tx + group: 'Line {{ $index }}' + divisor: 1000 + skip_values: + - + oid: portLineTxPower + op: '=' + value: 0 + - + oid: portLineTxPower + op: '=' + value: -1 + - + oid: portEntry + value: portLineRxPower + num_oid: '.1.3.6.1.4.1.35616.2.1.1.12.1.9.{{ $index }}' + index: 'portLineRxPower.{{ $index }}' + descr: Line {{ $index }} Rx + group: 'Line {{ $index }}' + divisor: 1000 + skip_values: + - + oid: portLineRxPower + op: '=' + value: 0 + - + oid: portLineRxPower + op: '=' + value: -1 + - + oid: portEntry + value: portClientTxPower + num_oid: '.1.3.6.1.4.1.35616.2.1.1.12.1.15.{{ $index }}' + index: 'portClientTxPower.{{ $index }}' + descr: Client {{ $index }} Tx + group: 'Client {{ $index }}' + divisor: 1000 + skip_values: + - + oid: portClientTxPower + op: '=' + value: 0 + - + oid: portClientTxPower + op: '=' + value: -1 + - + oid: portEntry + value: portClientRxPower + num_oid: '.1.3.6.1.4.1.35616.2.1.1.12.1.16.{{ $index }}' + index: 'portClientRxPower.{{ $index }}' + descr: Client {{ $index }} Rx + group: 'Client {{ $index }}' + divisor: 1000 + skip_values: + - + oid: portClientTxPower + op: '=' + value: 0 + - + oid: portLineRxPower + op: '=' + value: -1 + state: + data: + - + oid: lt2sPortTable + value: lt2sClientLink + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.22.{{ $index }}' + descr: 'Client {{ $index }} State' + group: Link + state_name: lt2sClientLink + states: + - { descr: Down, graph: 1, value: 1, generic: 3 } + - { descr: Up, graph: 1, value: 2, generic: 0 } + - + oid: lt2sPortTable + value: lt2sLineLink + num_oid: '.1.3.6.1.4.1.35616.5.3.1.1.22.{{ $index }}' + descr: 'Line {{ $index }} State' + group: Link + state_name: lt2sLineLink + states: + - { descr: Down, graph: 1, value: 1, generic: 3 } + - { descr: Up, graph: 1, value: 2, generic: 0 } + - + oid: lt2sPowerFanStatus + value: lt2sPowerFanStatus + num_oid: '.1.3.6.1.4.1.35616.5.2.4.{{ $index }}' + descr: 'Fan State' + group: Fan + state_name: lt2sPowerFanStatus + states: + - { descr: failed, graph: 0, value: 1, generic: 0 } + - { descr: On, graph: 0, value: 2, generic: 0 } + - { descr: Off, graph: 0, value: 3, generic: 0 } + - + oid: lt2sPowerFanMode + value: lt2sPowerFanMode + num_oid: '.1.3.6.1.4.1.35616.5.2.6.{{ $index }}' + descr: 'Fan Mode' + group: Fan + state_name: lt2sPowerFanMode + states: + - { descr: alwaysOff, graph: 0, value: 1, generic: 0 } + - { descr: alwaysOn, graph: 0, value: 2, generic: 0 } + - { descr: byTemperature, graph: 0, value: 3, generic: 0 } + #HS Variant + - + oid: systemFan1 + value: systemFan1 + num_oid: '.1.3.6.1.4.1.35616.2.1.1.4.{{ $index }}' + descr: 'Fan Status' + group: Fan + state_name: systemFan1 + states: + - { descr: failed, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 0 } + - { descr: On, graph: 0, value: 3, generic: 0 } + - + oid: systemFan2 + value: systemFan2 + num_oid: '.1.3.6.1.4.1.35616.2.1.1.5.{{ $index }}' + descr: 'Fan Status' + group: Fan + state_name: systemFan2 + states: + - { descr: failed, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 0 } + - { descr: On, graph: 0, value: 3, generic: 0 } + - + oid: systemPower1 + value: systemPower1 + num_oid: '.1.3.6.1.4.1.35616.2.1.1.3.{{ $index }}' + descr: 'Power1' + group: Power + state_name: systemPower1 + states: + - { descr: notplugged, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 0 } + - { descr: On, graph: 0, value: 3, generic: 0 } + - + oid: systemPower2 + value: systemPower2 + num_oid: '.1.3.6.1.4.1.35616.2.1.1.3.{{ $index }}' + descr: 'Power2' + group: Power + state_name: systemPower2 + states: + - { descr: notplugged, graph: 0, value: 1, generic: 0 } + - { descr: Off, graph: 0, value: 2, generic: 0 } + - { descr: On, graph: 0, value: 3, generic: 0 } + fanspeed: + data: + - + oid: lt2sPowerFanRPM + value: lt2sPowerFanRPM + num_oid: '.1.3.6.1.4.1.35616.5.2.5.{{ $index }}' + descr: 'Fan Speed' diff --git a/priv/profiles/os_discovery/lantronix-slc.yaml b/priv/profiles/os_discovery/lantronix-slc.yaml new file mode 100644 index 00000000..16a83110 --- /dev/null +++ b/priv/profiles/os_discovery/lantronix-slc.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: LANTRONIX-SLC-MIB::slcSystemModel.0 + version: LANTRONIX-SLC-MIB::slcSystemFWRev.0 + features: LANTRONIX-SLC-MIB::slcSystemModelString.0 + serial: LANTRONIX-SLC-MIB::slcSystemSerialNo.0 diff --git a/priv/profiles/os_discovery/lcos.yaml b/priv/profiles/os_discovery/lcos.yaml new file mode 100644 index 00000000..1224d537 --- /dev/null +++ b/priv/profiles/os_discovery/lcos.yaml @@ -0,0 +1,63 @@ +mib: LCOS-MIB +modules: + os: + hardware: LCOS-MIB::lcsFirmwareVersionTableEntryModule.eIfc + serial: LCOS-MIB::lcsFirmwareVersionTableEntrySerialNumber.eIfc + version: LCOS-MIB::lcsFirmwareVersionTableEntryVersion.eIfc + sensors: + additional_oids: + data: + - + oid: + - lcsStatusWlanInterpointsAccesspointListEntryInterpointPeerName + temperature: + data: + - + oid: lcsStatusHardwareInfoTemperatureDegrees + num_oid: '.1.3.6.1.4.1.2356.11.1.47.20.{{ $index }}' + descr: Temperature + low_limit: -33 + high_limit: 70 + state: + data: + - + oid: lcsStatusWlanInterpointsAccesspointListTable + value: lcsStatusWlanInterpointsAccesspointListEntryKeyingState + num_oid: '.1.3.6.1.4.1.2356.11.1.3.36.1.1.12.{{ $index }}' + descr: 'Keying {{ $lcsStatusWlanInterpointsAccesspointListEntryInterpointPeerName }}' + state_name: KeyingState + states: + - { graph: 0, value: 0, generic: 0, descr: Idle } + - { graph: 0, value: 1, generic: 1, descr: Pending } + - { graph: 0, value: 2, generic: 0, descr: Done } + - { graph: 0, value: 3, generic: 1, descr: SaePending } + - + oid: lcsStatusWlanInterpointsAccesspointListTable + value: lcsStatusWlanInterpointsAccesspointListEntryWpaVersion + num_oid: '.1.3.6.1.4.1.2356.11.1.3.36.1.1.21.{{ $index }}' + descr: 'WPA Version {{ $lcsStatusWlanInterpointsAccesspointListEntryInterpointPeerName }}' + state_name: WpaVersion + states: + - { graph: 0, value: 0, generic: 1, descr: None } + - { graph: 0, value: 1, generic: 0, descr: Wpa1 } + - { graph: 0, value: 2, generic: 0, descr: Wpa2 } + - { graph: 0, value: 3, generic: 0, descr: Wpa3 } + - + oid: lcsStatusWlanInterpointsAccesspointListTable + value: lcsStatusWlanInterpointsAccesspointListEntryLinkActive + num_oid: '.1.3.6.1.4.1.2356.11.1.3.36.1.1.40.{{ $index }}' + descr: 'Link Active {{ $lcsStatusWlanInterpointsAccesspointListEntryInterpointPeerName }}' + state_name: LinkActive + states: + - { graph: 0, value: 0, generic: 2, descr: No } + - { graph: 0, value: 1, generic: 0, descr: Yes } + - + oid: lcsStatusWlanInterpointsAccesspointListTable + value: lcsStatusWlanInterpointsAccesspointListEntryRemoteStatus + num_oid: '.1.3.6.1.4.1.2356.11.1.3.36.1.1.43.{{ $index }}' + descr: 'Remote Status {{ $lcsStatusWlanInterpointsAccesspointListEntryInterpointPeerName }}' + state_name: RemoteStatus + states: + - { graph: 0, value: 0, generic: 3, descr: Unknown } + - { graph: 0, value: 1, generic: 2, descr: NotOK } + - { graph: 0, value: 2, generic: 0, descr: OK } diff --git a/priv/profiles/os_discovery/lcoslx.yaml b/priv/profiles/os_discovery/lcoslx.yaml new file mode 100644 index 00000000..19f7354c --- /dev/null +++ b/priv/profiles/os_discovery/lcoslx.yaml @@ -0,0 +1,13 @@ +mib: LCOS-LX-MIB +modules: + mempools: + data: + - + total: LCOS-LX-MIB::lcosLXStatusHardwareInfoTotalMemoryKbytes + free: LCOS-LX-MIB::lcosLXStatusHardwareInfoFreeMemoryKbytes + precision: 1024 + os: + version: + - LCOS-LX-MIB::lcosLXStatusHardwareInfoSWVersion.0 + serial: + - LCOS-LX-MIB::lcosLXStatusHardwareInfoSerialNumber.0 diff --git a/priv/profiles/os_discovery/lcossx.yaml b/priv/profiles/os_discovery/lcossx.yaml new file mode 100644 index 00000000..42774f3b --- /dev/null +++ b/priv/profiles/os_discovery/lcossx.yaml @@ -0,0 +1,100 @@ +mib: LCOS-SX-GENERAL-MIB:LCOS-SX-MIB +modules: + mempools: + data: + - + total: LCOS-SX-MIB::lcsSystemInfoMemory.0 + free: LCOS-SX-MIB::lcsSystemInfoFreeMemory.0 + descr: 'Main Memory' + precision: 1048576 + os: + hardware: + - LCOS-SX-MIB::lcsSystemInfoModelName.0 + - .1.3.6.1.4.1.2356.16.1.1.1.1.3.0 + version: + - LCOS-SX-MIB::lcsSystemInfoFirmwareVersion.0 + - .1.3.6.1.4.1.2356.16.1.1.1.1.13.0 + serial: + - LCOS-SX-MIB::lcsSystemInfoSeriesNumber.0 + - .1.3.6.1.4.1.2356.16.1.1.1.1.4.0 + sensors: + power: + data: + - + oid: lcsPoe + value: lcsPoeStatusTotalPowerRequested + num_oid: '.1.3.6.1.4.1.2356.14.2.13.1.2.1.2.{{ $index }}' + index: 'lcsPoeStatusTotalPowerRequested.{{ $index }}' + group: "PoE" + descr: "PoE Budget Requested - ID {{ $index }}" + - + oid: lcsPoe + value: lcsPoeStatusTotalPowerAllocated + num_oid: '.1.3.6.1.4.1.2356.14.2.13.1.2.1.3.{{ $index }}' + index: 'lcsPoeStatusTotalPowerAllocated.{{ $index }}' + group: "PoE" + descr: "PoE Budget Allocated - ID {{ $index }}" + - + oid: lcsPoe + value: lcsPoeStatusTotalPowerUsed + num_oid: '.1.3.6.1.4.1.2356.14.2.13.1.2.1.4.{{ $index }}' + index: 'lcsPoeStatusTotalPowerUsed.{{ $index }}' + group: "PoE" + descr: "PoE Budget Consumed - ID {{ $index }}" + state: + data: + - + oid: LcsMonitoringFansTableEntry + num_oid: '.1.3.6.1.4.1.2356.100.1.1.3.1.5.{{ $index }}' + descr: lcsMonitoringFanDescription + value: lcsMonitoringFanState + states: + - { value: 1, descr: notpresent, graph: 1, generic: 0 } + - { value: 2, descr: operational, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - { value: 4, descr: powering, graph: 1, generic: 0 } + - { value: 5, descr: nopower, graph: 1, generic: 2 } + - { value: 6, descr: notpowering, graph: 1, generic: 2 } + - { value: 7, descr: incompatible, graph: 1, generic: 1 } + - { value: 8, descr: warning, graph: 1, generic: 1 } + - { value: 9, descr: present, graph: 1, generic: 0 } + - + oid: lcsMonitoringPSUTable + num_oid: '.1.3.6.1.4.1.2356.100.1.1.4.1.5.{{ $index }}' + index: 'fgHwSensorEntIndex.{{ $index }}' + descr: lcsMonitoringPSUDescription + value: lcsMonitoringPSUState + states: + - { value: 1, descr: notpresent, graph: 1, generic: 0 } + - { value: 2, descr: operational, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - { value: 4, descr: powering, graph: 1, generic: 0 } + - { value: 5, descr: nopower, graph: 1, generic: 2 } + - { value: 6, descr: notpowering, graph: 1, generic: 2 } + - { value: 7, descr: incompatible, graph: 1, generic: 1 } + - { value: 8, descr: warning, graph: 1, generic: 1 } + - { value: 9, descr: present, graph: 1, generic: 0 } + temperature: + data: + - + oid: lcsMonitoringTempSensorsTable + num_oid: '.1.3.6.1.4.1.2356.100.1.1.1.1.6.{{ $index }}' + descr: lcsMonitoringTempSensorDescription + value: lcsMonitoringTempSensorTemperature + - + oid: lcsSystemInfoTemperatureSensor1 + num_oid: '.1.3.6.1.4.1.2356.14.1.1.1.22.{{ $index }}' + descr: 'Temperature sensor 1' + value: lcsSystemInfoTemperatureSensor1 + - + oid: lcsSystemInfoTemperatureSensor2 + num_oid: '.1.3.6.1.4.1.2356.14.1.1.1.23.{{ $index }}' + descr: 'Temperature sensor 2' + value: lcsSystemInfoTemperatureSensor2 + fanspeed: + data: + - + oid: LcsMonitoringFansTableEntry + num_oid: '.1.3.6.1.4.1.2356.100.1.1.3.1.6.{{ $index }}' + descr: lcsMonitoringFanDescription + value: lcsMonitoringFanSpeed diff --git a/priv/profiles/os_discovery/lenovoemc.yaml b/priv/profiles/os_discovery/lenovoemc.yaml new file mode 100644 index 00000000..68a24662 --- /dev/null +++ b/priv/profiles/os_discovery/lenovoemc.yaml @@ -0,0 +1,3 @@ +modules: + os: + hardware: IOMEGANAS-MIB::deviceDescr.0 diff --git a/priv/profiles/os_discovery/lexmarkprinter.yaml b/priv/profiles/os_discovery/lexmarkprinter.yaml new file mode 100644 index 00000000..8935a29c --- /dev/null +++ b/priv/profiles/os_discovery/lexmarkprinter.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Lexmark (?[a-zA-Z0-9]+) version (?\S+)/' diff --git a/priv/profiles/os_discovery/liebert.yaml b/priv/profiles/os_discovery/liebert.yaml new file mode 100644 index 00000000..19f89ac4 --- /dev/null +++ b/priv/profiles/os_discovery/liebert.yaml @@ -0,0 +1,346 @@ +mib: LIEBERT-GP-AGENT-MIB:LIEBERT-GP-PDU-MIB:LIEBERT-GP-ENVIRONMENTAL-MIB:LIEBERT-GP-POWER-MIB +modules: + sensors: + temperature: + data: + - + oid: lgpPduAuxMeasTable + value: lgpPduAuxMeasTempDegC + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.60.15.1.70.{{ $index }}' + descr: 'Temp for {{ $lgpPduAuxMeasUsrLabel }}' + index: 'lgpPduAuxMeasTempDegC.{{ $index }}' + divisor: 10 + low_limit: lgpPduAuxMeasTempThrshldUndrAlmDegC + low_warn_limit: lgpPduAuxMeasTempThrshldUndrWarnDegC + warn_limit: lgpPduAuxMeasTempThrshldOvrWarnDegC + high_limit: lgpPduAuxMeasTempThrshldOvrAlmDegC + - + oid: lgpEnvTemperatureTableDegC + value: lgpEnvTemperatureSetPointDegC + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.1.3.3.1.6.{{ $index }}' + descr: 'Setpoint for {{ $lgpEnvTemperatureDescrDegC }}' + index: 'lgpEnvTemperatureSetPointDegC.{{ $index }}' + humidity: + data: + - + oid: lgpPduAuxMeasTable + value: lgpPduAuxMeasHum + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.60.15.1.95.{{ $index }}' + descr: 'Humidity for {{ $lgpPduAuxMeasUsrLabel }}' + index: 'lgpPduAuxMeasHum.{{ $index }}' + divisor: 10 + low_limit: lgpPduAuxMeasHumThrshldUndrAlm + low_warn_limit: lgpPduAuxMeasHumThrshldUndrWarn + warn_limit: lgpPduAuxMeasHumThrshldOvrWarn + high_limit: lgpPduAuxMeasHumThrshldOvrAlm + - + oid: lgpEnvHumidityTableRel + value: lgpEnvHumiditySetPoint + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.2.2.3.1.6.{{ $index }}' + descr: 'Setpoint for {{ $lgpEnvHumidityDescrRel }}' + index: 'lgpEnvHumiditySetPoint.{{ $index }}' + voltage: + data: + - + oid: lgpPduPsLineTable + value: lgpPduPsLineEntryEpLNTenths + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.30.40.1.19.{{ $index }}' + descr: 'AC RMS {{ $lgpPduPsLineEntryLine }}' + index: 'lgpPduPsLineEntryEpLNTenths.{{ $index }}' + divisor: 10 + - + oid: lgpPduRcpTable + value: lgpPduRcpEntryEp + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.55.{{ $index }}' + descr: 'Voltage {{ $lgpPduRcpEntryUsrLabel }}' + index: 'lgpPduRcpEntryEp.{{ $index }}' + power: + data: + - + oid: lgpPduPsTable + value: lgpPduPsEntryPwrTotal + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.30.20.1.65.{{ $index }}' + descr: 'Total for {{ $lgpPduPsEntryModel }}' + index: 'lgpPduPsEntryPwrTotal.{{ $index }}' + - + oid: lgpPduPsTable + value: lgpPduPsEntryApTotal + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.30.20.1.90.{{ $index }}' + descr: 'Apparent Power {{ $lgpPduPsEntryModel }}' + index: 'lgpPduPsEntryApTotal.{{ $index }}' + group: ApparentPower + - + oid: lgpPduRcpTable + value: lgpPduRcpEntryPwrOut + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.65.{{ $index }}' + descr: 'Power {{ $lgpPduRcpEntryUsrLabel }}' + index: 'lgpPduRcpEntryPwrOut.{{ $index }}' + - + oid: lgpPduRcpTable + value: lgpPduRcpEntryApOut + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.70.{{ $index }}' + descr: 'Apparent Power {{ $lgpPduRcpEntryUsrLabel }}' + index: 'lgpPduRcpEntryApOut.{{ $index }}' + group: ApparentPower + - + oid: LIEBERT-GP-FLEXIBLE-MIB::lgpFlexibleBasicTable + value: LIEBERT-GP-FLEXIBLE-MIB::lgpFlexibleEntryValue + num_oid: '.1.3.6.1.4.1.476.1.42.3.9.20.1.20.{{ $index }}' + descr: '{{ LIEBERT-GP-FLEXIBLE-MIB::lgpFlexibleEntryDataLabel }}' + index: 'lgpFlexibleEntryValue.{{ $index }}' + multiplier: 1000 + skip_values: + - + oid: LIEBERT-GP-FLEXIBLE-MIB::lgpFlexibleEntryDataLabel + op: '!==' + value: 'System Output Power' + current: + data: + - + oid: lgpPduRbTable + value: lgpPduRbEntryEcAvailBeforeAlarmHundredths + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.40.20.1.150.{{ $index }}' + descr: 'Before Alarm {{ $lgpPduRbEntryUsrLabel }}' + index: 'lgpPduRbEntryEcAvailBeforeAlarmHundredths.{{ $index }}' + divisor: 100 + group: Available + - + oid: lgpPduRcpTable + value: lgpPduRcpEntryEc + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.60.{{ $index }}' + descr: 'Current {{ $lgpPduRcpEntryUsrLabel }}' + divisor: 10 + index: 'lgpPduRcpEntryEc.{{ $index }}' + count: + data: + - + oid: lgpPduRbTable + value: lgpPduRbEntryEcUsedBeforeAlarm + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.40.20.1.160.{{ $index }}' + descr: 'Utilization Percent {{ $lgpPduRbEntryUsrLabel }}' + index: 'lgpPduRbEntryEcAvailBeforeAlarmHundredths.{{ $index }}' + divisor: 10 + - + oid: lgpEnvOperationalTimeTable + value: lgpEnvOperationTimeValue + group: 'Operating Time' + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.4.32.1.5.{{ $index }}' + descr: '{{ $lgpEnvOperationTimePoint }} - ID {{ $lgpEnvOperationTimeSubID }}' + index: '.1.3.6.1.4.1.476.1.42.3.4.4.32.1.1.{{ $index }}' + state: + data: + - + oid: lgpAgentTelnetEnabled + num_oid: '.1.3.6.1.4.1.476.1.42.2.5.2.{{ $index }}' + descr: Telnet Enabled + index: 'lgpAgentTelnetEnabled.{{ $index }}' + state_name: lgpAgentTelnetEnabled + states: + - { value: 1, graph: 0, descr: yes, generic: 0 } + - { value: 2, graph: 0, descr: no, generic: 2 } + - + oid: lgpAgentVelocityServerEnabled + num_oid: '.1.3.6.1.4.1.476.1.42.2.5.3.{{ $index }}' + descr: Velocity Server Enabled + index: 'lgpAgentVelocityServerEnabled.{{ $index }}' + state_name: lgpAgentVelocityServerEnabled + states: + - { value: 1, graph: 0, descr: yes, generic: 0 } + - { value: 2, graph: 0, descr: no, generic: 2 } + - + oid: lgpAgentWebServerMode + num_oid: '.1.3.6.1.4.1.476.1.42.2.5.4.{{ $index }}' + descr: Webserver Mode + index: 'lgpAgentWebServerMode.{{ $index }}' + state_name: lgpAgentWebServerMode + states: + - { value: 0, graph: 0, descr: disabled, generic: 2 } + - { value: 1, graph: 0, descr: http, generic: 1 } + - { value: 2, graph: 0, descr: https, generic: 0 } + - + oid: lgpPduEntrySysStatus + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.20.1.25.{{ $index }}' + descr: System Status + index: 'lgpPduGrpSysStatus.{{ $index }}' + state_name: lgpPduEntrySysStatus + states: + - { value: 1, graph: 0, descr: normalOperation, generic: 0 } + - { value: 2, graph: 0, descr: startUp, generic: 1 } + - { value: 4, graph: 0, descr: unknownNoSupport, generic: 3 } + - { value: 8, graph: 0, descr: normalWithWarning, generic: 1 } + - { value: 16, graph: 0, descr: normalWithAlarm, generic: 2 } + - { value: 32, graph: 0, descr: abnormalOperation, generic: 2 } + - { value: 64, graph: 0, descr: unknownCommFailure, generic: 2 } + - + oid: lgpEnvStateFan + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.7.{{ $index }}' + descr: 'System Fan Status' + index: 'lgpEnvStateFan.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 0, descr: 'off', generic: 1 } + - + oid: lgpEnvStateSystem + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.1.{{ $index }}' + descr: 'System Status' + index: 'lgpEnvStateSystem.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 1, descr: 'off', generic: 1 } + - { value: 3, graph: 2, descr: 'standby', generic: 0 } + - + oid: lgpEnvStateCooling + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.2.{{ $index }}' + descr: 'Cooling Subsystem Status' + index: 'lgpEnvStateCooling.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 0, descr: 'off', generic: 1 } + - + oid: lgpEnvStateHumidifying + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.4.{{ $index }}' + descr: 'Humidifier Subsystem Status' + index: 'lgpEnvStateHumidifying.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 0, descr: 'off', generic: 1 } + - + oid: lgpEnvStateDehumidifying + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.5.{{ $index }}' + descr: 'Dehumidifier Subsystem Status' + index: 'lgpEnvStateDehumidifying.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 0, descr: 'off', generic: 1 } + - + oid: lgpEnvStateFan + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.7.{{ $index }}' + descr: 'System Fan Status' + index: 'lgpEnvStateFan.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 0, descr: 'off', generic: 1 } + - + oid: lgpEnvStateGeneralAlarmOutput + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.8.{{ $index }}' + descr: 'General Alarm Status' + index: 'lgpEnvStateGeneralAlarmOutput.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 2 } + - { value: 2, graph: 0, descr: 'off', generic: 0 } + - + oid: lgpEnvStateAudibleAlarm + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.11.{{ $index }}' + descr: 'Audible Alarm Status' + index: 'lgpEnvStateAudibleAlarm.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 2 } + - { value: 2, graph: 0, descr: 'off', generic: 0 } + - + oid: lgpEnvStateOperatingReason + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.14.{{ $index }}' + descr: 'Operating State Reason' + index: 'lgpEnvStateOperatingReason.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'none', generic: 0 } + - { value: 2, graph: 1, descr: 'localUser', generic: 0 } + - { value: 3, graph: 2, descr: 'alarm', generic: 0 } + - { value: 4, graph: 3, descr: 'schedule', generic: 0 } + - { value: 5, graph: 4, descr: 'remoteUser', generic: 0 } + - { value: 6, graph: 5, descr: 'externalDevice', generic: 0 } + - { value: 7, graph: 6, descr: 'localDisplay', generic: 0 } + - + oid: lgpEnvStateOperatingMode + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.15.{{ $index }}' + descr: 'Operating Mode' + index: 'lgpEnvStateOperatingMode.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'auto', generic: 0 } + - { value: 2, graph: 1, descr: 'manual', generic: 0 } + - + oid: lgpEnvStateElectricHeater + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.21.{{ $index }}' + descr: 'Electric Heaters Status' + index: 'lgpEnvStateElectricHeater.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 1, descr: 'off', generic: 0 } + - + oid: lgpEnvStateHotWater + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.22.{{ $index }}' + descr: 'Hot Water System Status' + index: 'lgpEnvStateHotWater.{{ $index }}' + states: + - { value: 1, graph: 0, descr: 'on', generic: 0 } + - { value: 2, graph: 1, descr: 'off', generic: 0 } + - + oid: lgpPduRcpTable + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.95.{{ $index }}' + descr: 'State {{ $lgpPduRcpEntryUsrLabel }}' + index: 'lgpPduRcpEntryPwrState.{{ $index }}' + value: lgpPduRcpEntryPwrState + state_name: lgpPduRcpEntryPwrState + states: + - { value: 2, graph: 0, descr: 'on', generic: 1 } + - { value: 1, graph: 0, descr: 'off', generic: 0 } + - { value: 0, graph: 0, descr: 'unknown', generic: 2 } + percent: + data: + - + oid: lgpEnvStateCoolingCapacity + value: lgpEnvStateCoolingCapacity + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.9.{{ $index }}' + descr: 'Cooling Capacity Usage' + index: 'lgpEnvStateCoolingCapacity.{{ $index }}' + skip_values: 4294967295 + - + oid: lgpEnvStateFanCapacity + value: lgpEnvStateFanCapacity + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.16.{{ $index }}' + descr: 'Fan Capacity Usage' + index: 'lgpEnvStateFanCapacity.{{ $index }}' + skip_values: 4294967295 + - + oid: lgpEnvStateFreeCoolingCapacity + value: lgpEnvStateFreeCoolingCapacity + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.17.{{ $index }}' + descr: 'Free Cooling Capacity Usage' + index: 'lgpEnvStateFreeCoolingCapacity.{{ $index }}' + skip_values: 4294967295 + - + oid: lgpEnvStateDehumidifyingCapacity + value: lgpEnvStateDehumidifyingCapacity + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.18.{{ $index }}' + descr: 'Dehumidifying Capacity Usage' + index: 'lgpEnvStateDehumidifyingCapacity.{{ $index }}' + skip_values: 4294967295 + - + oid: lgpEnvStateHumidifyingCapacity + value: lgpEnvStateHumidifyingCapacity + num_oid: '.1.3.6.1.4.1.476.1.42.3.4.3.19.{{ $index }}' + descr: 'Humidifying Capacity Usage' + index: 'lgpEnvStateHumidifyingCapacity.{{ $index }}' + skip_values: 4294967295 + power_factor: + data: + - + oid: lgpPwrLineMeasurementTable + value: lgpPwrLineMeasurementPowerFactor + divisor: 100 + num_oid: '.1.3.6.1.4.1.476.1.42.3.5.2.3.1.14.{{ $index }}' + descr: '{{ $lgpPwrMeasurementPoint }}.{{ $index }}' + index: 'lgpPwrLineMeasurementPowerFactor.{{ $index }}' + - + oid: lgpPduRcpTable + value: lgpPduRcpEntryPf + divisor: 100 + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.50.20.1.75.{{ $index }}' + descr: 'Power Factor {{ $lgpPduRcpEntryUsrLabel }}' + index: 'lgpPduRcpEntryPf.{{ $index }}' + - + oid: lgpPduPsTable + value: lgpPduPsEntryPfTotal + divisor: 100 + num_oid: '.1.3.6.1.4.1.476.1.42.3.8.30.20.1.95.{{ $index }}' + descr: 'Power Factor Total {{ $lgpPduPsEntryModel }}' + index: 'lgpPduPsEntryPfTotal.{{ $index }}' diff --git a/priv/profiles/os_discovery/ligoos.yaml b/priv/profiles/os_discovery/ligoos.yaml new file mode 100644 index 00000000..13c9db85 --- /dev/null +++ b/priv/profiles/os_discovery/ligoos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/LigoPTP|LigoDLB (?[^,]*),? (?v[\d\-.]+\d)/' diff --git a/priv/profiles/os_discovery/linksys-ss.yaml b/priv/profiles/os_discovery/linksys-ss.yaml new file mode 100644 index 00000000..b11a9dc1 --- /dev/null +++ b/priv/profiles/os_discovery/linksys-ss.yaml @@ -0,0 +1,18 @@ +mib: LINKSYS-rndMng +modules: + os: + hardware: + - LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamModelName.1 + - LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamHardwareVersion.1 + hardware_template: '{{ LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamModelName.1 }} {{ LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamHardwareVersion.1 }}' + serial: LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamSerialNum.1 + version: + - LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamSoftwareVersion.1 + - LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamFirmwareVersion.1 + version_template: 'SW: {{ LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamSoftwareVersion.1 }}, FW: {{ LINKSYS-Physicaldescription-MIB::rlPhdUnitGenParamFirmwareVersion.1 }}' + processors: + data: + - + oid: rlCpuUtilDuringLast5Minutes + num_oid: '.1.3.6.1.4.1.3955.1000.201.1.9.{{ $index }}' + descr: CPU diff --git a/priv/profiles/os_discovery/linux.yaml b/priv/profiles/os_discovery/linux.yaml new file mode 100644 index 00000000..5ad8c4c4 --- /dev/null +++ b/priv/profiles/os_discovery/linux.yaml @@ -0,0 +1,166 @@ +mib: LSI-MegaRAID-SAS-MIB +modules: + sensors: + temperature: + data: + - + oid: adapterPropertiesTable + value: temperatureROC + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.42.{{ $index }}' + index: 'controllertemp.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + descr: 'Controller' + - + oid: bbuTable + value: temperature + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.6.2.1.16.{{ $index }}' + index: 'bbutemp.{{ $index }}' + group: 'RAID Controller {{ $adpID }}' + descr: 'BBU' + - + oid: physicalDriveTable + value: pdTemperature + num_oid: '.1.3.6.1.4.1.3582.4.1.4.2.1.2.1.36.{{ $index }}' + index: 'slot.{{ $index }}' + group: 'RAID Controller {{ $adpID-PDT }} Enclosure {{ enclDeviceId }}' + descr: '/c{{ $adpID-PDT }}/e{{ $enclDeviceId }}/s{{ $slotNumber }}' + count: + data: + - + oid: adapterPropertiesTable + value: vdPresentCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.18.{{ $index }}' + index: 'vdsum.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + descr: 'Virtual disks' + - + oid: adapterPropertiesTable + value: vdDegradedCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.19.{{ $index }}' + index: 'vddegraded.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + high_limit: 0 + descr: 'Virtual disk degraded' + - + oid: adapterPropertiesTable + value: pdDiskPredFailureCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.23.{{ $index }}' + index: 'criticaldisks.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + high_limit: 0 + descr: 'Critical disks' + - + oid: adapterPropertiesTable + value: pdDiskFailedCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.24.{{ $index }}' + index: 'faileddisks.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + high_limit: 0 + descr: 'Failed disks' + - + oid: physicalDriveTable + value: mediaErrCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.2.1.2.1.7.{{ $index }}' + index: 'mediaerr.slot.{{ $index }}' + group: 'RAID Controller {{ $adpID-PDT }} Enclosure {{ enclDeviceId }}' + warn_limit: 1 + descr: '/c{{ $adpID-PDT }}/e{{ $enclDeviceId }}/s{{ $slotNumber }} Media Errors' + - + oid: physicalDriveTable + value: otherErrCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.2.1.2.1.8.{{ $index }}' + index: 'othererr.slot.{{ $index }}' + group: 'RAID Controller {{ $adpID-PDT }} Enclosure {{ enclDeviceId }}' + warn_limit: 1 + descr: '/c{{ $adpID-PDT }}/e{{ $enclDeviceId }}/s{{ $slotNumber }} Other Errors' + - + oid: physicalDriveTable + value: predFailCount + num_oid: '.1.3.6.1.4.1.3582.4.1.4.2.1.2.1.9.{{ $index }}' + index: 'predfail.slot.{{ $index }}' + group: 'RAID Controller {{ $adpID-PDT }} Enclosure {{ enclDeviceId }}' + warn_limit: 0 + descr: '/c{{ $adpID-PDT }}/e{{ $enclDeviceId }}/s{{ $slotNumber }} Predictive Failures' + state: + data: + - + oid: adapterPropertiesTable + value: alarmState + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.2.1.4.{{ $index }}' + group: 'RAID Controller {{ $adapterID-APT }}' + descr: 'Alarm' + state_name: alarmState + states: + - { descr: disabled , graph: 0, value: 0, generic: 1 } + - { descr: enabled , graph: 0, value: 1, generic: 0 } + - + oid: enclosurePowerSupplyTable + value: powerSupplyStatus + num_oid: '.1.3.6.1.4.1.3582.4.1.5.5.1.3.{{ $index }}' + group: 'Enclosure {{ $enclosureId-EPST }}' + descr: 'Powersupply {{ $powerSupplyID }}' + state_name: powerSupplyStatus + states: + - { descr: invalid , graph: 0, value: 1, generic: 2 } + - { descr: ok , graph: 0, value: 2, generic: 0 } + - { descr: critical , graph: 0, value: 3, generic: 2 } + - { descr: nonCritical , graph: 0, value: 4, generic: 1 } + - { descr: unrecoverable , graph: 0, value: 5, generic: 2 } + - { descr: notInstalled , graph: 0, value: 6, generic: 3 } + - { descr: unknown , graph: 0, value: 7, generic: 1 } + - { descr: notAvailible , graph: 0, value: 8, generic: 3 } + - + oid: enclosureFanTable + value: fanStatus + num_oid: '.1.3.6.1.4.1.3582.4.1.5.3.1.3.{{ $index }}' + group: 'Enclosure {{ $enclosureId }}' + descr: 'FAN {{ $fanID }}' + state_name: fanStatus + states: + - { descr: invalid , graph: 0, value: 1, generic: 2 } + - { descr: ok , graph: 0, value: 2, generic: 0 } + - { descr: critical , graph: 0, value: 3, generic: 2 } + - { descr: nonCritical , graph: 0, value: 4, generic: 1 } + - { descr: unrecoverable , graph: 0, value: 5, generic: 2 } + - { descr: notInstalled , graph: 0, value: 6, generic: 3 } + - { descr: unknown , graph: 0, value: 7, generic: 1 } + - { descr: notAvailible , graph: 0, value: 8, generic: 3 } + - + oid: enclosureAlarmTable + value: alarmStatus + num_oid: '.1.3.6.1.4.1.3582.4.1.5.7.{{ $index }}' + group: 'Enclosure {{ $enclosureId-EAT }}' + descr: 'Alarm' + state_name: alarmStatus + states: + - { descr: invalid , graph: 0, value: 1, generic: 2 } + - { descr: ok , graph: 0, value: 2, generic: 0 } + - { descr: critical , graph: 0, value: 3, generic: 2 } + - { descr: nonCritical , graph: 0, value: 4, generic: 1 } + - { descr: unrecoverable , graph: 0, value: 5, generic: 2 } + - { descr: notInstalled , graph: 0, value: 6, generic: 3 } + - { descr: unknown , graph: 0, value: 7, generic: 1 } + - { descr: notAvailible , graph: 0, value: 8, generic: 3 } + - + oid: bbuTable + value: chargerStatus + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.6.2.1.20.{{ $index }}' + group: 'RAID Controller {{ $adpID }}' + descr: 'BBU charger' + state_name: chargerStatus + states: + - { descr: notAvailible, graph: 0, value: -1, generic: 3 } + - { descr: off , graph: 0, value: 0, generic: 2 } + - { descr: complete , graph: 0, value: 1, generic: 0 } + - { descr: progress , graph: 0, value: 2, generic: 1 } + - + oid: bbuTable + value: batteryReplacement + num_oid: '.1.3.6.1.4.1.3582.4.1.4.1.6.2.1.27.{{ $index }}' + group: 'RAID Controller {{ $adpID }}' + descr: 'BBU replacement' + state_name: batteryReplacement + states: + - { descr: not availible , graph: 0, value: -1, generic: 3 } + - { descr: needsReplacement , graph: 0, value: 1, generic: 2 } + - { descr: ok , graph: 0, value: 0, generic: 0 } diff --git a/priv/profiles/os_discovery/logmaster.yaml b/priv/profiles/os_discovery/logmaster.yaml new file mode 100644 index 00000000..dd621e0b --- /dev/null +++ b/priv/profiles/os_discovery/logmaster.yaml @@ -0,0 +1,127 @@ +mib: UPS-MIB:XPPC-MIB +modules: + sensors: + charge: + data: + - + oid: upsSmartBatteryCapacity + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.1.{{ $index }}' + index: 'upsSmartBatteryCapacity.{{ $index }}' + descr: Battery charge remaining + temperature: + data: + - + oid: upsSmartBatteryTemperature + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.3.{{ $index }}' + index: 'upsSmartBatteryTemperature.{{ $index }}' + descr: Battery + divisor: 10 + - + oid: upsEnvTemperature + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.1.{{ $index }}' + index: 'upsEnvTemperature.{{ $index }}' + descr: Environment + humidity: + data: + - + oid: upsEnvHumidity + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.2.{{ $index }}' + index: 'upsEnvHumidity.{{ $index }}' + descr: Environment + voltage: + data: + - + oid: upsSmartBatteryVoltage + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.2.{{ $index }}' + index: 'upsSmartBatteryVoltage.{{ $index }}' + descr: Battery Voltage + divisor: 10 + - + oid: upsSmartInputLineVoltage + num_oid: '.1.3.6.1.4.1.935.1.1.1.3.2.1.{{ $index }}' + index: 'upsSmartInputLineVoltage.{{ $index }}' + descr: Input Voltage + divisor: 10 + - + oid: upsSmartOutputVoltage + num_oid: '.1.3.6.1.4.1.935.1.1.1.4.2.1.{{ $index }}' + index: 'upsSmartOutputVoltage.{{ $index }}' + descr: Output Voltage + divisor: 10 + load: + data: + - + oid: upsSmartOutputLoad + num_oid: '.1.3.6.1.4.1.935.1.1.1.4.2.3.{{ $index }}' + index: 'upsSmartOutputLoad.{{ $index }}' + descr: 'Output Load' + runtime: + data: + - + oid: upsSecondsOnBattery + num_oid: '.1.3.6.1.2.1.33.1.2.2.{{ $index }}' + index: 'upsSecondsOnBattery.{{ $index }}' + descr: 'Time running on battery' + divisor: 60 + current: + data: + - + oid: upsSmartBatteryCurrent + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.7.{{ $index }}' + index: 'upsSmartBatteryCurrent.{{ $index }}' + descr: Battery Current + state: + data: + - + oid: upsBaseBatteryStatus + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.1.1.{{ $index }}' + descr: Battery Status + index: 'upsBaseBatteryStatus.{{ $index }}' + state_name: upsBaseBatteryStatus + states: + - { descr: unknown, graph: 0, value: 1, generic: 3 } + - { descr: BatteryNormal, graph: 0, value: 2, generic: 0 } + - { descr: BatteryLow, graph: 0, value: 3, generic: 1 } + - + oid: upsSmartBatteryReplaceIndicator + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.5.{{ $index }}' + descr: Battery Replace Status + index: 'upsSmartBatteryReplaceIndicator.{{ $index }}' + state_name: upsSmartBatteryReplaceIndicator + states: + - { descr: noBatteryNeedsReplacing, graph: 0, value: 1, generic: 0 } + - { descr: batteryNeedsReplacing, graph: 0, value: 2, generic: 2 } + - + oid: upsBaseOutputStatus + num_oid: '.1.3.6.1.4.1.935.1.1.1.4.1.1.{{ $index }}' + descr: Output Status + index: 'upsBaseOutputStatus.{{ $index }}' + state_name: upsBaseOutputStatus + states: + - { descr: unknown, graph: 0, value: 1, generic: 3 } + - { descr: onLine, graph: 0, value: 2, generic: 0 } + - { descr: onBattery, graph: 0, value: 3, generic: 1 } + - { descr: onBoost, graph: 0, value: 4, generic: 1 } + - { descr: sleeping, graph: 0, value: 5, generic: 1 } + - { descr: onBypass, graph: 0, value: 6, generic: 3 } + - { descr: rebooting, graph: 0, value: 7, generic: 3 } + - { descr: standBy, graph: 0, value: 8, generic: 1 } + - { descr: onBuck, graph: 0, value: 9, generic: 1 } + - + oid: upsEnvWater + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.3.{{ $index }}' + descr: Water Status + index: 'upsEnvWater.{{ $index }}' + state_name: upsEnvWater + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: abnormal, graph: 0, value: 2, generic: 1 } + - + oid: upsEnvSmoke + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.4.{{ $index }}' + descr: Smoke Status + index: 'upsEnvSmoke.{{ $index }}' + state_name: upsEnvSmoke + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: abnormal, graph: 0, value: 2, generic: 1 } diff --git a/priv/profiles/os_discovery/loop-telecom.yaml b/priv/profiles/os_discovery/loop-telecom.yaml new file mode 100644 index 00000000..87fff420 --- /dev/null +++ b/priv/profiles/os_discovery/loop-telecom.yaml @@ -0,0 +1,148 @@ +mib: L-AM3440-A-Private +modules: + os: + hardware_mib: L-AM3440-A-Private + serial: L-AM3440-A-Private::ccSerialNumber.0 + version: L-AM3440-A-Private::ccPROMVersion.0 + sensors: + state: + data: + - oid: dualPowerTable + value: power1Status + state_name: power1Status + num_oid: ".1.3.6.1.4.1.823.34441.1.10.3.{{ $index }}" + index: "power1Status.{{ $index }}" + descr: Power 1 Status + group: Power Information + states: + - { value: 1, generic: 1, graph: 0, descr: "Off" } + - { value: 2, generic: 0, graph: 0, descr: dc-100w } + - { value: 3, generic: 0, graph: 0, descr: dc-150w } + - { value: 4, generic: 2, graph: 0, descr: dc-150w } + - { value: 5, generic: 0, graph: 0, descr: ac } + - { value: 6, generic: 3, graph: 0, descr: none } + - { value: 7, generic: 0, graph: 0, descr: dc-125v } + + - oid: dualPowerTable + value: power2Status + num_oid: ".1.3.6.1.4.1.823.34441.1.10.4.{{ $index }}" + index: "power2Status.{{ $index }}" + descr: Power 2 Status + group: Power Information + states: + - { value: 1, generic: 1, graph: 0, descr: "Off" } + - { value: 2, generic: 0, graph: 0, descr: dc-100w } + - { value: 3, generic: 0, graph: 0, descr: dc-150w } + - { value: 4, generic: 2, graph: 0, descr: dc-150w } + - { value: 5, generic: 0, graph: 0, descr: ac } + - { value: 6, generic: 3, graph: 0, descr: none } + - { value: 7, generic: 0, graph: 0, descr: dc-125v } + + - oid: ccConsoleStatus + num_oid: ".1.3.6.1.4.1.823.34441.1.4.21.{{ $index }}" + index: 'ccConsoleStatus.{{ $index }}' + descr: Console state + group: Remote access + states: + - { value: 1, generic: 0, graph: 0, descr: 'No active users' } + - { value: 3, generic: 2, graph: 0, descr: 'Console is locked' } + - { value: 4, generic: 0, graph: 0, descr: 'Console is active' } + - { value: 10, generic: 0, graph: 0, descr: telnet1-login } + - { value: 11, generic: 0, graph: 0, descr: telnet2-login } + - { value: 12, generic: 0, graph: 0, descr: telnet3-login } + - { value: 13, generic: 0, graph: 0, descr: telnet4-login } + - { value: 14, generic: 0, graph: 0, descr: telnet5-login } + - { value: 15, generic: 0, graph: 0, descr: ssh1-active } + - { value: 16, generic: 0, graph: 0, descr: ssh2-active } + - { value: 17, generic: 0, graph: 0, descr: ssh3-active } + - { value: 18, generic: 0, graph: 0, descr: ssh4-active } + - { value: 19, generic: 0, graph: 0, descr: ssh5-active } + + - oid: ccConsoleLockoutState + num_oid: ".1.3.6.1.4.1.823.34441.1.4.34.{{ $index }}" + index: 'ccConsoleLockoutState.{{ $index }}' + descr: Local console state + group: Remote access + states: + - { value: 1, generic: 2, graph: 0, descr: 'Locked' } + - { value: 2, generic: 0, graph: 0, descr: 'Open' } + + - oid: ccTelnetLockoutState + num_oid: ".1.3.6.1.4.1.823.34441.1.4.35.{{ $index }}" + index: 'ccTelnetLockoutState.{{ $index }}' + descr: Remote console state + group: Remote access + states: + - { value: 1, generic: 2, graph: 0, descr: 'Locked' } + - { value: 2, generic: 0, graph: 0, descr: 'Open' } + + power: + data: + - oid: dualPowerTable + value: powerConsumption + num_oid: ".1.3.6.1.4.1.823.34441.1.10.5.{{ $index }}" + index: "powerConsumption.{{ $index }}" + descr: Power consumption + temperature: + data: + - oid: c1Temperature + num_oid: '.1.3.6.1.4.1.823.34441.1.10.11.{{ $index }}' + snmp_flags: '-OQUsb' + index: 'c1Temperature.{{ $index }}' + descr: Chassis 1 + high_limit: 90 + + - oid: dpwmTemperature + num_oid: '.1.3.6.1.4.1.823.34441.1.10.16.{{ $index }}' + snmp_flags: '-OQUsb' + index: ' dpwmTemperature.{{ $index }}' + descr: DPWM Temperature + high_limit: 90 + + voltage: + data: + - oid: dpwmInputVoltage + num_oid: '.1.3.6.1.4.1.823.34441.1.10.15.{{ $index }}' + descr: DWMP Input Voltage + index: 'dpwmInputVoltage.{{ $index }}' + + - oid: dpwmCH0Voltage + num_oid: '.1.3.6.1.4.1.823.34441.1.10.17.{{ $index }}' + descr: DWMP Chanel 0 Voltage + index: 'dpwmCH0Voltage.{{ $index }}' + + - oid: dpwmCH1Voltage + num_oid: '.1.3.6.1.4.1.823.34441.1.10.18.{{ $index }}' + descr: DWMP Chanel 1 Voltage + index: 'dpwmCH1Voltage.{{ $index }}' + + - oid: dpwmCH2Voltage + num_oid: '.1.3.6.1.4.1.823.34441.1.10.19.{{ $index }}' + descr: DWMP Chanel 2 Voltage + index: 'dpwmCH2Voltage.{{ $index }}' + + - oid: dpwmCH3Voltage + num_oid: '.1.3.6.1.4.1.823.34441.1.10.20.{{ $index }}' + descr: DWMP Chanel 3 Voltage + index: 'dpwmCH3Voltage.{{ $index }}' + current: + data: + - oid: dpwmCH0Current + num_oid: '.1.3.6.1.4.1.823.34441.1.10.21.{{ $index }}' + descr: DWMP Chanel 0 current + index: 'dpwmCH0Current.{{ $index }}' + + - oid: dpwmCH1Current + num_oid: '.1.3.6.1.4.1.823.34441.1.10.22.{{ $index }}' + descr: DWMP Chanel 1 current + index: 'dpwmCH1Current.{{ $index }}' + + - oid: dpwmCH2Current + num_oid: '.1.3.6.1.4.1.823.34441.1.10.23.{{ $index }}' + descr: DWMP Chanel 2 current + index: 'dpwmCH2Current.{{ $index }}' + + - oid: dpwmCH3Current + num_oid: '.1.3.6.1.4.1.823.34441.1.10.24.{{ $index }}' + descr: DWMP Chanel 3 current + index: 'dpwmCH3Current.{{ $index }}' diff --git a/priv/profiles/os_discovery/luminato.yaml b/priv/profiles/os_discovery/luminato.yaml new file mode 100644 index 00000000..8362aa45 --- /dev/null +++ b/priv/profiles/os_discovery/luminato.yaml @@ -0,0 +1,82 @@ +mib: TELESTE-COMMON-MIB:UCD-SNMP-MIB:ENTITY-MIB +modules: + os: + hardware: + - TELESTE-LUMINATO-MIB::hwType.0 + - TELESTE-LUMINATO-MIB::hwVersion.0 + hardware_template: '{{ TELESTE-LUMINATO-MIB::hwType.0 }} {{ TELESTE-LUMINATO-MIB::hwVersion.0 }}' + serial: TELESTE-LUMINATO-MIB::hwSerialNumber.0 + version: TELESTE-LUMINATO-MIB::swVersion.0 + + processors: + data: + - + oid: laLoadInt + num_oid: '.1.3.6.1.4.1.2021.10.1.5.{{ $index }}' + descr: Chassis CPU + index: 0 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalDescr + - entPhysicalName + temperature: + data: + - + oid: statusInternalTemperature + num_oid: '.1.3.6.1.4.1.3715.99.2.2.1.1.3.{{ $index }}' + descr: "{{ $entPhysicalName }} ({{ $entPhysicalDescr }}) " + index: '{{ $index }}' + divisor: 10 + skip_value_lt: 1 + state: + data: + - + oid: statusGeneral + num_oid: '.1.3.6.1.4.1.3715.99.1.2.1.{{ $index }}' + descr: General Status + state_name: statusGeneral + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Notification, graph: 1, value: 2, generic: 1} + - { descr: Warning, graph: 1, value: 3, generic: 1} + - { descr: Alarm, graph: 1, value: 4, generic: 3} + - + oid: statusTemperature + num_oid: '.1.3.6.1.4.1.3715.99.1.2.5.{{ $index }}' + descr: Temperature Status + state_name: statusTemperature + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Hihi, graph: 1, value: 2, generic: 3} + - { descr: Hi, graph: 1, value: 3, generic: 3} + - { descr: Lo, graph: 1, value: 4, generic: 2} + - { descr: Lolo, graph: 1, value: 5, generic: 2} + - + oid: statusFan + num_oid: '.1.3.6.1.4.1.3715.99.1.2.6.{{ $index }}' + descr: Fan Status + state_name: statusFan + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Failure, graph: 1, value: 2, generic: 3} + - + oid: statusHardware + num_oid: '.1.3.6.1.4.1.3715.99.1.2.7.{{ $index }}' + descr: Hardware Status + state_name: statusHardware + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Failure, graph: 1, value: 2, generic: 3} + - + oid: statusSoftware + num_oid: '.1.3.6.1.4.1.3715.99.1.2.8.{{ $index }}' + descr: Software Status + state_name: statusSoftware + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Failure, graph: 1, value: 2, generic: 3 } + - { descr: Missing, graph: 1, value: 3, generic: 2 } + - { descr: Initialising, graph: 1, value: 4, generic: 2 } diff --git a/priv/profiles/os_discovery/mbg-ltos6.yaml b/priv/profiles/os_discovery/mbg-ltos6.yaml new file mode 100644 index 00000000..041a6ddb --- /dev/null +++ b/priv/profiles/os_discovery/mbg-ltos6.yaml @@ -0,0 +1,119 @@ +mib: MBG-SNMP-LTNG-MIB +modules: + os: + serial: MBG-SNMP-LTNG-MIB::mbgLtNgSerialNumber.0 + version: MBG-SNMP-LTNG-MIB::mbgLtNgFirmwareVersion.0 + sensors: + count: + data: + - + oid: mbgLtNgRefclockStatusA + value: mbgLtNgRefclockStatusA + num_oid: '.1.3.6.1.4.1.5597.30.0.1.2.1.6.{{ $index }}' + descr: 'Antenna A{{ $index }} Satellites' + low_warn_limit: 0 + low_limit: 0 + index: 'mbgLtNgRefclockStatusA.{{ $index }}' + - + oid: mbgLtNgRefclockStatusB + value: mbgLtNgRefclockStatusB + num_oid: '.1.3.6.1.4.1.5597.30.0.1.2.1.8.{{ $index }}' + descr: 'Antenna B{{ $index }} Satellites' + low_warn_limit: 0 + low_limit: 0 + index: 'mbgLtNgRefclockStatusB.{{ $index }}' + state: + data: + - + oid: mbgLtNgRefclockType + value: mbgLtNgRefclockType + num_oid: '.1.3.6.1.4.1.5597.30.0.1.2.1.2.{{ $index }}' + descr: 'Reference Clock Type' + index: 'mbgLtNgRefclockType.{{ $index }}' + states: + - { value: 0, descr: unknown, graph: 0, generic: 3 } + - { value: 1, descr: gps166, graph: 1, generic: 0 } + - { value: 2, descr: gps167, graph: 2, generic: 0 } + - { value: 3, descr: gps167SV, graph: 3, generic: 0 } + - { value: 4, descr: gps167PC, graph: 4, generic: 0 } + - { value: 5, descr: gps167PCI, graph: 5, generic: 0 } + - { value: 6, descr: gps163, graph: 6, generic: 0 } + - { value: 7, descr: gps168PCI, graph: 7, generic: 0 } + - { value: 8, descr: gps161, graph: 8, generic: 0 } + - { value: 9, descr: gps169PCI, graph: 9, generic: 0 } + - { value: 10, descr: tcr167PCI, graph: 10, generic: 0 } + - { value: 11, descr: gps164, graph: 11, generic: 0 } + - { value: 12, descr: gps170PCI, graph: 12, generic: 0 } + - { value: 13, descr: pzf511, graph: 13, generic: 0 } + - { value: 14, descr: gps170, graph: 14, generic: 0 } + - { value: 15, descr: tcr511, graph: 15, generic: 0 } + - { value: 16, descr: am511, graph: 16, generic: 0 } + - { value: 17, descr: msf511, graph: 17, generic: 0 } + - { value: 18, descr: grc170, graph: 18, generic: 0 } + - { value: 19, descr: gps170PEX, graph: 19, generic: 0 } + - { value: 20, descr: gps162, graph: 20, generic: 0 } + - { value: 21, descr: ptp270PEX, graph: 21, generic: 0 } + - { value: 22, descr: frc511PEX, graph: 22, generic: 0 } + - { value: 23, descr: gen170, graph: 23, generic: 0 } + - { value: 24, descr: tcr170PEX, graph: 24, generic: 0 } + - { value: 25, descr: wwvb511, graph: 25, generic: 0 } + - { value: 26, descr: mgr170, graph: 26, generic: 0 } + - { value: 27, descr: jjy511, graph: 27, generic: 0 } + - { value: 28, descr: pzf600, graph: 28, generic: 0 } + - { value: 29, descr: tcr600, graph: 29, generic: 0 } + - { value: 30, descr: gps180, graph: 30, generic: 0 } + - { value: 31, descr: gln170, graph: 31, generic: 0 } + - { value: 32, descr: gps180PEX, graph: 32, generic: 0 } + - { value: 33, descr: tcr180PEX, graph: 33, generic: 0 } + - { value: 34, descr: pzf180PEX, graph: 34, generic: 0 } + - { value: 35, descr: mgr180, graph: 35, generic: 0 } + - { value: 36, descr: msf600, graph: 36, generic: 0 } + - { value: 37, descr: wwvb600, graph: 37, generic: 0 } + - { value: 38, descr: jjy600, graph: 38, generic: 0 } + - { value: 39, descr: gps180HS, graph: 39, generic: 0 } + - { value: 40, descr: gps180AMC, graph: 40, generic: 0 } + - { value: 41, descr: esi180, graph: 41, generic: 0 } + - { value: 42, descr: cpe180, graph: 42, generic: 0 } + - { value: 43, descr: lno180, graph: 43, generic: 0 } + - { value: 44, descr: grc180, graph: 44, generic: 0 } + - { value: 45, descr: liu, graph: 45, generic: 0 } + - { value: 46, descr: dcf600HS, graph: 46, generic: 0 } + - { value: 47, descr: dcf600RS, graph: 47, generic: 0 } + - { value: 48, descr: mri, graph: 48, generic: 0 } + - { value: 49, descr: bpe, graph: 49, generic: 0 } + - { value: 50, descr: gln180Pex, graph: 50, generic: 0 } + - { value: 51, descr: n2x, graph: 51, generic: 0 } + - { value: 52, descr: rsc180, graph: 52, generic: 0 } + - { value: 53, descr: lneGb, graph: 53, generic: 0 } + - { value: 54, descr: lnePpg180, graph: 54, generic: 0 } + - { value: 55, descr: scg, graph: 55, generic: 0 } + - { value: 56, descr: mdu300, graph: 56, generic: 0 } + - { value: 57, descr: sdi, graph: 57, generic: 0 } + - { value: 58, descr: fdm180, graph: 58, generic: 0 } + - { value: 59, descr: spt, graph: 59, generic: 0 } + - { value: 60, descr: pzf180, graph: 60, generic: 0 } + - { value: 61, descr: rel1000, graph: 61, generic: 0 } + - + oid: mbgLtNgRefclockUsage + value: mbgLtNgRefclockUsage + num_oid: '.1.3.6.1.4.1.5597.30.0.1.2.1.3.{{ $index }}' + descr: 'Reference Clock Usage' + index: 'mbgLtNgRefclockUsage.{{ $index }}' + states: + - { value: 0, descr: notAvailable, graph: 0, generic: 2 } + - { value: 1, descr: secondary, graph: 1, generic: 0 } + - { value: 2, descr: compare, graph: 2, generic: 1 } + - { value: 3, descr: primary, graph: 3, generic: 0 } + - + oid: mbgLtNgRefclockState + value: mbgLtNgRefclockState + num_oid: '.1.3.6.1.4.1.5597.30.0.1.2.1.5.{{ $index }}' + descr: 'Reference Clock State' + index: 'mbgLtNgRefclockState.{{ $index }}' + states: + - { value: 0, descr: notAvailable, graph: 0, generic: 2 } + - { value: 1, descr: synchronized, graph: 1, generic: 0 } + - { value: 2, descr: notSynchronized, graph: 2, generic: 0 } + + + \ No newline at end of file diff --git a/priv/profiles/os_discovery/mbg-meinbergos.yaml b/priv/profiles/os_discovery/mbg-meinbergos.yaml new file mode 100644 index 00000000..4c7668a1 --- /dev/null +++ b/priv/profiles/os_discovery/mbg-meinbergos.yaml @@ -0,0 +1,137 @@ +mib: MEINBERG-OS-MIB +modules: + sensors: + count: + data: + - + oid: mbgOsReceiverGoodSv + value: mbgOsReceiverGoodSv + num_oid: '.1.3.6.1.4.1.5597.7.2.3.1.1.6.{{ $index }}' + descr: 'Current number of good/usable satellites' + low_warn_limit: 10 + low_limit: 5 + group: GNSS + index: 'mbgOsReceiverGoodSv.{{ $index }}' + - + oid: mbgOsReceiverSv + value: mbgOsReceiverSv + num_oid: '.1.3.6.1.4.1.5597.7.2.3.1.1.7.{{ $index }}' + descr: 'Current number of satellites visible' + low_warn_limit: 15 + low_limit: 10 + group: GNSS + index: 'mbgOsReceiverSv.{{ $index }}' + - + oid: mbgOsSysrefGlbStateMasterRefVariance + value: mbgOsSysrefGlbStateMasterRefVariance + num_oid: '.1.3.6.1.4.1.5597.7.2.4.2.1.4.{{ $index }}' + group: PRECISION + descr: 'Master reference variance' + index: 'mbgOsSysrefGlbStateMasterRefVariance.{{ $index }}' + - + oid: mbgOsSysrefGlbStateMasterRefAccuracy + value: mbgOsSysrefGlbStateMasterRefAccuracy + num_oid: '.1.3.6.1.4.1.5597.7.2.4.2.1.3.{{ $index }}' + group: PRECISION + descr: 'Master reference accuracy (ns)' + index: 'mbgOsSysrefGlbStateMasterRefAccuracy.{{ $index }}' + - + oid: mbgOsPtpMiscTableEntry + value: mbgOsPtpMiscUnicastSlaves + num_oid: '.1.3.6.1.4.1.5597.7.2.5.2.1.1.4.{{ $index }}' + descr: "Unicast Slave: {{ $mbgOsPtpMiscNetworkIntfLabel }}" + group: PTP + index: 'ptp_{{ $index }}_unicast_slave}' + - + oid: mbgOsPtpParentDsTableEntry + value: mbgOsPtpParentDsGmClockVariance + num_oid: '.1.3.6.1.4.1.5597.7.2.5.2.3.1.8.{{ $index }}' + group: PTP + descr: '{{ $mbgOsPtpParentDsGmClockId }} master variance' + index: 'mbgOsPtpParentDsGmClockVariance.{{ $index }}' + skip_values: + - + oid: mbgOsPtpParentDsGmClockAccuracy + op: '=' + value: 0 + - + oid: mbgOsPtpParentDsTableEntry + value: mbgOsPtpParentDsGmPrio1 + num_oid: '.1.3.6.1.4.1.5597.7.2.5.2.3.1.4.{{ $index }}' + group: PTP + descr: '{{ $mbgOsPtpParentDsGmClockId }} master Priority' + index: 'mbgOsPtpParentDsGmPrio1.{{ $index }}' + skip_values: + - + oid: mbgOsPtpParentDsGmClockAccuracy + op: '=' + value: 0 + - + oid: mbgOsSysrefSrcStateTableEntry + value: mbgOsSysrefSrcStateOffset + num_oid: '.1.3.6.1.4.1.5597.7.2.4.2.2.1.1.5.{{ $index }}' + descr: "Priority {{ $mbgOsSysrefSrcStatePriority }}: {{ $mbgOsSysrefSrcStateId }} - offset (ns)" + group: REFERENCES + index: 'ptp_references_{{ $index }}}' + state: + data: + - + oid: mbgOsSysrefGlbStateSysSync + value: mbgOsSysrefGlbStateSysSync + num_oid: '.1.3.6.1.4.1.5597.7.2.4.2.1.5.{{ $index }}' + descr: 'System global sync state' + index: 'mbgOsSysrefGlbStateSysSync.{{ $index }}' + states: + - { value: 0, descr: notSynchronized, graph: 0, generic: 2 } + - { value: 1, descr: synchronized, graph: 1, generic: 0 } + - + oid: mbgOsReceiverState + value: mbgOsReceiverState + num_oid: '.1.3.6.1.4.1.5597.7.2.3.1.1.3.{{ $index }}' + descr: 'Receiver status' + index: 'mbgOsReceiverState.{{ $index }}' + states: + - { value: 0, descr: noData, graph: 0, generic: 3 } + - { value: 1, descr: waitingForData, graph: 1, generic: 1 } + - { value: 2, descr: antennaShortCircuit, graph: 2, generic: 2 } + - { value: 3, descr: antennaDisconnected, graph: 3, generic: 2 } + - { value: 4, descr: coldBoot, graph: 4, generic: 1 } + - { value: 5, descr: warmBoot, graph: 5, generic: 1 } + - { value: 6, descr: synchronized, graph: 6, generic: 0 } + - + oid: mbgOsPtpMiscTableEntry + value: mbgOsPtpMiscRunning + num_oid: '.1.3.6.1.4.1.5597.7.2.5.2.1.1.2.{{ $index }}' + descr: "Interface: {{ $mbgOsPtpMiscNetworkIntfLabel }}" + index: 'ptp_{{ $index }}}_state' + group: PTP + states: + - { value: 0, descr: NOT RUN, graph: 1, generic: 3 } + - { value: 1, descr: RUNNING, graph: 1, generic: 0 } + - + oid: mbgOsPtpParentDsTableEntry + value: mbgOsPtpParentDsGmClockAccuracy + num_oid: '.1.3.6.1.4.1.5597.7.2.5.2.3.1.7.{{ $index }}' + group: PTP + descr: '{{ $mbgOsPtpParentDsGmClockId }} master accuracy' + index: 'mbgOsPtpParentDsGmClockAccuracy.{{ $index }}' + skip_values: + - + oid: mbgOsPtpParentDsGmClockAccuracy + op: '=' + value: 0 + states: + - { value: -2, descr: ok, graph: 1, generic: 3 } + - { value: 32, descr: <25ns, graph: 1, generic: 0 } + - { value: 33, descr: <100ns, graph: 1, generic: 0 } + - { value: 34, descr: <250ns, graph: 1, generic: 0 } + - { value: 35, descr: <1μs, graph: 1, generic: 0 } + - { value: 36, descr: <2.5μs, graph: 1, generic: 0 } + - { value: 37, descr: <10μs, graph: 1, generic: 0 } + - { value: 38, descr: <25μs, graph: 1, generic: 0 } + - { value: 39, descr: <100μs, graph: 1, generic: 0 } + - { value: 40, descr: <250μs, graph: 1, generic: 0 } + - { value: 41, descr: <1ms, graph: 1, generic: 0 } + - { value: 42, descr: <2-5ms, graph: 1, generic: 0 } + - { value: 43, descr: <10ms, graph: 1, generic: 0 } + - { value: 44, descr: <25ms, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/mcafeewebgateway.yaml b/priv/profiles/os_discovery/mcafeewebgateway.yaml new file mode 100644 index 00000000..fc446a84 --- /dev/null +++ b/priv/profiles/os_discovery/mcafeewebgateway.yaml @@ -0,0 +1,91 @@ +mib: MCAFEE-MWG-MIB +modules: + os: + version: MCAFEE-MWG-MIB::kProductVersion.0 + sensors: + additional_oids: + data: + - + oid: + - stCategoryName + count: + data: + - + oid: stMalwareDetected + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.2.{{ $index }}' + descr: 'Infections detected by Antimalware' + index: 'stMalwareDetected{{ $index }}' + rrd_type: COUNTER + - + oid: stConnectionsLegitimate + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.3.{{ $index }}' + descr: 'Total requests' + index: 'stConnectionsLegitimate{{ $index }}' + group: Requests + rrd_type: COUNTER + - + oid: stBlockedByAntiMalware + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.4.{{ $index }}' + index: 'stBlockedByAntiMalware{{ $index }}' + descr: 'Connections blocked by Anti-Malware' + rrd_type: COUNTER + - + oid: stConnectionsBlocked + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.5.{{ $index }}' + descr: 'Total Connections blocked' + index: 'stConnectionsBlocked{{ $index }}' + rrd_type: COUNTER + - + oid: stBlockedByMediaFilter + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.6.{{ $index }}' + index: 'stBlockedByMediaFilter{{ $index }}' + descr: 'Connections blocked by the Media-Type' + rrd_type: COUNTER + - + oid: stBlockedByURLFilter + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.7.{{ $index }}' + index: 'stBlockedByURLFilter{{ $index }}' + descr: 'Connections blocked by the URL filter' + rrd_type: COUNTER + - + oid: stMimeType + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.8.{{ $index }}' + index: 'stMimeType{{ $index }}' + descr: 'Media types detected by the Media Type filter' + rrd_type: COUNTER + - + oid: stCategoryCount + num_oid: '.1.3.6.1.4.1.1230.2.7.2.1.10.1.2.{{ $index }}' + index: 'Blocked {{ $stCategoryName }}' + descr: 'Blocked "{{ $stCategoryName }}"' + group: 'Categories Blocked' + rrd_type: COUNTER + - + oid: stHttpRequests + num_oid: '.1.3.6.1.4.1.1230.2.7.2.2.1.{{ $index }}' + index: 'stHttpRequests{{ $index }}' + descr: 'HTTP requests' + group: Requests + rrd_type: COUNTER + - + oid: stHttpsRequests + num_oid: '.1.3.6.1.4.1.1230.2.7.2.3.1.{{ $index }}' + index: 'stHttpsRequests{{ $index }}' + descr: 'HTTPS requests' + group: Requests + rrd_type: COUNTER + - + oid: stClientCount + num_oid: '.1.3.6.1.4.1.1230.2.7.2.5.2.{{ $index }}' + index: 'stClientCount.{{ $index }}' + descr: 'Connected clients' + - + oid: stConnectedSockets + num_oid: '.1.3.6.1.4.1.1230.2.7.2.5.3.{{ $index }}' + index: 'stConnectedSockets.{{ $index }}' + descr: 'Open network sockets' + - + oid: stResolveHostViaDNS + num_oid: '.1.3.6.1.4.1.1230.2.7.2.5.6.{{ $index }}' + index: 'stResolveHostViaDNS.{{ $index }}' + descr: 'Time to resolve DNS (ms)' diff --git a/priv/profiles/os_discovery/mellanox.yaml b/priv/profiles/os_discovery/mellanox.yaml new file mode 100644 index 00000000..05a64f27 --- /dev/null +++ b/priv/profiles/os_discovery/mellanox.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/[, ](?\S+),SWv(SX)?(?.*)/' diff --git a/priv/profiles/os_discovery/merakimr.yaml b/priv/profiles/os_discovery/merakimr.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/merakimr.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/merakims.yaml b/priv/profiles/os_discovery/merakims.yaml new file mode 100644 index 00000000..90690fc2 --- /dev/null +++ b/priv/profiles/os_discovery/merakims.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?[\w\-\.\_ ]+)/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/merakimx.yaml b/priv/profiles/os_discovery/merakimx.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/merakimx.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/microsemipdsine.yaml b/priv/profiles/os_discovery/microsemipdsine.yaml new file mode 100644 index 00000000..98d338fa --- /dev/null +++ b/priv/profiles/os_discovery/microsemipdsine.yaml @@ -0,0 +1,26 @@ +mib: MICROSEMI-PDSINE-MIB +modules: + os: + sysDescr_regex: '/(?\S+)\. (Unit S\/N=(?\d*)\. )?App Ver=(?[^,]*),/' + sensors: + power: + data: + - + oid: portTable + value: portConsumptionPower + num_oid: '.1.3.6.1.4.1.7428.1.2.1.1.1.3.{{ $index }}' + descr: 'Consumption, unit {{ $subindex0 }}, port {{ $subindex1 }}' + index: 'power-{{ $index }}' + group: 'Ports (Unit {{ $subindex0 }})' + - + oid: mainPSEMaxPower + group: 'Main (Unit {{ $index }})' + num_oid: '.1.3.6.1.4.1.7428.1.2.2.1.1.5.{{ $index }}' + descr: 'Max Power (Unit {{ $index }})' + index: 'mainpw-{{ $index }}' + - + oid: POWER-ETHERNET-MIB::pethMainPseConsumptionPower + group: 'Main (Unit {{ $index }})' + descr: 'Used Power (Unit {{ $index }})' + index: 'usedmainpw-{{ $index }}' + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.4.{{ $index }}' diff --git a/priv/profiles/os_discovery/microsemitime.yaml b/priv/profiles/os_discovery/microsemitime.yaml new file mode 100644 index 00000000..0d2f535e --- /dev/null +++ b/priv/profiles/os_discovery/microsemitime.yaml @@ -0,0 +1,77 @@ +mib: SYMM-SMI +modules: + os: + hardware: + - SYMM-SMI::ntpSysSystem.0 + - SYMM-SMI::etcModel.0 + hardware_template: '{{ SYMM-SMI::ntpSysSystem.0 }} {{ SYMM-SMI::etcModel.0 }}' + serial: SYMM-SMI::etcSerialNbr.0 + version: SYMM-SMI::etcVersion.0 + sensors: + count: + data: + - + oid: gpsUTCOffset + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.3.2.{{ $index }}' + descr: 'GPS UTC Offset' + state: + data: + - + oid: ntpSysMode + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.1.18.{{ $index }}' + descr: 'NTP Mode' + state_name: ntpSysMode + states: + - { value: 0, generic: 3, graph: 1, descr: 'unspecified' } + - { value: 1, generic: 0, graph: 1, descr: 'symmetric active' } + - { value: 2, generic: 0, graph: 1, descr: 'symmetric passive' } + - { value: 3, generic: 1, graph: 1, descr: 'client' } + - { value: 4, generic: 0, graph: 1, descr: 'server' } + - { value: 5, generic: 0, graph: 1, descr: 'broadcast' } + - { value: 6, generic: 3, graph: 1, descr: 'reserved for NTP control messages' } + - { value: 7, generic: 3, graph: 1, descr: 'reserved for private use' } + - + oid: tymingStatus + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.2.1.{{ $index }}' + descr: 'Hardware Clock State' + state_name: tymingStatus + states: + - { value: 0, generic: 0, graph: 1, descr: 'Good' } + - { value: 1, generic: 2, graph: 1, descr: 'Bad' } + - + oid: gpsHealth + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.3.3.{{ $index }}' + descr: 'GPS Receiver Health' + state_name: gpsHealth + states: + - { value: 0, generic: 2, graph: 1, descr: 'Receiver Down' } + - { value: 1, generic: 2, graph: 1, descr: 'Unknown Mode' } + - { value: 2, generic: 1, graph: 1, descr: 'Acquiring Signal' } + - { value: 3, generic: 1, graph: 1, descr: 'Bad Geometry' } + - { value: 4, generic: 0, graph: 1, descr: 'Propagate Mode' } + - { value: 5, generic: 0, graph: 1, descr: '2D Solution' } + - { value: 6, generic: 0, graph: 1, descr: '3D Solution' } + - { value: 7, generic: 0, graph: 1, descr: 'Position Hold' } + - { value: 8, generic: 0, graph: 1, descr: 'Time Valid' } + - + oid: tymingSource + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.2.2.{{ $index }}' + descr: 'Hardware Clock Source' + state_name: tymingSource + states: + - { value: 0, generic: 2, graph: 1, descr: 'None' } + - { value: 1, generic: 0, graph: 1, descr: 'GPS' } + - { value: 4, generic: 0, graph: 1, descr: 'GPS' } + - { value: 8, generic: 0, graph: 1, descr: 'IRIG' } + - { value: 16, generic: 0, graph: 1, descr: 'External 1PPS' } + - { value: 24, generic: 0, graph: 1, descr: 'External 10MHz' } + - { value: 31, generic: 1, graph: 1, descr: 'Free-run' } + - + oid: gpsMode + num_oid: '.1.3.6.1.4.1.9070.1.2.3.1.5.1.3.5.{{ $index }}' + descr: 'GPS Receiver Mode' + state_name: gpsMode + states: + - { value: 0, generic: 0, graph: 1, descr: 'Receiver Mode: Survey' } + - { value: 1, generic: 0, graph: 1, descr: 'Receiver Mode: Dynamic' } + - { value: 2, generic: 0, graph: 1, descr: 'Receiver Mode: Hold' } diff --git a/priv/profiles/os_discovery/mimosa.yaml b/priv/profiles/os_discovery/mimosa.yaml new file mode 100644 index 00000000..f7bac046 --- /dev/null +++ b/priv/profiles/os_discovery/mimosa.yaml @@ -0,0 +1,18 @@ +mib: MIMOSA-NETWORKS-BFIVE-MIB +modules: + os: + hardware_mib: MIMOSA-NETWORKS-BASE-MIB + serial: MIMOSA-NETWORKS-BFIVE-MIB::mimosaSerialNumber.0 + version: MIMOSA-NETWORKS-BFIVE-MIB::mimosaFirmwareVersion.0 + sensors: + state: + data: + - + oid: mimosaSatelliteStrength + value: mimosaSatelliteStrength + num_oid: '.1.3.6.1.4.1.43356.2.1.2.2.5.{{ $index }}' + descr: 'Satellite Strength' + index: '{{ $index }}' + states: + - { value: 1, descr: good, graph: 1, generic: 0 } + - { value: 2, descr: bad, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/minkelsrms.yaml b/priv/profiles/os_discovery/minkelsrms.yaml new file mode 100644 index 00000000..a5e0200f --- /dev/null +++ b/priv/profiles/os_discovery/minkelsrms.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?SP\d+)/' diff --git a/priv/profiles/os_discovery/mlos-atd.yaml b/priv/profiles/os_discovery/mlos-atd.yaml new file mode 100644 index 00000000..61cd8c4f --- /dev/null +++ b/priv/profiles/os_discovery/mlos-atd.yaml @@ -0,0 +1,155 @@ +mib: MCAFEE-ATD-MIB +modules: + mempools: + data: + - + percent_used: MCAFEE-ATD-MIB::atdMemoryUtilization + processors: + data: + - + oid: atdCPUUtilizationAvg + num_oid: '.1.3.6.1.4.1.8962.4.1.1.1.{{ $index }}' + sensors: + count: + data: + - + oid: mcAfeeATDMIBObjects + value: atdFileWaiting + num_oid: '.1.3.6.1.4.1.8962.4.1.1.6.{{ $index }}' + descr: 'ATD Files Queued' + group: 'File Processing' + index: 'atdFileWaiting' + - + oid: mcAfeeATDMIBObjects + value: atdFileAnalyzing + num_oid: '.1.3.6.1.4.1.8962.4.1.1.7.{{ $index }}' + descr: 'ATD Files Processing' + group: 'File Processing' + index: 'atdFileAnalyzing' + temperature: + data: + - + oid: mcAfeeATDMIBObjects + value: atdSystemTemperature + num_oid: '.1.3.6.1.4.1.8962.4.1.1.8.{{ $index }}' + descr: 'System Temperature' + percent: + data: + - + oid: mcAfeeATDMIBObjects + value: atdHDDDataSpaceUtilization + num_oid: '.1.3.6.1.4.1.8962.4.1.1.4.{{ $index }}' + descr: 'ATD Data Disk Space Utilization' + index: 'atdDataDiskSpaceUsed' + - + oid: atdHDDSystemSpaceUtilization + num_oid: '.1.3.6.1.4.1.8962.4.1.1.3.{{ $index }}' + descr: 'ATD System Disk Space Utilization' + index: 'atdSystemDiskSpaceUsed' + + - + oid: atdHDDVarSpaceUtilization + num_oid: '.1.3.6.1.4.1.8962.4.1.1.19.{{ $index }}' + descr: 'ATD Var Disk Space Utilization' + index: 'atdVarDiskSpaceUsed' + state: + data: + - + oid: atdSystemHealth + num_oid: '.1.3.6.1.4.1.8962.4.1.1.9.{{ $index }}' + descr: 'System Health' + state_name: atdSystemHealth + states: + - { value: 0, generic: 2, graph: 0, descr: 'Bad' } + - { value: 1, generic: 0, graph: 0, descr: 'Good' } + - + oid: atdBackupSchedulerStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.10.{{ $index }}' + descr: 'Backup Scheduler Status' + state_name: atdBackupSchedulerStatus + states: + - { value: 0, generic: 2, graph: 0, descr: 'Backup Scheduler Status Failed' } + - { value: 1, generic: 0, graph: 0, descr: 'Backup Scheduler Status Ok' } + - + oid: atdLoadBalancerStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.11.{{ $index }}' + descr: 'ATD Load Balancer Status' + state_name: atdLoadBalancerStatus + states: + - { value: 0, generic: 0, graph: 0, descr: 'Device In Standalone Mode' } + - { value: 1, generic: 2, graph: 0, descr: 'Load Balancer Down' } + - { value: 2, generic: 0, graph: 0, descr: 'Load Balancer Up' } + - { value: 3, generic: 1, graph: 0, descr: 'SW VERSION MISMATCH' } + - { value: 4, generic: 2, graph: 0, descr: 'Primary Node LB Not Up' } + - { value: 5, generic: 1, graph: 0, descr: 'SCP Failed' } + - { value: 6, generic: 1, graph: 0, descr: 'VM Creation Failed' } + - { value: 7, generic: 3, graph: 0, descr: 'Invalid Status' } + - + oid: atdEmailConnectorStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.12.{{ $index }}' + descr: 'ATD Email Connetor Status' + state_name: atdEmailConnectorStatus + states: + - { value: 0, generic: 3, graph: 0, descr: 'Email Connector Disabled' } + - { value: 1, generic: 0, graph: 0, descr: 'Email Connector Ok' } + - { value: 2, generic: 1, graph: 0, descr: 'Email Connector Degraded' } + - { value: 3, generic: 2, graph: 0, descr: 'Email Connector Overloaded' } + - + oid: atdEmailGatewayWaitTime + num_oid: '.1.3.6.1.4.1.8962.4.1.1.13.{{ $index }}' + descr: 'Email Gateway Wait Time Threshold' + state_name: atdEmailGatewayWaitTime + states: + - { value: 0, generic: 0, graph: 0, descr: 'Email Gateway Threshold Ok' } + - { value: 1, generic: 2, graph: 0, descr: 'Email Gateway Threshold Wait Time Reached' } + - + oid: atdMalwareInterfaceStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.14.{{ $index }}' + descr: 'ATD Malware Interface Status' + state_name: atdMalwareInterfaceStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Down } + - { value: 1, generic: 0, graph: 0, descr: Up } + - + oid: atdLicenseStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.15.{{ $index }}' + descr: 'ATD License Status' + state_name: atdLicenseStatus + states: + - { value: 1, generic: 0, graph: 0, descr: Valid } + - { value: 2, generic: 2, graph: 0, descr: Invalid } + - { value: 3, generic: 2, graph: 0, descr: Expired } + - + oid: atdDXLChannelStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.16.{{ $index }}' + descr: 'ATD DXL Status' + state_name: atdDXLChannelStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Down } + - { value: 1, generic: 0, graph: 0, descr: Up } + - + oid: atdSensorStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.17.{{ $index }}' + descr: 'ATD Sensor Status' + state_name: atdSensorStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Inactive } + - { value: 1, generic: 0, graph: 0, descr: Active } + - { value: 2, generic: 3, graph: 0, descr: 'Not Connected' } + - + oid: atdTAXIIStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.18.{{ $index }}' + descr: 'ATD TAXII Status' + state_name: atdTAXIIStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Down } + - { value: 1, generic: 0, graph: 0, descr: Up } + - { value: 2, generic: 3, graph: 0, descr: Unknown } + - + oid: atdMalwareDNSStatus + num_oid: '.1.3.6.1.4.1.8962.4.1.1.18.{{ $index }}' + descr: 'ATD Malware DNS Status' + state_name: atdMalwareDNSStatus + states: + - { value: 0, generic: 2, graph: 0, descr: Bad } + - { value: 1, generic: 0, graph: 0, descr: Good } diff --git a/priv/profiles/os_discovery/mlos-nsp.yaml b/priv/profiles/os_discovery/mlos-nsp.yaml new file mode 100644 index 00000000..f4d4cce8 --- /dev/null +++ b/priv/profiles/os_discovery/mlos-nsp.yaml @@ -0,0 +1,39 @@ +mib: TRELLIX-SENSOR-PERF-MIB:TRELLIX-SENSOR-CONF-MIB +modules: + os: + hardware: TRELLIX-SENSOR-CONF-MIB::ivSysModel.0 + serial: TRELLIX-SENSOR-CONF-MIB::ivSysSerialNumber.0 + mempools: + data: + - + percent_used: TRELLIX-SENSOR-PERF-MIB::sysMemUtilisation + processors: + data: + - + oid: 'sensorAvgLoad' + num_oid: '.1.3.6.1.4.1.8962.2.1.3.1.1.5.1.1.{{ $index }}' + sensors: + count: + data: + - + oid: 'sensorPerfTable' + value: 'totalAlertsSentCount' + num_oid: '.1.3.6.1.4.1.8962.2.1.3.1.1.5.1.7.{{ $index }}' + descr: 'Alerts sent to ISM' + index: 'totalAlertsSentCount' + - + oid: 'malwareEngineStatsTable' + value: 'totalMalwareFilesProcessed' + num_oid: '.1.3.6.1.4.1.8962.2.1.3.1.1.11.1.1.3.{{ $index }}' + group: 'Malware Engine File Counters' + descr: '{{ $malwareStatsEngineName }}' + index: '{{ $malwareStatsEngineName }}' + state: + data: + - + oid: 'l2ModeStatus' + num_oid: '.1.3.6.1.4.1.8962.2.1.2.1.18.2.{{ $index }}' + descr: 'Sensor Mode' + states: + - { value: 1, generic: 0, graph: 0, descr: 'Layer 2 Mode' } + - { value: 2, generic: 0, graph: 0, descr: 'IPS Mode' } diff --git a/priv/profiles/os_discovery/mni.yaml b/priv/profiles/os_discovery/mni.yaml new file mode 100644 index 00000000..3de62755 --- /dev/null +++ b/priv/profiles/os_discovery/mni.yaml @@ -0,0 +1,102 @@ +mib: MNI-PROTEUS-AMT-MIB +modules: + sensors: + temperature: + data: + - + oid: mnPrPerfBaseTable + value: mnPrPerfBaseRFUTemp + num_oid: '.1.3.6.1.4.1.3323.13.1.4.1.1.20.{{ $index }}' + descr: 'RFU Temp {{ $index }}' + index: '{{ $index }}' + high_limit: '50' + low_limit: '-20' + state: + data: + - + oid: mnPrLinkStatLinkUp + num_oid: '.1.3.6.1.4.1.3323.13.1.1.1.1.{{ $index }}' + descr: 'Link Up {{ $index }}' + index: '0' + states: + - { value: 0, generic: 2, graph: 0, descr: Down } + - { value: 1, generic: 0, graph: 0, descr: Up } + - + oid: mnPrRadStatControlOn + num_oid: '.1.3.6.1.4.1.3323.13.1.1.2.1.5.{{ $index }}' + descr: 'Link Control {{ $index }}' + index: 'StatControlOn{{ $index }}' + states: + - { value: 0, generic: 1, graph: 0, descr: Off } + - { value: 1, generic: 0, graph: 0, descr: On } + + - + oid: mnPrRadStatCurSeverity + num_oid: '.1.3.6.1.4.1.3323.13.1.1.2.1.2.{{ $index }}' + descr: 'Current Alarm Severity {{ $index }}' + index: 'CurSeverity{{ $index }}' + states: + - { value: 1, generic: 0, graph: 0, descr: Cleared } + - { value: 2, generic: 3, graph: 0, descr: Indeterminate } + - { value: 3, generic: 2, graph: 0, descr: Critical } + - { value: 4, generic: 2, graph: 0, descr: Major } + - { value: 5, generic: 1, graph: 0, descr: Minor } + - { value: 6, generic: 1, graph: 0, descr: Warning } + + - + oid: mnPrRadStatLatchSeverity + num_oid: '.1.3.6.1.4.1.3323.13.1.1.2.1.3.{{ $index }}' + descr: 'Current Latched Alarm Severity {{ $index }}' + index: 'LatchSeverity{{ $index }}' + states: + - { value: 1, generic: 0, graph: 0, descr: Cleared } + - { value: 2, generic: 3, graph: 0, descr: Indeterminate } + - { value: 3, generic: 2, graph: 0, descr: Critical } + - { value: 4, generic: 2, graph: 0, descr: Major } + - { value: 5, generic: 1, graph: 0, descr: Minor } + - { value: 6, generic: 1, graph: 0, descr: Warning } + + - + oid: mnPrRadStatProtManualMode + num_oid: '.1.3.6.1.4.1.3323.13.1.1.2.1.26.{{ $index }}' + descr: 'Manual Protection Mode{{ $index }} ' + index: 'ManualMode{{ $index }}' + states: + - { value: 2, generic: 0, graph: 0, descr: Off } + - { value: 1, generic: 1, graph: 0, descr: On } + + - + oid: mnPrRadStatModulation + num_oid: '.1.3.6.1.4.1.3323.13.1.1.2.1.36.{{ $index }}' + descr: 'Current Modulation {{ $index }}' + index: 'Modulation{{ $index }}' + states: + - { value: 2, generic: 1, graph: 0, descr: QPSK } + - { value: 3, generic: 0, graph: 0, descr: 8PSK } + - { value: 4, generic: 0, graph: 0, descr: 16QAM } + - { value: 5, generic: 0, graph: 0, descr: 32QAM } + - { value: 6, generic: 0, graph: 0, descr: 64QAM } + - { value: 7, generic: 0, graph: 0, descr: 128QAM } + - { value: 8, generic: 0, graph: 0, descr: 256QAM } + - { value: 18, generic: 1, graph: 0, descr: QPSK12 } + - { value: 20, generic: 0, graph: 0, descr: 16TCM34 } + - { value: 22, generic: 0, graph: 0, descr: 64TCM56 } + - { value: 23, generic: 0, graph: 0, descr: 128TCM67 } + - { value: 24, generic: 0, graph: 0, descr: 256TCM78 } + - { value: 34, generic: 1, graph: 0, descr: QPSK34 } + - { value: 36, generic: 0, graph: 0, descr: 16TCM78 } + - { value: 37, generic: 0, graph: 0, descr: 32TCM910 } + - { value: 38, generic: 0, graph: 0, descr: 64TCM1112 } + - { value: 39, generic: 0, graph: 0, descr: 128TCM1314 } + - { value: 99, generic: 3, graph: 0, descr: Other } + + signal: + data: + - + oid: mnPrPerfBaseFadeMargin + num_oid: '.1.3.6.1.4.1.3323.13.1.4.1.1.4.{{ $index }}' + descr: 'Fade Margin {{ $index }}' + index: 'FadeMargin{{ $index }}' + low_limit: '6' + low_warn_limit: '12' + high_limit: '50' diff --git a/priv/profiles/os_discovery/monowall.yaml b/priv/profiles/os_discovery/monowall.yaml new file mode 100644 index 00000000..d2c4ee82 --- /dev/null +++ b/priv/profiles/os_discovery/monowall.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?[\d.-]+\S*) (?.+) (?\S+)$/' diff --git a/priv/profiles/os_discovery/montclair-edfa.yaml b/priv/profiles/os_discovery/montclair-edfa.yaml new file mode 100644 index 00000000..2a4e2286 --- /dev/null +++ b/priv/profiles/os_discovery/montclair-edfa.yaml @@ -0,0 +1,207 @@ +mib: Montclair-MIB +modules: + os: + serial: Montclair-MIB::deviceSerialNumber.0 + hardware: Montclair-MIB::devicePartNumber.0 + version: Montclair-MIB::deviceFirmwareVersion.0 + sysDescr_regex: '/(?.*)/' + sensors: + additional_oids: + data: + - + oid: + - deviceStatus + - amplifierDynamic + count: + data: + - + oid: deviceStatus + value: devicePowerSupplyAmount + index: 'devicePowerSupplyAmount.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.3.{{ $index }}' + descr: Power Supplies + - + oid: deviceStatus + value: 'deviceFanAmount' + index: 'deviceFanAmount.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.6.{{ $index }}' + descr: Fan Count + - + oid: amplifierDynamic + value: 'amplifierPortAmount' + index: 'amplifierPortAmount.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.13.{{ $index }}' + descr: Ports + dbm: + data: + - + oid: amplifierDynamic + value: amplifierBackReflectionPower + index: 'amplifierBackReflectionPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.4.{{ $index }}' + descr: Amplifier Reflection + divisor: 10 + high_limit: -15 + - + oid: amplifierDynamic + value: amplifierInputPower + index: 'amplifierInputPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.5.{{ $index }}' + descr: Input Power + divisor: 10 + high_limit: 10 + low_limit: 0 + - + oid: amplifierDynamic + value: amplifierOutputPower + index: 'amplifierOutputPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.11.{{ $index }}' + descr: Output Power + divisor: 10 + high_limit: 40 + low_limit: 28 + - + oid: amplifierDynamic + value: amplifierPortOutputPower + index: 'amplifierPortOutputPower.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.14.{{ $index }}' + descr: Port Output Power + divisor: 10 + - + oid: amplifierDynamic + value: amplifierGain + index: 'amplifierGain.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.12.{{ $index }}' + descr: Amp Gain + divisor: 10 + - + oid: amplifierDynamic + value: amplifierPortGain + index: 'amplifierPortGain.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.15.{{ $index }}' + descr: Port Gain + divisor: 10 + percent: + data: + - + oid: amplifierDynamic + value: amplifierPrePumpCurrent + index: 'amplifierPrePumpCurrent.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.8.{{ $index }}' + descr: Pre-Pump Current + - + oid: amplifierDynamic + value: amplifierPumpCurrent1 + index: 'amplifierPumpCurrent1.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.9.{{ $index }}' + descr: Pump Current 1 + - + oid: amplifierDynamic + value: amplifierPumpCurrent2 + index: 'amplifierPumpCurrent2.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.10.{{ $index }}' + descr: Pump Current 2 + temperature: + data: + - + oid: deviceStatus + value: deviceInternalTemperatute + index: 'deviceInternalTemperatute.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.2.{{ $index }}' + descr: Internal Temperature + low_limit: -33 + high_limit: 70 + skip_values: + - + oid: .1.3.6.1.4.1.1385.12.2.0 + op: '=' + value: 0 + - + oid: amplifierDynamic + value: amplifierRadiatorTemperature + index: 'amplifierRadiatorTemperature.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.16.{{ $index }}' + descr: Amp Radiator Temperature + low_limit: -33 + high_limit: 70 + - + oid: amplifierDynamic + value: amplifierPrePumpTemperature + index: 'amplifierPrePumpTemperature.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.17.{{ $index }}' + descr: Amp Pre-Pump Temperature + divisor: 10 + low_limit: -33 + high_limit: 70 + state: + data: + - + oid: deviceStatus + value: devicePowerSupply1Status + index: 'devicePowerSupply1Status.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.4.{{ $index }}' + descr: Power Supply 1 + state_name: devicePowerSupply1Status + states: + - { value: 1, generic: 3, graph: 0, descr: Empty } + - { value: 3, generic: 2, graph: 0, descr: Critical } + - { value: 7, generic: 0, graph: 0, descr: Normal } + - + oid: deviceStatus + value: devicePowerSupply2Status + index: 'devicePowerSupply2Status.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.5.{{ $index }}' + descr: Power Supply 2 + state_name: devicePowerSupply2Status + states: + - { value: 1, generic: 3, graph: 0, descr: Empty } + - { value: 3, generic: 2, graph: 0, descr: Critical } + - { value: 7, generic: 0, graph: 0, descr: Normal } + - + oid: deviceStatus + value: deviceFanStatus + index: 'deviceFanStatus.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.7.{{ $index }}' + descr: Fan Status + state_name: deviceFanStatus + states: + - { value: 0, generic: 3, graph: 0, descr: Normal } + - { value: 1, generic: 3, graph: 0, descr: Unknown } + - { value: 3, generic: 2, graph: 0, descr: Critical } + - { value: 5, generic: 2, graph: 0, descr: Warning } + - { value: 7, generic: 0, graph: 0, descr: Normal } + - + oid: deviceStatus + value: deviceFanMode + index: 'deviceFanMode.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.12.8.{{ $index }}' + descr: Fan Mode + state_name: deviceFanMode + states: + - { value: 1, generic: 0, graph: 0, descr: Auto } + - { value: 2, generic: 0, graph: 0, descr: Manual } + - { value: 3, generic: 0, graph: 0, descr: Low } + - { value: 4, generic: 0, graph: 0, descr: Linear } + - { value: 5, generic: 0, graph: 0, descr: High } + - + oid: amplifierDynamic + value: amplifierEnabled + index: 'amplifierEnabled.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.6.{{ $index }}' + descr: Amplifier + state_name: amplifierStatus + states: + - { value: 1, generic: 2, graph: 0, descr: Disabled } + - { value: 2, generic: 0, graph: 0, descr: Enabled } + # The MIB seems to have this backwards... + - + oid: amplifierDynamic + value: amplifierMode + index: 'amplifierMode.{{ $index }}' + num_oid: '.1.3.6.1.4.1.1385.77.7.2.7.{{ $index }}' + descr: Amp Mode + state_name: amplifierMode + states: + - { value: 1, generic: 0, graph: 0, descr: ACC } + - { value: 2, generic: 0, graph: 0, descr: APC } + - { value: 3, generic: 0, graph: 0, descr: AGC } diff --git a/priv/profiles/os_discovery/morningstar-mppt.yaml b/priv/profiles/os_discovery/morningstar-mppt.yaml new file mode 100644 index 00000000..a363f556 --- /dev/null +++ b/priv/profiles/os_discovery/morningstar-mppt.yaml @@ -0,0 +1,631 @@ +mib: GENSTAR:SUNSAVER-MPPT:PROSTAR-MPPT:TRISTAR-MPPT:TRISTAR-MPPT-600V +modules: + os: + hardware: + - GENSTAR::subModel.0 + - SUNSAVER-MPPT::subModel.0 + - PROSTAR-MPPT::subModel.0 + - TRISTAR-MPPT::subModel.0 + - TRISTAR-MPPT-600V::subModel.0 + serial: + - GENSTAR::serialNumber.0 + - SUNSAVER-MPPT::serialNumber.0 + - PROSTAR-MPPT::serialNumber.0 + - TRISTAR-MPPT::serialNumber.0 + - TRISTAR-MPPT-600V::serialNumber.0 + version: + - GENSTAR::deviceVersion.0 + - SUNSAVER-MPPT::deviceVersion.0 + - PROSTAR-MPPT::deviceVersion.0 + - TRISTAR-MPPT::deviceVersion.0 + - TRISTAR-MPPT-600V::deviceVersion.0 + sensors: + voltage: + data: + - + oid: TRISTAR-MPPT::arrayVoltage + value: TRISTAR-MPPT::arrayVoltage + num_oid: '.1.3.6.1.4.1.33333.2.30.{{ $index }}' + descr: 'Array Voltage' + index: 'arrayVoltage.{{ $index }}' + multiplier: 0.0054931640625 + - + oid: TRISTAR-MPPT::batteryVoltage + value: TRISTAR-MPPT::batteryVoltage + num_oid: '.1.3.6.1.4.1.33333.2.36.{{ $index }}' + descr: 'Battery Voltage' + index: 'batteryVoltage.{{ $index }}' + multiplier: 0.0054931640625 + - + oid: TRISTAR-MPPT::batteryVoltageSlow + value: TRISTAR-MPPT::batteryVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.2.37.{{ $index }}' + descr: 'Battery Voltage (Slow)' + index: 'batteryVoltageSlow.{{ $index }}' + multiplier: 0.0054931640625 + - + oid: TRISTAR-MPPT::batteryTerminalVoltage + value: TRISTAR-MPPT::batteryTerminalVoltage + num_oid: '.1.3.6.1.4.1.33333.2.38.{{ $index }}' + descr: 'Battery Terminal Voltage' + index: 'batteryTerminalVoltage.{{ $index }}' + multiplier: 0.0054931640625 + - + oid: TRISTAR-MPPT::batterySenseVoltage + value: TRISTAR-MPPT::batterySenseVoltage + num_oid: '.1.3.6.1.4.1.33333.2.39.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'batterySenseVoltage.{{ $index }}' + multiplier: 0.0054931640625 + - + oid: SUNSAVER-MPPT::batteryVoltage + value: SUNSAVER-MPPT::batteryVoltage + num_oid: '.1.3.6.1.4.1.33333.3.30.{{ $index }}' + descr: 'Battery Terminal Voltage' + index: 'batteryVoltage.{{ $index }}' + multiplier: 0.0030517578125 + - + oid: SUNSAVER-MPPT::arrayVoltage + value: SUNSAVER-MPPT::arrayVoltage + num_oid: '.1.3.6.1.4.1.33333.3.31.{{ $index }}' + descr: 'Array Voltage' + index: 'arrayVoltage.{{ $index }}' + multiplier: 0.0030517578125 + - + oid: SUNSAVER-MPPT::loadVoltage + value: SUNSAVER-MPPT::loadVoltage + num_oid: '.1.3.6.1.4.1.33333.3.32.{{ $index }}' + descr: 'Load Voltage' + index: 'loadVoltage.{{ $index }}' + multiplier: 0.0030517578125 + - + oid: PROSTAR-MPPT::batteryTerminalVoltage + value: PROSTAR-MPPT::batteryTerminalVoltage + num_oid: '.1.3.6.1.4.1.33333.5.30.{{ $index }}' + descr: 'Battery Terminal Voltage' + index: 'batteryTerminalVoltage.{{ $index }}' + - + oid: PROSTAR-MPPT::arrayVoltage + value: PROSTAR-MPPT::arrayVoltage + num_oid: '.1.3.6.1.4.1.33333.5.31.{{ $index }}' + descr: 'Array Voltage' + index: 'arrayVoltage.{{ $index }}' + - + oid: PROSTAR-MPPT::loadVoltage + value: PROSTAR-MPPT::loadVoltage + num_oid: '.1.3.6.1.4.1.33333.5.32.{{ $index }}' + descr: 'Load Voltage' + index: 'loadVoltage.{{ $index }}' + - + oid: PROSTAR-MPPT::batterySenseVoltage + value: PROSTAR-MPPT::batterySenseVoltage + num_oid: '.1.3.6.1.4.1.33333.5.36.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'batterySenseVoltage.{{ $index }}' + - + oid: PROSTAR-MPPT::meterbusVoltage + value: PROSTAR-MPPT::meterbusVoltage + num_oid: '.1.3.6.1.4.1.33333.5.37.{{ $index }}' + descr: 'Meter Bus Voltage' + index: 'meterbusVoltage.{{ $index }}' + - + oid: PROSTAR-MPPT::batteryVoltageSlow + value: PROSTAR-MPPT::batteryVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.5.47.{{ $index }}' + descr: 'Battery Voltage (Slow)' + index: 'batteryVoltageSlow.{{ $index }}' + - + oid: PROSTAR-MPPT::targetVoltageSlow + value: PROSTAR-MPPT::targetVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.5.48.{{ $index }}' + descr: 'Target Voltage (Slow)' + index: 'targetVoltageSlow.{{ $index }}' + - + oid: PROSTAR-MPPT::arrayVoc + value: PROSTAR-MPPT::arrayVoc + num_oid: '.1.3.6.1.4.1.33333.5.65.{{ $index }}' + descr: 'Array Open Circuit Voltage' + index: 'arrayVoc.{{ $index }}' + - + oid: SUNSAVER-MPPT::batteryVoltageSlow + value: SUNSAVER-MPPT::batteryVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.3.41.{{ $index }}' + descr: 'Battery Voltage (Slow)' + index: 'batteryVoltageSlow.{{ $index }}' + multiplier: 0.0030517578125 + - + oid: SUNSAVER-MPPT::targetVoltage + value: SUNSAVER-MPPT::targetVoltage + num_oid: '.1.3.6.1.4.1.33333.3.42.{{ $index }}' + descr: 'Target Voltage' + index: 'targetVoltage.{{ $index }}' + multiplier: 0.0030517578125 + - + oid: TRISTAR-MPPT-600V::arrayVoltage + value: TRISTAR-MPPT-600V::arrayVoltage + num_oid: '.1.3.6.1.4.1.33333.7.30.{{ $index }}' + descr: 'Array Voltage' + index: 'arrayVoltage.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batteryVoltage + value: TRISTAR-MPPT-600V::batteryVoltage + num_oid: '.1.3.6.1.4.1.33333.7.36.{{ $index }}' + descr: 'Battery Voltage' + index: 'batteryVoltage.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batteryVoltageSlow + value: TRISTAR-MPPT-600V::batteryVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.7.37.{{ $index }}' + descr: 'Battery Voltage Slow' + index: 'batteryVoltageSlow.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batteryTerminalVoltage + value: TRISTAR-MPPT-600V::batteryTerminalVoltage + num_oid: '.1.3.6.1.4.1.33333.7.38.{{ $index }}' + descr: 'Battery Terminal Voltage' + index: 'batteryTerminalVoltage.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batterySenseVoltage + value: TRISTAR-MPPT-600V::batterySenseVoltage + num_oid: '.1.3.6.1.4.1.33333.7.39.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'batterySenseVoltage.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::targetRegulationVoltage + value: TRISTAR-MPPT-600V::targetRegulationVoltage + num_oid: '.1.3.6.1.4.1.33333.7.45.{{ $index }}' + descr: 'Target Regulation Voltage' + index: 'batterySenseVtargetRegulationVoltageoltage.{{ $index }}' + - + oid: GENSTAR::vbterm + value: GENSTAR::vbterm + num_oid: '.1.3.6.1.4.1.33333.10.30.{{ $index }}' + descr: 'Battery Voltage' + index: 'vbterm.{{ $index }}' + - + oid: GENSTAR::vload + value: GENSTAR::vload + num_oid: '.1.3.6.1.4.1.33333.10.31.{{ $index }}' + descr: 'Load Voltage' + index: 'vload.{{ $index }}' + - + oid: GENSTAR::vbsense + value: GENSTAR::vbsense + num_oid: '.1.3.6.1.4.1.33333.10.32.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'vbsense.{{ $index }}' + - + oid: GENSTAR::vCoin + value: GENSTAR::vCoin + num_oid: '.1.3.6.1.4.1.33333.10.33.{{ $index }}' + descr: 'Coincell Battery Voltage' + index: 'vCoin.{{ $index }}' + - + oid: GENSTAR::vbattRefCharge + value: GENSTAR::vbattRefCharge + num_oid: '.1.3.6.1.4.1.33333.10.40.{{ $index }}' + descr: 'Charging Target Voltage' + index: 'vbattRefCharge.{{ $index }}' + current: + data: + - + oid: TRISTAR-MPPT::arrayCurrent + value: TRISTAR-MPPT::arrayCurrent + num_oid: '.1.3.6.1.4.1.33333.2.31.{{ $index }}' + descr: 'Array Current' + index: 'arrayCurrent.{{ $index }}' + multiplier: 0.00244140625 + - + oid: TRISTAR-MPPT::batteryCurrent + value: TRISTAR-MPPT::batteryCurrent + num_oid: '.1.3.6.1.4.1.33333.2.42.{{ $index }}' + descr: 'Battery Current' + index: 'batteryCurrent.{{ $index }}' + multiplier: 0.00244140625 + - + oid: TRISTAR-MPPT::batteryCurrentSlow + value: TRISTAR-MPPT::batteryCurrentSlow + num_oid: '.1.3.6.1.4.1.33333.2.43.{{ $index }}' + descr: 'Battery Current (Slow)' + index: 'batteryCurrentSlow.{{ $index }}' + multiplier: 0.00244140625 + - + oid: SUNSAVER-MPPT::chargeCurrent + value: SUNSAVER-MPPT::chargeCurrent + num_oid: '.1.3.6.1.4.1.33333.3.33.{{ $index }}' + descr: 'Charge Current' + index: 'chargeCurrent.{{ $index }}' + multiplier: 0.002415771484375 + - + oid: SUNSAVER-MPPT::loadCurrent + value: SUNSAVER-MPPT::loadCurrent + num_oid: '.1.3.6.1.4.1.33333.3.34.{{ $index }}' + descr: 'Load Current' + index: 'loadCurrent.{{ $index }}' + multiplier: 0.002415771484375 + - + oid: PROSTAR-MPPT::chargeCurrent + value: PROSTAR-MPPT::chargeCurrent + num_oid: '.1.3.6.1.4.1.33333.5.33.{{ $index }}' + descr: 'Charge Current' + index: 'chargeCurrent.{{ $index }}' + - + oid: PROSTAR-MPPT::loadCurrent + value: PROSTAR-MPPT::loadCurrent + num_oid: '.1.3.6.1.4.1.33333.5.34.{{ $index }}' + descr: 'Load Current' + index: 'loadCurrent.{{ $index }}' + - + oid: PROSTAR-MPPT::batteryCurrentNet + value: PROSTAR-MPPT::batteryCurrentNet + num_oid: '.1.3.6.1.4.1.33333.5.35.{{ $index }}' + descr: 'Battery Current Net' + index: 'batteryCurrentNet.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::arrayCurrent + value: TRISTAR-MPPT-600V::arrayCurrent + num_oid: '.1.3.6.1.4.1.33333.7.31.{{ $index }}' + descr: 'Array Current' + index: 'arrayCurrent.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batteryCurrent + value: TRISTAR-MPPT-600V::batteryCurrent + num_oid: '.1.3.6.1.4.1.33333.7.42.{{ $index }}' + descr: 'Battery Current' + index: 'batteryCurrent.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::batteryCurrentSlow + value: TRISTAR-MPPT-600V::batteryCurrentSlow + num_oid: '.1.3.6.1.4.1.33333.7.43.{{ $index }}' + descr: 'Battery Current (Slow)' + index: 'batteryCurrentSlow.{{ $index }}' + - + oid: GENSTAR::systemIcharge + value: GENSTAR::systemIcharge + num_oid: '.1.3.6.1.4.1.33333.10.34.{{ $index }}' + descr: 'System Charging Current' + index: 'systemIcharge.{{ $index }}' + - + oid: GENSTAR::systemIload + value: GENSTAR::systemIload + num_oid: '.1.3.6.1.4.1.33333.10.35.{{ $index }}' + descr: 'System Load Current' + index: 'systemIload.{{ $index }}' + power: + data: + - + oid: TRISTAR-MPPT::inputPower + value: TRISTAR-MPPT::inputPower + num_oid: '.1.3.6.1.4.1.33333.2.32.{{ $index }}' + descr: 'Input Power' + index: 'inputPower.{{ $index }}' + multiplier: 0.10986328125 + - + oid: TRISTAR-MPPT::outputPower + value: TRISTAR-MPPT::outputPower + num_oid: '.1.3.6.1.4.1.33333.2.44.{{ $index }}' + descr: 'Output Power' + index: 'outputPower.{{ $index }}' + multiplier: 0.10986328125 + - + oid: PROSTAR-MPPT::arrayPower + value: PROSTAR-MPPT::arrayPower + num_oid: '.1.3.6.1.4.1.33333.5.62.{{ $index }}' + descr: 'Array Power' + index: 'arrayPower.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::inputPower + value: TRISTAR-MPPT-600V::inputPower + num_oid: '.1.3.6.1.4.1.33333.7.32.{{ $index }}' + descr: 'Input Power' + index: 'inputPower.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::outputPower + value: TRISTAR-MPPT-600V::outputPower + num_oid: '.1.3.6.1.4.1.33333.7.44.{{ $index }}' + descr: 'Output Power' + index: 'outputPower.{{ $index }}' + temperature: + data: + - + oid: TRISTAR-MPPT::rtsTemperature + value: TRISTAR-MPPT::rtsTemperature + num_oid: '.1.3.6.1.4.1.33333.2.47.{{ $index }}' + descr: 'Remote Temperature Sensor' + index: 'rtsTemperature.{{ $index }}' + - + oid: TRISTAR-MPPT::batteryTemperature + value: TRISTAR-MPPT::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.2.48.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + - + oid: TRISTAR-MPPT::heatsinkTemperature + value: TRISTAR-MPPT::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.2.49.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: SUNSAVER-MPPT::heatsinkTemperature + value: SUNSAVER-MPPT::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.3.35.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: SUNSAVER-MPPT::batteryTemperature + value: SUNSAVER-MPPT::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.3.36.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + - + oid: SUNSAVER-MPPT::ambientTemperature + value: SUNSAVER-MPPT::ambientTemperature + num_oid: '.1.3.6.1.4.1.33333.3.37.{{ $index }}' + descr: 'Ambient Temperature' + index: 'ambientTemperature.{{ $index }}' + - + oid: SUNSAVER-MPPT::rtsTemperature + value: SUNSAVER-MPPT::rtsTemperature + num_oid: '.1.3.6.1.4.1.33333.3.38.{{ $index }}' + descr: 'RTS Temperature' + index: 'rtsTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::heatsinkTemperature + value: PROSTAR-MPPT::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.5.38.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::batteryTemperature + value: PROSTAR-MPPT::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.5.39.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::ambientTemperature + value: PROSTAR-MPPT::ambientTemperature + num_oid: '.1.3.6.1.4.1.33333.5.40.{{ $index }}' + descr: 'Ambient Temperature' + index: 'ambientTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::rtsTemperature + value: PROSTAR-MPPT::rtsTemperature + num_oid: '.1.3.6.1.4.1.33333.5.41.{{ $index }}' + descr: 'RTS Temperature' + index: 'rtsTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::uInductorTemperature + value: PROSTAR-MPPT::uInductorTemperature + num_oid: '.1.3.6.1.4.1.33333.5.42.{{ $index }}' + descr: 'U Inductor Temperature' + index: 'uInductorTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::vInductorTemperature + value: PROSTAR-MPPT::vInductorTemperature + num_oid: '.1.3.6.1.4.1.33333.5.43.{{ $index }}' + descr: 'V Inductor Temperature' + index: 'vInductorTemperature.{{ $index }}' + - + oid: PROSTAR-MPPT::wInductorTemperature + value: PROSTAR-MPPT::wInductorTemperature + num_oid: '.1.3.6.1.4.1.33333.5.44.{{ $index }}' + descr: 'W Inductor Temperature' + index: 'wInductorTemperature.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::rtsTemperature + value: TRISTAR-MPPT::rtsTemperature + num_oid: '.1.3.6.1.4.1.33333.7.47.{{ $index }}' + descr: 'RTS Temperature' + index: 'rtsTemperature.{{ $index }}' + - + oid: PROSTTRISTARAR-MPPT-600V::batteryTemperature + value: TRISTAR-MPPT::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.7.48.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::heatsinkTemperature + value: TRISTAR-MPPT::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.7.49.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: GENSTAR::tempBatt + value: GENSTAR::tempBatt + num_oid: '.1.3.6.1.4.1.33333.10.36.{{ $index }}' + descr: 'Battery Temperature' + index: 'tempBatt.{{ $index }}' + - + oid: GENSTAR::tempRts + value: GENSTAR::tempRts + num_oid: '.1.3.6.1.4.1.33333.10.37.{{ $index }}' + descr: 'Remote Temperature Sensor' + index: 'tempRts.{{ $index }}' + - + oid: GENSTAR::tempHeatsink + value: GENSTAR::tempHeatsink + num_oid: '.1.3.6.1.4.1.33333.10.38.{{ $index }}' + descr: 'Remote Temperature Sensor' + index: 'tempHeatsink.{{ $index }}' + state: + data: + - + oid: TRISTAR-MPPT::chargeState + value: TRISTAR-MPPT::chargeState + num_oid: '.1.3.6.1.4.1.33333.2.46.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Starting } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnected' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Bulk' } + - { value: 6, generic: 3, graph: 1, descr: 'Absorpotion' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } + - { value: 8, generic: 3, graph: 1, descr: 'Slave' } + - + oid: SUNSAVER-MPPT::chargeState + value: SUNSAVER-MPPT::chargeState + num_oid: '.1.3.6.1.4.1.33333.3.39.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnect' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Bulk MPPT' } + - { value: 6, generic: 3, graph: 1, descr: 'Absorpotion' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } + - + oid: SUNSAVER-MPPT::loadState + value: SUNSAVER-MPPT::loadState + num_oid: '.1.3.6.1.4.1.33333.3.46.{{ $index }}' + index: 'loadState.{{ $index }}' + descr: 'Load State' + state_name: loadState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Norm' } + - { value: 2, generic: 1, graph: 1, descr: 'Lvd Warning' } + - { value: 3, generic: 1, graph: 1, descr: 'Lvd' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Disconnect' } + - { value: 6, generic: 3, graph: 1, descr: 'Norm Off' } + - { value: 7, generic: 3, graph: 1, descr: 'Override' } + - { value: 7, generic: 3, graph: 1, descr: 'Not Used' } + - + oid: PROSTAR-MPPT::chargeState + value: PROSTAR-MPPT::chargeState + num_oid: '.1.3.6.1.4.1.33333.5.45.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnect' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Bulk MPPT' } + - { value: 6, generic: 3, graph: 1, descr: 'Absorpotion' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } + - { value: 9, generic: 3, graph: 1, descr: 'Slave' } + - { value: 10, generic: 3, graph: 1, descr: 'Fixed' } + - + oid: PROSTAR-MPPT::loadState + value: PROSTAR-MPPT::loadState + num_oid: '.1.3.6.1.4.1.33333.5.53.{{ $index }}' + index: 'loadState.{{ $index }}' + descr: 'Load State' + state_name: loadState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Norm' } + - { value: 2, generic: 1, graph: 1, descr: 'Lvd Warning' } + - { value: 3, generic: 1, graph: 1, descr: 'Lvd' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Disconnect' } + - { value: 6, generic: 3, graph: 1, descr: 'Normal Off' } + - { value: 7, generic: 3, graph: 1, descr: 'Override' } + - { value: 7, generic: 3, graph: 1, descr: 'Not Used' } + - + oid: TRISTAR-MPPT-600V::chargeState + value: TRISTAR-MPPT-600V::chargeState + num_oid: '.1.3.6.1.4.1.33333.7.46.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnect' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'MPPT' } + - { value: 6, generic: 3, graph: 1, descr: 'Absorpotion' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } + - { value: 9, generic: 3, graph: 1, descr: 'Slave' } + - { value: 10, generic: 3, graph: 1, descr: 'Fixed' } + - + oid: GENSTAR::chargeState + value: GENSTAR::chargeState + num_oid: '.1.3.6.1.4.1.33333.10.39.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Starting } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnected' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Bulk' } + - { value: 6, generic: 3, graph: 1, descr: 'Absorpotion' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } + - + oid: GENSTAR::loadState + value: GENSTAR::loadState + num_oid: '.1.3.6.1.4.1.33333.10.46.{{ $index }}' + index: 'loadState.{{ $index }}' + descr: 'Load State' + state_name: loadState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Norm' } + - { value: 2, generic: 1, graph: 1, descr: 'Lvd Warn' } + - { value: 3, generic: 1, graph: 1, descr: 'Lvd' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Disc' } + - { value: 6, generic: 3, graph: 1, descr: 'Norm Off' } + - { value: 7, generic: 3, graph: 1, descr: 'Override' } + power_consumed: + data: + - + oid: TRISTAR-MPPT::kwhChargeTotal + value: TRISTAR-MPPT::kwhChargeTotal + num_oid: '.1.3.6.1.4.1.33333.2.53.{{ $index }}' + descr: 'kWh Charge Total' + index: 'kwhChargeTotal.{{ $index }}' + - + oid: SUNSAVER-MPPT::kwhCharge + value: SUNSAVER-MPPT::kwhCharge + num_oid: '.1.3.6.1.4.1.33333.3.45.{{ $index }}' + descr: 'kWh Charge' + index: 'kwhCharge.{{ $index }}' + - + oid: PROSTAR-MPPT::kwhChargeTotal + value: PROSTAR-MPPT::kwhChargeTotal + num_oid: '.1.3.6.1.4.1.33333.5.52.{{ $index }}' + descr: 'kWh Charge Total' + index: 'kwhChargeTotal.{{ $index }}' + - + oid: TRISTAR-MPPT-600V::kwhChargeTotal + value: TRISTAR-MPPT-600V::kwhChargeTotal + num_oid: '.1.3.6.1.4.1.33333.7.53.{{ $index }}' + descr: 'kWh Charge Total' + index: 'kwhChargeTotal.{{ $index }}' + - + oid: GENSTAR::systemChargeKwhTotal10 + value: GENSTAR::systemChargeKwhTotal10 + num_oid: '.1.3.6.1.4.1.33333.10.70.{{ $index }}' + descr: 'System Charge Kwh Total' + index: 'systemChargeKwhTotal10.{{ $index }}' + multiplier: 0.1 + - + oid: GENSTAR::internalChargeKwhTotal10 + value: GENSTAR::internalChargeKwhTotal10 + num_oid: '.1.3.6.1.4.1.33333.10.82.{{ $index }}' + descr: 'Internal Charge Kwh Total' + index: 'internalChargeKwhTotal10.{{ $index }}' + multiplier: 0.1 \ No newline at end of file diff --git a/priv/profiles/os_discovery/morningstar-pwm.yaml b/priv/profiles/os_discovery/morningstar-pwm.yaml new file mode 100644 index 00000000..12654bab --- /dev/null +++ b/priv/profiles/os_discovery/morningstar-pwm.yaml @@ -0,0 +1,194 @@ +mib: PROSTAR-PWM:TRISTAR +modules: + os: + hardware: + - PROSTAR-PWM::subModel.0 + - TRISTAR::subModel.0 + serial: + - PROSTAR-PWM::serialNumber.0 + - TRISTAR::serialNumber.0 + version: + - ROSTAR-PWM::deviceVersion.0 + - TRISTAR::deviceVersion.0 + sensors: + voltage: + data: + - + oid: PROSTAR-PWM::batteryTerminalVoltage + value: PROSTAR-PWM::batteryTerminalVoltage + num_oid: '.1.3.6.1.4.1.33333.6.30.{{ $index }}' + descr: 'Battery Terminal Voltage' + index: 'batteryTerminalVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::arrayVoltage + value: PROSTAR-PWM::arrayVoltage + num_oid: '.1.3.6.1.4.1.33333.6.31.{{ $index }}' + descr: 'Array Voltage' + index: 'arrayVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::loadVoltage + value: PROSTAR-PWM::loadVoltage + num_oid: '.1.3.6.1.4.1.33333.6.32.{{ $index }}' + descr: 'Load Voltage' + index: 'loadVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::batterySenseVoltage + value: PROSTAR-PWM::batterySenseVoltage + num_oid: '.1.3.6.1.4.1.33333.6.36.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'batterySenseVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::meterBusVoltage + value: PROSTAR-PWM::meterBusVoltage + num_oid: '.1.3.6.1.4.1.33333.6.37.{{ $index }}' + descr: 'Meter Bus Voltage' + index: 'meterBusVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::fp10Voltage + value: PROSTAR-PWM::fp10Voltage + num_oid: '.1.3.6.1.4.1.33333.6.42.{{ $index }}' + descr: 'FP10 Voltage' + index: 'fp10Voltage.{{ $index }}' + - + oid: PROSTAR-PWM::p3Supply + value: PROSTAR-PWM::p3Supply + num_oid: '.1.3.6.1.4.1.33333.6.43.{{ $index }}' + descr: 'P3 Supply' + index: 'p3Supply.{{ $index }}' + - + oid: PROSTAR-PWM::meterVoltage + value: PROSTAR-PWM::meterVoltage + num_oid: '.1.3.6.1.4.1.33333.6.44.{{ $index }}' + descr: 'Meter Voltage' + index: 'meterVoltage.{{ $index }}' + - + oid: PROSTAR-PWM::batteryVoltageSlow + value: PROSTAR-PWM::batteryVoltageSlow + num_oid: '.1.3.6.1.4.1.33333.6.47.{{ $index }}' + descr: 'Battery Voltage (Slow)' + index: 'batteryVoltageSlow.{{ $index }}' + - + oid: PROSTAR-PWM::targetVoltage + value: PROSTAR-PWM::targetVoltage + num_oid: '.1.3.6.1.4.1.33333.6.48.{{ $index }}' + descr: 'Target Voltage' + index: 'targetVoltage.{{ $index }}' + - + oid: TRISTAR::batteryVoltage + value: TRISTAR::batteryVoltage + num_oid: '.1.3.6.1.4.1.33333.8.30.{{ $index }}' + descr: 'Battery Voltage' + index: 'batteryVoltage.{{ $index }}' + multiplier: 0.00966400146484375 + - + oid: TRISTAR::batterySenseVoltage + value: TRISTAR::batterySenseVoltage + num_oid: '.1.3.6.1.4.1.33333.8.31.{{ $index }}' + descr: 'Battery Sense Voltage' + index: 'batterySenseVoltage.{{ $index }}' + multiplier: 0.002950042724609375 + - + oid: TRISTAR::arrayLoadVoltage + value: TRISTAR::arrayLoadVoltage + num_oid: '.1.3.6.1.4.1.33333.8.32.{{ $index }}' + descr: 'Array Load Voltage' + index: 'arrayLoadVoltage.{{ $index }}' + multiplier: 0.002950042724609375 + - + oid: TRISTAR::targetVoltage + value: TRISTAR::targetVoltage + num_oid: '.1.3.6.1.4.1.33333.8.38.{{ $index }}' + descr: 'Target Voltage' + index: 'targetVoltage.{{ $index }}' + multiplier: 0.002950042724609375 + current: + data: + - + oid: PROSTAR-PWM::chargeCurrent + value: PROSTAR-PWM::chargeCurrent + num_oid: '.1.3.6.1.4.1.33333.6.33.{{ $index }}' + descr: 'Charge Current' + index: 'chargeCurrent.{{ $index }}' + - + oid: PROSTAR-PWM::loadCurrent + value: PROSTAR-PWM::loadCurrent + num_oid: '.1.3.6.1.4.1.33333.6.34.{{ $index }}' + descr: 'Load Current' + index: 'loadCurrent.{{ $index }}' + - + oid: PROSTAR-PWM::batteryCurrentNet + value: PROSTAR-PWM::batteryCurrentNet + num_oid: '.1.3.6.1.4.1.33333.6.35.{{ $index }}' + descr: 'Battery Current Net' + index: 'batteryCurrentNet.{{ $index }}' + - + oid: TRISTAR::chargeCurrent + value: TRISTAR::chargeCurrent + num_oid: '.1.3.6.1.4.1.33333.8.33.{{ $index }}' + descr: 'Charge Current' + index: 'chargeCurrent.{{ $index }}' + multiplier: 0.002034515380859375 + - + oid: TRISTAR::loadCurrent + value: TRISTAR::loadCurrent + num_oid: '.1.3.6.1.4.1.33333.8.34.{{ $index }}' + descr: 'Load Current' + index: 'loadCurrent.{{ $index }}' + multiplier: 0.00966400146484375 + temperature: + data: + - + oid: PROSTAR-PWM::heatsinkTemperature + value: PROSTAR-PWM::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.6.38.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: PROSTAR-PWM::batteryTemperature + value: PROSTAR-PWM::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.6.39.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + - + oid: PROSTAR-PWM::ambientTemperature + value: PROSTAR-PWM::ambientTemperature + num_oid: '.1.3.6.1.4.1.33333.6.40.{{ $index }}' + descr: 'Ambient Temperature' + index: 'ambientTemperature.{{ $index }}' + - + oid: PROSTAR-PWM::rtsTemperature + value: PROSTAR-PWM::rtsTemperature + num_oid: '.1.3.6.1.4.1.33333.6.41.{{ $index }}' + descr: 'RTS Temperature' + index: 'rtsTemperature.{{ $index }}' + - + oid: TRISTAR::heatsinkTemperature + value: TRISTAR::heatsinkTemperature + num_oid: '.1.3.6.1.4.1.33333.8.36.{{ $index }}' + descr: 'Heatsink Temperature' + index: 'heatsinkTemperature.{{ $index }}' + - + oid: TRISTAR::batteryTemperature + value: TRISTAR::batteryTemperature + num_oid: '.1.3.6.1.4.1.33333.8.37.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + state: + data: + - + oid: TRISTAR-MPPT::chargeState + value: TRISTAR-MPPT::chargeState + num_oid: '.1.3.6.1.4.1.33333.6.45.{{ $index }}' + index: 'chargeState.{{ $index }}' + descr: 'Charge State' + state_name: chargeState + states: + - { value: 0, generic: 1, graph: 1, descr: Start } + - { value: 1, generic: 0, graph: 1, descr: 'Night Check' } + - { value: 2, generic: 1, graph: 1, descr: 'Disconnect' } + - { value: 3, generic: 2, graph: 1, descr: 'Night' } + - { value: 4, generic: 2, graph: 1, descr: 'Fault' } + - { value: 5, generic: 3, graph: 1, descr: 'Bulk' } + - { value: 6, generic: 3, graph: 1, descr: 'PWM' } + - { value: 7, generic: 3, graph: 1, descr: 'Float' } + - { value: 8, generic: 3, graph: 1, descr: 'Equalize' } \ No newline at end of file diff --git a/priv/profiles/os_discovery/motorola-cm.yaml b/priv/profiles/os_discovery/motorola-cm.yaml new file mode 100644 index 00000000..c0df1202 --- /dev/null +++ b/priv/profiles/os_discovery/motorola-cm.yaml @@ -0,0 +1,30 @@ +mib: DOCS-IF-MIB +modules: + os: + sysDescr_regex: '/<<.* SW_REV: (?.*); MODEL: (?.*)>>/' + sensors: + tv_signal: + data: + - + oid: docsIfDownstreamChannelTable + value: docsIfDownChannelPower + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.1.1.1.6.{{ $index }}' + descr: RX Power + index: 1 + - + oid: docsIfCmStatusTable + value: docsIfCmStatusTxPower + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.2.2.1.3.{{ $index }}' + descr: TX Power + index: 2 + snr: + data: + - + oid: docsIfSignalQualityTable + value: docsIfSigQSignalNoise + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.1.4.1.5.{{ $index }}' + descr: SNR + index: 1 diff --git a/priv/profiles/os_discovery/moxa-awk.yaml b/priv/profiles/os_discovery/moxa-awk.yaml new file mode 100644 index 00000000..131cd86f --- /dev/null +++ b/priv/profiles/os_discovery/moxa-awk.yaml @@ -0,0 +1,18 @@ +mib: MOXA-AWK4131A-MIB +modules: + os: + hardware: MOXA-AWK4131A-MIB::overviewModelName.0 + version: MOXA-AWK4131A-MIB::overviewFirmwareVersion.0 + serial: MOXA-AWK4131A-MIB::overviewSerialNumber.0 + mempools: + data: + - + total: MOXA-AWK4131A-MIB::memTotalKB + used: MOXA-AWK4131A-MIB::memUsedKB + free: MOXA-AWK4131A-MIB::memFreeKB + processors: + data: + - + oid: cpuUsage + num_oid: '.1.3.6.1.4.1.8691.15.34.1.11.25.1.{{ $index }}' + type: moxa-cpu diff --git a/priv/profiles/os_discovery/moxa-eds-4000-series.yaml b/priv/profiles/os_discovery/moxa-eds-4000-series.yaml new file mode 100644 index 00000000..480c7345 --- /dev/null +++ b/priv/profiles/os_discovery/moxa-eds-4000-series.yaml @@ -0,0 +1,9 @@ +mib: MOXA-SYSTEM-INFO-MIB:MOXA-SYSTEM-UTILIZATION-MIB:MOXA-PORT-MIB:MOXA-DEVICE-IO-MIB +modules: + os: + hardware: + - MOXA-SYSTEM-INFO-MIB::siStatProductInfoModelName.0 + version: + - MOXA-SYSTEM-INFO-MIB::siStatProductInfoFirmwareVersion.0 + serial: + - MOXA-SYSTEM-INFO-MIB::siStatProductInfoSerialNumber.0 diff --git a/priv/profiles/os_discovery/moxa-etherdevice.yaml b/priv/profiles/os_discovery/moxa-etherdevice.yaml new file mode 100644 index 00000000..38c8a6a8 --- /dev/null +++ b/priv/profiles/os_discovery/moxa-etherdevice.yaml @@ -0,0 +1,322 @@ +modules: + mempools: + data: + - + total: MOXA-IKS6726A-MIB::totalMemory + used: MOXA-IKS6726A-MIB::usedMemory + free: MOXA-IKS6726A-MIB::freeMemory + - + total: MOXA-EDSG508E-MIB::totalMemory + used: MOXA-EDSG508E-MIB::usedMemory + free: MOXA-EDSG508E-MIB::freeMemory + - + total: MOXA-EDSG512E-MIB::totalMemory + used: MOXA-EDSG512E-MIB::usedMemory + free: MOXA-EDSG512E-MIB::freeMemory + - + total: MOXA-EDSG516E-MIB::totalMemory + used: MOXA-EDSG516E-MIB::usedMemory + free: MOXA-EDSG516E-MIB::freeMemory + - + total: MOXA-EDSP506E-MIB::totalMemory + used: MOXA-EDSP506E-MIB::usedMemory + free: MOXA-EDSP506E-MIB::freeMemory + - + total: MOXA-EDSP510A8POE-MIB::totalMemory + used: MOXA-EDSP510A8POE-MIB::usedMemory + free: MOXA-EDSP510A8POE-MIB::freeMemory + - + total: MOXA-EDSG512E8POE-MIB::totalMemory + used: MOXA-EDSG512E8POE-MIB::usedMemory + free: MOXA-EDSG512E8POE-MIB::freeMemory + os: + hardware: + - MOXA-IKS6726A-MIB::switchModel + - MOXA-EDSG508E-MIB::switchModel + - MOXA-EDSG512E-MIB::switchModel.0 + - MOXA-EDSG516E-MIB::switchModel.0 + - MOXA-EDSP506E-MIB::switchModel.0 + - MOXA-EDSP510A8POE-MIB::switchModel.0 + - MOXA-EDSG512E8POE-MIB::switchModel + version: + - MOXA-IKS6726A-MIB::firmwareVersion + - MOXA-EDSG508E-MIB::firmwareVersion + - MOXA-EDSG512E-MIB::firmwareVersion.0 + - MOXA-EDSG516E-MIB::firmwareVersion.0 + - MOXA-EDSP506E-MIB::firmwareVersion.0 + - MOXA-EDSP510A8POE-MIB::firmwareVersion.0 + - MOXA-EDSG512E8POE-MIB::firmwareVersion + serial: + - MOXA-EDSG508E-MIB::serialNumber + - MOXA-EDSG512E-MIB::serialNumber.0 + - MOXA-EDSG516E-MIB::serialNumber.0 + - MOXA-EDSP506E-MIB::serialNumber.0 + - MOXA-EDSG512E8POE-MIB::serialNumber + sensors: + additional_oids: + data: + - + oid: + - IF-MIB::ifDescr + power: + data: + - + oid: MOXA-IKS6726A-MIB::powerConsumption + num_oid: '.1.3.6.1.4.1.8691.7.116.1.10.8.{{ $index }}' + descr: 'Power Consumption' + index: 'powerConsumption.{{ $index }}' + - + oid: MOXA-EDSG508E-MIB::powerConsumption + num_oid: '.1.3.6.1.4.1.8691.7.69.1.10.8.{{ $index }}' + descr: 'Power Consumption' + index: 'powerConsumption.{{ $index }}' + - + oid: MOXA-EDSP506E-MIB::poePortConsumption + num_oid: '.1.3.6.1.4.1.8691.7.162.1.40.6.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' + index: 'poePortConsumption.{{ $index }}' + high_limit: 'powerLimit.{{ $index }}' + - + oid: MOXA-EDSP510A8POE-MIB::poePortConsumption + num_oid: '.1.3.6.1.4.1.8691.7.86.1.40.6.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' + index: 'poePortConsumption.{{ $index }}' + high_limit: 36.0 + - + oid: MOXA-EDSG512E8POE-MIB::powerConsumption + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.8.{{ $index }}' + descr: 'Power Consumption' + index: 'powerConsumption.{{ $index }}' + high_limit: 240.0 + - + oid: MOXA-EDSG512E8POE-MIB::poePortConsumption + num_oid: '.1.3.6.1.4.1.8691.7.108.1.40.6.1.2.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' + index: 'poePortConsumption.{{ $index }}' + high_limit: 36.0 + temperature: + data: + - + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpTemperature + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.3.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' + index: 'sfpTemperature.{{ $index }}' + low_limit: -40.0 + high_limit: 85.0 + - + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberTemperature + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' + index: 'fiberTemperature.{{ $index }}' + low_limit: -40.0 + high_limit: 85.0 + - + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberTemperature + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' + index: 'fiberTemperature.{{ $index }}' + low_limit: -40.0 + high_limit: 85.0 + - + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberTemperature + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' + index: 'fiberTemperature.{{ $index }}' + low_limit: -40.0 + high_limit: 85.0 + voltage: + data: + - + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpVoltage + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' + index: 'sfpVoltage.{{ $index }}' + low_limit: 3.13 + high_limit: 3.47 + - + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberVoltage + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' + index: 'fiberVoltage.{{ $index }}' + low_limit: 3.13 + high_limit: 3.47 + - + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberVoltage + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' + index: 'fiberVoltage.{{ $index }}' + low_limit: 3.13 + high_limit: 3.47 + - + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberVoltage + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.4.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' + index: 'fiberVoltage.{{ $index }}' + low_limit: 3.13 + high_limit: 3.47 + dbm: + data: + - + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpTxPower + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.5.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' + index: 'sfpTxPower.{{ $index }}' + low_limit: -9.0 + high_limit: -3.0 + - + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpRXPower + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.6.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' + index: 'sfpRxPower.{{ $index }}' + low_limit: -21.0 + high_limit: -3.0 + - + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberTxPower + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.7.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' + index: 'fiberTxPower.{{ $index }}' + low_limit: -9.0 + high_limit: -3.0 + - + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberRxPower + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.9.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' + index: 'fiberRxPower.{{ $index }}' + low_limit: -21.0 + high_limit: -3.0 + - + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberTxPower + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.7.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' + index: 'fiberTxPower.{{ $index }}' + low_limit: -9.0 + high_limit: -3.0 + - + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberRxPower + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.9.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' + index: 'fiberRxPower.{{ $index }}' + low_limit: -21.0 + high_limit: -3.0 + - + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberTxPower + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.7.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' + index: 'fiberTxPower.{{ $index }}' + low_limit: -9.0 + high_limit: -3.0 + - + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberRxPower + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.9.{{ $index }}' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' + index: 'fiberRxPower.{{ $index }}' + low_limit: -21.0 + high_limit: -3.0 + state: + data: + - + oid: MOXA-EDSP510A8POE-MIB::power1InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.1.{{ $index }}' + descr: 'Power Input 1 Status' + index: 'powerInputStatus.1' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSP510A8POE-MIB::power2InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.2.{{ $index }}' + descr: 'Power Input 2 Status' + index: 'powerInputStatus.2' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSP506E-MIB::power1InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.1.{{ $index }}' + descr: 'Power Input 1 Status' + index: 'powerInputStatus.1' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSP506E-MIB::power2InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.2.{{ $index }}' + descr: 'Power Input 2 Status' + index: 'powerInputStatus.2' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG512E8POE-MIB::power1InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.1.{{ $index }}' + descr: 'Power Input 1 Status' + index: 'powerInputStatus.1' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG512E8POE-MIB::power2InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.2.{{ $index }}' + descr: 'Power Input 2 Status' + index: 'powerInputStatus.2' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG512E-MIB::power1InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.70.1.10.1.{{ $index }}' + descr: 'Power Input 1 Status' + index: 'powerInputStatus.1' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG512E-MIB::power2InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.70.1.10.2.{{ $index }}' + descr: 'Power Input 2 Status' + index: 'powerInputStatus.2' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG516E-MIB::power1InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.1.{{ $index }}' + descr: 'Power Input 1 Status' + index: 'powerInputStatus.1' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } + - + oid: MOXA-EDSG516E-MIB::power2InputStatus + num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.2.{{ $index }}' + descr: 'Power Input 2 Status' + index: 'powerInputStatus.2' + state_name: powerInputStatus + states: + - { value: 0, generic: 2, graph: 0, descr: not present } + - { value: 1, generic: 0, graph: 0, descr: present } diff --git a/priv/profiles/os_discovery/moxa-nport.yaml b/priv/profiles/os_discovery/moxa-nport.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/moxa-nport.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/mpb-srp.yaml b/priv/profiles/os_discovery/mpb-srp.yaml new file mode 100644 index 00000000..311e9e8d --- /dev/null +++ b/priv/profiles/os_discovery/mpb-srp.yaml @@ -0,0 +1,45 @@ +mib: MPBC-2RU-MIB +modules: + sensors: + temperature: + data: + - + oid: MPBC-2RU-MIB::mpbc2RUSRPMonitor + value: MPBC-2RU-MIB::mpbc2RUSRPCaseTempDegCx10 + num_oid: '.1.3.6.1.4.1.4464.2.2.8.2.5.{{ $index }}' + descr: 'Case Temperature' + divisor: 10 + index: 'mpbc2RUSRPCaseTempDegCx10.{{ $index }}' + dbm: + data: + - + oid: MPBC-2RU-MIB::mpbc2RUSRPMonitor + value: MPBC-2RU-MIB::mpbc2RUSRPMonSeedOutputPwrmWx10 + num_oid: '.1.3.6.1.4.1.4464.2.2.8.2.6.{{ $index }}' + descr: 'Seed Output Power' + divisor: 10 + user_func: mw_to_dbm + index: 'mpbc2RUSRPMonSeedOutputPwrmWx10.{{ $index }}' + - + oid: MPBC-2RU-MIB::mpbc2RUSRPMonitor + value: MPBC-2RU-MIB::mpbc2RUSRPMainOutputPwrmWx10 + num_oid: '.1.3.6.1.4.1.4464.2.2.8.2.7.{{ $index }}' + descr: 'Main Output Power' + divisor: 10 + user_func: mw_to_dbm + index: 'mpbc2RUSRPMainOutputPwrmWx10.{{ $index }}' + - + oid: MPBC-2RU-MIB::mpbc2RUPxxMonitor + value: MPBC-2RU-MIB::mpbc2RUPxxOutputPwrmW + num_oid: '.1.3.6.1.4.1.4464.2.2.2.2.8.{{ $index }}' + descr: 'Output Power' + user_func: mw_to_dbm + index: 'mpbc2RUPxxOutputPwrmW.{{ $index }}' + - + oid: MPBC-2RU-MIB::mpbc2RUPxxMonitor + value: MPBC-2RU-MIB::mpbc2RUPxxInputPwrmWx100 + num_oid: '.1.3.6.1.4.1.4464.2.2.2.2.10.{{ $index }}' + descr: 'Input Power' + divisor: 100 + user_func: mw_to_dbm + index: 'mpbc2RUPxxInputPwrmWx100.{{ $index }}' diff --git a/priv/profiles/os_discovery/mrv-od.yaml b/priv/profiles/os_discovery/mrv-od.yaml new file mode 100644 index 00000000..df4f1c13 --- /dev/null +++ b/priv/profiles/os_discovery/mrv-od.yaml @@ -0,0 +1,299 @@ +mib: NBS-CMMC-MIB +modules: + os: + hardware: NBS-CMMC-MIB::nbsCmmcChassisModel.1 + serial: NBS-CMMC-MIB::nbsCmmcChassisSerialNum.1 + version: NBS-CMMC-MIB::nbsCmmcSysFwVers.0 + sensors: + additional_oids: + data: + - + oid: + - nbsCmmcChassisTable + - nbsCmmcSlotTable + - nbsCmmcPortTable + dbm: + options: + divisor: 1000 + skip_values: -2147483648 + data: + - + oid: nbsCmmcPortTable + value: nbsCmmcPortRxPower + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.32.{{ $index }}' + descr: 'Port {{ $index }} Rx Power' + index: 'nbsCmmcPortRxPower.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}32' + - + oid: nbsCmmcPortTable + value: nbsCmmcPortTxPower + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.31.{{ $index }}' + descr: 'Port {{ $index }} Tx Power' + index: 'nbsCmmcPortTxPower.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}31' + current: + options: + divisor: 1000000 + skip_values: -1 + data: + - + oid: nbsCmmcPortTable + value: nbsCmmcPortBiasAmps + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.33.{{ $index }}' + descr: 'Port {{ $index }} Tx Bias Current' + index: 'nbsCmmcPortBiasAmps.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}33' + voltage: + options: + divisor: 1000 + skip_values: -1 + data: + - + oid: nbsCmmcPortTable + value: nbsCmmcPortSupplyVolts + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.34.{{ $index }}' + descr: 'Port {{ $index }} Tx Supply Voltage' + index: 'nbsCmmcPortSupplyVolts.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}34' + temperature: + options: + skip_values: -2147483648 + data: + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisTemperature + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.15.{{ $index }}' + low_limit: nbsCmmcChassisTemperatureMin + high_limit: nbsCmmcChassisTemperatureLimit + descr: 'Chassis {{ $index }} Temperature' + index: 'nbsCmmcChassisTemperature.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}15' + - + oid: nbsCmmcSlotTable + value: nbsCmmcSlotTemperature + num_oid: '.1.3.6.1.4.1.629.200.7.1.1.34.{{ $index }}' + low_limit: nbsCmmcSlotTemperatureMin + high_limit: nbsCmmcSlotTemperatureLimit + descr: 'Slot {{ $index }} Temperature' + index: 'nbsCmmcSlotTemperature.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcSlotIfIndex }}34' + - + oid: nbsCmmcPortTable + value: nbsCmmcPortTemperature + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.30.{{ $index }}' + descr: 'Port {{ $index }} Temperature' + index: 'nbsCmmcPortTemperature.{{ $index }}' + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}30' + state: + data: + - + oid: nbsCmmcPortTable + value: nbsCmmcPortDigitalDiags + num_oid: '.1.3.6.1.4.1.629.200.8.1.1.38.{{ $index }}' + descr: 'Port {{ $index }} Overall DigiDiags State' + index: 'nbsCmmcPortDigitalDiags.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcPortIfIndex }}38' + state_name: nbsCmmcPortDigitalDiags + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: diagsOk, graph: 0, generic: 0 } + - { value: 3, descr: diagsWarning, graph: 1, generic: 1 } + - { value: 4, descr: diagsAlarm, graph: 2, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisPowerStatus + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.51.{{ $index }}' + descr: 'Chassis {{ $index }} Power Budget Status' + index: 'nbsCmmcChassisPowerStatus.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}51' + state_name: nbsCmmcChassisPowerStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: sufficient, graph: 1, generic: 0 } + - { value: 3, descr: insufficient, graph: -1, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisPS1Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.7.{{ $index }}' + descr: 'Chassis {{ $index }} Power Supply 1' + index: 'nbsCmmcChassisPS1Status.{{ $index }}' + skip_values: 6 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}7' + state_name: nbsCmmcChassisPSStatus + states: + - { value: 1, descr: notInstalled, graph: 0, generic: 2 } + - { value: 2, descr: acBad, graph: -1, generic: 2 } + - { value: 3, descr: dcBad, graph: -1, generic: 2 } + - { value: 4, descr: acGood, graph: 1, generic: 0 } + - { value: 5, descr: dcGood, graph: 1, generic: 0 } + - { value: 6, descr: notSupported, graph: 0, generic: 3 } + - { value: 7, descr: good, graph: 1, generic: 0 } + - { value: 8, descr: bad, graph: -1, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisPS2Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.8.{{ $index }}' + descr: 'Chassis {{ $index }} Power Supply 2' + index: 'nbsCmmcChassisPS2Status.{{ $index }}' + skip_values: 6 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}8' + state_name: nbsCmmcChassisPSStatus + states: + - { value: 1, descr: notInstalled, graph: 0, generic: 2 } + - { value: 2, descr: acBad, graph: -1, generic: 2 } + - { value: 3, descr: dcBad, graph: -1, generic: 2 } + - { value: 4, descr: acGood, graph: 1, generic: 0 } + - { value: 5, descr: dcGood, graph: 1, generic: 0 } + - { value: 6, descr: notSupported, graph: 0, generic: 3 } + - { value: 7, descr: good, graph: 1, generic: 0 } + - { value: 8, descr: bad, graph: -1, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisPS3Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.9.{{ $index }}' + descr: 'Chassis {{ $index }} Power Supply 3' + index: 'nbsCmmcChassisPS3Status.{{ $index }}' + skip_values: 6 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}9' + state_name: nbsCmmcChassisPSStatus + states: + - { value: 1, descr: notInstalled, graph: 0, generic: 2 } + - { value: 2, descr: acBad, graph: -1, generic: 2 } + - { value: 3, descr: dcBad, graph: -1, generic: 2 } + - { value: 4, descr: acGood, graph: 1, generic: 0 } + - { value: 5, descr: dcGood, graph: 1, generic: 0 } + - { value: 6, descr: notSupported, graph: 0, generic: 3 } + - { value: 7, descr: good, graph: 1, generic: 0 } + - { value: 8, descr: bad, graph: -1, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisPS4Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.10.{{ $index }}' + descr: 'Chassis {{ $index }} Power Supply 4' + index: 'nbsCmmcChassisPS4Status.{{ $index }}' + skip_values: 6 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}10' + state_name: nbsCmmcChassisPSStatus + states: + - { value: 1, descr: notInstalled, graph: 0, generic: 2 } + - { value: 2, descr: acBad, graph: -1, generic: 2 } + - { value: 3, descr: dcBad, graph: -1, generic: 2 } + - { value: 4, descr: acGood, graph: 1, generic: 0 } + - { value: 5, descr: dcGood, graph: 1, generic: 0 } + - { value: 6, descr: notSupported, graph: 0, generic: 3 } + - { value: 7, descr: good, graph: 1, generic: 0 } + - { value: 8, descr: bad, graph: -1, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan1Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.11.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 1' + index: 'nbsCmmcChassisFan1Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}11' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan2Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.12.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 2' + index: 'nbsCmmcChassisFan2Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}12' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan3Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.13.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 3' + index: 'nbsCmmcChassisFan3Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}13' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan4Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.14.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 4' + index: 'nbsCmmcChassisFan4Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}14' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan5Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.36.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 5' + index: 'nbsCmmcChassisFan5Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}36' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan6Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.37.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 6' + index: 'nbsCmmcChassisFan6Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}37' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan7Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.38.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 7' + index: 'nbsCmmcChassisFan7Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}38' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } + - + oid: nbsCmmcChassisTable + value: nbsCmmcChassisFan8Status + num_oid: '.1.3.6.1.4.1.629.200.6.1.1.39.{{ $index }}' + descr: 'Chassis {{ $index }} Fan 8' + index: 'nbsCmmcChassisFan8Status.{{ $index }}' + skip_values: 1 + entPhysicalIndex: '{{ $nbsCmmcChassisIfIndex }}39' + state_name: nbsCmmcChassisFanStatus + states: + - { value: 1, descr: notSupported, graph: 0, generic: 3 } + - { value: 2, descr: bad, graph: -1, generic: 2 } + - { value: 3, descr: good, graph: 1, generic: 0 } + - { value: 4, descr: notInstalled, graph: 0, generic: 2 } diff --git a/priv/profiles/os_discovery/msl.yaml b/priv/profiles/os_discovery/msl.yaml new file mode 100644 index 00000000..cf497a5e --- /dev/null +++ b/priv/profiles/os_discovery/msl.yaml @@ -0,0 +1,7 @@ +modules: + os: + version: .1.3.6.1.4.1.1027.4.1.2.1.1.1.4.10.1.3.6.1.4.1.1027.1.6.1 + features: .1.3.6.1.4.1.1027.4.1.2.1.1.1.5.10.1.3.6.1.4.1.1027.1.6.1 + sysDescr_regex: + - '/VerHw:(?[^;]+);VerSw:(?[\d.]+)/' + - '/VerSw:(?[\d.]+);VerHw:(?[^;]+)/' diff --git a/priv/profiles/os_discovery/mts-com.yaml b/priv/profiles/os_discovery/mts-com.yaml new file mode 100644 index 00000000..42db9811 --- /dev/null +++ b/priv/profiles/os_discovery/mts-com.yaml @@ -0,0 +1,253 @@ +modules: + os: + hardware: ARHANGELSK-GLOBAL-REG::modelname.0 + version: ARHANGELSK-GLOBAL-REG::controllerswversion.0 + + sensors: + voltage: + data: + - oid: ARHANGELSK-GLOBAL-REG::systemvoltage + num_oid: '.1.3.6.1.4.1.40865.1.6.{{ $index }}' + divisor: 1000 + index: 'systemvoltage.{{ $index }}' + descr: 'System Voltage' + + - oid: ARHANGELSK-GLOBAL-REG::acvoltage + num_oid: '.1.3.6.1.4.1.40865.1.8.{{ $index }}' + divisor: 1000 + index: 'acvoltage.{{ $index }}' + descr: 'AC Input Voltage' + + - oid: ARHANGELSK-GLOBAL-REG::rectoutputvoltage + num_oid: '.1.3.6.1.4.1.40865.1.6.{{ $index }}' + divisor: 1000 + index: 'rectoutputvoltage.{{ $index }}' + descr: 'Rectifier Output Voltage' + + - oid: ARHANGELSK-GLOBAL-REG::rectinputvoltage + num_oid: '.1.3.6.1.4.1.40865.1.8.{{ $index }}' + divisor: 1000 + index: 'rectinputvoltage.{{ $index }}' + descr: 'Rectifier AC Input Voltage' + + current: + data: + - oid: ARHANGELSK-GLOBAL-REG::systemcurrent + num_oid: '.1.3.6.1.4.1.40865.1.7.{{ $index }}' + divisor: 1000 + index: 'systemcurrent.{{ $index }}' + descr: 'System Current' + + - oid: ARHANGELSK-GLOBAL-REG::batterycurrent + num_oid: '.1.3.6.1.4.1.40865.1.11.{{ $index }}' + index: 'batterycurrent.{{ $index }}' + descr: 'Battery Current' + + - oid: ARHANGELSK-GLOBAL-REG::rectoutputcurrent + num_oid: '.1.3.6.1.4.1.40865.1.17.{{ $index }}' + divisor: 1000 + index: 'rectoutputcurrent.{{ $index }}' + descr: 'Rectifier Output Current' + + state: + data: + - oid: ARHANGELSK-GLOBAL-REG::systemstatus + num_oid: '.1.3.6.1.4.1.40865.1.5.{{ $index }}' + descr: 'System Status' + index: 'systemstatus.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::systemstatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: minor, graph: 1, value: 2, generic: 1 } + - { descr: major, graph: 1, value: 3, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::batterymode + num_oid: '.1.3.6.1.4.1.40865.1.13.{{ $index }}' + descr: 'Battery State' + index: 'batterymode.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::batterymode + states: + - { descr: floatcharge, graph: 1, value: 0, generic: 0 } + - { descr: floatcharge, graph: 1, value: 1, generic: 0 } + - { descr: equalizecharge, graph: 1, value: 2, generic: 0 } + + - oid: ARHANGELSK-GLOBAL-REG::rectopenstate + num_oid: '.1.3.6.1.4.1.40865.1.5.{{ $index }}' + descr: 'Rectifier Status' + index: 'rectopenstate.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::rectopenstate + states: + - { descr: power-on, graph: 1, value: 1, generic: 0 } + - { descr: shutdown, graph: 1, value: 0, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::rectpluginnotok + num_oid: '.1.3.6.1.4.1.40865.1.21.{{ $index }}' + descr: 'Rectifier Plug-In OK' + index: 'rectpluginnotok.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::rectpluginnotok + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::hvsdflag + num_oid: '.1.3.6.1.4.1.40865.1.22.{{ $index }}' + descr: 'High Voltage Shutdown - Output over voltage' + index: 'hvsdflag.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::hvsdflag + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::outputundervol + num_oid: '.1.3.6.1.4.1.40865.1.23.{{ $index }}' + descr: 'Low Voltage Shutdown - Output under voltage' + state_name: ARHANGELSK-GLOBAL-REG::outputundervol + index: 'outputundervol.{{ $index }}' + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::inputundervol + num_oid: '.1.3.6.1.4.1.40865.1.24.{{ $index }}' + descr: 'Low Voltage Shutdown - Input under voltage' + index: 'inputundervol.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::inputundervol + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::fanisnotrotate + num_oid: '.1.3.6.1.4.1.40865.1.26.{{ $index }}' + descr: 'Fan Status' + index: 'fanisnotrotate.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::fanisnotrotate + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::ambientovertemp + num_oid: '.1.3.6.1.4.1.40865.1.27.{{ $index }}' + descr: 'Ambient Temperature High' + index: 'ambientovertemp.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::ambientovertemp + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::ambientundertemp + num_oid: '.1.3.6.1.4.1.40865.1.28.{{ $index }}' + descr: 'Ambient Temperature Low' + index: 'ambientundertemp.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::ambientundertemp + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::pfcovertemp + num_oid: '.1.3.6.1.4.1.40865.1.29.{{ $index }}' + descr: 'PFC Over Temperature' + index: 'pfcovertemp.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::pfcovertemp + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::pfceepromfault + num_oid: '.1.3.6.1.4.1.40865.1.36.{{ $index }}' + descr: 'PFC EEPROM Status' + index: 'pfceepromfault.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::pfceepromfault + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::dcdcovertemp + num_oid: '.1.3.6.1.4.1.40865.1.30.{{ $index }}' + descr: 'DC-DC Over Temperature' + index: 'dcdcovertemp.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::dcdcovertemp + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::dcdceepromfault + num_oid: '.1.3.6.1.4.1.40865.1.32.{{ $index }}' + descr: 'DC-DC EEPROM Status' + index: 'dcdceepromfault.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::dcdceepromfault + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::powderatedbyacvol + num_oid: '.1.3.6.1.4.1.40865.1.33.{{ $index }}' + descr: 'Output power derate by AC voltage' + index: 'powderatedbyacvol.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::powderatedbyacvol + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::powderatedbytemp + num_oid: '.1.3.6.1.4.1.40865.1.34.{{ $index }}' + descr: 'Output power derate by Temperature' + index: 'powderatedbytemp.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::powderatedbytemp + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::currentsharenotok + num_oid: '.1.3.6.1.4.1.40865.1.35.{{ $index }}' + descr: 'Rectifier Current Share Imbalance' + index: 'currentsharenotok.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::currentsharenotok + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::acstopflag + num_oid: '.1.3.6.1.4.1.40865.1.38.{{ $index }}' + descr: 'AC Input Status' + index: 'acstopflag.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::acstopflag + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 2, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::dcvoltagealarm + num_oid: '.1.3.6.1.4.1.40865.1.39.{{ $index }}' + descr: 'DC Output Status' + index: 'dcvoltagealarm.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::dcvoltagealarm + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::battfusebreak + num_oid: '.1.3.6.1.4.1.40865.1.42.{{ $index }}' + descr: 'Battery Breaker Status' + index: 'battfusebreak.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::battfusebreak + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::loadfusebreak + num_oid: '.1.3.6.1.4.1.40865.1.44.{{ $index }}' + descr: 'Load Breaker Status' + index: 'loadfusebreak.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::loadfusebreak + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } + + - oid: ARHANGELSK-GLOBAL-REG::batteryprotectflag + num_oid: '.1.3.6.1.4.1.40865.1.45.{{ $index }}' + descr: 'Battery Low Voltage Disconnect' + index: 'batteryprotectflag.{{ $index }}' + state_name: ARHANGELSK-GLOBAL-REG::batteryprotectflag + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: alarm, graph: 1, value: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/mypoweros.yaml b/priv/profiles/os_discovery/mypoweros.yaml new file mode 100755 index 00000000..e41983aa --- /dev/null +++ b/priv/profiles/os_discovery/mypoweros.yaml @@ -0,0 +1,17 @@ +mib: MPIOS-MIB +modules: + mempools: + data: + - + total: MPIOS-MIB::memoryTotalBytes + used: MPIOS-MIB::numBytesAlloc + free: MPIOS-MIB::numBytesFree + + os: + sysDescr_regex: '/MyPower (?.*) version (?[\d.]+)/' + processors: + data: + - + oid: cpuUtilCurrentUtil + num_oid: '.1.3.6.1.4.1.5651.3.20.1.1.3.5.1.10.{{ $index }}' + index: 1 diff --git a/priv/profiles/os_discovery/neptune.yaml b/priv/profiles/os_discovery/neptune.yaml new file mode 100644 index 00000000..d254dbe1 --- /dev/null +++ b/priv/profiles/os_discovery/neptune.yaml @@ -0,0 +1,150 @@ +modules: + os: + sysDescr_regex: '/(?NPT.+), V(?[\d.-]+)/' + processors: + data: + - + oid: NPT-SYSTEM-MIB::nptCpuInfoTable + value: NPT-SYSTEM-MIB::nptIdle + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.5.1.18.{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptCpuPhysicalBoardType }}: {{ NPT-SYSTEM-MIB::nptCpuType }}' + precision: -10 + mempools: + data: + - + total: NPT-SYSTEM-MIB::nptMemoryTotaly + free: NPT-SYSTEM-MIB::nptMemoryFree + descr: '{{ NPT-SYSTEM-MIB::nptMemoryPhysicalBoardType }} Memory' + precision: 1000 + sensors: + voltage: + data: + - + oid: NPT-SYSTEM-MIB::nptChassisPowerTable + value: NPT-SYSTEM-MIB::nptChassisPowerCurrentInputDCVoltage + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.9.1.1.3.{{ $index }}' + divisor: 100 + index: 'psu-{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptChassisPowerObjectName }} Voltage' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerTable + value: NPT-SYSTEM-MIB::nptLaservoltage + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.1.1.3.{{ $index }}' + divisor: 10 + descr: Laser Voltage + group: transceiver + index: 'optic-{{ $index }}' + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + current: + data: + - + oid: NPT-SYSTEM-MIB::nptChassisPowerTable + value: NPT-SYSTEM-MIB::nptChassisPowerCurrentInputDCCurrent + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.9.1.1.4.{{ $index }}' + divisor: 100 + index: 'psu-{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptChassisPowerObjectName }} Current' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerTable + value: NPT-SYSTEM-MIB::nptLaserbiascurrent + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.1.1.4.{{ $index }}' + divisor: 10000 + index: 'optic-{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptTransceiverPowerName }} Laser Bias' + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneTable + value: NPT-SYSTEM-MIB::nptLaneLaserBiasCur + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.2.1.6.{{ $index }}' + divisor: 10000 + index: 'optic-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneName|replace('//object=transceiver//port-name=','') }} Channel {{ NPT-SYSTEM-MIB::nptLaneNum }} Laser Bias" + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + + temperature: + data: + - + oid: NPT-SYSTEM-MIB::nptCardTemperatureTable + value: NPT-SYSTEM-MIB::nptTemperature + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.10.3.1.4.{{ $index }}' + divisor: 10 + index: 'card-{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptCardName }} Temperature' + high_limit: NPT-SYSTEM-MIB::nptHighAlarmThreshold + warn_limit: NPT-SYSTEM-MIB::nptHighWarnThreshold + low_warn_limit: NPT-SYSTEM-MIB::nptLowWarnThreshold + low_limit: NPT-SYSTEM-MIB::nptLowAlarmThreshold + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerTable + value: NPT-SYSTEM-MIB::nptLasertemperature + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.1.1.5.{{ $index }}' + divisor: 10 + index: 'optic-{{ $index }}' + descr: '{{ NPT-SYSTEM-MIB::nptTransceiverPowerName }} Temperature' + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + dbm: + data: + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerTable + value: NPT-SYSTEM-MIB::nptRxlaserpower + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.1.1.7.{{ $index }}' + divisor: 10 + index: 'optic-rx-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptTransceiverPowerName|replace('//object=transceiver//port-name=','') }} RX Power" + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerTable + value: NPT-SYSTEM-MIB::nptTxlaserpower + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.1.1.6.{{ $index }}' + divisor: 10 + index: 'optic-tx-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptTransceiverPowerName|replace('//object=transceiver//port-name=','') }} TX Power" + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $index }}' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneTable + value: NPT-SYSTEM-MIB::nptLaneRxLaserPower + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.2.1.5.{{ $index }}' + divisor: 10 + index: 'optic-rx-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneName|replace('//object=transceiver//port-name=','') }} Channel {{ NPT-SYSTEM-MIB::nptLaneNum }} RX Power" + group: transceiver + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + - + oid: NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneTable + value: NPT-SYSTEM-MIB::nptLaneTxLaserPower + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.8.4.2.1.4.{{ $index }}' + divisor: 10 + descr: "{{ NPT-SYSTEM-MIB::nptTransceiverPowerMultilaneName|replace('//object=transceiver//port-name=','') }} Channel {{ NPT-SYSTEM-MIB::nptLaneNum }} TX Power" + group: transceiver + index: 'optic-tx-{{ $index }}' + entPhysicalIndex_measured: ports + entPhysicalIndex: '{{ $subindex0 }}' + power: + data: + - + oid: NPT-SYSTEM-MIB::nptChassisPowerTable + value: NPT-SYSTEM-MIB::nptChassisPowerCurrentPowerConsumption + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.9.1.1.9.{{ $index }}' + divisor: 100 + index: 'psu-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptChassisPowerObjectName }} Current" + - + oid: NPT-SYSTEM-MIB::nptChassisPowerTable + value: NPT-SYSTEM-MIB::nptChassisPowerShelfPowerConsumption + num_oid: '.1.3.6.1.4.1.1286.5.1.1.2.1.9.1.1.9.{{ $index }}' + divisor: 100 + index: 'psu-shelf-{{ $index }}' + descr: "{{ NPT-SYSTEM-MIB::nptChassisPowerObjectName }} Current" + diff --git a/priv/profiles/os_discovery/netagent2.yaml b/priv/profiles/os_discovery/netagent2.yaml new file mode 100644 index 00000000..1afc245c --- /dev/null +++ b/priv/profiles/os_discovery/netagent2.yaml @@ -0,0 +1,47 @@ +mib: UPS-MIB:XPPC-MIB +modules: + os: + version: UPS-MIB::upsIdentAgentSoftwareVersion.0 + hardware: UPS-MIB::upsIdentModel.0 + sensors: + state: + data: + - + oid: upsBaseBatteryStatus + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.1.1.{{ $index }}' + descr: Battery Status + index: 'upsBaseBatteryStatus.{{ $index }}' + state_name: upsBaseBatteryStatus + states: + - { descr: unknown, graph: 0, value: 1, generic: 3 } + - { descr: BatteryNormal, graph: 0, value: 2, generic: 0 } + - { descr: BatteryLow, graph: 0, value: 3, generic: 1 } + - + oid: upsSmartBatteryReplaceIndicator + num_oid: '.1.3.6.1.4.1.935.1.1.1.2.2.5.{{ $index }}' + descr: Battery Replace Status + index: 'upsSmartBatteryReplaceIndicator.{{ $index }}' + state_name: upsSmartBatteryReplaceIndicator + states: + - { descr: noBatteryNeedsReplacing, graph: 0, value: 1, generic: 0 } + - { descr: batteryNeedsReplacing, graph: 0, value: 2, generic: 2 } + - + oid: upsEnvWater + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.3.{{ $index }}' + descr: Water Status + index: 'upsEnvWater.{{ $index }}' + state_name: upsEnvWater + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: abnormal, graph: 0, value: 2, generic: 2 } + - + oid: upsEnvSmoke + num_oid: '.1.3.6.1.4.1.935.1.1.1.9.1.4.{{ $index }}' + descr: Smoke Status + index: 'upsEnvSmoke.{{ $index }}' + state_name: upsEnvSmoke + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: abnormal, graph: 0, value: 2, generic: 2 } diff --git a/priv/profiles/os_discovery/netapp.yaml b/priv/profiles/os_discovery/netapp.yaml new file mode 100644 index 00000000..73e46b3d --- /dev/null +++ b/priv/profiles/os_discovery/netapp.yaml @@ -0,0 +1,16 @@ +modules: + os: + serial: NETAPP-MIB::productSerialNum.0 + hardware: NETAPP-MIB::productModel.0 + version: NETAPP-MIB::productVersion.0 + version_regex: '/NetApp Release (?.*?):/' + storage: + data: + - + oid: NETAPP-MIB::dfTable + type: NETAPP-MIB::dfType + descr: NETAPP-MIB::dfFileSys + units: 1024 + size: NETAPP-MIB::df64TotalKBytes + used: NETAPP-MIB::df64UsedKBytes + used_num_oid: '.1.3.6.1.4.1.789.1.5.4.1.30.{{ $index }}' diff --git a/priv/profiles/os_discovery/netbotz.yaml b/priv/profiles/os_discovery/netbotz.yaml new file mode 100644 index 00000000..6fd775e3 --- /dev/null +++ b/priv/profiles/os_discovery/netbotz.yaml @@ -0,0 +1,92 @@ +mib: NETBOTZV2-MIB +modules: + os: + version: .1.3.6.1.4.1.318.1.4.2.4.1.4.1 + hardware_mib: NETBOTZ410-MIB + sensors: + airflow: + data: + - + oid: airFlowSensorTable + value: airFlowSensorValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.5528.100.4.1.5.1.2.{{ $index }}' + descr: airFlowSensorLabel + group: Airflow + index: 'airFlowSensorValue.{{ $index }}' + temperature: + data: + - + oid: dewPointSensorTable + value: dewPointSensorValue + divisor: 10 + num_oid: '.1.3.6.1.4.1.5528.100.4.1.3.1.2.{{ $index }}' + descr: dewPointSensorLabel + group: Dew Point + index: 'dewPointSensorValue.{{ $index }}' + - + oid: tempSensorTable + value: tempSensorValueInt + num_oid: '.1.3.6.1.4.1.5528.100.4.1.1.1.8.{{ $index }}' + descr: tempSensorLabel + index: '{{ $index }}' + humidity: + data: + - + oid: humiSensorTable + value: humiSensorValue + num_oid: '.1.3.6.1.4.1.5528.100.4.1.2.1.8.{{ $index }}' + descr: humiSensorLabel + index: '{{ $index }}' + state: + data: + - + oid: dryContactSensorTable + value: dryContactSensorValue + num_oid: '.1.3.6.1.4.1.5528.100.4.2.1.1.2.{{ $index }}' + descr: dryContactSensorLabel + group: Dry Contacts + index: 'dryContactSensor.{{ $index }}' + state_name: dryContactSensor + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: open, graph: 0, value: 0, generic: 0 } + - { descr: closed, graph: 0, value: 1, generic: 2 } + - + oid: doorSwitchSensorTable + value: doorSwitchSensorValue + num_oid: '.1.3.6.1.4.1.5528.100.4.2.2.1.2.{{ $index }}' + descr: doorSwitchSensorLabel + group: Door Switches + index: 'doorSwitchSensor.{{ $index }}' + state_name: doorSwitchSensor + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: open, graph: 0, value: 0, generic: 0 } + - { descr: closed, graph: 0, value: 1, generic: 2 } + - + oid: cameraMotionSensorTable + value: cameraMotionSensorValue + num_oid: '.1.3.6.1.4.1.5528.100.4.2.3.1.2.{{ $index }}' + descr: cameraMotionSensorLabel + group: Camera Motion Sensors + index: 'cameraMotionSensor.{{ $index }}' + state_name: cameraMotionSensor + states: + - { descr: 'null', graph: 0, value: -1, generic: 3 } + - { descr: noMotion, graph: 0, value: 0, generic: 0 } + - { descr: motionDetected, graph: 0, value: 1, generic: 2 } + - + oid: otherStateSensorTable + value: otherStateSensorErrorStatus + num_oid: '.1.3.6.1.4.1.5528.100.4.2.10.1.3.{{ $index }}' + descr: otherStateSensorLabel + index: '{{ $index }}' + state_name: otherStateSensorErrorStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: info, graph: 0, value: 1, generic: 1 } + - { descr: warning, graph: 0, value: 2, generic: 1 } + - { descr: error, graph: 0, value: 3, generic: 2 } + - { descr: critical, graph: 0, value: 4, generic: 2 } + - { descr: failure, graph: 0, value: 5, generic: 2 } diff --git a/priv/profiles/os_discovery/netbsd.yaml b/priv/profiles/os_discovery/netbsd.yaml new file mode 100644 index 00000000..94bcd4e0 --- /dev/null +++ b/priv/profiles/os_discovery/netbsd.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ NetBSD (?[\d.-]+) \((?\S+)\) (?\S+)$/' diff --git a/priv/profiles/os_discovery/netgear.yaml b/priv/profiles/os_discovery/netgear.yaml new file mode 100644 index 00000000..c30acec8 --- /dev/null +++ b/priv/profiles/os_discovery/netgear.yaml @@ -0,0 +1,61 @@ +mib: NETGEAR-BOXSERVICES-PRIVATE-MIB +modules: + mempools: + data: + - + total: NETGEAR-SWITCHING-MIB::agentSwitchCpuProcessMemAvailable + free: NETGEAR-SWITCHING-MIB::agentSwitchCpuProcessMemFree + precision: 1024 + os: + sysDescr_regex: '/^(?\S+) .*, (?[\d.]+),/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + sensors: + additional_oids: + data: + - + oid: + - boxServicesNormalTempRangeMin + - boxServicesNormalTempRangeMax + temperature: + data: + - + oid: boxServicesTempSensorsTable + value: boxServicesTempSensorTemperature + num_oid: '.1.3.6.1.4.1.4526.10.43.1.8.1.5.{{ $index }}' + descr: 'Switch {{ $subindex0 }} Sensor {{ $subindex1 }} Temperature' + index: 'boxServicesTempSensorTemperature.{{ $index }}' + low_limit: boxServicesNormalTempRangeMin + high_limit: boxServicesNormalTempRangeMax + state: + data: + - + oid: boxServicesFansTable + value: boxServicesFanItemState + num_oid: '.1.3.6.1.4.1.4526.10.43.1.6.1.3.{{ $index }}' + descr: 'Switch {{ $subindex0 }} Fan {{ $subindex1 }} State' + index: 'boxServicesFanItemState.{{ $index }}' + state_name: boxServicesFanItemState + states: + - { value: 1, generic: 0, graph: 0, descr: notpresent } + - { value: 2, generic: 0, graph: 0, descr: operational } + - { value: 3, generic: 2, graph: 0, descr: failed } + - { value: 4, generic: 3, graph: 0, descr: powering } + - { value: 5, generic: 3, graph: 0, descr: nopower } + - { value: 6, generic: 3, graph: 0, descr: notpowering } + - { value: 7, generic: 1, graph: 0, descr: incompatible } + - + oid: boxServicesPowSuppliesTable + value: boxServicesPowSupplyItemState + num_oid: '.1.3.6.1.4.1.4526.10.43.1.7.1.3.{{ $index }}' + descr: 'PSU {{ $subindex0 }} State' + index: 'boxServicesPowSupplyItemState.{{ $index }}' + state_name: boxServicesPowSupplyItemState + states: + - { value: 1, generic: 0, graph: 0, descr: notpresent } + - { value: 2, generic: 0, graph: 0, descr: operational } + - { value: 3, generic: 2, graph: 0, descr: failed } + - { value: 4, generic: 3, graph: 0, descr: powering } + - { value: 5, generic: 3, graph: 0, descr: nopower } + - { value: 6, generic: 3, graph: 0, descr: notpowering } + - { value: 7, generic: 1, graph: 0, descr: incompatible } diff --git a/priv/profiles/os_discovery/netguardian.yaml b/priv/profiles/os_discovery/netguardian.yaml new file mode 100644 index 00000000..9d8e2863 --- /dev/null +++ b/priv/profiles/os_discovery/netguardian.yaml @@ -0,0 +1,48 @@ +mib: DPS-MIB-CG-V1 +modules: + os: + hardware: DPS-MIB-V38::dpsRTUModel.0 + version: DPS-MIB-V38::dpsRTUFirmwareVersion.0 + sensors: + voltage: + data: + - + oid: cgStringChannels + value: cgStrVoltage + num_oid: '.1.3.6.1.4.1.2682.2.1.1.4.{{ $index }}' + descr: 'Battery string {{ $index }}' + index: 'cgStrVoltage.{{ $index }}' + - + oid: cgBatteryChannels + value: cgVoltage + num_oid: '.1.3.6.1.4.1.2682.2.2.1.4.{{ $index }}' + descr: 'Battery {{ $index }}' + index: 'cgVoltage.{{ $index }}' + current: + data: + - + oid: cgStringChannels + value: cgStrCurrent + num_oid: '.1.3.6.1.4.1.2682.2.1.1.5.{{ $index }}' + descr: 'Battery string {{ $index }}' + index: 'cgStrCurrent.{{ $index }}' + temperature: + data: + - + oid: cgStringChannels + value: cgStrTempA + num_oid: '.1.3.6.1.4.1.2682.2.1.1.6.{{ $index }}' + descr: 'Battery string {{ $index }}' + index: 'cgStrTempA.{{ $index }}' + - + oid: cgStringChannels + value: cgStrTempB + num_oid: '.1.3.6.1.4.1.2682.2.1.1.7.{{ $index }}' + descr: 'Battery string {{ $index }}' + index: 'cgStrTempB.{{ $index }}' + - + oid: cgBatteryChannels + value: cgTemperature + num_oid: '.1.3.6.1.4.1.2682.2.2.1.5.{{ $index }}' + descr: 'Battery {{ $index }}' + index: 'cgTemperature.{{ $index }}' diff --git a/priv/profiles/os_discovery/netmanplus.yaml b/priv/profiles/os_discovery/netmanplus.yaml new file mode 100644 index 00000000..4244e28c --- /dev/null +++ b/priv/profiles/os_discovery/netmanplus.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' + version: UPS-MIB::upsIdentUPSSoftwareVersion.0 diff --git a/priv/profiles/os_discovery/netonix.yaml b/priv/profiles/os_discovery/netonix.yaml new file mode 100644 index 00000000..4bbb7ae0 --- /dev/null +++ b/priv/profiles/os_discovery/netonix.yaml @@ -0,0 +1,68 @@ +modules: + os: + sysDescr_regex: '/Netonix (?.*)/' + version: NETONIX-SWITCH-MIB::firmwareVersion.0 + version_regex: '/(?.*\d)/' # version display bug in 1.3.9 + sensors: + state: + data: + - + oid: NETONIX-SWITCH-MIB::poeStatusTable + value: NETONIX-SWITCH-MIB::poeStatus + num_oid: '.1.3.6.1.4.1.46242.5.1.2.{{ $index }}' + descr: Port {{ $index }} PoE + index: '{{ $index }}' + state_name: netonixPoeStatus + states: + - { descr: Off, graph: 0, value: 1, generic: -1 } + - { descr: 24V, graph: 0, value: 2, generic: 0 } + - { descr: 48V, graph: 0, value: 3, generic: 0 } + - { descr: 24VH, graph: 0, value: 4, generic: 0 } + - { descr: 48VH, graph: 0, value: 5, generic: 0 } + voltage: + data: + - + oid: NETONIX-SWITCH-MIB::voltageTable + value: NETONIX-SWITCH-MIB::voltage + num_oid: '.1.3.6.1.4.1.46242.4.1.3.{{ $index }}' + index: '{{ $index }}' + descr: '{{ $NETONIX-SWITCH-MIB::voltageDescription }}' + divisor: 100 + temperature: + data: + - + oid: NETONIX-SWITCH-MIB::tempTable + value: NETONIX-SWITCH-MIB::temp + num_oid: '.1.3.6.1.4.1.46242.3.1.3.{{ $index }}' + index: '{{ $index }}' + descr: '{{ $NETONIX-SWITCH-MIB::tempDescription }}' + divisor: 1 + fanspeed: + data: + - + oid: NETONIX-SWITCH-MIB::fanTable + value: NETONIX-SWITCH-MIB::fanSpeed + num_oid: '.1.3.6.1.4.1.46242.2.1.2.{{ $index }}' + index: '{{ $index }}' + descr: 'Fan {{ $index }}' + divisor: 1 + warn_limit: 8000 + high_limit: 9000 + low_warn_limit: 0 + + power: + data: + - + oid: NETONIX-SWITCH-MIB::totalPowerConsumption + num_oid: '.1.3.6.1.4.1.46242.6.{{ $index }}' + index: '0' + descr: 'Total Consumption' + divisor: 10 + current: + data: + - + oid: NETONIX-SWITCH-MIB::dcdcInputCurrent + num_oid: '.1.3.6.1.4.1.46242.7.{{ $index }}' + index: '0' + descr: 'DC Input Current' + divisor: 10 diff --git a/priv/profiles/os_discovery/netscaler-sdwan.yaml b/priv/profiles/os_discovery/netscaler-sdwan.yaml new file mode 100644 index 00000000..1b3063a2 --- /dev/null +++ b/priv/profiles/os_discovery/netscaler-sdwan.yaml @@ -0,0 +1,33 @@ +mib: CITRIX-NetScaler-SD-WAN-MIB +modules: + os: + hardware: CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceName + serial: CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceSerialNumber + version: + - CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceOSVersion + - CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceSoftwareVersion + version_template: 'OS: {{ CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceOSVersion }}, SW: {{ CITRIX-NetScaler-SD-WAN-MIB::sdWANStatsApplianceSoftwareVersion }}' + sensors: + state: + data: + - + oid: sdWANStatsApplianceHAState + num_oid: '.1.3.6.1.4.1.3845.31.4.2.2.12.1.9{{ $noindex }}' + index: 'sdWANStatsApplianceHAState' + descr: HA State + state_name: sdWANStatsApplianceHAState + states: + - { value: 0, generic: 3, graph: 1, descr: undefined } + - { value: 1, generic: 0, graph: 1, descr: notConfigured } + - { value: 2, generic: 0, graph: 1, descr: active } + - { value: 3, generic: 0, graph: 1, descr: standby } + - + oid: sdWANStatsApplianceState + num_oid: '.1.3.6.1.4.1.3845.31.4.2.2.12.1.8{{ $noindex }}' + index: 'sdWANStatsApplianceState' + descr: State + state_name: sdWANStatsApplianceState + states: + - { value: 0, generic: 3, graph: 1, descr: undefined } + - { value: 1, generic: 1, graph: 1, descr: disabled } + - { value: 2, generic: 0, graph: 1, descr: enabled } diff --git a/priv/profiles/os_discovery/netscaler.yaml b/priv/profiles/os_discovery/netscaler.yaml new file mode 100644 index 00000000..7d4360fa --- /dev/null +++ b/priv/profiles/os_discovery/netscaler.yaml @@ -0,0 +1,96 @@ +mib: NS-ROOT-MIB +modules: + mempools: + data: + - + total: NS-ROOT-MIB::memSizeMB + percent_used: NS-ROOT-MIB::resMemUsage + precision: 1048576 + os: + hardware: NS-ROOT-MIB::sysHardwareVersionDesc.0 + serial: NS-ROOT-MIB::sysHardwareSerialNumber.0 + version: NS-ROOT-MIB::sysBuildVersion.0 + version_regex: '/NetScaler (?[^:]+): (?[^,]+),/' + processors: + data: + - + oid: nsCPUTable + value: nsCPUusage + num_oid: '.1.3.6.1.4.1.5951.4.1.1.41.6.1.2.{{ $index }}' + index: nsCPUname + descr: nsCPUname + sensors: + state: + data: + - + oid: haCurStatus + num_oid: '.1.3.6.1.4.1.5951.4.1.1.23.23.{{ $index }}' + index: 'haCurStatus.{{ $index }}' + descr: Configured for HA + state_name: haCurStatus + states: + - { value: 0, generic: 0, graph: 1, descr: no } + - { value: 1, generic: 0, graph: 1, descr: yes } + - + oid: sysHighAvailabilityMode + num_oid: '.1.3.6.1.4.1.5951.4.1.1.6.{{ $index }}' + index: 'sysHighAvailabilityMode.{{ $index }}' + descr: Current HA mode + state_name: sysHighAvailabilityMode + states: + - { value: 0, generic: 0, graph: 1, descr: standalone } + - { value: 1, generic: 0, graph: 1, descr: primary } + - { value: 2, generic: 0, graph: 1, descr: secondary } + - { value: 3, generic: 3, graph: 1, descr: unknown } + - + oid: haCurState + num_oid: '.1.3.6.1.4.1.5951.4.1.1.23.24.{{ $index }}' + index: 'haCurState.{{ $index }}' + descr: Current HA state + state_name: haCurState + states: + - { value: 0, generic: 3, graph: 1, descr: UNKNOWN } + - { value: 1, generic: 1, graph: 1, descr: INIT } + - { value: 2, generic: 2, graph: 1, descr: DOWN } + - { value: 3, generic: 0, graph: 1, descr: UP } + - { value: 4, generic: 2, graph: 1, descr: PARTIALFAIL } + - { value: 5, generic: 2, graph: 1, descr: MONITORFAIL } + - { value: 6, generic: 0, graph: 1, descr: MONITOROK } + - { value: 7, generic: 2, graph: 1, descr: COMPLETEFAIL } + - { value: 8, generic: 1, graph: 1, descr: DUMB } + - { value: 9, generic: 1, graph: 1, descr: DISABLED } + - { value: 10, generic: 2, graph: 1, descr: PARTIALFAILSSL } + - { value: 11, generic: 2, graph: 1, descr: ROUTEMONITORFAIL } + - + oid: haPeerState + num_oid: '.1.3.6.1.4.1.5951.4.1.1.23.3.{{ $index }}' + index: 'haPeerState.{{ $index }}' + descr: Peer HA mode + state_name: haPeerState + states: + - { value: 0, generic: 3, graph: 1, descr: standalone } + - { value: 1, generic: 0, graph: 1, descr: primary } + - { value: 2, generic: 0, graph: 1, descr: secondary } + - { value: 3, generic: 3, graph: 1, descr: unknown } + count: + data: + - + oid: sslTotTransactionsRate + num_oid: '.1.3.6.1.4.1.5951.4.1.1.47.333.{{ $index }}' + index: 'sslTotTransactionsRate.{{ $index }}' + descr: SSL Total Transactions Rate + - + oid: httpTotRequestsRate + num_oid: '.1.3.6.1.4.1.5951.4.1.1.48.76.{{ $index }}' + index: 'httpTotRequestsRate.{{ $index }}' + descr: HTTP Total Requests Rate + - + oid: tcpCurClientConnEstablished + num_oid: '.1.3.6.1.4.1.5951.4.1.1.46.12.{{ $index }}' + index: 'tcpCurClientConnEstablished.{{ $index }}' + descr: Current TCP Client Connections Established + - + oid: tcpCurServerConnEstablished + num_oid: '.1.3.6.1.4.1.5951.4.1.1.46.10.{{ $index }}' + index: 'tcpCurServerConnEstablished.{{ $index }}' + descr: Current TCP Server Connections Established diff --git a/priv/profiles/os_discovery/netspire.yaml b/priv/profiles/os_discovery/netspire.yaml new file mode 100644 index 00000000..229f614b --- /dev/null +++ b/priv/profiles/os_discovery/netspire.yaml @@ -0,0 +1,24 @@ +mib: OACOMMON-MIB +modules: + mempools: + data: + - + percent_used: OACOMMON-MIB::netSpireDeviceStorageUsed + descr: 'Storage' + os: + hardware: OACOMMON-MIB::netspireDeviceModelName.0 + serial: OACOMMON-MIB::netSpireDeviceDeviceSerialNo.0 + processors: + data: + - + oid: netSpireDeviceCPULoad + num_oid: '.1.3.6.1.4.1.1732.2.1.9.{{ $index }}' + type: netspire + sensors: + temperature: + data: + - + oid: netSpireDeviceSystemTemperature + num_oid: '.1.3.6.1.4.1.1732.2.1.10.{{ $index }}' + descr: 'System Temperature' + diff --git a/priv/profiles/os_discovery/netsure.yaml b/priv/profiles/os_discovery/netsure.yaml new file mode 100644 index 00000000..48680a9f --- /dev/null +++ b/priv/profiles/os_discovery/netsure.yaml @@ -0,0 +1,64 @@ +mib: VEC-MIBv5-9 +modules: + sensors: + state: + data: + - + oid: psHighestSeverityLevel + num_oid: '.1.3.6.1.4.1.885.3.2.1.10.{{ $index }}' + descr: 'System Status' + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: minor, graph: 1, value: 1, generic: 1 } + - { descr: major, graph: 1, value: 2, generic: 2 } + voltage: + data: + - + oid: psSenseVoltage + num_oid: '.1.3.6.1.4.1.885.3.2.1.5.{{ $index }}' + index: 'psSenseVoltage.{{ $index }}' + descr: 'Sense DC Voltage' + low_limit: 45.0 + low_warn_limit: 50.0 + warn_limit: 56.5 + high_limit: 58.0 + - + oid: psSystemVoltage + num_oid: '.1.3.6.1.4.1.885.3.2.1.1.{{ $index }}' + index: 'psSystemVoltage.{{ $index }}' + descr: 'System DC Voltage' + low_limit: 45.0 + low_warn_limit: 50.0 + warn_limit: 56.5 + high_limit: 58.0 + current: + data: + - + oid: psSystemCurrent + num_oid: '.1.3.6.1.4.1.885.3.2.1.2.{{ $index }}' + index: 'psSystemCurrent.{{ $index }}' + descr: 'System Current' + - + oid: psPCUTotalCurrent + num_oid: '.1.3.6.1.4.1.885.3.2.1.6.{{ $index }}' + index: 'psPCUTotalCurrent.{{ $index }}' + descr: 'Total PCU Current' + user_func: string_to_float + - + oid: psBatteryCurrent + num_oid: '.1.3.6.1.4.1.885.3.2.1.7.{{ $index }}' + index: 'psBatteryCurrent.{{ $index }}' + descr: 'Total Battery Current' + user_func: string_to_float + - + oid: psDistributionTable + num_oid: '.1.3.6.1.4.1.885.3.2.4.1.2.{{ $index }}' + value: psShuntCurrent + index: 'psShuntCurrent.{{ $index }}' + descr: 'Shunt Current #{{ $index }}' + user_func: string_to_float + - + oid: psPCUCurrent + num_oid: '.1.3.6.1.4.1.885.3.2.5.1.3.{{ $index }}' + index: 'psPCUCurrent.{{ $index }}' + descr: 'PCU Current #{{ $index }}' diff --git a/priv/profiles/os_discovery/netvision-rfc.yaml b/priv/profiles/os_discovery/netvision-rfc.yaml new file mode 100644 index 00000000..aefa94bc --- /dev/null +++ b/priv/profiles/os_discovery/netvision-rfc.yaml @@ -0,0 +1,15 @@ +mib: SOCOMECUPS-MIB +modules: + os: + hardware: + - SOCOMECPDU-MIB::dpduIdentModel.0 + - SOCOMECUPS-MIB::upsIdentModel.0 + serial: + - SOCOMECPDU-MIB::dpduIdentSerialNumber.0 + - SOCOMECUPS-MIB::upsIdentSerialNumber.0 + version: + - SOCOMECPDU-MIB::dpduIdentPDUFirmwareVersion.0 + - SOCOMECPDU-MIB::dpduIdentAgentSoftwareVersion.0 + - SOCOMECUPS-MIB::upsIdentAgentSoftwareVersion.0 + - UPS-MIB::upsIdentAgentSoftwareVersion.0 + version_regex: '/v(?[\d.]+)/' diff --git a/priv/profiles/os_discovery/nexans.yaml b/priv/profiles/os_discovery/nexans.yaml new file mode 100644 index 00000000..5dab9b27 --- /dev/null +++ b/priv/profiles/os_discovery/nexans.yaml @@ -0,0 +1,37 @@ +mib: NEXANS-BM-MIB:NEXANS-MIB +modules: + os: + hardware: NEXANS-BM-MIB::infoDescr.0 + version: NEXANS-BM-MIB::infoMgmtFirmwareVersion.0 + sensors: + temperature: + data: + - + oid: bmSwitchInfo + value: infoTemperature + num_oid: '.1.3.6.1.4.1.266.20.1.12.{{ $index }}' + index: 'infoTemperature.{{ $index }}' + high_limit: infoTemperatureMaxAllowed + descr: 'Unit Temperature' + voltage: + data: + - + oid: bmSwitchInfo + value: infoPoeInputVoltage + num_oid: '.1.3.6.1.4.1.266.20.1.19.{{ $index }}' + index: 'infoPoeInputVoltage.{{ $index }}' + descr: 'PoeInputVoltage' + - + oid: bmSwitchInfo + value: infoPowerVoltage2500 + num_oid: '.1.3.6.1.4.1.266.20.1.14.{{ $index }}' + index: 'infoPowerVoltage2500.{{ $index }}' + descr: '2.5V input' + divisor: 1000 + - + oid: bmSwitchInfo + value: infoPowerVoltage3300 + num_oid: '.1.3.6.1.4.1.266.20.1.15.{{ $index }}' + index: 'infoPowerVoltage3300.{{ $index }}' + descr: '3.3V input' + divisor: 1000 diff --git a/priv/profiles/os_discovery/nimbleos.yaml b/priv/profiles/os_discovery/nimbleos.yaml new file mode 100644 index 00000000..4b378cf2 --- /dev/null +++ b/priv/profiles/os_discovery/nimbleos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/version (?.*)/' diff --git a/priv/profiles/os_discovery/nios.yaml b/priv/profiles/os_discovery/nios.yaml new file mode 100644 index 00000000..836ab20b --- /dev/null +++ b/priv/profiles/os_discovery/nios.yaml @@ -0,0 +1,43 @@ +mib: IB-PLATFORMONE-MIB +modules: + os: + hardware: IB-PLATFORMONE-MIB::ibHardwareType.0 + version: IB-PLATFORMONE-MIB::ibNiosVersion.0 + serial: IB-PLATFORMONE-MIB::ibSerialNumber.0 + sensors: + additional_oids: + data: + - + oid: + - IB-PLATFORMONE-MIB::ibServiceName + snmp_flags: ['-OQUSb'] + + state: + data: + - + oid: ibGridStatus + num_oid: '.1.3.6.1.4.1.7779.3.1.1.2.1.12.{{ $index }}' + index: 'ibGridStatus.{{ $index }}' + descr: Grid Status + states: + - { value: 1, generic: 0, graph: 1, descr: ID Grid Master } + - { value: 2, generic: 0, graph: 1, descr: ID Grid Member} + - + oid: ibHaStatus + num_oid: '.1.3.6.1.4.1.7779.3.1.1.2.1.13.{{ $index }}' + index: 'ibHaStatus.{{ $index }}' + descr: HA Status + states: + - { value: 1, generic: 0, graph: 1, descr: Active } + - { value: 2, generic: 0, graph: 1, descr: Passive } + - + oid: ibServiceStatus + num_oid: '.1.3.6.1.4.1.7779.3.1.1.2.1.9.1.2.{{ $index }}' + index: 'ibServiceStatus.{{ $index }}' + descr: '{{ IB-PLATFORMONE-MIB::ibServiceName }} Status' + states: + - { value: 1, generic: 0, graph: 0, descr: Working } + - { value: 2, generic: 1, graph: 0, descr: Warning } + - { value: 3, generic: 2, graph: 0, descr: Failed } + - { value: 4, generic: 2, graph: 0, descr: Inactive } + - { value: 5, generic: 3, graph: 0, descr: Unknown } diff --git a/priv/profiles/os_discovery/nitro.yaml b/priv/profiles/os_discovery/nitro.yaml new file mode 100644 index 00000000..1aada6b8 --- /dev/null +++ b/priv/profiles/os_discovery/nitro.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/^McAfee [A-Z]{3} (?[^,]+)$/' diff --git a/priv/profiles/os_discovery/nokia-1830.yaml b/priv/profiles/os_discovery/nokia-1830.yaml new file mode 100644 index 00000000..a1b90875 --- /dev/null +++ b/priv/profiles/os_discovery/nokia-1830.yaml @@ -0,0 +1,282 @@ +mib: TROPIC-SYSTEM-MIB:TROPIC-GLOBAL-REG:TROPIC-SOFTWARE-MIB:TROPIC-TC:TROPIC-CARD-MIB:TROPIC-CONTROLCARD-MIB:TROPIC-ALARMPANEL-MIB:TROPIC-FAN-MIB:TROPIC-OPTICALPORT-MIB:TROPIC-ACCESSPORT-MIB:TROPIC-AMPLIFIER-MIB:TROPIC-OCH-MIB:TROPIC-PSD-MIB:IF-MIB +modules: + os: + hardware: + - TROPIC-SHELF-MIB::tnShelfRiMnemonic.1 + - TROPIC-PSD-MIB::tnPsdCardMnemonic.1.1 + location: TROPIC-SYSTEM-MIB::tnSysDescr.0 + serial: + - TROPIC-SHELF-MIB::tnShelfSerialNum.1 + - TROPIC-SHELF-MIB::tnShelfSerialNumber.1 + - TROPIC-SHELF-MIB::tnShelfRiSerialNumber.1 + - TROPIC-PSD-MIB::tnPsdCardSerialNumber.1.1 + version: + - TROPIC-SOFTWARE-MIB::tnSwNodeCommittedRelease.0 + sensors: + temperature: + data: + - oid: TROPIC-CARD-MIB::tnCardTable + value: TROPIC-CARD-MIB::tnCardTemperature + group: Cards + num_oid: ".1.3.6.1.4.1.7483.2.2.3.1.2.1.2.1.13.{{ $index }}" + descr: "Shelf {{ $subindex0 }} Slot {{ $subindex1 }} ({{ TROPIC-CARD-MIB::tnCardMnemonic }})" + index: "tnCardTemperature.{{ $index }}" + high_limit: TROPIC-CARD-MIB::tnCardHighTemperatureThresh + low_limit: TROPIC-CARD-MIB::tnCardLowTemperatureThresh + - oid: TROPIC-OPTICALPORT-MIB::tnOscSfpPortConfigTable + value: TROPIC-OPTICALPORT-MIB::tnOscSfpTemperature + group: transceiver + descr: "{{ IF-MIB::ifName }} Temperature" + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.4.76.1.2.{{ $index }}" + index: "tnOscSfpTemperature.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnOtPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnOtPortTemperature + group: transceiver + descr: "{{ IF-MIB::ifName }} Temperature" + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.71.1.4.{{ $index }}" + index: "tnOtPortTemperature.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + state: + data: + - oid: TROPIC-OCH-MIB::tnOchXcItuTable + value: TROPIC-OCH-MIB::tnOchXcItuOperState + group: Optical Trails (OCH) + num_oid: ".1.3.6.1.4.1.7483.2.2.4.5.2.1.3.1.14.{{ $index }}" + descr: "{{ TROPIC-OCH-MIB::tnOchXcItuName }}" + index: "tnOchXcItuOperState.{{ $index }}" + state_name: TropicOchXcOperStateType + states: + - { value: 1, generic: 0, graph: 0, descr: up } + - { value: 2, generic: 2, graph: 0, descr: down } + - { value: 3, generic: 3, graph: 0, descr: unknown } + - oid: TROPIC-CARD-MIB::tnCardTable + value: TROPIC-CARD-MIB::tnCardStatusLEDColor + group: Cards + num_oid: ".1.3.6.1.4.1.7483.2.2.3.1.2.1.2.1.17.{{ $index }}" + descr: "Shelf {{ $subindex0 }} Slot {{ $subindex1 }} ({{ TROPIC-CARD-MIB::tnCardMnemonic }})" + index: "tnCardTable.{{ $index }}" + state_name: tnCardStatusLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 3, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + - oid: TROPIC-CONTROLCARD-MIB::tnControlCardTable + group: Controllers + value: TROPIC-CONTROLCARD-MIB::tnControlCardActivityState + num_oid: ".1.3.6.1.4.1.7483.2.2.3.3.2.2.1.1.{{ $index }}" + descr: "Shelf {{ $subindex0 }} (Slot {{ $subindex1 }})" + index: "tnControlCardActivityState.{{ $index }}" + state_name: tnControlCardActivityState + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: active } + - { value: 3, generic: 0, graph: 0, descr: inactive } + - { value: 4, generic: 1, graph: 0, descr: unequipped } + - oid: TROPIC-FAN-MIB::tnFanUnitTable + value: TROPIC-FAN-MIB::tnFanUnitStatusLEDColor + group: Fans + num_oid: ".1.3.6.1.4.1.7483.2.2.5.1.2.1.2.1.11.{{ $index }}" + descr: "Shelf {{ $subindex0 }} - Fan (Slot {{ $subindex1 }})" + index: "tnFanUnitStatusLEDColor.{{ $index }}" + state_name: tnFanUnitStatusLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 3, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + - oid: TROPIC-ALARMPANEL-MIB::tnUserInterfacePanelNodeCriticalLEDColor + group: Alarms + num_oid: ".1.3.6.1.4.1.7483.2.2.5.3.2.1.3.1.10.{{ $index }}" + descr: "Node Critical" + state_name: tnUserInterfacePanelNodeCriticalLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + - oid: TROPIC-ALARMPANEL-MIB::tnUserInterfacePanelNodeMajorLEDColor + group: Alarms + num_oid: ".1.3.6.1.4.1.7483.2.2.5.3.2.1.3.1.12.{{ $index }}" + descr: "Node Major" + state_name: tnUserInterfacePanelNodeMajorLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + - oid: TROPIC-ALARMPANEL-MIB::tnUserInterfacePanelNodeMinorLEDColor + group: Alarms + num_oid: ".1.3.6.1.4.1.7483.2.2.5.3.2.1.3.1.14.{{ $index }}" + descr: "Node Minor" + state_name: tnUserInterfacePanelNodeMinorLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + - oid: TROPIC-ALARMPANEL-MIB::tnUserInterfacePanelNodeWarningLEDColor + group: Alarms + num_oid: ".1.3.6.1.4.1.7483.2.2.5.3.2.1.3.1.19.{{ $index }}" + descr: "Node Warning" + state_name: tnUserInterfacePanelNodeWarningLEDColor + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: off } + - { value: 3, generic: 2, graph: 0, descr: red } + - { value: 4, generic: 0, graph: 0, descr: green } + - { value: 5, generic: 1, graph: 0, descr: orange } + - { value: 6, generic: 3, graph: 0, descr: blue } + dbm: + data: + - oid: TROPIC-AMPLIFIER-MIB::tnAmplifierPortInfoTable + value: TROPIC-AMPLIFIER-MIB::tnAmplifierPortPowerIn + num_oid: ".1.3.6.1.4.1.7483.2.2.3.7.5.2.1.2.{{ $index }}" + group: 'Amplifier Power' + descr: "{{ IF-MIB::ifName }} Power Rx" + index: "tnAmplifierPortPowerIn.{{ $index }}" + divisor: 100 + - oid: TROPIC-AMPLIFIER-MIB::tnAmplifierPortInfoTable + value: TROPIC-AMPLIFIER-MIB::tnAmplifierPortPowerOut + num_oid: ".1.3.6.1.4.1.7483.2.2.3.7.5.2.1.3.{{ $index }}" + group: 'Amplifier Power' + descr: "{{ IF-MIB::ifName }} Power Tx" + index: "tnAmplifierPortPowerOut.{{ $index }}" + divisor: 100 + - oid: TROPIC-AMPLIFIER-MIB::tnAmplifierPortInfoTable + value: TROPIC-AMPLIFIER-MIB::tnAmplifierPortOSCTxPowerIn + num_oid: ".1.3.6.1.4.1.7483.2.2.3.7.5.2.1.10.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC Tx In" + index: "tnAmplifierPortOSCTxPowerIn.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-AMPLIFIER-MIB::tnAmplifierPortInfoTable + value: TROPIC-AMPLIFIER-MIB::tnAmplifierPortOSCTxPowerOut + num_oid: ".1.3.6.1.4.1.7483.2.2.3.7.5.2.1.11.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC Tx Out" + index: "tnAmplifierPortOSCTxPowerOut.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoOSCTxPowerIn + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.308.1.19.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC Tx In" + index: "tnIroadmPortInfoOSCTxPowerIn.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoOSCTxPowerOut + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.308.1.20.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC Tx Out" + index: "tnIroadmPortInfoOSCTxPowerOut.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoOSCRxPowerIn + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.308.1.21.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC Rx In" + index: "tnIroadmPortInfoOSCRxPowerIn.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoOSCSfpTxPowerOut + num_oid: ".1.3.6.1.4.1.7483.2.2.3.7.5.2.1.22.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC SFP Tx Out" + index: "tnIroadmPortInfoOSCSfpTxPowerOut.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnIroadmPortInfoOSCSfpRxPowerIn + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.308.1.23.{{ $index }}" + descr: "{{ IF-MIB::ifName }} OSC SFP Rx In" + index: "tnIroadmPortInfoOSCSfpRxPowerIn.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 100 + - oid: TROPIC-OPTICALPORT-MIB::tnOtPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnOtPortRxPower + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.71.1.1.{{ $index }}" + descr: "{{ IF-MIB::ifName }} RX Power" + index: "tnOtPortRxPower.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 1000 + - oid: TROPIC-OPTICALPORT-MIB::tnOtPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnOtPortTxPower + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.71.1.2.{{ $index }}" + descr: "{{ IF-MIB::ifName }} TX Power" + index: "tnOtPortTxPower.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 1000 + + power: + data: + - oid: TROPIC-CARD-MIB::tnCardTable + value: TROPIC-CARD-MIB::tnCardPower + num_oid: ".1.3.6.1.4.1.7483.2.2.3.1.2.1.2.1.38.{{ $index }}" + descr: "{{ TROPIC-CARD-MIB::tnCardName }} - {{ TROPIC-CARD-MIB::tnCardMnemonic }}" + index: "tnCardTable.{{ $index }}" + divisor: 1000 + - oid: TROPIC-PSD-MIB::tnPsdShelfEntry + value: TROPIC-PSD-MIB::tnPsdShelfRealTimePower + num_oid: ".1.3.6.1.4.1.7483.2.2.7.2.1.1.1.8.{{ $index }}" + descr: "{{ TROPIC-PSD-MIB::tnPsdShelfName }} - {{ TROPIC-PSD-MIB::tnPsdShelfDescr }}" + index: "tnCardTable.{{ $index }}" + divisor: 10 + current: + data: + - oid: TROPIC-CARD-MIB::tnCardTable + value: TROPIC-CARD-MIB::tnCardCurrent + num_oid: ".1.3.6.1.4.1.7483.2.2.3.1.2.1.2.1.39.{{ $index }}" + descr: "{{ TROPIC-CARD-MIB::tnCardName }} - {{ TROPIC-CARD-MIB::tnCardMnemonic }}" + index: "tnCardTable.{{ $index }}" + divisor: 1000 + - oid: TROPIC-OPTICALPORT-MIB::tnOtPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnOtPortBias + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.71.1.3.{{ $index }}" + descr: "{{ IF-MIB::ifName }} Tx Bias" + index: "tnOtPortBias.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + voltage: + data: + - oid: TROPIC-OPTICALPORT-MIB::tnOtPortInfoTable + value: TROPIC-OPTICALPORT-MIB::tnOtPortSupplyVoltage + num_oid: ".1.3.6.1.4.1.7483.2.2.4.3.5.71.1.12.{{ $index }}" + descr: "{{ IF-MIB::ifName }} Voltage" + index: "tnOtPortSupplyVoltage.{{ $index }}" + group: transceiver + entPhysicalIndex: "{{ $index }}" + entPhysicalIndex_measured: ports + divisor: 1000 diff --git a/priv/profiles/os_discovery/nokia-isam.yaml b/priv/profiles/os_discovery/nokia-isam.yaml new file mode 100644 index 00000000..e287e2be --- /dev/null +++ b/priv/profiles/os_discovery/nokia-isam.yaml @@ -0,0 +1,65 @@ +modules: + mempools: + additional_oids: + oids: + - ASAM-EQUIP-MIB::eqptBoardTable + data: + - + total: ASAM-SYSTEM-MIB::totalMemSize + used: ASAM-SYSTEM-MIB::memAbsoluteUsage + precision: 1048576 + descr: '{{ ASAM-EQUIP-MIB::eqptBoardInventoryTypeName }}: {{ ASAM-EQUIP-MIB::eqptBoardIfSlotId }} Memory ({{ $index }})' + warn_percent: 98 + os: + hardware: ASAM-EQUIP-MIB::eqptHolderActualType.17 + serial: ASAM-EQUIP-MIB::eqptHolderSerialNumber.17 + version: ASAM-SYSTEM-MIB::swEtsiVersion.0 + processors: + data: + - + oid: ASAM-SYSTEM-MIB::cpuLoadTable + value: cpuLoadAverage + num_oid: '.1.3.6.1.4.1.637.61.1.9.29.1.1.4.{{ $index }}' + descr: CPU {{ $index }} + + sensors: + state: + data: + - + oid: ASAM-EQUIP-MIB::eqptFanMode + num_oid: '.1.3.6.1.4.1.637.61.1.23.1.9.{{ $index }}' + descr: Fan Mode + group: 'Hardware' + state_name: fanMode + states: + - { value: 0, generic: 0, graph: 0, descr: 'default' } + - { value: 1, generic: 1, graph: 0, descr: 'eco' } + - { value: 2, generic: 0, graph: 0, descr: 'protect' } + - { value: 3, generic: 0, graph: 0, descr: 'classic' } + - + oid: ASAM-ALARM-MIB::asamNumberofAlarmEntries + num_oid: '.1.3.6.1.4.1.637.61.1.3.4.{{ $index }}' + descr: 'Alarm: Current Count' + group: 'Alarms' + state_name: alarmCount + states: + - { value: 0, generic: 0, graph: 0, descr: '0' } + - { value: 1, generic: 1, graph: 0, descr: '1' } + - { value: 2, generic: 1, graph: 0, descr: '2' } + - { value: 3, generic: 2, graph: 0, descr: '3' } + - { value: 4, generic: 2, graph: 0, descr: '4' } + - { value: 5, generic: 2, graph: 0, descr: '5' } + - { value: 6, generic: 2, graph: 0, descr: '6' } + - + oid: ASAM-ALARM-MIB::asamCurrentAlarmSeverityStatus + num_oid: '.1.3.6.1.4.1.637.61.1.3.5.{{ $index }}' + descr: 'Alarm: Current Status' + group: 'Alarms' + state_name: alarmCurrentSeverityStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'NoDefect' } + - { value: 2, generic: 3, graph: 0, descr: 'Indeterminate' } + - { value: 4, generic: 1, graph: 0, descr: 'Warning' } + - { value: 8, generic: 1, graph: 0, descr: 'Minor' } + - { value: 16, generic: 2, graph: 0, descr: 'Major' } + - { value: 32, generic: 2, graph: 0, descr: 'Critical' } diff --git a/priv/profiles/os_discovery/nos.yaml b/priv/profiles/os_discovery/nos.yaml new file mode 100644 index 00000000..63a0d8c7 --- /dev/null +++ b/priv/profiles/os_discovery/nos.yaml @@ -0,0 +1,16 @@ +mib: SW-MIB +modules: + os: + hardware: ENTITY-MIB::entPhysicalDescr.1 + version: SYSTEM-MIB::swFirmwareVersion.0 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + mempools: + data: + - + percent_used: .1.3.6.1.4.1.1588.2.1.1.1.26.6.0 + processors: + data: + - + oid: swCpuUsage + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.26.1.{{ $index }}' + descr: CPU diff --git a/priv/profiles/os_discovery/nrg.yaml b/priv/profiles/os_discovery/nrg.yaml new file mode 100644 index 00000000..d48f7e6f --- /dev/null +++ b/priv/profiles/os_discovery/nrg.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: .1.3.6.1.4.1.367.3.2.1.2.1.4.0 + sysDescr_regex: '/NRG (?.*) (?[\d.]+)/' diff --git a/priv/profiles/os_discovery/ns-bsd.yaml b/priv/profiles/os_discovery/ns-bsd.yaml new file mode 100644 index 00000000..e7cc8717 --- /dev/null +++ b/priv/profiles/os_discovery/ns-bsd.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: STORMSHIELD-PROPERTY-MIB::snsModel.0 + version: STORMSHIELD-PROPERTY-MIB::snsVersion.0 + serial: STORMSHIELD-PROPERTY-MIB::snsSerialNumber.0 + sysName: STORMSHIELD-PROPERTY-MIB::snsSystemName.0 diff --git a/priv/profiles/os_discovery/nti.yaml b/priv/profiles/os_discovery/nti.yaml new file mode 100644 index 00000000..c2f694b1 --- /dev/null +++ b/priv/profiles/os_discovery/nti.yaml @@ -0,0 +1,90 @@ +mib: ENVIROMUX-1W-MIB:ENVIROMUXMICRO-MIB +modules: + sensors: + temperature: + data: + - + oid: ENVIROMUXMICRO-MIB::intSensorEntry + value: ENVIROMUXMICRO-MIB::intSensorValue + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.1.1.1.4.{{ $index }}' + descr: '{{ $ENVIROMUXMICRO-MIB::intSensorDescription }}' + index: 'intSensorEntry.{{ $index }}' + divisor: 10 + group: Internal + skip_values: + - + oid: ENVIROMUXMICRO-MIB::intSensorType + op: '!=' + value: 1 + - + oid: extSensorTable + value: extSensorValue + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.2.1.1.4.{{ $index }}' + index: 'extSensorValue.{{ $index }}' + descr: "{{ $extSensorDescription }}" + divisor: 10 + skip_values: + - + oid: extSensorType + op: 'not_in_array' + value: ['1', '24'] + humidity: + data: + - + oid: ENVIROMUXMICRO-MIB::intSensorEntry + value: ENVIROMUXMICRO-MIB::intSensorValue + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.1.1.1.4.{{ $index }}' + descr: '{{ $ENVIROMUXMICRO-MIB::intSensorDescription }}' + index: 'intSensorEntry.{{ $index }}' + divisor: 10 + group: Internal + skip_values: + - + oid: ENVIROMUXMICRO-MIB::intSensorType + op: '!=' + value: 2 + - + oid: extSensorTable + value: extSensorValue + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.2.1.1.4.{{ $index }}' + index: 'extSensorValue.{{ $index }}' + descr: "{{ $extSensorDescription }}" + divisor: 10 + skip_values: + - + oid: extSensorType + op: 'not_in_array' + value: ['2'] + state: + data: + - + oid: digInputEntry + value: digInputValue + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.3.1.1.3.{{ $index }}' + descr: '{{ $digInputDescription }}' + state_name: DigitalInputs + group: Inputs + states: + - { descr: closed, graph: 1, value: 0, generic: 0 } + - { descr: open, graph: 1, value: 1, generic: 1 } + - + oid: alertEntry + value: alertStatus + num_oid: '.1.3.6.1.4.1.3699.1.1.12.1.5.1.1.7.{{ $index }}' + descr: '{{ $alertSensor }}#{{ $index }}' + group: Alerts + state_name: alertStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: enterinCritical, graph: 1, value: 1, generic: 1 } + - { descr: Critical, graph: 1, value: 2, generic: 2 } + - { descr: exitingCritical, graph: 1, value: 3, generic: 1 } + - { descr: waitingAckDismiss, graph: 1, value: 4, generic: 1 } + - { descr: acknowledged, graph: 1, value: 5, generic: 1 } + - { descr: dismissed, graph: 1, value: 6, generic: 1 } + - { descr: disconnected, graph: 1, value: 7, generic: 3 } + skip_values: + - + oid: alertEnabled + op: '=' + value: 0 diff --git a/priv/profiles/os_discovery/nutanix-aos.yaml b/priv/profiles/os_discovery/nutanix-aos.yaml new file mode 100644 index 00000000..981411eb --- /dev/null +++ b/priv/profiles/os_discovery/nutanix-aos.yaml @@ -0,0 +1,40 @@ +mib: NUTANIX-MIB +modules: + sensors: + state: + data: + - + oid: diskStatusTable + value: dstState + num_oid: '.1.3.6.1.4.1.41263.3.1.13.{{ $index }}' + index: 'DISKSTATE-{{ $dstDiskId }}' + descr: 'Disk {{ $dstDiskId }}' + states: + - { descr: ok , graph: 0, value: 1, generic: 0 } + - { descr: error , graph: 0, value: 2, generic: 1 } + count: + data: + - + oid: hypervisorInformationTable + value: hypervisorVmCount + num_oid: '.1.3.6.1.4.1.41263.9.1.4.{{ $index }}' + descr: '{{ $hypervisorName }} VM Count' + index: 'VMS-{{ $hypervisorName }}' + percent: + data: + - + oid: hypervisorInformationTable + value: hypervisorMemoryUsagePercent + num_oid: '.1.3.6.1.4.1.41263.9.1.8.{{ $index }}' + descr: '{{ $hypervisorName }} RAM' + index: 'RAM-{{ $hypervisorName }}' + warn_limit: 90 + high_limit: 95 + - + oid: hypervisorInformationTable + value: hypervisorCpuUsagePercent + num_oid: '.1.3.6.1.4.1.41263.9.1.6.{{ $index }}' + descr: '{{ $hypervisorName }} CPU' + index: 'CPU-{{ $hypervisorName }}' + warn_limit: 90 + high_limit: 95 diff --git a/priv/profiles/os_discovery/nxos.yaml b/priv/profiles/os_discovery/nxos.yaml new file mode 100644 index 00000000..5e4ee837 --- /dev/null +++ b/priv/profiles/os_discovery/nxos.yaml @@ -0,0 +1,7 @@ +modules: + os: + version: + 'ENTITY-MIB::entPhysicalSoftwareRev.22' + 'ENTITY-MIB::entPhysicalSoftwareRev.24' + hardware: 'ENTITY-MIB::entPhysicalName.149' + serial: 'ENTITY-MIB::entPhysicalSerialNum.10' diff --git a/priv/profiles/os_discovery/occamos.yaml b/priv/profiles/os_discovery/occamos.yaml new file mode 100644 index 00000000..6e6cdd6b --- /dev/null +++ b/priv/profiles/os_discovery/occamos.yaml @@ -0,0 +1,45 @@ +mib: OCCAM-ENTITY-MIB:OCCAM-SENSOR-MIB +modules: + os: + sysDescr_regex: '/(?.*)/' + serial: + - OCCAM-ENTITY-MIB::entitySerialNum.0 + version: + - OCCAM-ENTITY-MIB::entitySoftwareRev.0 + sensors: + temperature: + data: + - + oid: sensorTable + value: sensorValue + num_oid: '.1.3.6.1.4.1.6066.2.1.3.2.1.1.1.1.4.{{ $index }}' + descr: '{{ $sensorName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: sensorType + op: '!=' + value: '3' + - + oid: sensorScale + op: '!=' + value: '4' + voltage: + data: + - + oid: sensorTable + value: sensorValue + num_oid: '.1.3.6.1.4.1.6066.2.1.3.2.1.1.1.1.4.{{ $index }}' + descr: '{{ $sensorName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: sensorType + op: '!=' + value: '2' + - + oid: sensorScale + op: '!=' + value: '3' diff --git a/priv/profiles/os_discovery/oceanstor.yaml b/priv/profiles/os_discovery/oceanstor.yaml new file mode 100644 index 00000000..f986ebbf --- /dev/null +++ b/priv/profiles/os_discovery/oceanstor.yaml @@ -0,0 +1,133 @@ +mib: ISM-HUAWEI-MIB:ISM-STORAGE-SVC-MIB::HUAWEI-STORAGE-HARDWARE-MIB:HUAWEI-STORAGE-SPACE-MIB +modules: + os: + version: ISM-STORAGE-SVC-MIB::version.0 + serial: ISM-STORAGE-SVC-MIB::deviceId.0 + storage: + data: + - + descr: File System + type: dsk + size: ISM-STORAGE-SVC-MIB::totalCapacity.0 + used: ISM-STORAGE-SVC-MIB::usedCapacity.0 + used_num_oid: '.1.3.6.1.4.1.34774.4.1.1.4.{{ $index }}' + units: 1048576 + sensors: + temperature: + data: + - + oid: hwInfoDiskTable + value: hwInfoDiskTemperature + num_oid: '.1.3.6.1.4.1.34774.4.1.23.5.1.1.11.{{ $index }}' + descr: '{{ $hwInfoDiskLocation }} {{ $hwInfoDiskManufacturer }} {{ $hwInfoDiskModel }}' + index: '{{ $index }}' + group: 'Disks' + state: + data: + - + oid: hwInfoControllerTable + value: hwInfoControllerHealthStatus + num_oid: '.1.3.6.1.4.1.34774.4.1.23.5.2.1.2.{{ $index }}' + descr: '{{ $hwInfoControllerLocation }}' + group: 'Controllers' + state_name: hwInfoControllerHealthStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Fault' } + - { value: 3, generic: 1, graph: 0, descr: 'Pre-fail' } + - { value: 4, generic: 1, graph: 0, descr: 'Partially broken' } + - { value: 5, generic: 2, graph: 0, descr: 'Degraded' } + - { value: 6, generic: 2, graph: 0, descr: 'Bad sectors found' } + - { value: 7, generic: 1, graph: 0, descr: 'Bit sectors found' } + - { value: 8, generic: 1, graph: 0, descr: 'Consistent' } + - { value: 9, generic: 1, graph: 0, descr: 'Inconsistent' } + - { value: 10, generic: 1, graph: 0, descr: 'Busy' } + - { value: 11, generic: 1, graph: 0, descr: 'No input' } + - { value: 12, generic: 1, graph: 0, descr: 'Low battery' } + - { value: 13, generic: 1, graph: 0, descr: 'Single link fault' } + - { value: 14, generic: 1, graph: 0, descr: 'Invalid' } + - { value: 15, generic: 1, graph: 0, descr: 'Write protect' } + - + oid: hwInfoStoragePoolTable + value: hwInfoStoragePoolHealthStatus + num_oid: '.1.3.6.1.4.1.34774.4.1.23.4.2.1.5.{{ $index }}' + descr: '{{ $hwInfoStoragePoolName }}' + group: 'Storage Pools' + state_name: hwInfoStoragePoolHealthStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Fault' } + - { value: 3, generic: 1, graph: 0, descr: 'Pre-fail' } + - { value: 4, generic: 1, graph: 0, descr: 'Partially broken' } + - { value: 5, generic: 2, graph: 0, descr: 'Degraded' } + - { value: 6, generic: 2, graph: 0, descr: 'Bad sectors found' } + - { value: 7, generic: 1, graph: 0, descr: 'Bit sectors found' } + - { value: 8, generic: 1, graph: 0, descr: 'Consistent' } + - { value: 9, generic: 1, graph: 0, descr: 'Inconsistent' } + - { value: 10, generic: 1, graph: 0, descr: 'Busy' } + - { value: 11, generic: 1, graph: 0, descr: 'No input' } + - { value: 12, generic: 1, graph: 0, descr: 'Low battery' } + - { value: 13, generic: 1, graph: 0, descr: 'Single link fault' } + - { value: 14, generic: 1, graph: 0, descr: 'Invalid' } + - { value: 15, generic: 1, graph: 0, descr: 'Write protect' } + - + oid: hwInfoLunTable + value: hwInfoLunHealthStatus + num_oid: '.1.3.6.1.4.1.34774.4.1.23.4.8.1.9.{{ $index }}' + descr: '{{ $hwInfoLunName }}' + group: 'LUNs' + state_name: hwInfoLunHealthStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Fault' } + - { value: 3, generic: 1, graph: 0, descr: 'Pre-fail' } + - { value: 4, generic: 1, graph: 0, descr: 'Partially broken' } + - { value: 5, generic: 2, graph: 0, descr: 'Degraded' } + - { value: 6, generic: 2, graph: 0, descr: 'Bad sectors found' } + - { value: 7, generic: 1, graph: 0, descr: 'Bit sectors found' } + - { value: 8, generic: 1, graph: 0, descr: 'Consistent' } + - { value: 9, generic: 1, graph: 0, descr: 'Inconsistent' } + - { value: 10, generic: 1, graph: 0, descr: 'Busy' } + - { value: 11, generic: 1, graph: 0, descr: 'No input' } + - { value: 12, generic: 1, graph: 0, descr: 'Low battery' } + - { value: 13, generic: 1, graph: 0, descr: 'Single link fault' } + - { value: 14, generic: 1, graph: 0, descr: 'Invalid' } + - { value: 15, generic: 1, graph: 0, descr: 'Write protect' } + - + oid: hwInfoDiskTable + value: hwInfoDiskHealthStatus + num_oid: '.1.3.6.1.4.1.34774.4.1.23.5.1.1.2.{{ $index }}' + descr: '{{ $hwInfoDiskLocation }} {{ $hwInfoDiskManufacturer }} {{ $hwInfoDiskModel }}' + index: '{{ $index }}' + group: 'Disks' + state_name: hwInfoDiskHealthStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'Normal' } + - { value: 2, generic: 2, graph: 0, descr: 'Fault' } + - { value: 3, generic: 1, graph: 0, descr: 'Pre-fail' } + - { value: 4, generic: 1, graph: 0, descr: 'Partially broken' } + - { value: 5, generic: 2, graph: 0, descr: 'Degraded' } + - { value: 6, generic: 2, graph: 0, descr: 'Bad sectors found' } + - { value: 7, generic: 1, graph: 0, descr: 'Bit sectors found' } + - { value: 8, generic: 1, graph: 0, descr: 'Consistent' } + - { value: 9, generic: 1, graph: 0, descr: 'Inconsistent' } + - { value: 10, generic: 1, graph: 0, descr: 'Busy' } + - { value: 11, generic: 1, graph: 0, descr: 'No input' } + - { value: 12, generic: 1, graph: 0, descr: 'Low battery' } + - { value: 13, generic: 1, graph: 0, descr: 'Single link fault' } + - { value: 14, generic: 1, graph: 0, descr: 'Invalid' } + - { value: 15, generic: 1, graph: 0, descr: 'Write protect' } + percent: + data: + - + oid: hwInfoDiskTable + value: hwInfoDiskHealthMark + num_oid: '.1.3.6.1.4.1.34774.4.1.23.5.1.1.25.{{ $index }}' + descr: '{{ $hwInfoDiskLocation }} {{ $hwInfoDiskManufacturer }} {{ $hwInfoDiskModel }}' + index: '{{ $index }}' + group: 'Disk Life Cycle' + skip_values: + - + oid: hwInfoDiskHealthMark + op: '=' + value: 255 diff --git a/priv/profiles/os_discovery/ocnos.yaml b/priv/profiles/os_discovery/ocnos.yaml new file mode 100644 index 00000000..36d41ac7 --- /dev/null +++ b/priv/profiles/os_discovery/ocnos.yaml @@ -0,0 +1,96 @@ +modules: + os: + sysDescr_regex: '/Hardware Model:(?\S+), Software version: OcNOS,(?\S+)/' + hardware: + - IPI-CMM-CHASSIS-MIB::cmmStackUnitModelName.1 + - IPI-CMM-CHASSIS-MIB::cmmStackVendorName.1 + hardware_template: '{{ IPI-CMM-CHASSIS-MIB::cmmStackVendorName.1 }} {{ IPI-CMM-CHASSIS-MIB::cmmStackUnitModelName.1 }}' + serial: IPI-CMM-CHASSIS-MIB::cmmStackUnitSerialNumber.1 + sensors: + current: + data: + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + high_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUpperCritical + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'Amps' + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + op: 'ends' + value: '_IIN' + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'Amps' + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + op: 'not_ends' + value: '_IIN' + fanspeed: + data: + - + oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + low_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorLowerCritical + low_warn_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorLowerNonCritical + high_limit: 100000 + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'RPM' + power: + data: + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + low_limit: 0 + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'Watts' + temperature: + data: + - + oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + warn_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUpperNonCritical + high_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUpperCritical + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'degrees C' + voltage: + data: + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorTable + value: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorValue + divisor: 1000 + descr: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorName + low_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorLowerCritical + high_limit: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUpperCritical + num_oid: '.1.3.6.1.4.1.36673.100.1.5.1.1.3.{{ $index }}' + skip_values: + - -10002 + - oid: IPI-CMM-IPMI-MIB::cmmIpmiDeviceSensorUnits + op: '!=' + value: 'Volts' diff --git a/priv/profiles/os_discovery/okilan.yaml b/priv/profiles/os_discovery/okilan.yaml new file mode 100644 index 00000000..684410b2 --- /dev/null +++ b/priv/profiles/os_discovery/okilan.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/OKI OkiLAN (?\S+ \S+).*Attached to (?\S+) Rev.(?\S+)/' diff --git a/priv/profiles/os_discovery/omnipcx.yaml b/priv/profiles/os_discovery/omnipcx.yaml new file mode 100644 index 00000000..24171d0a --- /dev/null +++ b/priv/profiles/os_discovery/omnipcx.yaml @@ -0,0 +1,53 @@ +mib: ALCATEL-NMC-PROXY-AGENT-MIB:A4400-RTM-MIB:A4400-CPU-MIB +modules: + sensors: + state: + data: + - + oid: pbxState + value: pbxState + num_oid: '.1.3.6.1.4.1.637.64.4400.1.2{{ $noindex }}' + descr: 'Pbx State' + state_name: pbxState + index: 'pbxState' + states: + - { descr: Normal , graph: 0, value: 5 , generic: 0 } + - { descr: Critical , graph: 0, value: 1 , generic: 2 } + - { descr: Major , graph: 0, value: 2 , generic: 2 } + - { descr: Minor , graph: 0, value: 3 , generic: 1 } + - { descr: Warning , graph: 0, value: 4 , generic: 1 } + - { descr: Indeterminate , graph: 0, value: 0 , generic: 3 } + - + oid: pbxRole + value: pbxRole + num_oid: '.1.3.6.1.4.1.637.64.4400.1.4.{{ $index }}' + descr: 'Pbx Role' + index: 'pbxRole{{ $index }}' + state_name: pbxRole + states: + - { descr: Main , graph: 0, value: 1 , generic: 0 } + - { descr: Standby , graph: 0, value: 2 , generic: 0 } + - { descr: Active PCS , graph: 0, value: 3 , generic: 0 } + - { descr: Inactive PCS , graph: 0, value: 4 , generic: 0 } + - { descr: Unknown , graph: 0, value: 0 , generic: 3 } + count: + data: + - + oid: setsInService + value: setsInService + num_oid: '.1.3.6.1.4.1.637.64.4400.1.7.{{ $index }}' + descr: 'Pbx Sets in service' + index: 'setsInService{{ $index }}' + low_limit: 0 + high_limit: 100000 + group: 'Sets' + - + oid: setsOutOfService + value: setsOutOfService + num_oid: '.1.3.6.1.4.1.637.64.4400.1.8.{{ $index }}' + descr: 'Pbx Sets out of service' + index: 'setsOutOfService{{ $index }}' + low_limit: 0 + high_limit: 100000 + group: 'Sets' + diff --git a/priv/profiles/os_discovery/omnitron-iconverter.yaml b/priv/profiles/os_discovery/omnitron-iconverter.yaml new file mode 100644 index 00000000..02b12748 --- /dev/null +++ b/priv/profiles/os_discovery/omnitron-iconverter.yaml @@ -0,0 +1,151 @@ +mib: OMNITRON-MIB:OMNITRON-POE-MIB +modules: + os: + sysDescr_regex: '/Omnitron iConverter (?.+) v(?\S+) s\/n (?\S+)/' + serial: OMNITRON-MIB::serialnum.1.1 + sensors: + state: + data: + - + oid: ostPoePortCfgTable + value: ostPoePortPseStatus + num_oid: '.1.3.6.1.4.1.7342.15.2.1.7.{{ $index }}' + descr: 'PSE Port Status {{ $index }}' + group: PSE + state_name: PoePortPseStatus + index: 'pseStatus.{{ $index }}' + states: + - { value: 1, generic: 3, graph: 0, descr: notApplicable } + - { value: 2, generic: 0, graph: 0, descr: pdNormal } + - { value: 3, generic: 1, graph: 0, descr: pdOverCurrent } + - { value: 4, generic: 1, graph: 0, descr: pdBrownOut } + - { value: 5, generic: 2, graph: 0, descr: pdInusfficientPower } + - + oid: ostPoePortCfgTable + value: ostPoEPortHeartbeatStatus + num_oid: '.1.3.6.1.4.1.7342.15.2.1.14.{{ $index }}' + descr: 'PSE Port Heartbeat Status {{ $index }}' + group: PSE + index: 'pseHeart.{{ $index }}' + state_name: PoePortHeartbeatStatus + states: + - { value: 1, generic: 3, graph: 0, descr: disabled } + - { value: 2, generic: 0, graph: 0, descr: available } + - { value: 3, generic: 1, graph: 0, descr: errored } + - { value: 4, generic: 2, graph: 0, descr: pseRestart } + - { value: 5, generic: 3, graph: 0, descr: pseShutdown } + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs1Status + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.1.{{ $index }}' + descr: 'PS1 Status' + group: PSU + index: 'ps1Status.{{ $index }}' + state_name: PSstatus + states: + - { value: 0, generic: 3, graph: 0, descr: notSupported } + - { value: 1, generic: 3, graph: 0, descr: notInstalled } + - { value: 2, generic: 2, graph: 0, descr: notPowered } + - { value: 3, generic: 0, graph: 0, descr: powered } + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs2Status + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.5.{{ $index }}' + descr: 'PS2 Status' + group: PSU + index: 'ps2Status.{{ $index }}' + state_name: PSstatus + states: + - { value: 0, generic: 3, graph: 0, descr: notSupported } + - { value: 1, generic: 3, graph: 0, descr: notInstalled } + - { value: 2, generic: 2, graph: 0, descr: notPowered } + - { value: 3, generic: 0, graph: 0, descr: powered } + current: + data: + - + oid: ostPoePortCfgTable + value: ostPoePortPseCurrentSupplied + num_oid: '.1.3.6.1.4.1.7342.15.2.1.6.{{ $index }}' + divisor: 1000 + descr: 'PSE Port Ouput Current {{ $index }}' + index: 'pseCurrent.{{ $index }}' + power: + data: + - + oid: ostPoeGlobalCfgTable + value: ostPoeGlobalCfgTotalPwr + num_oid: '.1.3.6.1.4.1.7342.15.1.2.{{ $index }}' + descr: Total Power + index: 'pwr.{{ $index }}' + + temperature: + data: + - + oid: moduleMgtCfgTable + value: cpuTemperature + num_oid: '.1.3.6.1.4.1.7342.2.1.3.1.38.{{ $index }}' + descr: CPU Ambient Temperature + index: 'cpuTemp.{{ $index }}' + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalTemperature + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.9.{{ $index }}' + descr: Module Internal Ambient Temperature + index: 'envTemp.{{ $index }}' + voltage: + data: + - + oid: ostPoePortCfgTable + value: ostPoePortPseVoltageSupplied + num_oid: '.1.3.6.1.4.1.7342.15.2.1.5.{{ $index }}' + descr: 'PSE Port Output Voltage {{ $index }}' + group: PSE + index: 'pseVoltage.{{ $index }}' + - + oid: moduleMgtCfgTable + value: cpuVoltageIn + divisor: 1000 + num_oid: '.1.3.6.1.4.1.7342.2.1.3.1.36.{{ $index }}' + descr: CPU Input Voltage + group: CPU + index: 'cpuVoltIn.{{ $index }}' + - + oid: moduleMgtCfgTable + value: cpuVoltageOut + num_oid: '.1.3.6.1.4.1.7342.2.1.3.1.37.{{ $index }}' + divisor: 1000 + descr: CPU Output Voltage + group: CPU + index: 'cpuVoltOut{{ $index }}' + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs1VoltageIn + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.2.{{ $index }}' + divisor: 1000 + descr: PS1 Input Voltage + group: PS1 + index: 'ps1VoltIn.{{ $index }}' + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs1VoltageOut + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.3.{{ $index }}' + divisor: 1000 + descr: PS1 Output Votlage + group: PS1 + index: 'ps1VoltOut.{{ $index }}' + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs2VoltageIn + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.6.{{ $index }}' + divisor: 1000 + descr: PS2 Input Voltage + group: PS2 + index: 'ps2VoltIn.{{ $index }}' + - + oid: ostEnvironmentalStatusTable + value: ostEnvironmentalPs2VoltageOut + num_oid: '.1.3.6.1.4.1.7342.2.1.11.1.7.{{ $index }}' + divisor: 1000 + descr: PS2 Output Voltage + group: PS2 + index: 'ps2VoltOut.{{ $index }}' diff --git a/priv/profiles/os_discovery/oneaccess.yaml b/priv/profiles/os_discovery/oneaccess.yaml new file mode 100644 index 00000000..257333f0 --- /dev/null +++ b/priv/profiles/os_discovery/oneaccess.yaml @@ -0,0 +1,155 @@ +mib: ONEACCESS-GLOBAL-REG:ONEACCESS-SYS-MIB:ONEACCESS-SHDSL-MIB:ONEACCESS-CELLULAR-MIB +modules: + additional_oids: + data: + - + oid: + - oacSysIMSysMainCPU + mempools: + data: + - + total: ONEACCESS-SYS-MIB::oacSysMemoryTotal + free: ONEACCESS-SYS-MIB::oacSysMemoryFree + percent_used: ONEACCESS-SYS-MIB::oacSysMemoryUsed + descr: 'Main Memory' + os: + version: ONEACCESS-SYS-MIB::oacSysIMSysMainBSPVersion.0 + serial: ONEACCESS-SYS-MIB::oacExpIMSysHwcSerialNumber.0 + hardware: ONEACCESS-SYS-MIB::oacExpIMSysHwcProductName.0 + processors: + data: + - + oid: oacSysCpuUsedValue + num_oid: '.1.3.6.1.4.1.13191.10.3.3.1.2.3.1.3.{{ $index }}' + descr: '{{ $oacSysIMSysMainCPU }}' + sensors: + state: + data: + - + oid: oacSysCpuUsedCoreType + value: oacSysCpuUsedCoreType + num_oid: '.1.3.6.1.4.1.13191.10.3.3.1.2.3.1.2.{{ $index }}' + descr: 'Core Type #{{ $index }}' + index: 'oacSysCpuUsedCoreType.{{ $index }}' + state_name: oacSysCpuUsedCoreType + states: + - { descr: controlplane, graph: 1, value: 0, generic: 0 } + - { descr: dataforwarding, graph: 1, value: 1, generic: 0 } + - { descr: application, graph: 1, value: 2, generic: 0 } + - { descr: mixed, graph: 1, value: 3, generic: 0 } + - + oid: oacCellRadioAccessTechnology + value: oacCellRadioAccessTechnology + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.46.{{ $index }}' + descr: 'Technology' + group: UMTS/LTE + index: 'oacCellRadioAccessTechnology.{{ $index }}' + states: + - { descr: GSM, graph: 1, value: 2, generic: 0 } + - { descr: UMTS, graph: 1, value: 3, generic: 0 } + - { descr: LTE, graph: 1, value: 4, generic: 0 } + + count: + data: + - + oid: oacSHDSLSpanStatusCurrCRCanomalies + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.5.{{ $index }}' + index: 'oacSHDSLSpanStatusCurrCRCanomalies.{{ $index }}' + descr: 'CRC Errors Line #{{ $index }}' + group: SDSL + - + oid: oacSHDSLSpanStatusCurrHECErrors + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.6.{{ $index }}' + index: 'oacSHDSLSpanStatusCurrHECErrors.{{ $index }}' + descr: 'HEC Errors Line #{{ $index }}' + group: SDSL + - + oid: oacSHDSLSpanStatusCurrES + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.10.{{ $index }}' + index: 'oacSHDSLSpanStatusCurrES.{{ $index }}' + descr: 'ES Errors Line #{{ $index }}' + group: SDSL + - + oid: oacSHDSLSpanStatusCurrSES + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.11.{{ $index }}' + index: 'oacSHDSLSpanStatusCurrSES.{{ $index }}' + descr: 'SES Line #{{ $index }}' + group: SDSL + - + oid: oacSHDSLSpanStatusUpDown + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.1.{{ $index }}' + index: 'oacSHDSLSpanStatusUpDown.{{ $index }}' + descr: 'Up/Down Line #{{ $index }}' + group: SDSL + - + oid: oacCellCellID + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.71.{{ $index }}' + index: 'oacCellCellID.{{ $index }}' + descr: 'CellID' + group: UMTS/LTE + - + oid: oacCellPLMN + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.73.{{ $index }}' + index: 'oacCellPLMN.{{ $index }}' + descr: 'PLMN' + group: UMTS/LTE + + dbm: + data: + - + oid: oacCellSignalStrength + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.41.{{ $index }}' + index: 'oacCellSignalStrength.{{ $index }}' + descr: 'Signal strength' + group: UMTS/LTE + skip_values: + - + oid: oacCellSignalStrength + op: '=' + value: '' + - + oid: oacCellRSRP + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.44.{{ $index }}' + index: 'oacCellRSRP.{{ $index }}' + descr: 'RSRP' + group: UMTS/LTE + skip_values: + - + oid: oacCellRSRP + op: '=' + value: '' + quality_factor: + data: + - + oid: oacCellRSRQ + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.43.{{ $index }}' + index: 'oacCellRSRQ.{{ $index }}' + descr: 'RSRQ' + group: UMTS/LTE + skip_values: + - + oid: oacCellRSRQ + op: '=' + value: '' + snr: + data: + - + oid: oacCellSNR + num_oid: '.1.3.6.1.4.1.13191.10.3.9.2.1.45.{{ $index }}' + index: 'oacCellSNR.{{ $index }}' + descr: 'SNR' + group: UMTS/LTE + skip_values: + - + oid: oacCellSNR + op: '=' + value: '' + runtime: + data: + - + oid: oacSHDSLSpanStatusCurrShowtimeStart + num_oid: '.1.3.6.1.4.1.13191.10.3.3.3.1.2.1.3.{{ $index }}' + index: 'oacSHDSLSpanStatusCurrShowtimeStart.{{ $index }}' + descr: 'Showtime Start #{{ $index }}' + group: SDSL + diff --git a/priv/profiles/os_discovery/onefs.yaml b/priv/profiles/os_discovery/onefs.yaml new file mode 100644 index 00000000..c27f49a1 --- /dev/null +++ b/priv/profiles/os_discovery/onefs.yaml @@ -0,0 +1,14 @@ +modules: + os: + hardware: ISILON-MIB::chassisModel.1 + serial: ISILON-MIB::chassisSerialNumber.1 + sysDescr_regex: '/Isilon OneFS (?\S+)( (?\S+)\(RELEASE\))?/' + storage: + data: + - + type: ifs + descr: Internal File System + size: ISILON-MIB::ifsTotalBytes.0 + free: ISILON-MIB::ifsAvailableBytes.0 + free_num_oid: '.1.3.6.1.4.1.12124.1.3.3.{{ $index }}' + units: 1024 diff --git a/priv/profiles/os_discovery/ons.yaml b/priv/profiles/os_discovery/ons.yaml new file mode 100644 index 00000000..53ca50c2 --- /dev/null +++ b/priv/profiles/os_discovery/ons.yaml @@ -0,0 +1,30 @@ +mib: CERENT-ENVMON-MIB:ENTITY-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - entPhysicalDescr + voltage: + data: + - + oid: cerentEnvMonVoltageStatsTable + num_oid: '.1.3.6.1.4.1.3607.2.80.10.1.30.{{ $index }}' + value: cerentEnvMonVoltageStatsCurrentValue + index: 'cerentEnvMonVoltageStats.{{ $index }}' + descr: '{{ $entPhysicalDescr }} - {{ $cerentEnvMonVoltageStatsDescr }}' + divisor: 1000 + warn_limit: cerentEnvMonVoltageStatsThresholdHigh + high_limit: cerentEnvMonVoltageStatsThresholdVeryHigh + low_warn_limit: cerentEnvMonVoltageStatsThresholdLow + low_limit: cerentEnvMonVoltageStatsThresholdVeryLow + temperature: + data: + - + oid: cerentEnvMonTemperatureStatsTable + num_oid: '.1.3.6.1.4.1.3607.2.80.20.1.30.{{ $index }}' + value: cerentEnvMonTemperatureStatsCurrentValue + index: 'cerentEnvMonTemperatureStats.{{ $index }}' + descr: '{{ $entPhysicalDescr }} - {{ $cerentEnvMonTemperatureStatsDescr }}' + high_limit: cerentEnvMonTemperatureStatsThresholdHigh diff --git a/priv/profiles/os_discovery/openbsd.yaml b/priv/profiles/os_discovery/openbsd.yaml new file mode 100644 index 00000000..8c6bcd09 --- /dev/null +++ b/priv/profiles/os_discovery/openbsd.yaml @@ -0,0 +1,15 @@ +mib: OPENBSD-CARP-MIB +modules: + sensors: + state: + data: + - + oid: carpIfTable + value: carpIfState + num_oid: '.1.3.6.1.4.1.30155.6.2.2.1.7.{{ $index }}' + descr: 'CARP - {{ $carpIfDev }}' + index: '{{ $index }}' + states: + - { value: 0, descr: init, graph: 1, generic: 1 } + - { value: 1, descr: backup, graph: 1, generic: 0 } + - { value: 2, descr: master, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/opengear.yaml b/priv/profiles/os_discovery/opengear.yaml new file mode 100644 index 00000000..428a54ce --- /dev/null +++ b/priv/profiles/os_discovery/opengear.yaml @@ -0,0 +1,149 @@ +mib: OG-STATUSv2-MIB:OG-OMTELEM-MIB +modules: + os: + hardware_mib: OG-PRODUCTS-MIB + hardware_regex: '/og(?\S+)/' + version: + - OG-STATUSv2-MIB::ogFirmwareVersion + - OG-OMTELEM-MIB::ogOmSystemFirmwareVersion.0 + version_regex: '/(?\S+)/' + serial: + - OG-STATUSv2-MIB::ogSerialNumber + - OG-OMTELEM-MIB::ogOmSystemSerialNumber.0 + sensors: + additional_oids: + data: + - + oid: + - OG-STATUSv2-MIB::ogCellModemTable + current: + data: + - + oid: OG-OMTELEM-MIB::ogOmPowerSupplyTable + value: OG-OMTELEM-MIB::ogOmPowerSupplyOutputCurrent + divisor: 1000 + num_oid: '.1.3.6.1.4.1.25049.10.19.8.1.1.5.{{ $index }}' + descr: 'PSU {{ $index }} Output Current' + - + oid: OG-STATUSv2-MIB::ogPowerSupplyTable + value: OG-STATUSv2-MIB::ogPowerSupplyOutputCurrent + divisor: 100 + num_oid: '.1.3.6.1.4.1.25049.17.13.1.4.{{ $index }}' + descr: '{{ OG-STATUSv2-MIB::ogPowerSupplyName }} Output Current' + skip_values: + - + oid: OG-STATUSv2-MIB::ogPowerSupplyName + op: 'exists' + value: false + + voltage: + data: + - + oid: OG-OMTELEM-MIB::ogOmPowerSupplyTable + value: OG-OMTELEM-MIB::ogOmPowerSupplyInputVoltage + divisor: 1000 + num_oid: '.1.3.6.1.4.1.25049.10.19.8.1.1.4.{{ $index }}' + descr: 'PSU {{ $index }} Input Voltage' + - + oid: OG-STATUSv2-MIB::ogPowerSupplyTable + value: OG-STATUSv2-MIB::ogPowerSupplyInputVoltage + num_oid: '.1.3.6.1.4.1.25049.17.13.1.3.{{ $index }}' + descr: '{{ OG-STATUSv2-MIB::ogPowerSupplyName }} Input Voltage' + skip_values: + - oid: OG-STATUSv2-MIB::ogPowerSupplyName + op: 'exists' + value: false + + power: + data: + - + oid: OG-OMTELEM-MIB::ogOmPowerSupplyTable + value: OG-OMTELEM-MIB::ogOmPowerSupplyOutputPower + num_oid: '.1.3.6.1.4.1.25049.10.19.8.1.1.6.{{ $index }}' + descr: 'PSU {{ $index }} Output Power' + temperature: + data: + - + oid: OG-STATUSv2-MIB::ogPowerSupplyTable + value: OG-STATUSv2-MIB::ogPowerSupplyTemperature + num_oid: '.1.3.6.1.4.1.25049.17.13.1.5.{{ $index }}' + descr: OG-STATUSv2-MIB::ogPowerSupplyName + skip_values: + - oid: OG-STATUSv2-MIB::ogPowerSupplyName + op: 'exists' + value: false + - + oid: OG-STATUSv2-MIB::ogEmdTemperatureTable + value: OG-STATUSv2-MIB::ogEmdTemperatureValue + num_oid: '.1.3.6.1.4.1.25049.17.9.1.5.{{ $index }}' + descr: OG-STATUSv2-MIB::ogEmdTemperatureName + index: 'ogEmdTemperatureValue.{{ $index }}' + - + oid: OG-OMTELEM-MIB::ogOmTempSensorTable + value: OG-OMTELEM-MIB::ogOmTempSensorValue + divisor: 1000 + num_oid: '.1.3.6.1.4.1.25049.10.19.9.1.1.4.{{ $index }}' + descr: OG-OMTELEM-MIB::ogOmTempSensorName + + humidity: + data: + - + oid: OG-STATUSv2-MIB::ogEmdHumidityTable + value: OG-STATUSv2-MIB::ogEmdHumidityValue + num_oid: '.1.3.6.1.4.1.25049.17.10.1.5.{{ $index }}' + descr: OG-STATUSv2-MIB::ogEmdHumidityName + index: 'ogEmdHumidityValue.{{ $index }}' + signal: + data: + - + oid: OG-STATUSv2-MIB::ogCellModemTable + value: OG-STATUSv2-MIB::ogCellModem3gRssi + num_oid: '.1.3.6.1.4.1.25049.17.17.1.11.{{ $index }}' + descr: 'Cellular 3G Modem RSSI' + index: '11.{{ $index }}' + - + oid: OG-STATUSv2-MIB::ogCellModemTable + value: OG-STATUSv2-MIB::ogCellModem4gRssi + num_oid: '.1.3.6.1.4.1.25049.17.17.1.12.{{ $index }}' + descr: 'Cellular 4G Modem RSSI' + index: '12.{{ $index }}' + count: + data: + - + oid: OG-STATUSv2-MIB::ogCellModemTable + value: OG-STATUSv2-MIB::ogCellModemSelectedSimCard + num_oid: '.1.3.6.1.4.1.25049.17.17.1.14.{{ $index }}' + descr: 'Selected Active SIM Card' + index: 'ogCellModemSelectedSimCard.{{ $index }}' + state: + data: + - + oid: OG-STATUSv2-MIB::ogCellModemTable + value: OG-STATUSv2-MIB::ogCellModemConnected + num_oid: '.1.3.6.1.4.1.25049.17.17.1.5.{{ $index }}' + descr: 'Modem Connection State' + index: 'ogCellModemConnected.{{ $index }}' + state_name: ogCellModemConnected + states: + - { value: 1, descr: Connected, graph: 1, generic: 0 } + - { value: 2, descr: Disconnected, graph: 2, generic: 2 } + skip_values: + - + oid: 'OG-STATUSv2-MIB::ogCellModemEnabled' + op: '=' + value: 2 + - + oid: OG-STATUSv2-MIB::ogCellModemTable + value: OG-STATUSv2-MIB::ogCellModemRadioTechnology + num_oid: '.1.3.6.1.4.1.25049.17.17.1.9.{{ $index }}' + descr: 'Radio Access Technology' + index: 'ogCellModemRadioTechnology.{{ $index }}' + skip_values: 1 + state_name: ogCellModemRadioTechnology + states: + - { value: 1, descr: Unavailable, graph: 1, generic: 3 } + - { value: 2, descr: CDMA, graph: 2, generic: 0 } + - { value: 3, descr: EVDO, graph: 3, generic: 0 } + - { value: 4, descr: GSM, graph: 4, generic: 0 } + - { value: 5, descr: UMTS, graph: 5, generic: 0 } + - { value: 6, descr: LTE, graph: 6, generic: 0 } diff --git a/priv/profiles/os_discovery/opensolaris.yaml b/priv/profiles/os_discovery/opensolaris.yaml new file mode 100644 index 00000000..496b8acd --- /dev/null +++ b/priv/profiles/os_discovery/opensolaris.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?[\d.-]+) (?\S+) (?\S+)$/' diff --git a/priv/profiles/os_discovery/opnsense.yaml b/priv/profiles/os_discovery/opnsense.yaml new file mode 100644 index 00000000..faf67a44 --- /dev/null +++ b/priv/profiles/os_discovery/opnsense.yaml @@ -0,0 +1,7 @@ +modules: + os: + sysDescr_regex: + - '/ (?\d+\.\S+)/' + - '/(?\S+)$/' + version: .1.3.6.1.4.1.8072.1.3.2.3.1.2.7.118.101.114.115.105.111.110 + version_regex: '/(?[\d._]+) \((?[^)]+)\)/' diff --git a/priv/profiles/os_discovery/oracle-ilom.yaml b/priv/profiles/os_discovery/oracle-ilom.yaml new file mode 100644 index 00000000..68160fe5 --- /dev/null +++ b/priv/profiles/os_discovery/oracle-ilom.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*) ILOM v(?.*),/' diff --git a/priv/profiles/os_discovery/orolia-securesync.yaml b/priv/profiles/os_discovery/orolia-securesync.yaml new file mode 100644 index 00000000..289506d9 --- /dev/null +++ b/priv/profiles/os_discovery/orolia-securesync.yaml @@ -0,0 +1,255 @@ +mib: SPECTRACOM-XSYNC-MIB:SPECTRACOM-NTP-V4-MIB:SPECTRACOM-PTPBASE-MIB +modules: + os: + serial: SNMPv2-SMI::enterprises.18837.3.2.2.1.16.0 + version: SNMPv2-SMI::enterprises.18837.3.2.2.1.11.0 + sensors: + additional_oids: + data: + - + oid: + - ntpSysStaCurrentPeerName + - ntpAssocEntry + - ptpbaseClockParentDSEntry + count: + data: + - + oid: ssSysStaEstPhaseError + value: ssSysStaEstPhaseError + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.8.{{ $index }}' + descr: 'Phase error (ns)' + group: PRECISION + index: 'ssSysStaEstPhaseError.{{ $index }}' + - + oid: ssSysStaEstFreqError + value: ssSysStaEstFreqError + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.9.{{ $index }}' + descr: 'Frequence error (Hz)' + group: PRECISION + index: 'ssSysStaEstFreqError.{{ $index }}' + - + oid: ssGpsRefNumSats + value: ssGpsRefNumSats + num_oid: '.1.3.6.1.4.1.18837.3.2.2.2.1.1.8.{{ $index }}' + descr: 'Current number of good/usable satellites' + group: GNSS + index: 'ssGpsRefNumSats.{{ $index }}' + - + oid: ntpSysStaStratum + value: ntpSysStaStratum + num_oid: '.1.3.6.1.4.1.18837.3.3.2.2.{{ $index }}' + descr: 'Current stratum' + group: NTP + index: 'ntpSysStaStratum.{{ $index }}' + - + oid: ntpSysStaPeerJitter + value: ntpSysStaPeerJitter + num_oid: '.1.3.6.1.4.1.18837.3.3.2.7.{{ $index }}' + descr: 'Jitter Selected peer (ms): {{ $ntpSysStaCurrentPeerName }}' + group: REFERENCE + index: 'ntpSysStaPeerJitter.{{ $index }}' + - + oid: ntpSysStaPeerOffset + value: ntpSysStaPeerOffset + num_oid: '.1.3.6.1.4.1.18837.3.3.2.6.{{ $index }}' + descr: 'Offset Selected peer (µs): {{ $ntpSysStaCurrentPeerName }}' + multiplier: 1000 + group: REFERENCE + index: 'ntpSysStaPeerOffset.{{ $index }}' + - + oid: ntpSysStaPeerDelay + value: ntpSysStaPeerDelay + num_oid: '.1.3.6.1.4.1.18837.3.3.2.5.{{ $index }}' + descr: 'Delay Selected peer (ms): {{ $ntpSysStaCurrentPeerName }}' + group: REFERENCE + index: 'ntpSysStaPeerDelay.{{ $index }}' + - + oid: ntpAssocEntry + value: assocEntryJitter + num_oid: '.1.3.6.1.4.1.18837.3.3.3.2.1.14.{{ $index }}' + descr: 'Jitter (ms): {{ $assocEntryIdentity }}' + group: NTP + index: 'assocEntryJitter.{{ $index }}' + - + oid: ntpAssocEntry + value: assocEntryOffset + num_oid: '.1.3.6.1.4.1.18837.3.3.3.2.1.13.{{ $index }}' + multiplier: 1000 + descr: 'Offset (µs): {{ $assocEntryIdentity }} {{ $assocEntryRefId }}' + group: NTP + index: 'assocEntryOffset.{{ $index }}' + - + oid: ntpAssocEntry + value: assocEntryDelay + num_oid: '.1.3.6.1.4.1.18837.3.3.3.2.1.12.{{ $index }}' + descr: 'Delay (ms): {{ $assocEntryIdentity }}' + group: NTP + index: 'assocEntryDelay.{{ $index }}' + - + oid: ptpbaseClockParentDSEntry + value: ptpbaseClockParentDSGMClockPriority1 + num_oid: '.1.3.6.1.4.1.18837.3.5.1.2.2.1.9.{{ $index }}' + descr: '{{ $ptpbaseClockParentDSGMClockIdentity }} master Priority' + group: PTP + index: 'ptpbaseClockParentDSGMClockPriority1.{{ $index }}' + - + oid: ptpbaseClockParentDSEntry + value: ptpbaseClockParentDSGMClockQualityOffset + num_oid: '.1.3.6.1.4.1.18837.3.5.1.2.2.1.13.{{ $index }}' + descr: '{{ $ptpbaseClockParentDSGMClockIdentity }} master Variance' + group: PTP + index: 'ptpbaseClockParentDSGMClockQualityOffset.{{ $index }}' + + temperature: + data: + + - + oid: ssSysStaOscTemp + value: ssSysStaOscTemp + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.17.{{ $index }}' + descr: 'Oscillator Temp' + index: 'ssSysStaOscTemp.{{ $index }}' + - + oid: ssSysStaBrdTemp + value: ssSysStaBrdTemp + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.18.{{ $index }}' + descr: 'Board Temp' + index: 'ssSysStaBrdTemp.{{ $index }}' + - + oid: ssSysStaCpuTemp + value: ssSysStaCpuTemp + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.19.{{ $index }}' + descr: 'CPU Temp' + index: 'ssSysStaCpuTemp.{{ $index }}' + state: + data: + - + oid: ssSysStaPowerDC + value: ssSysStaPowerDC + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.2.{{ $index }}' + descr: 'DC power' + index: 'dcpower.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 2, generic: 2 } + - { value: 3, descr: none, graph: 3, generic: 3 } + - + oid: ssSysStaSyncState + value: ssSysStaSyncState + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.5.{{ $index }}' + descr: 'Sync status' + group: TIME + index: 'ssSysStaSyncState.{{ $index }}' + states: + - { value: 1, descr: sync, graph: 1, generic: 0 } + - { value: 2, descr: nosync, graph: 1, generic: 2 } + - + oid: ssSysStaHoldoverState + value: ssSysStaHoldoverState + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.6.{{ $index }}' + descr: 'Holdover status' + group: TIME + index: 'ssSysStaHoldoverState.{{ $index }}' + states: + - { value: 1, descr: inHoldover, graph: 1, generic: 2 } + - { value: 2, descr: notInHoldover, graph: 1, generic: 0 } + - + oid: ssSysStaTimeScale + value: ssSysStaTimeScale + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.10.{{ $index }}' + descr: 'Time scale' + group: TIME + index: 'ssSysStaTimeScale.{{ $index }}' + states: + - { value: 1, descr: utc, graph: 1, generic: 0 } + - { value: 2, descr: tai, graph: 1, generic: 0 } + - { value: 3, descr: gps, graph: 1, generic: 0 } + - + oid: ssSysStaBshJammingState + value: ssSysStaBshJammingState + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.22.{{ $index }}' + descr: 'Jamming status' + index: 'ssSysStaBshJammingState.{{ $index }}' + states: + - { value: 1, descr: active, graph: 1, generic: 2 } + - { value: 2, descr: inactive, graph: 1, generic: 0 } + - + oid: ssSysStaBshSpoofingState + value: ssSysStaBshSpoofingState + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.23.{{ $index }}' + descr: 'Spoofing status' + index: 'ssSysStaBshSpoofingState.{{ $index }}' + states: + - { value: 1, descr: active, graph: 1, generic: 2 } + - { value: 2, descr: inactive, graph: 1, generic: 0 } + - + oid: ssSysStaDisciplining + value: ssSysStaDisciplining + num_oid: '.1.3.6.1.4.1.18837.3.2.2.1.24.{{ $index }}' + descr: 'Oscillator disciplined' + group: TIME + index: 'ssSysStaDisciplining.{{ $index }}' + states: + - { value: 0, descr: none, graph: 1, generic: 3 } + - { value: 1, descr: warmup, graph: 1, generic: 0 } + - { value: 2, descr: calibration, graph: 1, generic: 1 } + - { value: 3, descr: trackSetup, graph: 1, generic: 1 } + - { value: 4, descr: trackLock, graph: 1, generic: 0 } + - { value: 5, descr: freerun, graph: 1, generic: 2 } + - { value: 6, descr: fault, graph: 1, generic: 2 } + - + oid: ssGpsRefTimeValid + value: ssGpsRefTimeValid + num_oid: '.1.3.6.1.4.1.18837.3.2.2.2.1.1.4.{{ $index }}' + descr: 'GNSS valid time' + group: GNSS + index: 'ssGpsRefTimeValid.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: nok, graph: 1, generic: 2 } + - + oid: ssGpsRefAntennaState + value: ssGpsRefAntennaState + num_oid: '.1.3.6.1.4.1.18837.3.2.2.2.1.1.17.{{ $index }}' + descr: 'Antenna state' + group: GNSS + index: 'ssGpsRefAntennaState.{{ $index }}' + states: + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: short, graph: 1, generic: 2 } + - { value: 3, descr: open, graph: 1, generic: 2 } + - { value: 4, descr: unknown, graph: 1, generic: 3 } + - + oid: ntpSysStaCurrentMode + value: ntpSysStaCurrentMode + num_oid: '.1.3.6.1.4.1.18837.3.3.2.1.{{ $index }}' + descr: 'NTP service' + group: NTP + index: 'ntpSysStaCurrentMode.{{ $index }}' + states: + - { value: 1, descr: unknown, graph: 1, generic: 3 } + - { value: 2, descr: notRunning, graph: 1, generic: 2 } + - { value: 3, descr: notSynchonized, graph: 1, generic: 2 } + - { value: 4, descr: synchronized, graph: 1, generic: 0 } + - + oid: ptpbaseClockParentDSEntry + value: ptpbaseClockParentDSGMClockQualityAccuracy + num_oid: '.1.3.6.1.4.1.18837.3.5.1.2.2.1.12.{{ $index }}' + descr: '{{ $ptpbaseClockParentDSGMClockIdentity }} Master accuracy' + group: PTP + index: 'ptpbaseQualityAccuracy.{{ $index }}' + states: + - { value: 254, descr: ok, graph: 1, generic: 3 } + - { value: 32, descr: <25ns, graph: 1, generic: 0 } + - { value: 33, descr: <100ns, graph: 1, generic: 0 } + - { value: 34, descr: <250ns, graph: 1, generic: 0 } + - { value: 35, descr: <1μs, graph: 1, generic: 0 } + - { value: 36, descr: <2.5μs, graph: 1, generic: 0 } + - { value: 37, descr: <10μs, graph: 1, generic: 0 } + - { value: 38, descr: <25μs, graph: 1, generic: 0 } + - { value: 39, descr: <100μs, graph: 1, generic: 0 } + - { value: 40, descr: <250μs, graph: 1, generic: 0 } + - { value: 41, descr: <1ms, graph: 1, generic: 0 } + - { value: 42, descr: <2-5ms, graph: 1, generic: 0 } + - { value: 43, descr: <10ms, graph: 1, generic: 0 } + - { value: 44, descr: <25ms, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/orvaldi-ups.yaml b/priv/profiles/os_discovery/orvaldi-ups.yaml new file mode 100644 index 00000000..1bb32823 --- /dev/null +++ b/priv/profiles/os_discovery/orvaldi-ups.yaml @@ -0,0 +1,33 @@ +mib: companyMIB +modules: + os: + hardware: companyMIB::upsIdModelName.0 + serial: companyMIB::upsIdSerialNumber.0 + version: companyMIB::upsIdFWVersion.0 + sensors: + state: + data: + - + oid: upsIdUPSType + num_oid: '.1.3.6.1.4.1.21111.1.1.1.7.{{ $index }}' + descr: 'UPS Type' + state_name: upsIdUPSType + states: + - { descr: 'standby', graph: 1, value: 0, generic: 0 } + - { descr: 'line-interactive', graph: 1, value: 1, generic: 1 } + - { descr: 'on-line', graph: 1, value: 2, generic: 0 } + count: + data: + - + oid: upsBatNumberInSeries + num_oid: '.1.3.6.1.4.1.21111.1.1.3.14.{{ $index }}' + descr: 'Nb. of Batteries in Series' + group: Battery + index: 'series-{{ $index }}' + + - + oid: upsBatNumberInParallel + num_oid: '.1.3.6.1.4.1.21111.1.1.3.15.{{ $index }}' + descr: 'Nb. of Batteries in Parallel' + group: Battery + index: 'parallel-{{ $index }}' diff --git a/priv/profiles/os_discovery/osm.yaml b/priv/profiles/os_discovery/osm.yaml new file mode 100644 index 00000000..3e56da31 --- /dev/null +++ b/priv/profiles/os_discovery/osm.yaml @@ -0,0 +1,125 @@ +mib: ENDACE-SYSTEM-MIB:ENDACE-HWMON-MIB:ENDACE-MODULE-MIB + +modules: + os: + hardware: + - ENDACE-SYSTEM-MIB::systemModel.0 + version: + - ENDACE-SYSTEM-MIB::systemVersion.0 + version_regex: '/endace OSm(?\S+)/' + serial: + - ENDACE-SYSTEM-MIB::systemSerial.0 + + sensors: + voltage: + data: + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.11.{{ $index }}' + value: modoptVolt + descr: "{{ $modoptName }} Voltage" + index: "modoptVolt.{{ $index }}" + group: "DAG Module(s)" + dbm: + data: + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.5.{{ $index }}' + value: modoptRxPower + descr: "{{ modoptName }} RX Power" + index: "modoptRxPower.{{ $index }}" + group: "DAG Module(s)" + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.7.{{ $index }}' + value: modoptTxPower + descr: "{{ modoptName }} TX Power" + index: "modoptTxPower.{{ $index }}" + group: "DAG Module(s)" + temperature: + data: + - + oid: ENDACE-HWMON-MIB::hwmonSystemTemp + num_oid: '.1.3.6.1.4.1.18418.16.1.4.{{ $index }}' + descr: "System Temperature (C)" + index: 0 + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.9.{{ $index }}' + value: modoptTemp + descr: "{{ modoptName }} Temperature" + index: "modoptTemp.{{ $index }}" + group: "DAG Module(s)" + state: + data: + - + oid: ENDACE-HWMON-MIB::hwmonFanRedundancy + num_oid: '.1.3.6.1.4.1.18418.16.1.1.{{ $index }}' + descr: "Fan Redundancy" + index: 0 + state_name: hwmonFanRedundancy + states: + - { value: 1, generic: 0, graph: 0, descr: 'normal' } + - { value: 2, generic: 2, graph: 0, descr: 'fault' } + - + oid: ENDACE-HWMON-MIB::hwmonPsuRedundancy + num_oid: '.1.3.6.1.4.1.18418.16.1.2.{{ $index }}' + descr: "PSU Redundancy" + index: 0 + state_name: hwmonPsuRedundancy + states: + - { value: 1, generic: 0, graph: 0, descr: 'normal' } + - { value: 2, generic: 2, graph: 0, descr: 'fault' } + - + oid: ENDACE-HWMON-MIB::hwmonIntrusionStatus + num_oid: '.1.3.6.1.4.1.18418.16.1.3.{{ $index }}' + descr: "Intrusion Status" + index: 0 + state_name: hwmonIntrusionStatus + states: + - { value: 1, generic: 1, graph: 0, descr: 'alarm' } + - { value: 2, generic: 0, graph: 0, descr: 'normal' } + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.6.{{ $index }}' + value: modoptRxPowerOk + descr: "{{ modoptName }} RX Power Ok" + index: "modoptRxPowerOk.{{ $index }}" + group: "DAG Module(s)" + state_name: modoptRxPowerOk + states: + - { value: 1, generic: 0, graph: 0, descr: 'true' } + - { value: 2, generic: 2, graph: 0, descr: 'false' } + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.8.{{ $index }}' + value: modoptTxPowerOk + descr: "{{ modoptName }} TX Power Ok" + index: "modoptTxPowerOk.{{ $index }}" + group: "DAG Module(s)" + state_name: modoptTxPowerOk + states: + - { value: 1, generic: 0, graph: 0, descr: 'true' } + - { value: 2, generic: 2, graph: 0, descr: 'false' } + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.12.{{ $index }}' + value: modoptVoltOk + descr: "{{ modoptName }} Voltage Ok" + index: "modoptVoltOk.{{ $index }}" + group: "DAG Module(s)" + state_name: modoptVoltOk + states: + - { value: 1, generic: 0, graph: 0, descr: 'true' } + - { value: 2, generic: 2, graph: 0, descr: 'false' } + - + oid: modoptTable + num_oid: '.1.3.6.1.4.1.18418.2.1.2.3.1.10.{{ $index }}' + value: modoptTempOk + descr: "{{ modoptName }} Temperature Ok" + index: "modoptTempOk.{{ $index }}" + group: "DAG Module(s)" + state_name: modoptTempOk + states: + - { value: 1, generic: 0, graph: 0, descr: 'true' } + - { value: 2, generic: 2, graph: 0, descr: 'false' } diff --git a/priv/profiles/os_discovery/packetlight.yaml b/priv/profiles/os_discovery/packetlight.yaml new file mode 100644 index 00000000..3153a964 --- /dev/null +++ b/priv/profiles/os_discovery/packetlight.yaml @@ -0,0 +1,197 @@ +mib: SL-EDFA-MIB:SL-MAIN-MIB:SL-SFP-MIB:IF-MIB +modules: + os: + hardware: + - .1.3.6.1.4.1.4515.1.3.6.1.1.1.2.0 # SL-ENTITY-MIB::slEntPhysicalDescr.0 + - .1.3.6.1.4.1.4515.1.3.6.1.1.1.4.0 # SL-ENTITY-MIB::slEntPhysicalHardwareRev.0 + hardware_template: '{{ .1.3.6.1.4.1.4515.1.3.6.1.1.1.2.0 }} rev {{ .1.3.6.1.4.1.4515.1.3.6.1.1.1.4.0 }}' + serial: .1.3.6.1.4.1.4515.1.3.6.1.1.1.7.0 # SL-ENTITY-MIB::slEntPhysicalSerialNum.0 + version: .1.3.6.1.4.1.4515.1.3.6.1.1.1.5.0 # SL-ENTITY-MIB::slEntPhysicalFirmwareRev.0 + processors: + data: + - + oid: hwEntityStateEntry + value: hwEntityCpuUsage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.{{ $index }}' + descr: '{{ $entPhysicalName }} Processor' + skip_values: + - + oid: hwEntityOperStatus + op: '!=' + value: 3 + sensors: + additional_oids: + data: + - + oid: + - ifDescr + - ifAlias + - ifAdminStatus + - sfpConfigVendorPN + - sfpConfigVendorSN + temperature: + data: + - + oid: slmSysTemperature + value: slmSysTemperature + num_oid: '.1.3.6.1.4.1.4515.1.3.1.43.{{ $index }}' + descr: 'Temperature' + index: 'sys-temp-{{ $index }}' + group: 'System' + - + oid: sfpDiagTable + value: sfpDiagModuleTemperature + num_oid: '.1.3.6.1.4.1.4515.1.10.2.1.1.34.{{ $index }}' + descr: '{{ $ifDescr }} {{ $ifAlias }} Temperature' + index: 'opt-temp-{{ $index }}' + group: 'Optic {{ $sfpConfigVendorPN }}, {{ $sfpConfigVendorSN }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + user_func: '\LibreNMS\OS\Packetlight::offsetSfpTemperature' + divisor: 256 + skip_values: + - + oid: sfpDiagModuleTemperature + op: '=' + value: 0 + - + oid: sfpDiagModuleTemperature + op: '=' + value: 32768 + - + oid: sfpDiagModuleTemperature + op: '=' + value: -32768 + count: + data: + - + oid: edfaConfigTable + value: edfaOscChannel + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.31.{{ $index }}' + descr: '{{ $ifDescr }} WaveLength' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + group: '{{ $edfaFreeDescription }}' + dbm: + data: + - + oid: edfaConfigTable + value: edfaRxPower + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.3.{{ $index }}' + descr: '{{ $ifDescr }} Rx Power' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 10 + group: '{{ $edfaFreeDescription }}' + - + oid: edfaConfigTable + value: edfaAdminOutputPower + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.13.{{ $index }}' + descr: '{{ $ifDescr }} Admin Output Power' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'edfaAdminOutputPower-{{ $index }}' + divisor: 10 + group: '{{ $edfaFreeDescription }}' + - + oid: edfaConfigTable + value: edfaOperOutputPower + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.14.{{ $index }}' + descr: '{{ $ifDescr }} Oper Output Power' + entPhysicalIndex: '{{ $index }}' + divisor: 10 + entPhysicalIndex_measured: ports + index: 'edfaOperOutputPower-{{ $index }}' + group: '{{ $edfaFreeDescription }}' + - + oid: sfpDiagTable + value: sfpDiagTxOutputPower + num_oid: '.1.3.6.1.4.1.4515.1.10.2.1.1.37.{{ $index }}' + descr: '{{ $ifDescr }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'txout-{{ $index }}' + group: 'Optic {{ $sfpConfigVendorPN }}, {{ $sfpConfigVendorSN }}' + high_limit: sfpDiagHighTxPowerAlmThreshold + low_limit: sfpDiagLowTxPowerAlmThreshold + user_func: '\LibreNMS\OS\Packetlight::convertWattToDbm' + skip_values: + - + oid: ifAdminStatus + op: '!=' + value: 1 + - + oid: sfpDiagHighTxPowerAlmThreshold + op: '=' + value: 0 + - + oid: sfpDiagTable + value: sfpDiagRxInputPower + num_oid: '.1.3.6.1.4.1.4515.1.10.2.1.1.38.{{ $index }}' + descr: '{{ $ifDescr }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'Rxin-{{ $index }}' + group: 'Optic {{ $sfpConfigVendorPN }}, {{ $sfpConfigVendorSN }}' + high_limit: sfpDiagHighRxPowerAlmThreshold + low_limit: sfpDiagLowRxPowerAlmThreshold + user_func: '\LibreNMS\OS\Packetlight::convertWattToDbm' + skip_values: + - + oid: ifAdminStatus + op: '!=' + value: 1 + - + oid: sfpDiagHighRxPowerAlmThreshold + op: '=' + value: 0 + quality_factor: + data: + - + oid: edfaConfigTable + value: edfaAdminGain + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.11.{{ $index }}' + descr: '{{ $ifDescr }} Admin Gain (dB)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 10 + index: 'edfaAdmGain-{{ $index }}' + group: '{{ $edfaFreeDescription }}' + - + oid: edfaConfigTable + value: edfaOperGain + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.12.{{ $index }}' + descr: '{{ $ifDescr }} Oper Gain (dB)' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + divisor: 10 + index: 'edfaOpGain-{{ $index }}' + group: '{{ $edfaFreeDescription }}' + state: + data: + - + oid: edfaConfigTable + value: edfaRedBlueType + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.32.{{ $index }}' + descr: '{{ $ifDescr }} Red Blue Type' + group: edfaFreeDescription + state_name: edfaRedBlueType + states: + - { descr: Red, graph: 1, value: 1, generic: 0 } + - { descr: Blue, graph: 1, value: 2, generic: 0 } + - { descr: None, graph: 1, value: 3, generic: 0 } + - + oid: edfaConfigTable + value: edfaRole + num_oid: '.1.3.6.1.4.1.4515.1.9.1.1.1.33.{{ $index }}' + descr: '{{ $ifDescr }} Role' + group: edfaFreeDescription + state_name: edfaRole + states: + - { descr: booster, graph: 1, value: 1, generic: 0 } + - { descr: boosterInline, graph: 1, value: 2, generic: 0 } + - { descr: preamp, graph: 1, value: 3, generic: 0 } + - { descr: inline, graph: 1, value: 4, generic: 0 } + - { descr: raman, graph: 1, value: 5, generic: 0 } + - { descr: other, graph: 1, value: 6, generic: 0 } + diff --git a/priv/profiles/os_discovery/panasonic-ns.yaml b/priv/profiles/os_discovery/panasonic-ns.yaml new file mode 100644 index 00000000..470de129 --- /dev/null +++ b/priv/profiles/os_discovery/panasonic-ns.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*) (?\S+)/' diff --git a/priv/profiles/os_discovery/pandacom.yaml b/priv/profiles/os_discovery/pandacom.yaml new file mode 100644 index 00000000..3df15a7a --- /dev/null +++ b/priv/profiles/os_discovery/pandacom.yaml @@ -0,0 +1,440 @@ +modules: + os: + serial: SPEEDCARRIER-MIB::nmCarrierSerialNumber.0 + serial_replace: + - [ '/unknown/', ''] + hardware: SPEEDCARRIER-MIB::nmCarrierType.0 + hardware_replace: + - ['/carrier5UHighPower/', 'Carrier 5U HighPower'] + - ['/carrier5U/', 'Carrier 5U'] + - ['/carrier45U/', 'Carrier 4.5U'] + - ['/carrier1U/', 'Carrier 1U'] + - ['/carrier4U/', 'Carrier 4U'] + location: SPEEDCARRIER-MIB::nmAgentConfigSnmpSysLocation.0 + + sensors: + additional_oids: + data: + - + oid: + - SPEED-MUX-200G-MIB::speedMux200gLinePortXCVThresholdTable + - SPEED-MUX-200G-MIB::speedMux200gClientPortXCVThresholdTable + - SPEED-MULTILINE-MIB::speedMultilinePortXCVThresholdTable + + state: + data: + - + oid: SPEEDCARRIER-MIB::nmAAlarmState + value: SPEEDCARRIER-MIB::nmAAlarmState + num_oid: .1.3.6.1.4.1.3652.3.1.1.7.{{ $index }} + descr: 'Agent' + states: + - { value: 0, descr: off, graph: 1, generic: 0 } + - { value: 1, descr: on, graph: 1, generic: 3 } + index: nmAAlarmState.{{ $index }} + group: Alarms + - + oid: SPEEDCARRIER-MIB::nmFanState + value: SPEEDCARRIER-MIB::nmFanState + num_oid: .1.3.6.1.4.1.3652.3.2.1.5.{{ $index }} + descr: 'Fans' + states: + - { value: 0, descr: "not Available", graph: 1, generic: 3 } + - { value: 3, descr: "Ok", graph: 1, generic: 0 } + - { value: 4, descr: "Failed", graph: 1, generic: 2 } + - { value: 5, descr: "not Installed", graph: 1, generic: 3 } + index: nmFanState.{{ $index }} + group: Alarms + - + oid: SPEEDCARRIER-MIB::nmPSU1Status + value: SPEEDCARRIER-MIB::nmPSU1Status + num_oid: .1.3.6.1.4.1.3652.3.2.1.3.{{ $index }} + descr: 'PSU 1' + states: + - { value: 0, descr: not Installed, graph: 1, generic: 0 } + - { value: 1, descr: Critical, graph: 1, generic: 2 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Ok, graph: 1, generic: 0 } + index: nmPSU1Status.{{ $index }} + group: Alarms + - + oid: SPEEDCARRIER-MIB::nmPSU2Status + value: SPEEDCARRIER-MIB::nmPSU2Status + num_oid: .1.3.6.1.4.1.3652.3.2.1.4.{{ $index }} + descr: 'PSU 2' + states: + - { value: 0, descr: not Installed, graph: 1, generic: 0 } + - { value: 1, descr: Critical, graph: 1, generic: 2 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Ok, graph: 1, generic: 0 } + index: nmPSU2Status.{{ $index }} + group: Alarms + - + oid: SPEEDCARRIER-MIB::nmPSU3Status + value: SPEEDCARRIER-MIB::nmPSU3Status + num_oid: .1.3.6.1.4.1.3652.3.2.1.12.{{ $index }} + descr: 'PSU 3' + states: + - { value: 0, descr: not Installed, graph: 1, generic: 0 } + - { value: 1, descr: Critical, graph: 1, generic: 2 } + - { value: 2, descr: Warning, graph: 1, generic: 1 } + - { value: 3, descr: Ok, graph: 1, generic: 0 } + - { value: 255, descr: not Available, graph: 1, generic: 0 } + index: nmPSU3Status.{{ $index }} + group: Alarms + + dbm: + data: + - + oid: SPEEDCARRIER-MIB::convSxLSFPDMIParamTable + value: SPEEDCARRIER-MIB::convSxLSFPDMIRxLevel + num_oid: .1.3.6.1.4.1.3652.3.3.1.8.1.1.{{ $index }} + descr: Slot {{ SPEEDCARRIER-MIB::convSxLSFPDMISlot }} Port {{ SPEEDCARRIER-MIB::convSxLSFPDMIPort }} Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEEDCARRIER-MIB::convSxLSFPDMITRxLowThresholdAlarmLevel + low_warn_limit: SPEEDCARRIER-MIB::convSxLSFPDMITRxLowThresholdWarningLevel + high_limit: SPEEDCARRIER-MIB::convSxLSFPDMIRxHighAlarm + index: convSxLSFPDMIRxLevel.{{ $index }} + group: transceiver + - + oid: SPEEDCARRIER-MIB::convSxLSFPDMIParamTable + value: SPEEDCARRIER-MIB::convSxLSFPDMITxLevel + num_oid: .1.3.6.1.4.1.3652.3.3.1.8.1.1.{{ $index }} + descr: Slot {{ SPEEDCARRIER-MIB::convSxLSFPDMISlot }} Port {{ SPEEDCARRIER-MIB::convSxLSFPDMIPort }} Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEEDCARRIER-MIB::convSxLSFPDMITTxLowThresholdAlarmLevel + low_warn_limit: SPEEDCARRIER-MIB::convSxLSFPDMITTxLowThresholdWarningLevel + index: convSxLSFPDMITxLevel.{{ $index }} + group: transceiver + + # speedDualline FC + - + oid: SPEED-DUALLINE-FC::speedDuallineFCXCVMeassurementTable + value: SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMIRxLevel + num_oid: .1.3.6.1.4.1.3652.3.3.3.7.1.4.{{ $index }} + descr: Slot {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMISlot }} Port {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMIPort }} Rx Power + divisor: 100 + skip_values: 0 + index: speedDuallineFCPortXCVDMIRxLevel.{{ $index }} + group: transceiver + - + oid: SPEED-DUALLINE-FC::speedDuallineFCXCVMeassurementTable + value: SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMITxLevel + num_oid: .1.3.6.1.4.1.3652.3.3.3.7.1.5.{{ $index }} + descr: Slot {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMISlot }} Port {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMIPort }} Tx Power + divisor: 100 + skip_values: 0 + index: speedDuallineFCPortXCVDMITxLevel.{{ $index }} + group: transceiver + + # speedMUX-200G + # Line Ports + - + oid: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIRxLevel + num_oid: .1.3.6.1.4.1.3652.3.4.1.11.1.5.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIMSlot }} Line Port {{ SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIMPort }} Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIRxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIRxLowWarningThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIRxHighAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIRxHighWarningThreshold + index: speedMux200gLinePortXCVDMIRxLevel.{{ $index }} + group: transceiver + - + oid: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITxLevel + num_oid: .1.3.6.1.4.1.3652.3.4.1.11.1.6.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIMSlot }} Line Port {{ SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIMPort }} Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITxLowWarningThreshold + index: speedMux200gLinePortXCVDMITxLevel.{{ $index }} + group: transceiver + + # Client Ports + # Lane 1 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLevelLane1 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.4.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 1 Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowWarningThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighWarningThreshold + index: speedMux200gClientPortXCVDMIRxLevelLane1.{{ $index }} + group: transceiver + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLevelLane1 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.8.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 1 Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowWarningThreshold + index: speedMux200gClientPortXCVDMITxLevelLane1.{{ $index }} + group: transceiver + + # Lane 2 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLevelLane2 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.5.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 2 Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowWarningThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighWarningThreshold + index: speedMux200gClientPortXCVDMIRxLevelLane2.{{ $index }} + group: transceiver + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLevelLane2 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.9.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 2 Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowWarningThreshold + index: speedMux200gClientPortXCVDMITxLevelLane2.{{ $index }} + group: transceiver + + # Lane 3 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLevelLane3 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.6.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 3 Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowWarningThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighWarningThreshold + index: speedMux200gClientPortXCVDMIRxLevelLane3.{{ $index }} + group: transceiver + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLevelLane3 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.10.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 3 Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowWarningThreshold + index: speedMux200gClientPortXCVDMITxLevelLane3.{{ $index }} + group: transceiver + + # Lane 4 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLevelLane4 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.7.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 4 Rx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxLowWarningThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIRxHighWarningThreshold + index: speedMux200gClientPortXCVDMIRxLevelLane4.{{ $index }} + group: transceiver + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLevelLane4 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.11.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMSlot }} Port {{ SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIMPort }} Lane 4 Tx Power + divisor: 100 + skip_values: 0 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowAlarmThreshold + low_warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxLowWarningThreshold + index: speedMux200gClientPortXCVDMITxLevelLane4.{{ $index }} + group: transceiver + + temperature: + data: + + - + oid: SPEEDCARRIER-MIB::convSxLSFPDMIParamTable + value: SPEEDCARRIER-MIB::convSxLSFPDMITemp + num_oid: .1.3.6.1.4.1.3652.3.3.1.8.1.9.{{ $index }} + descr: Slot {{ SPEEDCARRIER-MIB::convSxLSFPDMISlot }} Port {{ SPEEDCARRIER-MIB::convSxLSFPDMIPort }} Temperature + skip_values: 0 + index: convSxLSFPDMITemp.{{ $index }} + group: transceiver + + + # Speed Multiline + # Slot Temperature + - + oid: SPEED-MULTILINE-MIB::speedMultilineMOverviewTable + value: SPEED-MULTILINE-MIB::speedMultilineMTemperature + num_oid: .1.3.6.1.4.1.3652.3.3.6.1.1.7.{{ $index }} + descr: Slot {{ SPEED-MULTILINE-MIB::speedMultilineMSlot }} Temperature + skip_values: 0 + high_limit: SPEED-MULTILINE-MIB::speedMultilineMTempAlarmLevel + warn_limit: SPEED-MULTILINE-MIB::speedMultilineMTempWarningLevel + index: speedMultilineMTemperature.{{ $index }} + group: Chassis + + # Ports + - + oid: SPEED-MULTILINE-MIB::speedMultilinePortXCVValueTable + value: SPEED-MULTILINE-MIB::speedMultilinePortXCVDMITemp + num_oid: .1.3.6.1.4.1.3652.3.3.6.4.1.7.{{ $index }} + descr: Slot {{ SPEED-MULTILINE-MIB::speedMultilinePortXCVDMISlot }} Port {{ SPEED-MULTILINE-MIB::speedMultilinePortXCVDMIPort }} Temperature + skip_values: 0 + high_limit: SPEED-MULTILINE-MIB::speedMultilinePortXCVTempHighAlarmLevel + warn_limit: SPEED-MULTILINE-MIB::speedMultilinePortXCVTempHighWarningLevel + index: speedMultilinePortXCVDMITemp.{{ $index }} + group: transceiver + + # speedDualline FC + # Slot Temperature + - + oid: SPEED-DUALLINE-FC::speedDuallineFCMOverviewTable + value: SPEED-DUALLINE-FC::speedDuallineFCMTemperature + num_oid: .1.3.6.1.4.1.3652.3.3.3.1.1.7.{{ $index }} + descr: Slot {{ SPEED-DUALLINE-FC::speedDuallineFCSlot }} Temperature + skip_values: 0 + index: speedDuallineFCMTemperature.{{ $index }} + group: Chassis + + # Ports + - + oid: SPEED-DUALLINE-FC::speedDuallineFCXCVMeassurementTable + value: SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMITemp + num_oid: .1.3.6.1.4.1.3652.3.3.3.7.1.7.{{ $index }} + descr: Slot {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMISlot }} Port {{ SPEED-DUALLINE-FC::speedDuallineFCPortXCVDMIPort }} Temperature + skip_values: 0 + index: speedDuallineFCPortXCVDMITemp.{{ $index }} + group: transceiver + + # speedMUX-200G + # Slot Temperature + - + oid: SPEED-MUX-200G-MIB::speedMux200gMOverviewTable + value: SPEED-MUX-200G-MIB::speedMux200gMTemperature + num_oid: .1.3.6.1.4.1.3652.3.4.1.1.1.7.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gMSlot }} Temperature + skip_values: 0 + index: speedMux200gMTemperature.{{ $index }} + group: Chassis + + # Line Ports + - + oid: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVInfoTable + value: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITemp + num_oid: .1.3.6.1.4.1.3652.3.4.1.7.1.19.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gLineXCVInfoSlot }} Line Port {{ SPEED-MUX-200G-MIB::speedMux200gLineXCVInfoPort }} Temperature + skip_values: 0 + high_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITempAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gLPortXCVDMITempWarningThreshold + index: speedMux200gLinePortXCVDMITemp.{{ $index }} + group: transceiver + + # Client Ports + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVInfoTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITemp + num_oid: .1.3.6.1.4.1.3652.3.4.1.6.1.16.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoSlot }} Client Port {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoPort }} Temperature + skip_values: 0 + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITempAlarmThreshold + warn_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITempWarningThreshold + index: speedMux200gClientPortXCVDMITemp.{{ $index }} + group: transceiver + + + current: + data: + # speedMultiline + # Line Ports + - + oid: SPEED-MULTILINE-MIB::speedMultilinePortXCVValueTable + value: SPEED-MULTILINE-MIB::speedMultilinePortXCVDMITxBias + num_oid: .1.3.6.1.4.1.3652.3.3.6.4.1.6.{{ $index }} + descr: Slot {{ SPEED-MULTILINE-MIB::speedMultilinePortXCVDMISlot }} Line Port {{ SPEED-MULTILINE-MIB::speedMultilinePortXCVDMIPort }} Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MULTILINE-MIB::speedMultilinePortXCVTxBiasLowAlarmLevel + high_limit: SPEED-MULTILINE-MIB::speedMultilinePortXCVTxBiasHighAlarmLevel + index: speedMultilinePortXCVDMITxBias.{{ $index }} + group: transceiver + + # speedMUX-200G + # Line Ports + - + oid: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMITxBias + num_oid: .1.3.6.1.4.1.3652.3.4.1.11.1.7.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gLineXCVInfoSlot }} Line Port {{ SPEED-MUX-200G-MIB::speedMux200gLineXCVInfoPort }} Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIBiasLowAlarmThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gLinePortXCVDMIBiasHighAlarmThreshold + index: speedMux200gLinePortXCVDMITxBias.{{ $index }} + group: transceiver + + # Client Ports + # Lane 1 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxBiasLane1 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.12.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoSlot }} Client Port {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoPort }} Lane 1 Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasLowAlarmThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasHighAlarmThreshold + index: speedMux200gClientPortXCVDMITxBiasLane1.{{ $index }} + group: transceiver + + # Lane 2 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxBiasLane2 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.13.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoSlot }} Client Port {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoPort }} Lane 2 Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasLowAlarmThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasHighAlarmThreshold + index: speedMux200gClientPortXCVDMITxBiasLane2.{{ $index }} + group: transceiver + + # Lane 3 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxBiasLane3 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.14.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoSlot }} Client Port {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoPort }} Lane 3 Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasLowAlarmThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasHighAlarmThreshold + index: speedMux200gClientPortXCVDMITxBiasLane3.{{ $index }} + group: transceiver + + # Lane 4 + - + oid: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVValueTable + value: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMITxBiasLane4 + num_oid: .1.3.6.1.4.1.3652.3.4.1.10.1.15.{{ $index }} + descr: Slot {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoSlot }} Client Port {{ SPEED-MUX-200G-MIB::speedMux200gClientXCVInfoPort }} Lane 4 Tx Current + skip_values: 0 + divisor: 100000 + low_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasLowAlarmThreshold + high_limit: SPEED-MUX-200G-MIB::speedMux200gClientPortXCVDMIBiasHighAlarmThreshold + index: speedMux200gClientPortXCVDMITxBiasLane4.{{ $index }} + group: transceiver diff --git a/priv/profiles/os_discovery/panduit-eagle.yaml b/priv/profiles/os_discovery/panduit-eagle.yaml new file mode 100644 index 00000000..cb284c57 --- /dev/null +++ b/priv/profiles/os_discovery/panduit-eagle.yaml @@ -0,0 +1,29 @@ +mib: HAWK-I2-MIB +modules: + sensors: + temperature: + data: + - + oid: ipTHATable + value: ipTHAValue + num_oid: '.1.3.6.1.4.1.3711.24.1.1.1.2.2.1.7.{{ $index }}' + descr: '{{ $ipTHAName }} {{ $ipTHALocn }}' + divisor: 10 + skip_values: + - + oid: ipTHAType + op: '!=' + value: 2 + humidity: + data: + - + oid: ipTHATable + value: ipTHAValue + num_oid: '.1.3.6.1.4.1.3711.24.1.1.1.2.2.1.7.{{ $index }}' + descr: '{{ $ipTHAName }} {{ $ipTHALocn }}' + divisor: 10 + skip_values: + - + oid: ipTHAType + op: '!=' + value: 3 diff --git a/priv/profiles/os_discovery/panduit.yaml b/priv/profiles/os_discovery/panduit.yaml new file mode 100644 index 00000000..ee782f72 --- /dev/null +++ b/priv/profiles/os_discovery/panduit.yaml @@ -0,0 +1,209 @@ +mib: PANDUIT-MIB +modules: + os: + hardware: PANDUIT-MIB::pdug5PartNumber.1 + serial: PANDUIT-MIB::pdug5SerialNumber.1 + version: PANDUIT-MIB::pdug5FirmwareVersion.1 + features: RFC1213-MIB::sysDescr.0 + features_replace: + - '/SN:/' + - '/PN:Device Model:\S+/' + sensors: + state: + data: + - + oid: pdug5IdentEntry + value: pdug5Status + num_oid: '.1.3.6.1.4.1.19536.10.1.1.2.1.9.{{ $index }}' + descr: 'System {{ index }} Overall Status' + states: + - { descr: 'Other', graph: 0, value: 1, generic: 3 } + - { descr: 'OK', graph: 0, value: 2, generic: 0 } + - { descr: 'degraded', graph: 0, value: 3, generic: 1 } + - { descr: 'failed', graph: 0, value: 4, generic: 2 } + - + oid: pdug5GroupEntry + value: pdug5GroupBreakerStatus + num_oid: '.1.3.6.1.4.1.19536.10.1.3.1.1.26.{{ $index }}' + descr: 'Breaker {{ pdug5GroupName }} Status' + index: 'pdug5GroupBreakerStatus.{{ $index }}' + state_name: pdug5GroupBreakerStatus + states: + - { descr: 'Not Applicable', graph: 0, value: 1, generic: 0 } + - { descr: 'On', graph: 0, value: 2, generic: 0 } + - { descr: 'Off', graph: 0, value: 3, generic: 2 } + skip_values: + - + oid: pdug5GroupBreakerStatus + op: '=' + value: 0 + - + oid: pdug5Outlet + value: pdug5OutletControlStatus + index: 'pdug5OutletIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.19536.10.1.5.2.1.1.{{ $index }}' + descr: '{{ $pdug5OutletName }} (#{{ $subindex1 }}) State' + group: 'Outlets' + states: + - { value: 1, generic: 3, descr: off, graph: 0 } + - { value: 2, generic: 0, descr: on, graph: 0 } + - { value: 3, generic: 1, descr: pendingOff, graph: 0 } + - { value: 4, generic: 2, descr: pendingOn, graph: 0 } + skip_values: + - + oid: 'pdug5OutletIndex' + op: '=' + value: 0 + power: + data: + - + oid: pdug5GroupEntry + value: pdug5GroupPowerWatts + num_oid: '.1.3.6.1.4.1.19536.10.1.3.1.1.20.{{ $index }}' + multiplier: 1 + descr: 'Breaker {{ $pdug5GroupName }} Output' + group: breakers + index: 'pdug5GroupPowerWatts.{{ $index }}' + skip_values: + - + oid: pdug5GroupName + op: '=' + value: '.' + - + oid: pdug5InputEntry + value: pdug5InputPowerWatts + num_oid: '.1.3.6.1.4.1.19536.10.1.2.1.1.5.{{ $index }}' + multiplier: 1 + descr: 'Input power' + - + oid: pdug5OutletEntry + value: pdug5OutletWatts + num_oid: '.1.3.6.1.4.1.19536.10.1.5.1.1.13.{{ $index }}' + multiplier: 1 + descr: '{{ $pdug5OutletName }} (#{{ $subindex1 }})' + group: outlets + index: 'pdug5OutletIndex.{{ $index }}' + skip_values: + - + oid: pdug5OutletIndex + op: '=' + value: 0 + power_factor: + data: + - + oid: pdug5InputPhaseEntry + value: pdug5InputPhasePowerFactor + index: 'pdug5InputPhaseIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.19536.10.1.2.2.1.23.{{ $index }}' + descr: '{{ $pdug5InputPhasePowerMeasType }} Power Factor' + divisor: 100 + skip_values: + - + oid: pdug5InputPhaseIndex + op: '=' + value: 0 + current: + data: + - + oid: pdug5GroupEntry + value: pdug5GroupCurrent + num_oid: '.1.3.6.1.4.1.19536.10.1.3.1.1.12.{{ $index }}' + descr: 'Breaker {{ $pdug5GroupName }} Current' + group: breakers + divisor: 100 + index: 'pdug5GroupCurrent.{{ $index }}' + high_limit: pdug5GroupCurrentThUpperCritical + warn_limit: pdug5GroupCurrentThUpperWarning + skip_values: + - + oid: pdug5GroupName + op: '=' + value: '.' + - + oid: pdug5InputEntry + value: pdug5InputTotalCurrent + num_oid: '.1.3.6.1.4.1.19536.10.1.2.1.1.11.{{ $index }}' + divisor: 100 + descr: 'Input current' + voltage: + data: + - + oid: pdug5GroupEntry + value: pdug5GroupVoltage + num_oid: '.1.3.6.1.4.1.19536.10.1.3.1.1.5.{{ $index }}' + divisor: 10 + descr: 'Breaker {{ $pdug5GroupName }} Voltage' + group: breakers + index: 'pdug5GroupVoltage.{{ $index }}' + skip_values: + - + oid: pdug5GroupName + op: '=' + value: '.' + frequency: + data: + - + oid: pdug5InputEntry + value: pdug5InputFrequency + num_oid: '.1.3.6.1.4.1.19536.10.1.2.1.1.2.{{ $index }}' + divisor: 10 + descr: 'Input frequency' + load: + data: + - + oid: pdug5InputPhaseTable + value: pdug5InputPhaseCurrentPercentLoad + num_oid: '.1.3.6.1.4.1.19536.10.1.2.2.1.17.{{ $index }}' + descr: '{{ pdug5InputPhasePowerMeasType }} Input Load' + index: 'pdug5InputPhaseIndex.{{ $index }}' + skip_values: + - + oid: pdug5InputPhaseIndex + op: '=' + value: 0 + - + oid: pdug5GroupEntry + value: pdug5GroupCurrentPercentLoad + num_oid: '.1.3.6.1.4.1.19536.10.1.3.1.1.18.{{ $index }}' + descr: 'Breaker {{ pdug5GroupName }} Output Load' + group: breakers + skip_values: + - + oid: pdug5GroupName + op: '=' + value: '.' + temperature: + data: + - + oid: pdug5TemperatureTable + value: pdug5TemperatureValue + index: 'pdug5TemperatureIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.19536.10.1.4.2.1.4.{{ $index }}' + descr: '{{ $pdug5TemperatureName }} Temperature sensor' + low_limit: pdug5TemperatureThLowerCritical + low_warn_limit: pdug5TemperatureThLowerWarning + warn_limit: pdug5TemperatureThUpperWarning + high_limit: pdug5TemperatureThUpperCritical + skip_values: + - + oid: 'pdug5TemperatureProbeStatus' + op: '==' + value: '1' + humidity: + data: + - + oid: pdug5HumidityTable + value: pdug5HumidityValue + index: 'pdug5HumidityIndex.{{ $index }}' + num_oid: '.1.3.6.1.4.1.19536.10.1.4.3.1.4.{{ $index }}' + descr: '{{ $pdug5HumidityName.0.1 }} Humidity sensor' + low_limit: pdug5HumidityThLowerCritical + low_warn_limit: pdug5HumidityThLowerWarning + warn_limit: pdug5HumidityThUpperWarning + high_limit: pdug5HumidityThUpperCritical + group: 'Sensors' + skip_values: + - + oid: 'pdug5HumidityProbeStatus' + op: '==' + value: '1' diff --git a/priv/profiles/os_discovery/panos.yaml b/priv/profiles/os_discovery/panos.yaml new file mode 100644 index 00000000..a92562fb --- /dev/null +++ b/priv/profiles/os_discovery/panos.yaml @@ -0,0 +1,180 @@ +mib: PAN-COMMON-MIB +modules: + os: + hardware: PAN-COMMON-MIB::panChassisType.0 + serial: PAN-COMMON-MIB::panSysSerialNumber.0 + version: PAN-COMMON-MIB::panSysSwVersion.0 + sensors: + additional_oids: + data: + - + oid: + - panSessionMax + - panVsysName + - panVsysMaxSessions + state: + data: + - + oid: panSysHAMode + num_oid: '.1.3.6.1.4.1.25461.2.1.2.1.13.{{ $index }}' + index: 'panSysHAMode.{{ $index }}' + descr: High Availability Mode + states: + - { value: 1, generic: 0, graph: 1, descr: active-passive } + - { value: 2, generic: 0, graph: 1, descr: active-active } + - + oid: panSysHAState + num_oid: '.1.3.6.1.4.1.25461.2.1.2.1.11.{{ $index }}' + index: 'panSysHAState.{{ $index }}' + descr: High Availability Local Status + state_name: panSysHaStateEnum + states: + - { value: 0, generic: 2, graph: 1, descr: unknown } + - { value: 1, generic: 2, graph: 1, descr: suspended } + - { value: 2, generic: 2, graph: 1, descr: non-functional } + - { value: 3, generic: 1, graph: 1, descr: initial } + - { value: 4, generic: 3, graph: 1, descr: passive } + - { value: 5, generic: 0, graph: 1, descr: active } + - { value: 10, generic: 2, graph: 1, descr: tentative } + - { value: 11, generic: 3, graph: 1, descr: active-secondary } + - { value: 12, generic: 0, graph: 1, descr: active-primary } + - + oid: panSysHAPeerState + num_oid: '.1.3.6.1.4.1.25461.2.1.2.1.12.{{ $index }}' + index: 'panSysHAPeerState.{{ $index }}' + descr: High Availability Peer Status + state_name: panSysHaStateEnum + states: + - { value: 0, generic: 2, graph: 1, descr: unknown } + - { value: 1, generic: 2, graph: 1, descr: suspended } + - { value: 2, generic: 2, graph: 1, descr: non-functional } + - { value: 3, generic: 1, graph: 1, descr: initial } + - { value: 4, generic: 3, graph: 1, descr: passive } + - { value: 5, generic: 0, graph: 1, descr: active } + - { value: 10, generic: 1, graph: 1, descr: tentative } + - { value: 11, generic: 3, graph: 1, descr: active-secondary } + - { value: 12, generic: 0, graph: 1, descr: active-primary } + skip_values: + - + oid: panSysHAState.0 + op: '=' + value: 'disabled' + - + oid: panMgmtPanoramaConnected + num_oid: '.1.3.6.1.4.1.25461.2.1.2.4.1.{{ $index }}' + index: 'panMgmtPanoramaConnected.{{ $index }}' + descr: Panorama Server 1 + group: Panorama + states: + - { value: 0, generic: 1, graph: 1, descr: Not-Connected } + - { value: 1, generic: 0, graph: 1, descr: Connected } + skip_values: + - + device: hardware + op: '=' + value: 'Panorama' + - + oid: panMgmtPanorama2Connected + num_oid: '.1.3.6.1.4.1.25461.2.1.2.4.2.{{ $index }}' + index: 'panMgmtPanorama2Connected.{{ $index }}' + descr: Panorama Server 2 + group: Panorama + states: + - { value: 0, generic: 1, graph: 1, descr: Not-Connected } + - { value: 1, generic: 0, graph: 1, descr: Connected } + skip_values: + - + device: hardware + op: '=' + value: 'Panorama' + count: + data: + - + oid: panSessionActive + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.3.{{ $index }}' + index: 'panSessionActive.{{ $index }}' + descr: Active Sessions + group: Sessions + high_limit: panSessionMax + - + oid: panSessionActiveSslProxy + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.7.{{ $index }}' + index: 'panSessionActiveSslProxy.{{ $index }}' + descr: Active Sessions in SSL Proxy + group: Sessions + high_limit: panSessionMax + - + oid: panSessionActiveTcp + value: panSessionActiveTcp + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.4.{{ $index }}' + index: 'panSessionActiveTcp.{{ $index }}' + descr: Active TCP Sessions + group: Sessions + high_limit: panSessionMax + - + oid: panSessionActiveUdp + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.5.{{ $index }}' + index: 'panSessionActiveUdp.{{ $index }}' + descr: Active UDP Sessions + group: Sessions + high_limit: panSessionMax + - + oid: panVsysActiveSessions + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.9.1.4.{{ $index }}' + index: 'panVsysActiveSessions.{{ $index }}' + descr: Active Sessions + group: '{{ $panVsysName }}' + high_limit: panVsysMaxSessions + - + oid: panVsysActiveTcpCps + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.9.1.6.{{ $index }}' + index: 'panVsysActiveTcpCps.{{ $index }}' + descr: TCP Connections Per Second + group: '{{ $panVsysName }}' + - + oid: panVsysActiveUdpCps + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.9.1.7.{{ $index }}' + index: 'panVsysActiveUdpCps.{{ $index }}' + descr: UDP Connections Per Second + group: '{{ $panVsysName }}' + - + oid: panVsysActiveOtherIpCps + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.9.1.8.{{ $index }}' + index: 'panVsysActiveOtherIpCps.{{ $index }}' + descr: Other IP Connections Per Second + group: '{{ $panVsysName }}' + - + oid: panLcLogRate + num_oid: '.1.3.6.1.4.1.25461.2.3.30.1.1.{{ $index }}' + index: 'panLcLogRate.{{ $index }}' + descr: Log Collection Write Rate (logs/sec) + group: Log Collection + - + oid: panGPGWUtilizationActiveTunnels + num_oid: '.1.3.6.1.4.1.25461.2.1.2.5.1.3.{{ $index }}' + index: 'panGPGWUtilizationActiveTunnels.{{ $index }}' + descr: GlobalProtect VPN Active Sessions + group: VPN + low_limit: 0 + low_warn_limit: 0 + load: + data: + - + oid: panSessionUtilization + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.1.{{ $index }}' + index: 'panSessionUtilization.{{ $index }}' + descr: Session Utilization + group: Sessions + - + oid: panSessionSslProxyUtilization + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.8.{{ $index }}' + index: 'panSessionSslProxyUtilization.{{ $index }}' + descr: Session Utilization in SSL Proxy + group: Sessions + - + oid: panVsysSessionUtilizationPct + num_oid: '.1.3.6.1.4.1.25461.2.1.2.3.9.1.3.{{ $index }}' + index: 'panVsysSessionUtilizationPct.{{ $index }}' + descr: Session Utilization + group: '{{ $panVsysName }}' + diff --git a/priv/profiles/os_discovery/papouch-quido.yaml b/priv/profiles/os_discovery/papouch-quido.yaml new file mode 100644 index 00000000..b4d4f290 --- /dev/null +++ b/priv/profiles/os_discovery/papouch-quido.yaml @@ -0,0 +1,10 @@ +mib: QUIDOS-MIB +modules: + sensors: + temperature: + data: + - + oid: temperatureReading + divisor: 10 + num_oid: '.1.3.6.1.4.1.18248.16.1.1.{{ $index }}' + descr: Temperature diff --git a/priv/profiles/os_discovery/paradyne.yaml b/priv/profiles/os_discovery/paradyne.yaml new file mode 100644 index 00000000..93fdf8a7 --- /dev/null +++ b/priv/profiles/os_discovery/paradyne.yaml @@ -0,0 +1,19 @@ +mib: HDSL2-SHDSL-LINE-MIB +modules: + sensors: + count: + data: + - + oid: hdsl2ShdslSpanStatusTable + value: hdsl2ShdslStatusMaxAttainableLineRate + num_oid: '.1.3.6.1.2.1.10.48.1.2.1.2.{{ $index }}' + descr: 'Max Line Rate' + index: 'mlr-{{ $index }}' + group: 'Modem {{ $subindex0 }}' + - + oid: hdsl2ShdslSpanStatusTable + value: hdsl2ShdslStatusActualLineRate + num_oid: '.1.3.6.1.2.1.10.48.1.2.1.3.{{ $index }}' + descr: 'Actual Line Rate' + index: 'alr-{{ $index }}' + group: 'Modem {{ $subindex0 }}' diff --git a/priv/profiles/os_discovery/parks-switch.yaml b/priv/profiles/os_discovery/parks-switch.yaml new file mode 100644 index 00000000..6a0d6c04 --- /dev/null +++ b/priv/profiles/os_discovery/parks-switch.yaml @@ -0,0 +1,65 @@ +mib: PARKS-PK700 +modules: + mempools: + data: + - + percent_used: '.1.3.6.1.4.1.50224.3.1.1.18.0' + descr: Memory + processors: + data: + - + oid: cpuUsage + num_oid: '.1.3.6.1.4.1.50224.3.1.1.17.{{ $index }}' + descr: Processor + sensors: + additional_oids: + data: + - + oid: + - modulePortName + - moduleState + temperature: + data: + - + oid: mainChipTemperature + num_oid: '.1.3.6.1.4.1.50224.3.1.1.23.{{ $index }}' # OID do sensor de temperatura + descr: "Chip temperature" + - + oid: moduleTemperature + num_oid: '.1.3.6.1.4.1.50224.3.2.4.1.8.{{ $index }}' # OID do sensor de temperatura + descr: 'SFP Temperature {{ $modulePortName }}' + divisor: 100 + index: 'moduleTemperature.{{ $index }}' + skip_value_lt: 1 + dbm: + data: + - + oid: moduleRxPower + num_oid: '.1.3.6.1.4.1.50224.3.2.4.1.12.{{ $index }}' + descr: 'Rx Port {{ $modulePortName }}' + divisor: 100 + index: 'moduleRxPower.{{ $index }}' + skip_values: + - + oid: moduleRxPower + op: '=' + value: -2147483648 + - + oid: moduleState + op: '=' + value: 1 + - + oid: moduleTxPower + num_oid: '.1.3.6.1.4.1.50224.3.2.4.1.11.{{ $index }}' + descr: 'Tx Port {{ $modulePortName }}' + divisor: 100 + index: 'moduleTxPower.{{ $index }}' + skip_values: + - + oid: moduleTxPower + op: '=' + value: -2147483648 + - + oid: moduleState + op: '=' + value: 1 diff --git a/priv/profiles/os_discovery/patton-sn.yaml b/priv/profiles/os_discovery/patton-sn.yaml new file mode 100644 index 00000000..35c53698 --- /dev/null +++ b/priv/profiles/os_discovery/patton-sn.yaml @@ -0,0 +1,52 @@ +mib: SMARTNODE-MIB +modules: + mempools: + additional_oids: + oids: + - SMARTNODE-MIB::memDescr + data: + - + used: SMARTNODE-MIB::memAllocatedBytes + free: SMARTNODE-MIB::memFreeBytes + descr: '{{ SMARTNODE-MIB::memDescr }} Memory' + os: + hardware: + - SMARTNODE-MIB::hwRelease.0 + - SMARTNODE-MIB::hwVersion.0 + - SMARTNODE-MIB::productName.0 + hardware_template: '{{ SMARTNODE-MIB::productName.0 }}, HwRel: {{ SMARTNODE-MIB::hwRelease.0 }}, HwVer: {{ SMARTNODE-MIB::hwVersion.0 }}' + serial: SMARTNODE-MIB::serialNumber.0 + version: SMARTNODE-MIB::swVersion.0 + processors: + data: + - + oid: cpuTable + value: cpuWorkloadCurrent + num_oid: '.1.3.6.1.4.1.1768.100.70.10.2.1.2.{{ $index }}' + descr: '{{ $cpuDescr }} Processor' + index: 'cpu.{{ $index }}' + sensors: + temperature: + data: + - + oid: tempProbeTable + value: currentDegreesCelsius + num_oid: '.1.3.6.1.4.1.1768.100.70.30.2.1.2.{{ $index }}' + descr: '{{ $tempProbeDescr }}' + index: 'temp.{{ $index }}' + count: + data: + - + oid: gwTable + value: gwCurrentOngoingCalls + num_oid: '.1.3.6.1.4.1.1768.100.70.40.2.1.3.{{ $index }}' + descr: '{{ $gwDescr }} ongoing calls' + index: 'gw-{{ $index }}' + group: 'Ongoing calls' + - + oid: isdnPortTable + value: isdnPortCurrentOngoingCalls + num_oid: '.1.3.6.1.4.1.1768.100.70.50.2.1.3.{{ $index }}' + descr: '{{ $isdnPortDescr }} ongoing calls' + index: 'isdn-{{ $index }}' + group: 'Ongoing calls' diff --git a/priv/profiles/os_discovery/pbn-cp.yaml b/priv/profiles/os_discovery/pbn-cp.yaml new file mode 100644 index 00000000..879625ca --- /dev/null +++ b/priv/profiles/os_discovery/pbn-cp.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: .1.3.6.1.4.1.11606.24.1.1.7.0 + features: .1.3.6.1.4.1.11606.24.1.1.10.0 + version: .1.3.6.1.4.1.11606.24.1.1.6.0 + serial: .1.3.6.1.4.1.11606.24.1.1.4.0 diff --git a/priv/profiles/os_discovery/pbn.yaml b/priv/profiles/os_discovery/pbn.yaml new file mode 100644 index 00000000..02fe4956 --- /dev/null +++ b/priv/profiles/os_discovery/pbn.yaml @@ -0,0 +1,10 @@ +modules: + os: + sysDescr_regex: '/Software\s+(?.*) Series Software, Version (?[^,]+), .*Serial num:(?[^,]+),/s' + mempools: + data: + - + total: NMS-MEMORY-POOL-MIB::nmsMemoryPoolTotalMemorySize + percent_used: NMS-MEMORY-POOL-MIB::nmsMemoryPoolUtilization + type: pbn-mem + descr: 'Main Memory' diff --git a/priv/profiles/os_discovery/pcoweb-rittal-lcp-3311.yaml b/priv/profiles/os_discovery/pcoweb-rittal-lcp-3311.yaml new file mode 100644 index 00000000..e88829db --- /dev/null +++ b/priv/profiles/os_discovery/pcoweb-rittal-lcp-3311.yaml @@ -0,0 +1,526 @@ +mib: CAREL-RITTAL-LCP-3311-MIB +modules: + sensors: + temperature: + data: + - + oid: lcpSetpoint + value: lcpSetpoint + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.48.{{ $index }}' + descr: LCP setpoint + index: 'lcpSetpoint.{{ $index }}' + low_limit: 150 + high_limit: 280 + - + oid: inputTemperatureAverage + value: inputTemperatureAverage + divisor: 10 + group: Input + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.21.{{ $index }}' + descr: Average input temperature + index: 'inputTemperatureAverage.{{ $index }}' + low_limit: -140 + low_warn_limit: -100 + warn_limit: 400 + high_limit: 440 + - + # Temps according to ASHRAE standards + oid: outputTemperatureAverage + value: outputTemperatureAverage + divisor: 10 + group: Output + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.22.{{ $index }}' + descr: Average output temperature + index: 'outputTemperatureAverage.{{ $index }}' + low_limit: 150 + low_warn_limit: 160 + warn_limit: 280 + high_limit: 300 + - + oid: inputTemperatureTopSensor + value: inputTemperatureTopSensor + divisor: 10 + group: Input + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.6.{{ $index }}' + descr: Top sensor input temperature + index: 'inputTemperatureTopSensor.{{ $index }}' + low_limit: -140 + low_warn_limit: -100 + warn_limit: 400 + high_limit: 440 + - + oid: inputTemperatureMidSensor + value: inputTemperatureMidSensor + divisor: 10 + group: Input + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.7.{{ $index }}' + descr: Mid sensor input temperature + index: 'inputTemperatureMidSensor.{{ $index }}' + low_limit: -140 + low_warn_limit: -100 + warn_limit: 400 + high_limit: 440 + - + oid: inputTemperatureBottomSensor + value: inputTemperatureBottomSensor + divisor: 10 + group: Input + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.8.{{ $index }}' + descr: Bottom sensor input temperature + index: 'inputTemperatureBottomSensor.{{ $index }}' + low_limit: -140 + low_warn_limit: -100 + warn_limit: 400 + high_limit: 440 + - + oid: outputTemperatureTopSensor + value: outputTemperatureTopSensor + divisor: 10 + group: Output + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.2.{{ $index }}' + descr: Top sensor output temperature + index: 'outputTemperatureTopSensor.{{ $index }}' + low_limit: 150 + low_warn_limit: 160 + warn_limit: 280 + high_limit: 300 + - + oid: outputTemperatureMidSensor + value: outputTemperatureMidSensor + divisor: 10 + group: Output + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.3.{{ $index }}' + descr: Mid sensor output temperature + index: 'outputTemperatureMidSensor.{{ $index }}' + low_limit: 150 + low_warn_limit: 160 + warn_limit: 280 + high_limit: 300 + - + oid: outputTemperatureBottomSensor + value: outputTemperatureBottomSensor + divisor: 10 + group: Output + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.4.{{ $index }}' + descr: Bottom sensor output temperature + index: 'outputTemperatureBottomSensor.{{ $index }}' + low_limit: 150 + low_warn_limit: 160 + warn_limit: 280 + high_limit: 300 + - + oid: driverTemperature + value: driverTemperature + divisor: 10 + group: Unit + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.4.{{ $index }}' + descr: Power+ driver temperature + index: 'driverTemperature.{{ $index }}' + low_limit: 10 + low_warn_limit: 20 + warn_limit: 100 + high_limit: 120 + - + oid: compressorDischargeTemperature + value: compressorDischargeTemperature + divisor: 10 + group: Unit + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.9.{{ $index }}' + descr: Compressor discharge temperature + index: 'compressorDischargeTemperature.{{ $index }}' + low_limit: 30 + low_warn_limit: 50 + warn_limit: 880 + high_limit: 900 + - + oid: compressorSuctionTemperature + value: compressorSuctionTemperature + divisor: 10 + group: Unit + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.10.{{ $index }}' + descr: Compressor suction temperature + index: 'compressorSuctionTemperature.{{ $index }}' + low_limit: 30 + low_warn_limit: 50 + warn_limit: 880 + high_limit: 900 + - + oid: evaporatorTemperature + value: evaporatorTemperature + divisor: 10 + group: Unit + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.13.{{ $index }}' + descr: Evaporator temperature + index: 'evaporatorTemperature.{{ $index }}' + low_limit: -100 + low_warn_limit: -80 + warn_limit: 150 + high_limit: 200 + - + oid: condensingTemperature + value: condensingTemperature + divisor: 10 + group: Unit + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.14.{{ $index }}' + descr: Condensor temperature + index: 'condensingTemperature.{{ $index }}' + low_limit: 30 + low_warn_limit: 50 + warn_limit: 450 + high_limit: 500 + + pressure: + data: + - + oid: compressorDischargePressure + value: compressorDischargePressure + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.11.{{ $index }}' + descr: Compressor discharge pressure + index: 'compressorDischargePressure.{{ $index }}' + warn_limit: 2800 + high_limit: 2900 + - + oid: compressorSuctionPressure + value: compressorSuctionPressure + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.12.{{ $index }}' + descr: Compressor suction pressure + index: 'compressorSuctionPressure.{{ $index }}' + warn_limit: 2800 + high_limit: 2900 + cooling: + # LCP DX has a max cooling capacity of 12Kw. Measurement is done in % + data: + - + oid: coolingCapacity + value: coolingCapacity + multiplier: 120 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.16.{{ $index }}' + descr: Free cooling capacity + index: 'coolingCapacity.{{ $index }}' + low_limit: 1000 + low_warn_limit: 1500 + fanspeed: + data: + - + oid: fanSpeedRpm + value: fanSpeedRpm + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.29.{{ $index }}' + descr: Fan speed + index: 'fanSpeedRpm.{{ $index }}' + warn_limit: 3400 + high_limit: 3600 + - + # See documentation pg 47 + oid: compressorRotorSpeedHz + value: compressorRotorSpeedHz + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.1.{{ $index }}' + descr: Compressor rotor speed + index: 'compressorRotorSpeed.{{ $index }}' + low_limit: 500 + low_warn_limit: 1000 + warn_limit: 6000 + high_limit: 6500 + current: + data: + - + oid: compressorMotorCurrent + value: compressorMotorCurrent + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.2.46.{{ $index }}' + descr: Compressor motor current + index: 'compressorMotorCurrent.{{ $index }}' + voltage: + data: + - + oid: dcBusVoltage + value: dcBusVoltage + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.5.{{ $index }}' + descr: Power+ DC voltage + index: 'dcBusVoltage.{{ $index }}' + low_limit: 500 + low_warn_limit: 510 + warn_limit: 565 + high_limit: 570 + - + oid: motorVoltage + value: motorVoltage + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.6.{{ $index }}' + descr: Motor voltage + index: 'motorVoltage.{{ $index }}' + low_limit: 20 + low_warn_limit: 50 + warn_limit: 265 + high_limit: 270 + state: + data: + - + oid: unitOnOff + group: Power + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.13.{{ $index }}' + descr: Unit + index: 'unitOnOff.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'on' } + - { value: 2, generic: 0, graph: 0, descr: 'energy-save' } + - { value: 3, generic: 0, graph: 0, descr: 'auto' } + - + oid: driverPowerStatus + group: Power + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.13.{{ $index }}' + descr: Power+ drive status + index: 'driverPowerStatus.{{ $index }}' + states: + - { value: 1, generic: 0, graph: 0, descr: 'stop' } + - { value: 2, generic: 0, graph: 0, descr: 'run' } + - { value: 3, generic: 2, graph: 0, descr: 'alarm' } + - + oid: inverterOnOff + group: Power + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.17.{{ $index }}' + descr: Inverter + index: 'inverterOnOff.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'on' } + - + oid: envelopeZone + group: Operating envelop + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.14.{{ $index }}' + descr: Cooling envelope zone + index: 'envelopeZone.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 0, graph: 0, descr: 'maximum compression ratio' } + - { value: 2, generic: 0, graph: 0, descr: 'maximum discharge power' } + - { value: 3, generic: 0, graph: 0, descr: 'current limit' } + - { value: 4, generic: 0, graph: 0, descr: 'maximum suction power' } + - { value: 5, generic: 0, graph: 0, descr: 'minimum compression ratio' } + - { value: 6, generic: 0, graph: 0, descr: 'minimum delta power' } + - { value: 7, generic: 0, graph: 0, descr: 'minimum discharge power' } + - { value: 8, generic: 0, graph: 0, descr: 'minimum suction power' } + - + oid: compressorOverloadAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.2.{{ $index }}' + descr: Compressor overload + index: 'compressorOverloadAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: highPressureAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.3.{{ $index }}' + descr: High pressure + index: 'highPressureAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: inverterAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.11.{{ $index }}' + descr: Inverter + index: 'inverterAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: driveAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.12.{{ $index }}' + descr: Power+ drive + index: 'driveAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: generalAlarm + group: Alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.23.{{ $index }}' + descr: General alarm + index: 'generalAlarm.{{ $index }}' + states: + - { value: 0, generic: 2, graph: 0, descr: 'alarm' } + - { value: 1, generic: 0, graph: 0, descr: 'ok' } + - + oid: currentErrorCode + group: Alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.3.3.{{ $index }}' + descr: Current Error code + index: 'currentErrorCode.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 2, generic: 2, graph: 0, descr: 'ALA02 - Probe B2 faulty or disconnected' } + - { value: 3, generic: 2, graph: 0, descr: 'ALA03 - Probe B3 faulty or disconnected' } + - { value: 4, generic: 2, graph: 0, descr: 'ALA04 - Probe B4 faulty or disconnected' } + - { value: 5, generic: 2, graph: 0, descr: 'ALA05 - Probe B5 faulty or disconnected' } + - { value: 6, generic: 2, graph: 0, descr: 'ALA06 - Probe B6 faulty or disconnected' } + - { value: 7, generic: 2, graph: 0, descr: 'ALA07 - Probe B7 faulty or disconnected' } + - { value: 8, generic: 2, graph: 0, descr: 'ALA08 - Probe B8 faulty or disconnected' } + - { value: 9, generic: 2, graph: 0, descr: 'ALA09 - Probe B9 faulty or disconnected' } + - { value: 10, generic: 2, graph: 0, descr: 'ALA10 - Probe B10 faulty or disconnected' } + - { value: 11, generic: 2, graph: 0, descr: 'ALA11 - Probe B11 faulty or disconnected' } + - { value: 12, generic: 2, graph: 0, descr: 'ALA12 - Probe B12 faulty or disconnected' } + - { value: 13, generic: 2, graph: 0, descr: 'ALB01 - High pressure' } + - { value: 14, generic: 2, graph: 0, descr: 'ALB02 - High pressure compressor 1 by transducer' } + - { value: 15, generic: 2, graph: 0, descr: 'ALB03 - Low pressure compressor/compressors by transducer' } + - { value: 16, generic: 2, graph: 0, descr: 'ALC01 - Compressor 1 overload or inverter alarm' } + - { value: 17, generic: 2, graph: 0, descr: 'ALC03 - Envelope alarm zone' } + - { value: 18, generic: 2, graph: 0, descr: 'ALC04 - Compressor start failure' } + - { value: 19, generic: 2, graph: 0, descr: 'ALC05 - High discharge gas temperature' } + - { value: 20, generic: 2, graph: 0, descr: 'ALC06 - Low pressure differential (insufficient lubrication)' } + - { value: 21, generic: 2, graph: 0, descr: 'ALF01 - Fan overload' } + - { value: 22, generic: 2, graph: 0, descr: 'ALD02 - Sensor failure' } + - { value: 23, generic: 2, graph: 0, descr: 'ALD03 - EEV motor error' } + - { value: 24, generic: 2, graph: 0, descr: 'ALD04 - Low superheat' } + - { value: 25, generic: 2, graph: 0, descr: 'ALD05 - Low suction temperature' } + - { value: 26, generic: 2, graph: 0, descr: 'ALD06 - Low evaporation temperature' } + - { value: 27, generic: 2, graph: 0, descr: 'ALD07 - High evaporation temperature' } + - { value: 28, generic: 2, graph: 0, descr: 'ALD08 - High condensing temperature' } + - { value: 29, generic: 2, graph: 0, descr: 'ALD09 - Driver offline' } + - { value: 30, generic: 2, graph: 0, descr: 'ALL01 - Power+ offline' } + - { value: 31, generic: 2, graph: 0, descr: 'ALL02 - Power+ Generic Alarm' } + - { value: 32, generic: 2, graph: 0, descr: 'ALL99 - Unexpected inverter stop' } + - { value: 33, generic: 2, graph: 0, descr: 'ALW04 - Max temperature (warning)' } + - + oid: compressorEnvelopeAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.30.{{ $index }}' + descr: Compressor envelope + index: 'compressorEnvelopeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorStartupFailureAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.31.{{ $index }}' + descr: Compressor startup (max retries) + index: 'compressorStartupFailureAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: maxDischargeTemperatureAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.33.{{ $index }}' + descr: Maximum discharge temperature + index: 'maxDischargeTemperatureAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorDeltaPressureAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.35.{{ $index }}' + descr: Compressor delta pressure + index: 'compressorDeltaPressureAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: oilReturnAlarm + group: Component alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.36.{{ $index }}' + descr: Oil return (lubrication issue) + index: 'oilReturnAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: outputTemperatureTopProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.38.{{ $index }}' + descr: Output top probe + index: 'outputTemperatureTopProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: outputTemperatureMidProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.39.{{ $index }}' + descr: Output mid probe + index: 'outputTemperatureMidProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: outputTemperatureBottomProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.40.{{ $index }}' + descr: Output bottom probe + index: 'outputTemperatureBottomProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: inputTemperatureTopProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.42.{{ $index }}' + descr: Input top probe + index: 'inputTemperatureTopProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: inputTemperatureMidProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.43.{{ $index }}' + descr: Input mid probe + index: 'inputTemperatureMidProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: inputTemperatureBottomProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.44.{{ $index }}' + descr: Input bottom probe + index: 'inputTemperatureBottomProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorDischargeTemperatureProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.45.{{ $index }}' + descr: Compressor discharge temperature probe + index: 'compressorDischargeTemperatureProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorSuctionTemperatureProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.46.{{ $index }}' + descr: Compressor suction temperature probe + index: 'compressorSuctionTemperatureProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorDischargePressureProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.47.{{ $index }}' + descr: Compressor discharge pressure probe + index: 'compressorDischargePressureProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } + - + oid: compressorSuctionPressureProbeAlarm + group: Probe alarms + num_oid: '.1.3.6.1.4.1.9839.2606.2.1.1.48.{{ $index }}' + descr: Compressor suction pressure probe + index: 'compressorSuctionPressureProbeAlarm.{{ $index }}' + states: + - { value: 0, generic: 0, graph: 0, descr: 'ok' } + - { value: 1, generic: 2, graph: 0, descr: 'alarm' } diff --git a/priv/profiles/os_discovery/pcoweb-rittalchiller.yaml b/priv/profiles/os_discovery/pcoweb-rittalchiller.yaml new file mode 100644 index 00000000..79c44712 --- /dev/null +++ b/priv/profiles/os_discovery/pcoweb-rittalchiller.yaml @@ -0,0 +1,130 @@ +mib: KELVIN-pCOWeb-Chiller-MIB +modules: + sensors: + waterflow: + data: + - + oid: flow-value.0 + value: flow-value + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.73.{{ $index }}' + descr: Water Flow Rate + index: 'flow-value.{{ $index }}' + eer: + data: + - + oid: analogObjects.120 + value: analogObjects + num_oid: '.1.3.6.1.4.1.9839.2.1.3.{{ $index }}' + descr: Energy Efficiency Ratio + index: 'analogObjects.{{ $index }}' + power: + data: + - + oid: analogObjects.103 + value: analogObjects + multiplier: 100 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Power Consumption + index: 'analogObjects.{{ $index }}' + current: + data: + - + oid: amp-value.0 + value: amp-value + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.74.{{ $index }}' + descr: Current Consumption + index: 'amp-value.{{ $index }}' + temperature: + data: + - + oid: analogObjects.140 + value: analogObjects + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Temperature Ambient + index: 'analogObjects.{{ $index }}' + - + oid: analogObjects.137 + value: analogObjects + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Temperature Out + index: 'analogObjects.{{ $index }}' + - + oid: analogObjects.136 + value: analogObjects + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Temperature In + index: 'analogObjects.{{ $index }}' + cooling: + data: + - + oid: cooling-capacity.0 + value: cooling-capacity + multiplier: 100 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.100.{{ $index }}' + descr: Free Cooling Capacity + index: 'cooling-capacity.{{ $index }}' + - + oid: freecooling-capacity.0 + value: freecooling-capacity + multiplier: 100 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.101.{{ $index }}' + descr: Compressor Cooling Capacity + index: 'freecooling-capacity.{{ $index }}' + - + oid: total-capacity.0 + value: total-capacity + multiplier: 100 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.102.{{ $index }}' + descr: Total cooling Capacity + index: 'total-capacity.{{ $index }}' + humidity: + data: + - + oid: pp1.0 + value: pp1 + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.90.{{ $index }}' + descr: Hydraulic Pump 1 Speed + index: 'pp1.{{ $index }}' + - + oid: pp2.0 + value: pp2 + divisor: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.91.{{ $index }}' + descr: Hydraulic Pump 2 Speed + index: 'pp2.{{ $index }}' + pressure: + data: + - + oid: analogObjects.138 + value: analogObjects + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Hydraulic Pressure (Suction) + index: 'analogObjects.{{ $index }}' + - + oid: analogObjects.133 + value: analogObjects + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.{{ $index }}' + descr: Hydraulic Pressure (Discharge) + index: 'analogObjects.{{ $index }}' + - + oid: pressione1.0 + value: pressione1 + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.77.{{ $index }}' + descr: Condensation Pressure 1 + index: 'pressione1.{{ $index }}' + - + oid: pressione2.0 + value: pressione2 + multiplier: 10 + num_oid: '.1.3.6.1.4.1.9839.2.1.2.78.{{ $index }}' + descr: Condensation Pressure 2 + index: 'pressione2.{{ $index }}' diff --git a/priv/profiles/os_discovery/pegasus.yaml b/priv/profiles/os_discovery/pegasus.yaml new file mode 100644 index 00000000..7f1168b5 --- /dev/null +++ b/priv/profiles/os_discovery/pegasus.yaml @@ -0,0 +1,95 @@ +mib: PEGASUS-MIB +modules: + sensors: + state: + data: + - + oid: dslCardTable + value: dslCardOperState + num_oid: '.1.3.6.1.4.1.6368.2.1.1.1.6.{{ $index }}' + descr: LTU {{ $index }} Operational State + state_name: dslCardOperState + states: + - { descr: enabled, graph: 0, value: 1, generic: 0 } + - { descr: disabled, graph: 0, value: 2, generic: 2 } + - + oid: dslCardTable + value: dslCardCommState + num_oid: '.1.3.6.1.4.1.6368.2.1.1.1.9.{{ $index }}' + descr: LTU {{ $index }} Mgmt Comm State + state_name: dslCardCommState + states: + - { descr: disconnected, graph: 0, value: 1, generic: 0 } + - { descr: init, graph: 0, value: 2, generic: 0 } + - { descr: identification, graph: 0, value: 3, generic: 0 } + - { descr: checkHw, graph: 0, value: 4, generic: 0 } + - { descr: hwAdaption, graph: 0, value: 5, generic: 0 } + - { descr: checkHwVers, graph: 0, value: 6, generic: 0 } + - { descr: wrongProgramm, graph: 0, value: 7, generic: 0 } + - { descr: checkConfig, graph: 0, value: 8, generic: 0 } + - { descr: downloadConfig, graph: 0, value: 9, generic: 0 } + - { descr: uploadConfig, graph: 0, value: 10, generic: 0 } + - { descr: statusSynch, graph: 0, value: 11, generic: 0 } + - { descr: resetting, graph: 0, value: 12, generic: 0 } + - { descr: inactive, graph: 0, value: 13, generic: 0 } + - { descr: active, graph: 0, value: 14, generic: 0 } + - + oid: v5CardTable + value: v5CardOperState + num_oid: '.1.3.6.1.4.1.6368.2.2.1.1.7.{{ $index }}' + descr: V5 {{ $index }} Operational State + state_name: v5CardOperState + states: + - { descr: enabled, graph: 0, value: 1, generic: 0 } + - { descr: disabled, graph: 0, value: 2, generic: 2 } + - + oid: v5CardTable + value: v5CardCommState + num_oid: '.1.3.6.1.4.1.6368.2.2.1.1.10.{{ $index }}' + descr: V5 {{ $index }} Mgmt Comm State + state_name: v5CardCommState + states: + - { descr: disconnected, graph: 0, value: 1, generic: 0 } + - { descr: init, graph: 0, value: 2, generic: 0 } + - { descr: identification, graph: 0, value: 3, generic: 0 } + - { descr: checkHw, graph: 0, value: 4, generic: 0 } + - { descr: hwAdaption, graph: 0, value: 5, generic: 0 } + - { descr: checkHwVers, graph: 0, value: 6, generic: 0 } + - { descr: wrongProgramm, graph: 0, value: 7, generic: 0 } + - { descr: checkConfig, graph: 0, value: 8, generic: 0 } + - { descr: downloadConfig, graph: 0, value: 9, generic: 0 } + - { descr: uploadConfig, graph: 0, value: 10, generic: 0 } + - { descr: statusSynch, graph: 0, value: 11, generic: 0 } + - { descr: resetting, graph: 0, value: 12, generic: 0 } + - { descr: inactive, graph: 0, value: 13, generic: 0 } + - { descr: active, graph: 0, value: 14, generic: 0 } + - + oid: dataCardTable + value: dataCardOperState + num_oid: '.1.3.6.1.4.1.6368.2.3.1.1.6.{{ $index }}' + descr: Data {{ $index }} Operational State + state_name: dataCardOperState + states: + - { descr: enabled, graph: 0, value: 1, generic: 0 } + - { descr: disabled, graph: 0, value: 2, generic: 2 } + - + oid: dataCardTable + value: dataCardCommState + num_oid: '.1.3.6.1.4.1.6368.2.3.1.1.9.{{ $index }}' + descr: Data {{ $index }} Mgmt Comm State + state_name: dataCardCommState + states: + - { descr: disconnected, graph: 0, value: 1, generic: 0 } + - { descr: init, graph: 0, value: 2, generic: 0 } + - { descr: identification, graph: 0, value: 3, generic: 0 } + - { descr: checkHw, graph: 0, value: 4, generic: 0 } + - { descr: hwAdaption, graph: 0, value: 5, generic: 0 } + - { descr: checkHwVers, graph: 0, value: 6, generic: 0 } + - { descr: wrongProgramm, graph: 0, value: 7, generic: 0 } + - { descr: checkConfig, graph: 0, value: 8, generic: 0 } + - { descr: downloadConfig, graph: 0, value: 9, generic: 0 } + - { descr: uploadConfig, graph: 0, value: 10, generic: 0 } + - { descr: statusSynch, graph: 0, value: 11, generic: 0 } + - { descr: resetting, graph: 0, value: 12, generic: 0 } + - { descr: inactive, graph: 0, value: 13, generic: 0 } + - { descr: active, graph: 0, value: 14, generic: 0 } diff --git a/priv/profiles/os_discovery/pepwave.yaml b/priv/profiles/os_discovery/pepwave.yaml new file mode 100644 index 00000000..66394d57 --- /dev/null +++ b/priv/profiles/os_discovery/pepwave.yaml @@ -0,0 +1,131 @@ +mib: CELLULAR:DEVICE:PEPVPN-SPEEDFUSION:WAN:WLC +modules: + os: + hardware: DEVICE::deviceModel.0 + serial: DEVICE::deviceSerialNumber.0 + version: DEVICE::deviceFirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - devicePowerSourceName + - wanName + - pepVpnStatusProfileName + temperature: + data: + - + oid: deviceTemperatureCelsius + num_oid: ".1.3.6.1.4.1.27662.200.1.1.1.4.4.1.{{ $index }}" + descr: System Temperature + index: "deviceTemperatureCelsius.{{ $index }}" + divisor: 1000 + count: + data: + - + oid: wlcMaxNumAp + num_oid: ".1.3.6.1.4.1.27662.4.1.1.3.{{ $index }}" + descr: Max. Number of Supported AP Licensed + group: WLC + index: "wlcMaxNumAp.{{ $index }}" + - + oid: wlcNumApProfile + num_oid: ".1.3.6.1.4.1.27662.4.1.1.4.{{ $index }}" + descr: Number of AP Profile Created + group: WLC + index: "wlcNumApProfile.{{ $index }}" + - + oid: wlcNumWlanNetwork + num_oid: ".1.3.6.1.4.1.27662.4.1.1.5.{{ $index }}" + descr: Number of WLAN Network Created + group: WLC + index: "wlcNumWlanNetwork.{{ $index }}" + - + oid: wlcNumApReg + num_oid: ".1.3.6.1.4.1.27662.4.1.1.6.{{ $index }}" + descr: Number of AP Registered + group: WLC + index: "wlcNumApReg.{{ $index }}" + - + oid: wlcNumAssocSta + num_oid: ".1.3.6.1.4.1.27662.4.1.1.8.{{ $index }}" + descr: Number of Associated WLAN Station + group: WLC + index: "wlcNumAssocSta.{{ $index }}" + power: + data: + - + oid: deviceCurrentPower + num_oid: ".1.3.6.1.4.1.27662.200.1.1.1.4.1.1.3.{{ $index }}" + descr: Power Consumption + index: "deviceCurrentPower.{{ $index }}" + signal: + options: + skip_values: -9999 + data: + - + oid: wanSignal + num_oid: ".1.3.6.1.4.1.27662.2.1.2.1.5.{{ $index }}" + descr: "{{ $wanName }} Signal" + index: "wanSignal.{{ $index }}" + + state: + data: + - + oid: devicePSUStatus + num_oid: ".1.3.6.1.4.1.27662.200.1.1.1.4.1.1.2.{{ $index }}" + descr: PSU Status + group: Power Consumption + state_name: devicePSUStatus + states: + - { descr: error, graph: 1, value: 0, generic: 2 } + - { descr: on, graph: 1, value: 1, generic: 0 } + - + oid: deviceFANStatus + num_oid: ".1.3.6.1.4.1.27662.200.1.1.1.4.4.1.{{ $index }}" + descr: FAN Status + group: Fan + state_name: deviceFANStatus + states: + - { descr: error, graph: 1, value: 0, generic: 2 } + - { descr: on, graph: 1, value: 1, generic: 0 } + - + oid: devicePowerSourceStatus + num_oid: ".1.3.6.1.4.1.27662.200.1.1.1.4.3.1.3.{{ $index }}" + descr: "{{ $devicePowerSourceName }}" + group: "Power Source" + index: "devicePowerSourceStatus.{{ $index }}" + state_name: devicePowerSourceStatus + states: + - { descr: noCableDetected, graph: 1, value: 0, generic: 3 } + - { descr: connected, graph: 1, value: 1, generic: 0 } + - + oid: pepVpnStatusConnectionState + num_oid: ".1.3.6.1.4.1.23695.200.1.10.1.1.2.1.3.{{ $index }}" + descr: "{{ $pepVpnStatusProfileName }}" + group: "VPN" + index: "pepVpnStatusConnectionState.{{ $index }}" + state_name: pepVpnStatusConnectionState + states: + - { descr: start, graph: 1, value: 0, generic: 3 } + - { descr: authen, graph: 1, value: 1, generic: 3 } + - { descr: tunnel, graph: 1, value: 2, generic: 3 } + - { descr: route, graph: 1, value: 3, generic: 3 } + - { descr: connected, graph: 1, value: 4, generic: 0 } + - + oid: wanState + num_oid: ".1.3.6.1.4.1.27662.2.1.2.1.3.{{ $index }}" + descr: "{{ $wanName }}" + group: "WAN" + index: "wanState.{{ $index }}" + state_name: wanState + states: + - { descr: unknown, graph: 1, value: 0, generic: 3 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: disconnected, graph: 1, value: 2, generic: 2 } + - { descr: connected, graph: 1, value: 3, generic: 0 } + - { descr: connecting, graph: 1, value: 4, generic: 1 } + - { descr: activating, graph: 1, value: 5, generic: 1 } + - { descr: helt-check-fail, graph: 1, value: 6, generic: 2 } + - { descr: disconnected-manually, graph: 1, value: 7, generic: 3 } + - { descr: standby, graph: 1, value: 4, generic: 3 } diff --git a/priv/profiles/os_discovery/perle.yaml b/priv/profiles/os_discovery/perle.yaml new file mode 100644 index 00000000..c66fc847 --- /dev/null +++ b/priv/profiles/os_discovery/perle.yaml @@ -0,0 +1,3 @@ +modules: + os: + hardware: PERLE-MCR-MGT-MIB::chassisModelName.1 diff --git a/priv/profiles/os_discovery/pfsense.yaml b/priv/profiles/os_discovery/pfsense.yaml new file mode 100644 index 00000000..f91e549d --- /dev/null +++ b/priv/profiles/os_discovery/pfsense.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: + - '/ (?\d+\.\d\S+) /' + - '/(?aarch64|alpha|amd64|arm\w*|i386|ia64|mips\w*|pc98|powerpc\w*|risc\w*|sparc\w*)/i' diff --git a/priv/profiles/os_discovery/picos.yaml b/priv/profiles/os_discovery/picos.yaml new file mode 100644 index 00000000..baf198b3 --- /dev/null +++ b/priv/profiles/os_discovery/picos.yaml @@ -0,0 +1,23 @@ +mib: PICA-PRIVATE-MIB +modules: + os: + sysDescr_regex: '/for (?\S+)/' + serial: PICA-PRIVATE-MIB::hostStatusGroup.16.0 + processors: + data: + - + oid: cpuUsage + num_oid: '.1.3.6.1.4.1.35098.1.1.{{ $index }}' + sensors: + fanspeed: + data: + - + oid: rpsuFanSpeed + num_oid: '.1.3.6.1.4.1.35098.1.11.1.5.{{ $index }}' + descr: 'PSU {{ $index }} Fan Speed' + index: 'psufanspeed{{ $index }}' + - + oid: switchFanSpeed + num_oid: '.1.3.6.1.4.1.35098.1.8.{{ $index }}' + descr: 'Switch {{ $index }} Fan Speed' + index: 'swfanspeed{{ $index }}' diff --git a/priv/profiles/os_discovery/planet-pdu.yaml b/priv/profiles/os_discovery/planet-pdu.yaml new file mode 100755 index 00000000..37528d4c --- /dev/null +++ b/priv/profiles/os_discovery/planet-pdu.yaml @@ -0,0 +1,69 @@ +mib: DIGIPDU-MIB +modules: + os: + sysDescr_regex: '/(?\S+) (?\S+)?/' + sensors: + voltage: + data: + - + oid: inFeedVoltage + value: inFeedVoltage + num_oid: '.1.3.6.1.4.1.10456.3.3.2.1.3.{{ $index }}' + descr: "Voltage In" + index: 3 + low_limit: 190 + high_limit: 260 + - + oid: outVoltage + value: outVoltage + num_oid: '.1.3.6.1.4.1.10456.3.3.3.1.6.{{ $index }}' + index: 'outVoltage.{{ $index }}' + descr: "Voltage Out {{ $index }}" + current: + data: + - + oid: inFeedCurrent + value: inFeedCurrent + num_oid: '.1.3.6.1.4.1.10456.3.3.2.1.5.{{ $index }}' + descr: "Current In" + - + oid: outCurrent + value: outCurrent + index: 'outCurrent.{{ $index }}' + num_oid: '.1.3.6.1.4.1.10456.3.3.3.1.7.{{ $index }}' + descr: "Current Out {{ $index }}" + power: + data: + - + oid: inFeedPowerLoad + value: inFeedPowerLoad + num_oid: '.1.3.6.1.4.1.10456.3.3.2.1.6.{{ $index }}' + descr: "Power In" + - + oid: outPowerLoad + value: outPowerLoad + num_oid: '.1.3.6.1.4.1.10456.3.3.3.1.9.{{ $index }}' + index: 'outPowerLoad.{{ $index }}' + descr: "Power Out {{ $index }}" + temperature: + data: + - + oid: inbuiltTemperature + value: inbuiltTemperature + num_oid: '.1.3.6.1.4.1.10456.3.3.5.1.3.{{ $index }}' + divisor: 10 + descr: "Device Temperature" + low_limit: inbuiltTemperatureLowWarning + high_limit: inbuiltTemperatureHighWarning + + state: + data: + - + oid: outSwitchStatus + value: outSwitchStatus + num_oid: '.1.3.6.1.4.1.10456.3.3.3.1.4.{{ $index }}' + descr: "Switch status {{ $index }}" + states: + - { descr: Off, graph: 1, value: 0, generic: 0 } + - { descr: On, graph: 1, value: 1, generic: 0 } + diff --git a/priv/profiles/os_discovery/planetos.yaml b/priv/profiles/os_discovery/planetos.yaml new file mode 100644 index 00000000..0aa4bc77 --- /dev/null +++ b/priv/profiles/os_discovery/planetos.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/PLANET,?\s(?[^,\s]+)(?:(?!v|V).)+(?(?:v|V)\S+)?/' + version: ENTITY-MIB::entPhysicalSoftwareRev.1 diff --git a/priv/profiles/os_discovery/pmp.yaml b/priv/profiles/os_discovery/pmp.yaml new file mode 100644 index 00000000..b5f01d3f --- /dev/null +++ b/priv/profiles/os_discovery/pmp.yaml @@ -0,0 +1,22 @@ +modules: + os: + sysDescr_regex: '/(?\d+\.\d\S+)/' + sensors: + temperature: + data: + - + oid: WHISP-BOX-MIBV2-MIB::boxTemperatureC + num_oid: '.1.3.6.1.4.1.161.19.3.3.1.35.{{ $index }}' + index: 0 + descr: 'Cambium Temperature' + state: + data: + - + oid: WHISP-APS-MIB::whispGPSStats + num_oid: '.1.3.6.1.4.1.161.19.3.1.3.1.{{ $index }}' + index: 0 + descr: GPS Status + states: + - { value: 1, generic: 0, graph: 1, descr: gpsSynchronized } + - { value: 2, generic: 2, graph: 1, descr: gpsLostSync } + - { value: 3, generic: 0, graph: 1, descr: generatingSync } diff --git a/priv/profiles/os_discovery/polycomLens.yaml b/priv/profiles/os_discovery/polycomLens.yaml new file mode 100644 index 00000000..74c9b8bc --- /dev/null +++ b/priv/profiles/os_discovery/polycomLens.yaml @@ -0,0 +1,218 @@ +mib: POLYCOM-ENDPOINT-MIB:POLYCOM-BASE-MIB +modules: + os: + hardware: POLYCOM-ENDPOINT-MIB::identityDeviceModel.0 + version: POLYCOM-ENDPOINT-MIB::identitySoftwareInfo.0 + serial: POLYCOM-ENDPOINT-MIB::identityDeviceSerialNumber.0 + sensors: + state: + data: + - + oid: identity + value: identityStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.1.6.{{ $index }}' + descr: 'Overall System status' + index: "identityStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: serviceH323 + value: serviceH323Status + num_oid: '.1.3.6.1.4.1.13885.101.1.2.7.1.{{ $index }}' + descr: 'H323 Status' + index: "serviceH323Status.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: serviceH323 + value: serviceH323RegistrationStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.2.7.2.{{ $index }}' + descr: 'H323 Status' + index: "serviceH323RegistrationStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: serviceSip + value: serviceSipStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.2.8.1.{{ $index }}' + descr: 'Sip overall Status' + index: "serviceSipStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: serviceSipRegistrationTable + value: serviceSipRegistrationStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.2.8.3.1.2.{{ $index }}' + descr: 'Sip Status Line {{ $index }}' + index: "serviceSipRegistrationStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: serviceIsdn + value: serviceIsdnStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.2.9.1.{{ $index }}' + descr: 'ISDN Status' + index: "serviceIsdnStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardware + value: hardwareOverallStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.1.{{ $index }}' + descr: 'Hardware Status' + index: "hardwareOverallStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardwareMicrophone + value: hardwareMicrophoneStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.5.1.{{ $index }}' + descr: 'Microphone Status' + index: "hardwareMicrophoneStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardwareCamera + value: hardwareCameraStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.6.1.{{ $index }}' + descr: 'Camera Status' + index: "hardwareCameraStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardwareNIC + value: hardwareNICStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.10.1.{{ $index }}' + descr: 'NIC Status' + index: "hardwareNICStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardwarePTC + value: hardwarePTCStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.11.1.{{ $index }}' + descr: 'PTC Status' + index: "hardwarePTCStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: hardwareUcBoard + value: hardwareUcBoardStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.3.12.1.{{ $index }}' + descr: 'Uc Board Status' + index: "hardwareUcBoardStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationPresence + value: externalIntegrationPresenceStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.7.1.{{ $index }}' + descr: 'Poly Presence Service Status' + index: "externalIntegrationPresenceStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationCDR + value: externalIntegrationCDRStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.8.1.{{ $index }}' + descr: 'Poly CDR Service Status' + index: "externalIntegrationCDRStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationSyslog + value: externalIntegrationSyslogStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.9.1.{{ $index }}' + descr: 'Syslog Service Status' + index: "externalIntegrationSyslogStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationSoftwareUpdate + value: externalIntegrationSoftwareUpdateStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.10.1.{{ $index }}' + descr: 'Poly Software Update Status' + index: "externalIntegrationSoftwareUpdateStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationProvisioning + value: externalIntegrationProvisioningStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.11.1.{{ $index }}' + descr: 'Poly Provisioning Status' + index: "externalIntegrationProvisioningStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationExchange + value: externalIntegrationExchangeStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.12.1.{{ $index }}' + descr: 'Exchange Integration Status' + index: "externalIntegrationExchangeStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } + - + oid: externalIntegrationDirectorySvcs + value: externalIntegrationDirectorySvcsStatus + num_oid: '.1.3.6.1.4.1.13885.101.1.6.13.1.{{ $index }}' + descr: 'Directory Integration Status' + index: "externalIntegrationDirectorySvcsStatus.{{ $index }}" + state_name: polycomEndpointGeneric + states: + - { value: 1, descr: disabled, graph: 1, generic: 3 } + - { value: 2, descr: ok, graph: 1, generic: 0 } + - { value: 3, descr: failed, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/poweralert.yaml b/priv/profiles/os_discovery/poweralert.yaml new file mode 100644 index 00000000..90eecec1 --- /dev/null +++ b/priv/profiles/os_discovery/poweralert.yaml @@ -0,0 +1,338 @@ +mib: TRIPPLITE-MIB:TRIPPLITE-PRODUCTS:TRIPPLITE-12X +modules: + os: + features: .1.3.6.1.4.1.850.10.2.2.1.9.2 + hardware: .1.3.6.1.2.1.33.1.1.2.0 + serial: .1.3.6.1.4.1.850.100.1.1.2.0 + version: + - .1.3.6.1.2.1.33.1.1.4.0 + - .1.3.6.1.2.1.33.1.1.3.0 + location: .1.3.6.1.4.1.850.100.1.1.6.0 + sysName: .1.3.6.1.2.1.33.1.1.5.0 + sensors: + additional_oids: + data: + - oid: + - tlpDeviceName + - tlpDeviceModel + charge: + data: + - oid: "tlpUpsBatterySummaryTable" + value: "tlpUpsEstimatedChargeRemaining" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.1.1.1.4.{{ $index }}" + index: "tlpUpsEstimatedChargeRemaining.{{ $index }}" + descr: "Remaining" + current: + data: + - oid: "tlpPduCircuitTotalCurrent" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.4.1.1.4.{{ $index }}" + index: "tlpPduCircuitTotalCurrent.{{ $index }}" + divisor: 100 + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Circuit {{ $subindex1 }}" + + - oid: "tlpAtsOutputCurrent" + num_oid: ".1.3.6.1.4.1.850.1.1.3.4.3.2.1.1.5.1.{{ $index }}" + descr: "Current" + divisor: 100 + - oid: "tlpPduOutputCurrent" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.2.1.1.5.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Total Output" + divisor: 100 + - oid: "tlpPduOutletTable" + value: "tlpPduOutletCurrent" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.3.1.1.8.{{ $index }}" + index: "tlpPduOutletIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "{{ $tlpPduOutletName }}" + divisor: 100 + - oid: "tlpUpsOutputLineTable" + value: "tlpUpsOutputLineCurrent" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.2.1.3.{{ $index }}" + descr: "Output" + divisor: 100 + + count: + data: + - oid: tlUpsBatteryAge + num_oid: ".1.3.6.1.4.1.850.100.1.2.1.{{ $index }}" + descr: "Battery Age (Years)" + frequency: + data: + - oid: "tlpPduInputPhaseFrequency" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.1.2.1.3.{{ $index }}" + index: "tlpPduInputPhaseIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Input" + divisor: 10 + - oid: "tlpPduOutputFrequency" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.2.1.1.11.{{ $index }}" + index: "tlpPduOutputIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Output" + divisor: 10 + - oid: "tlpPduOutletTable" + value: "tlpPduOutletFrequency" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.3.1.1.22.{{ $index }}" + index: "tlpPduOutletIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "{{ $tlpPduOutletName }}" + divisor: 10 + - oid: "tlpUpsInputPhaseTable" + value: "tlpUpsInputPhaseFrequency" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.2.2.1.2.{{ $index }}" + index: "tlpUpsInputPhaseIndex.{{ $index }}" + descr: "Input (Phase {{ $subindex0 }})" + divisor: 10 + - oid: "tlpUpsOutputTable" + value: "tlpUpsOutputFrequency" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.1.1.3.{{ $index }}" + index: "tlpUpsOutputFrequency.{{ $index }}" + descr: "Output" + divisor: 10 + humidity: + data: + - oid: "tlpEnvHumidityHumidity" + num_oid: ".1.3.6.1.4.1.850.1.1.3.3.3.2.1.1.{{ $index }}" + group: "{{ tlpDeviceName:0 }}" + descr: "Humidity" + - oid: tlEnvHumidity + num_oid: ".1.3.6.1.4.1.850.101.1.2.1.{{ $index }}" + descr: "Ambient Humidity" + divisor: 10 + multiplier: 10 + low_limit: 10 + high_limit: 90 + group: "EnviroSense" + skip_values: + - oid: tlEnvHumidity + op: "exists" + value: false + load: + data: + - oid: "tlpUpsOutputLineTable" + value: "tlpUpsOutputLinePercentLoad" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.2.1.5.{{ $index }}" + index: "tlpUpsOutputLineIndex.{{ $index }}" + descr: "Output" + power: + data: + - oid: "tlpPduOutputActivePower" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.2.1.1.8.{{ $index }}" + index: "tlpPduOutputIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Output" + - oid: "tlpPduOutletTable" + value: "tlpPduOutletActivePower" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.3.1.1.9.{{ $index }}" + index: "tlpPduOutletIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "{{ $tlpPduOutletName }}" + - oid: "tlpUpsOutputLineTable" + value: "tlpUpsOutputLinePower" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.2.1.4.{{ $index }}" + index: "tlpUpsOutputLineIndex.{{ $index }}" + descr: "Output" + state: + data: + - oid: "tlpEnvDetail" + value: "tlpEnvInputContactCurrentState" + group: "Contacts ({{ tlpDeviceName:0 }})" + num_oid: ".1.3.6.1.4.1.850.1.1.3.3.3.3.1.5.{{ $index }}" + index: "tlpEnvInputContactIndex.{{ $index }}" + descr: "{{ $tlpEnvInputContactName }}" + state_name: tlpEnvInputContactCurrentState + states: + - { value: 0, generic: 3, graph: 0, descr: Unknown } + - { value: 1, generic: 2, graph: 0, descr: Alarm } + - { value: 2, generic: 0, graph: 0, descr: OK } + - oid: "tlpPduDevice" + value: "tlpPduDeviceMainLoadState" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.2.1.1.1.{{ $index }}" + index: "tlpPduDeviceMainLoadState.{{ $index }}" + descr: "Main Load State" + state_name: tlpPduDeviceMainLoadState + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: off } + - { value: 2, generic: 0, graph: 0, descr: on } + - oid: "tlpPduDetail" + value: "tlpPduOutletState" + group: "Outlets" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.3.1.1.4.{{ $index }}" + index: "tlpPduOutletState.{{ $index }}" + descr: "{{ $tlpPduOutletName }}" + state_name: tlpPduOutletState + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: off } + - { value: 2, generic: 0, graph: 0, descr: on } + - oid: "tlpUpsDevice" + value: "tlpUpsDeviceMainLoadState" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.2.1.1.1.{{ $index }}" + index: "tlpUpsMainLoadState.{{ $index }}" + descr: "Main Load State" + state_name: tlpUpsDeviceMainLoadState + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: off } + - { value: 2, generic: 0, graph: 0, descr: on } + - oid: "tlpUpsBattery" + value: "tlpUpsBatteryStatus" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.1.1.1.1.{{ $index }}" + index: "tlpUpsBatteryStatus.{{ $subindex0 }}" + descr: "Battery {{ $subindex0 }} Status" + state_name: tlpUpsBatteryStatus + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: Normal } + - { value: 3, generic: 1, graph: 0, descr: Low } + - { value: 4, generic: 2, graph: 0, descr: Depleted } + - oid: "tlpUpsBattery" + value: "tlpUpsBatteryDetailCharge" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.1.2.1.4.{{ $index }}" + index: "tlpUpsBatteryDetailCharge.{{ $index }}" + descr: "Charging Status {{ $subindex0 }}" + state_name: tlpUpsBatteryDetailCharge + states: + - { value: 0, generic: 1, graph: 0, descr: floating } + - { value: 1, generic: 1, graph: 0, descr: charging } + - { value: 2, generic: 0, graph: 0, descr: resting } + - { value: 3, generic: 2, graph: 0, descr: discharging } + - { value: 4, generic: 0, graph: 0, descr: normal } + - oid: "tlpUpsBatteryPackDetailTable" + value: "tlpUpsBatteryPackDetailCondition" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.1.5.1.1.{{ $index }}" + index: "tlpUpsBatteryPackDetailCondition.{{ $index }}" + descr: "Battery {{ $subindex0 }} Condition" + state_name: tlpUpsBatteryPackDetailCondition + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: good } + - { value: 2, generic: 1, graph: 0, descr: weak } + - { value: 3, generic: 2, graph: 0, descr: bad } + - oid: "tlpUpsOutputTable" + value: "tlpUpsOutputSource" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.1.1.1.{{ $index }}" + index: "tlpUpsOutputSource.{{ $index }}" + descr: "Output Source" + state_name: tlpUpsOutputSource + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 3, graph: 0, descr: other } + - { value: 2, generic: 2, graph: 0, descr: none } + - { value: 3, generic: 0, graph: 0, descr: normal } + - { value: 4, generic: 2, graph: 0, descr: bypass } + - { value: 5, generic: 2, graph: 0, descr: battery } + - { value: 6, generic: 2, graph: 0, descr: boosting } + - { value: 7, generic: 2, graph: 0, descr: reducing } + - { value: 8, generic: 1, graph: 0, descr: second } + - { value: 9, generic: 0, graph: 0, descr: economy } + - { value: 10, generic: 1, graph: 0, descr: testing } + - oid: "tlpUpsOutletTable" + value: "tlpUpsOutletState" + group: "Outlets" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.5.1.1.4.{{ $index }}" + index: "tlpUpsOutletIndex.{{ $index }}" + descr: "{{ $tlpUpsOutletName }}" + state_name: tlpUpsOutletState + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 0, graph: 0, descr: off } + - { value: 2, generic: 0, graph: 0, descr: on } + temperature: + data: + - oid: "tlpEnvTemperatureC" + num_oid: ".1.3.6.1.4.1.850.1.1.3.3.3.1.1.1.{{ $index }}" + group: "{{ tlpDeviceName:0 }}" + descr: "Temperature" + divisor: 10 + - oid: tlEnvTemperatureC + num_oid: ".1.3.6.1.4.1.850.101.1.1.1.{{ $index }}" + descr: "Ambient Temperature" + divisor: 10 + multiplier: 10 + low_limit: 0 + high_limit: 40 + group: "EnviroSense" + skip_values: + - oid: tlEnvTemperatureC + op: "exists" + value: false + - oid: "tlpUpsDeviceTemperatureC" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.2.1.1.7.{{ $index }}" + group: "UPS" + descr: "Temperature" + divisor: 10 + voltage: + data: + - oid: "tlpAtsInputPhaseTable" + value: "tlpAtsInputPhaseVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.4.3.1.2.1.5.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Input" + index: "tlpAtsInputLineIndex.{{ $index }}" + divisor: 10 + low_limit: "tlpAtsInputPhaseVoltageMin" + high_limit: "tlpAtsInputPhaseVoltageMax" + - oid: "tlpPduInputPhaseTable" + value: "tlpPduInputPhaseVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.1.2.1.4.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Input (Phase {{ $subindex0 }})" + index: "tlpPduInputPhaseIndex.{{ $index }}" + divisor: 10 + low_limit: 110 + high_limit: 240 + - oid: "tlpAtsInputPhaseVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.4.3.1.2.1.5.1.1.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Input" + divisor: 10 + multiplier: 1 + low_limit: 110 + high_limit: 240 + - oid: "tlpPduOutputVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.2.1.1.4.{{ $index }}" + index: "tlpPduOutputIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "Output" + divisor: 10 + low_limit: 110 + high_limit: 240 + - oid: "tlpPduOutletTable" + value: "tlpPduOutletVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.3.1.1.7.{{ $index }}" + index: "tlpPduOutletIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "{{ $tlpPduOutletName }}" + divisor: 10 + - oid: "tlpPduCircuitTable" + value: "tlpPduCircuitInputVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.2.3.4.1.1.3.{{ $index }}" + index: "tlpPduOutletIndex.{{ $index }}" + group: "{{ tlpDeviceModel:0 }} ({{ $subindex0 }})" + descr: "{{ $tlpPduCircuitPhase }}" + divisor: 10 + - oid: "tlpUpsBattery" + value: "tlpUpsBatteryDetailVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.1.2.1.1.{{ $index }}" + index: "tlpUpsBatteryDetailVoltage.{{ $index }}" + descr: "Battery {{ $subindex0 }}" + divisor: 10 + - oid: "tlpUpsInputPhaseTable" + value: "tlpUpsInputPhaseVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.2.2.1.3.{{ $index }}" + index: "tlpUpsInputPhaseIndex.{{ $index }}" + descr: "Input (Phase {{ $subindex0 }})" + divisor: 10 + low_limit: "tlpUpsInputPhaseVoltageMin" + high_limit: "tlpUpsInputPhaseVoltageMax" + - oid: "tlpUpsOutputLineTable" + value: "tlpUpsOutputLineVoltage" + num_oid: ".1.3.6.1.4.1.850.1.1.3.1.3.3.2.1.2.{{ $index }}" + index: "tlpUpsOutputLineIndex.{{ $index }}" + descr: "Output" + divisor: 10 diff --git a/priv/profiles/os_discovery/powercode.yaml b/priv/profiles/os_discovery/powercode.yaml new file mode 100644 index 00000000..4e18de79 --- /dev/null +++ b/priv/profiles/os_discovery/powercode.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?) (?)/' diff --git a/priv/profiles/os_discovery/powerconnect.yaml b/priv/profiles/os_discovery/powerconnect.yaml new file mode 100644 index 00000000..94b5c451 --- /dev/null +++ b/priv/profiles/os_discovery/powerconnect.yaml @@ -0,0 +1,14 @@ +modules: + mempools: + data: + - + total: .1.3.6.1.4.1.674.10895.5000.2.6132.1.1.1.1.4.2.0 + free: .1.3.6.1.4.1.674.10895.5000.2.6132.1.1.1.1.4.1.0 + descr: 'CPU Memory' + type: powerconnect-cpu + os: + sysDescr_regex: '/(?(Power[Cc]onnect |Dell Networking |Dell EMC Networking )?[A-Z]?\d{2,}[A-Z\-]*)(, (?\d+\.[\d.]+))?/' + features: Dell-Vendor-MIB::productIdentificationDescription.0 + hardware: Dell-Vendor-MIB::productIdentificationDisplayName.0 + version: Dell-Vendor-MIB::productIdentificationVersion.0 + serial: Dell-Vendor-MIB::productIdentificationSerialNumber.1 diff --git a/priv/profiles/os_discovery/powerlogic.yaml b/priv/profiles/os_discovery/powerlogic.yaml new file mode 100644 index 00000000..39f865c8 --- /dev/null +++ b/priv/profiles/os_discovery/powerlogic.yaml @@ -0,0 +1,81 @@ +modules: + os: + hardware: PM8ECCMIB::midDeviceName.1 + serial: PM8ECCMIB::midSerialNumber.1 + version: PM8ECCMIB::midFirmwareVersion.1 + sensors: + current: + data: + - + oid: PM8ECCMIB::loadCurrentTable + value: PM8ECCMIB::lcIa + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.2.1.2.{{ $index }}' + descr: 'Phase A' + index: 'lcIa' + - + oid: PM8ECCMIB::loadCurrentTable + value: PM8ECCMIB::lcIb + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.2.1.3.{{ $index }}' + descr: 'Phase B' + index: 'lcIb' + - + oid: PM8ECCMIB::loadCurrentTable + value: PM8ECCMIB::lcIc + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.2.1.4.{{ $index }}' + descr: 'Phase C' + index: 'lcIc' + frequency: + data: + - + oid: PM8ECCMIB::frequencyTable + value: PM8ECCMIB::fFrequency + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.6.1.2.{{ $index }}' + descr: 'Frequency' + index: 'fFrequency' + power: + data: + - + oid: PM8ECCMIB::powerTable + value: PM8ECCMIB::pReal + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.3.1.2.{{ $index }}' + multiplier: 1000 + descr: 'Power' + index: 'pReal' + voltage: + data: + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVab + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.2.{{ $index }}' + descr: 'Line A to B' + index: 'vVab' + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVbc + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.3.{{ $index }}' + descr: 'Line B to C' + index: 'vVbc' + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVca + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.4.{{ $index }}' + descr: 'Line C to A' + index: 'vVca' + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVan + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.6.{{ $index }}' + descr: 'Line A to neutral' + index: 'vVan' + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVbn + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.7.{{ $index }}' + descr: 'Line B to neutral' + index: 'vVbn' + - + oid: PM8ECCMIB::voltageTable + value: PM8ECCMIB::vVcn + num_oid: '.1.3.6.1.4.1.3833.1.7.255.15.1.1.5.1.8.{{ $index }}' + descr: 'Line C to neutral' + index: 'vVcn' diff --git a/priv/profiles/os_discovery/powervault.yaml b/priv/profiles/os_discovery/powervault.yaml new file mode 100644 index 00000000..5cb04c62 --- /dev/null +++ b/priv/profiles/os_discovery/powervault.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: .1.3.6.1.4.1.674.10893.2.102.3.1.1.9.1 diff --git a/priv/profiles/os_discovery/powerwalker-vfi.yaml b/priv/profiles/os_discovery/powerwalker-vfi.yaml new file mode 100644 index 00000000..e89025c1 --- /dev/null +++ b/priv/profiles/os_discovery/powerwalker-vfi.yaml @@ -0,0 +1,156 @@ +mib: UPS-MIB +modules: + os: + version: UPS-MIB::upsIdentUPSSoftwareVersion.0 + version_regex: '/^(?.*\w)|\.+$/' + hardware: UPS-MIB::upsIdentModel.0 + hardware_regex: '/^(?.*\w)|\.+$/' + sensors: + runtime: + data: + - + oid: upsEstimatedMinutesRemaining + num_oid: '.1.3.6.1.2.1.33.1.2.3.{{ $index }}' + index: 'upsEstimatedMinutesRemaining.{{ $index }}' + descr: Estimated time on battery + - + oid: upsSecondsOnBattery + num_oid: '.1.3.6.1.2.1.33.1.2.2.{{ $index }}' + index: 'upsSecondsOnBattery.{{ $index }}' + descr: Current time on battery + divisor: 60 + charge: + data: + - + oid: upsEstimatedChargeRemaining + num_oid: '.1.3.6.1.2.1.33.1.2.4.{{ $index }}' + index: 'upsEstimatedChargeRemaining.{{ $index }}' + descr: Battery charge remaining + temperature: + data: + - + oid: upsBatteryTemperature + num_oid: '.1.3.6.1.2.1.33.1.2.7.{{ $index }}' + index: 'upsBatteryTemperature.{{ $index }}' + descr: Battery Temperature + voltage: + data: + - + oid: upsInputVoltage + num_oid: '.1.3.6.1.2.1.33.1.3.3.1.3.{{ $index }}' + index: 'upsInputVoltage.{{ $index }}' + descr: 'Input Phase {{ $subindex0 }}' + - + oid: upsOutputVoltage + num_oid: '.1.3.6.1.2.1.33.1.4.4.1.2.{{ $index }}' + index: 'upsOutputVoltage.{{ $index }}' + descr: 'Output Phase {{ $subindex0 }}' + - + oid: upsBypassVoltage + num_oid: '.1.3.6.1.2.1.33.1.5.3.1.2.{{ $index }}' + index: 'upsBypassputVoltage.{{ $index }}' + descr: 'Bypass Phase {{ $subindex0 }}' + - + oid: upsBatteryVoltage + num_oid: '.1.3.6.1.2.1.33.1.2.5.{{ $index }}' + index: 'upsBatteryVoltage.{{ $index }}' + descr: Battery Voltage + divisor: 10 + current: + data: + - + oid: upsInputCurrent + num_oid: '.1.3.6.1.2.1.33.1.3.3.1.4.{{ $index }}' + index: 'upsInputCurrent.{{ $index }}' + descr: 'Input Phase {{ $subindex0 }}' + divisor: 10 + - + oid: upsOutputCurrent + num_oid: '.1.3.6.1.2.1.33.1.4.4.1.3.{{ $index }}' + index: 'upsOutputCurrent.{{ $index }}' + descr: 'Output Phase {{ $subindex0 }}' + divisor: 10 + - + oid: upsBypassCurrent + num_oid: '.1.3.6.1.2.1.33.1.5.3.1.3.{{ $index }}' + index: 'upsBypassputCurrent.{{ $index }}' + descr: 'Bypass Phase {{ $subindex0 }}' + divisor: 10 + - + oid: upsBatteryCurrent + num_oid: '.1.3.6.1.2.1.33.1.2.6.{{ $index }}' + index: 'upsBatteryCurrent.{{ $index }}' + descr: Battery + divisor: 10 + + power: + data: + - + oid: upsInputTruePower + num_oid: '.1.3.6.1.2.1.33.1.3.3.1.5.{{ $index }}' + index: 'upsInputTruePower.{{ $index }}' + descr: 'System Input Watts {{ $subindex0 }}' + - + oid: upsOutputPower + num_oid: '.1.3.6.1.2.1.33.1.4.4.1.4.{{ $index }}' + index: 'upsOutputPower.{{ $index }}' + descr: 'System Output Watts {{ $subindex0 }}' + - + oid: upsBypassPower + num_oid: '.1.3.6.1.2.1.33.1.5.3.1.4.{{ $index }}' + index: 'upsBypassPower.{{ $index }}' + descr: 'System Bypass Watts {{ $subindex0 }}' + + frequency: + data: + - + oid: upsInputFrequency + num_oid: '.1.3.6.1.2.1.33.1.3.3.1.2.{{ $index }}' + index: 'upsInputFrequency.{{ $index }}' + descr: 'Input Frequency {{ $subindex0 }}' + divisor: 10 + - + oid: upsOutputFrequency + num_oid: '.1.3.6.1.2.1.33.1.4.2.{{ $index }}' + index: 'upsOutputFrequency.{{ $index }}' + descr: 'Output Frequency {{ $subindex0 }}' + divisor: 10 + - + oid: upsBypassFrequency + num_oid: '.1.3.6.1.2.1.33.1.5.1.{{ $index }}' + index: 'upsBypassputFrequency.{{ $index }}' + descr: 'Bypass Frequency {{ $subindex0 }}' + divisor: 10 + + load: + data: + - + oid: upsOutputPercentLoad + num_oid: '.1.3.6.1.2.1.33.1.4.4.1.5.{{ $index }}' + index: 'upsOutputPercentLoad.{{ $index }}' + descr: 'Percentage Load {{ $subindex0 }}' + state: + data: + - + oid: upsBatteryStatus + num_oid: '.1.3.6.1.2.1.33.1.2.1.{{ $index }}' + descr: Battery Status + state_name: upsBatteryStatus + states: + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: batteryNormal, graph: 1, value: 2, generic: 0 } + - { descr: batteryLow, graph: 1, value: 3, generic: 1 } + - { descr: batteryDepleted, graph: 1, value: 4, generic: 2 } + - + oid: upsOutputSource + num_oid: '.1.3.6.1.2.1.33.1.4.1.{{ $index }}' + descr: Output Source + state_name: upsOutputSource + states: + - { descr: other, graph: 1, value: 1, generic: 3 } + - { descr: none, graph: 1, value: 2, generic: 3 } + - { descr: normal, graph: 1, value: 3, generic: 0 } + - { descr: bypass, graph: 1, value: 4, generic: 1 } + - { descr: battery, graph: 1, value: 5, generic: 2 } + - { descr: booster, graph: 1, value: 6, generic: 2 } + - { descr: reducer, graph: 1, value: 7, generic: 2 } diff --git a/priv/profiles/os_discovery/powerwalker.yaml b/priv/profiles/os_discovery/powerwalker.yaml new file mode 100644 index 00000000..415b272c --- /dev/null +++ b/priv/profiles/os_discovery/powerwalker.yaml @@ -0,0 +1,248 @@ +mib: EPPC-MIB +modules: + os: + version: + - EPPC-MIB::upsEIdentityUPSFirmwareVerison.0 + - EPPC-MIB::upsEIdentityAgentSoftwareVerison.0 + version_template: 'FW: {{ EPPC-MIB::upsEIdentityUPSFirmwareVerison.0 }}, NMC: {{ EPPC-MIB::upsEIdentityAgentSoftwareVerison.0 }}' + sensors: + runtime: + options: + skip_value_lt: 0 + data: + - + oid: upsEBatteryEstimatedMinutesRemaining + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.3.{{ $index }}' + index: 'upsEBatteryEstimatedMinutesRemaining.{{ $index }}' + descr: Battery time remaining + voltage: + options: + divisor: 10 + skip_value_lt: 0 + data: + - + oid: upsEPositiveBatteryVoltage + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.5.{{ $index }}' + index: 'upsEPositiveBatteryVoltage.{{ $index }}' + descr: Postitive Battery Voltage + - + oid: upsENegativeBatteryVoltage + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.6.{{ $index }}' + index: 'upsENegativeBatteryVoltage.{{ $index }}' + descr: Negative Battery Voltage + - + oid: upsESystemInputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.16.1.3.{{ $index }}' + value: upsESystemInputVoltage + index: 'upsESystemInputVoltage.{{ $index }}' + descr: Input + - + oid: upsESystemOutputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.18.1.3.{{ $index }}' + value: upsESystemOutputVoltage + index: 'upsESystemOutputVoltage.{{ $index }}' + descr: Output + - + oid: upsESystemBypassTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.20.1.3.{{ $index }}' + value: upsESystemBypassVoltage + index: 'upsESystemBypassVoltage.{{ $index }}' + descr: System Bypass + - + oid: upsEChargerModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.12.1.3.{{ $index }}' + value: positiveChargeVotlage + index: 'positiveChargeVotlage.{{ $index }}' + descr: Positive Charge + - + oid: upsEChargerModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.12.1.4.{{ $index }}' + value: negativeChargeVotlage + index: 'negativeChargeVotlage.{{ $index }}' + descr: Negative Charge + - + oid: upsEModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.4.2.1.3.{{ $index }}' + value: upsEModulePositiveBusVolt + index: 'upsEModulePositiveBusVolt.{{ $index }}' + descr: Module Positive Charge + - + oid: upsEModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.4.2.1.4.{{ $index }}' + value: upsEModuleNegativeBusVolt + index: 'upsEModuleNegativeBusVolt.{{ $index }}' + descr: Module Negative Charge + frequency: + options: + divisor: 10 + data: + - + oid: upsESystemInputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.16.1.2.{{ $index }}' + value: upsESystemInputFrequency + index: 'upsESystemInputFrequency.{{ $index }}' + descr: System Input + - + oid: upsESystemOutputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.18.1.2.{{ $index }}' + value: upsESystemOutputFrequency + index: 'upsESystemOutputFrequency.{{ $index }}' + descr: System Output + - + oid: upsESystemBypassTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.20.1.2.{{ $index }}' + value: upsESystemBypassFrequency + index: 'upsESystemBypassFrequency.{{ $index }}' + descr: System Bypass + charge: + data: + - + oid: upsEBatteryEstimatedChargeRemaining + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.4.{{ $index }}' + index: 'upsEBatteryEstimatedChargeRemaining.{{ $index }}' + descr: Battery charge remaining + temperature: + options: + divisor: 10 + skip_value_lt: 0 + data: + - + oid: upsESystemTemperature + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.2.{{ $index }}' + index: 'upsESystemTemperature.{{ $index }}' + descr: Ambient Temperature + - + oid: upsEBatteryTemperature + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.8.{{ $index }}' + index: 'upsEBatteryTemperature.{{ $index }}' + descr: Battery + - + oid: upsEChargerModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.12.1.8.{{ $index }}' + value: chargerModulesTemperature + index: 'chargerModulesTemperature.{{ $index }}' + descr: Charger Module + - + oid: upsEModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.4.2.1.5.{{ $index }}' + value: upsEModuleTemperature + index: 'upsEModuleTemperature.{{ $index }}' + descr: Module + - + oid: upsEEnvironmentTemperature + num_oid: '.1.3.6.1.4.1.935.10.1.1.6.1.{{ $index }}' + value: upsEEnvironmentCurrentTemperature + index: 'upsEEnvironmentCurrentTemperature.{{ $index }}' + descr: Env Current Temp + low_limit: upsEEnvironmentTemperatureLowSetPoint + high_limit: upsEEnvironmentTemperatureHighSetPoint + current: + options: + skip_value_lt: 0 + divisor: 10 + data: + - + oid: upsESystemInputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.16.1.4.{{ $index }}' + value: upsESystemInputCurrent + index: 'upsESystemInputCurrent.{{ $index }}' + descr: System Input Current + - + oid: upsESystemOutputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.18.1.4.{{ $index }}' + value: upsESystemOutputCurrent + index: 'upsESystemOutputCurrent.{{ $index }}' + descr: System Output Current + - + oid: upsESystemBypassTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.20.1.4.{{ $index }}' + value: upsESystemBypassCurrent + index: 'upsESystemBypassCurrent.{{ $index }}' + descr: System Bypass + - + oid: upsEChargerModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.12.1.5.{{ $index }}' + value: positiveChargeCurrent + index: 'positiveChargeCurrent.{{ $index }}' + descr: Postitive Charge + - + oid: upsEChargerModulesTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.12.1.6.{{ $index }}' + value: negativeChargeCurrent + index: 'negativeChargeCurrent.{{ $index }}' + descr: Negative Charge + humidity: + options: + skip_value_lt: 0 + data: + - + oid: upsEEnvironmentHumidity + num_oid: '.1.3.6.1.4.1.935.10.1.1.6.2.1.{{ $index }}' + value: upsEEnvironmentCurrentHumidity + index: 'upsEEnvironmentCurrentHumidity.{{ $index }}' + descr: Environment Current + power: + options: + skip_value_lt: 0 + data: + - + oid: upsESystemInputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.16.1.5.{{ $index }}' + value: upsESystemInputWatts + index: 'upsESystemInputWatts.{{ $index }}' + descr: System Input Watts + - + oid: upsESystemOutputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.18.1.5.{{ $index }}' + value: upsESystemOutputWatts + index: 'upsESystemOutputWatts.{{ $index }}' + descr: System Output Watts + - + oid: upsESystemBypassTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.20.1.5.{{ $index }}' + value: upsESystemBypassWatts + index: 'upsESystemBypassWatts.{{ $index }}' + descr: System Bypass + divisor: 10 + load: + data: + - + oid: upsESystemOutputTable + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.18.1.7.{{ $index }}' + value: upsESystemOutputLoad + index: 'upsESystemOutputLoad.{{ $index }}' + descr: System Output Load + state: + data: + - + oid: upsESystemStatus + num_oid: '.1.3.6.1.4.1.935.10.1.1.2.1.{{ $index }}' + descr: System Status + state_name: upsESystemStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'power-on' } + - { value: 2, generic: 0, graph: 1, descr: 'stand-by' } + - { value: 3, generic: 0, graph: 1, descr: 'by-pass' } + - { value: 4, generic: 0, graph: 1, descr: 'line' } + - { value: 5, generic: 2, graph: 1, descr: 'battery' } + - { value: 6, generic: 1, graph: 1, descr: 'battery-test' } + - { value: 7, generic: 2, graph: 1, descr: 'fault' } + - { value: 8, generic: 0, graph: 1, descr: 'converter' } + - { value: 9, generic: 0, graph: 1, descr: 'eco' } + - { value: 10, generic: 1, graph: 1, descr: 'shutdown' } + - { value: 11, generic: 0, graph: 1, descr: 'on-boosters' } + - { value: 12, generic: 0, graph: 1, descr: 'on-reducer' } + - { value: 13, generic: 3, graph: 1, descr: 'other' } + - + oid: upsEBatteryStatus + num_oid: '.1.3.6.1.4.1.935.10.1.1.3.1.{{ $index }}' + index: 'upsEBatteryStatus.{{ $index }}' + descr: Battery Status + state_name: upsEBatteryStatus + states: + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: batteryNormal, graph: 1, value: 2, generic: 0 } + - { descr: batteryLow, graph: 1, value: 3, generic: 1 } + - { descr: batteryDepleted, graph: 1, value: 4, generic: 2 } + - { descr: batteryDischarging, graph: 1, value: 5, generic: 1 } + - { descr: batteryFailure, graph: 1, value: 6, generic: 2 } diff --git a/priv/profiles/os_discovery/primeinfrastructure.yaml b/priv/profiles/os_discovery/primeinfrastructure.yaml new file mode 100644 index 00000000..2f86f4ab --- /dev/null +++ b/priv/profiles/os_discovery/primeinfrastructure.yaml @@ -0,0 +1,6 @@ +modules: + os: + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + version_regex: '/(Cisco ADE-OS )?(?.*)/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 + hardware: ENTITY-MIB::entPhysicalModelName.1 diff --git a/priv/profiles/os_discovery/primekey-sw.yaml b/priv/profiles/os_discovery/primekey-sw.yaml new file mode 100644 index 00000000..1853f858 --- /dev/null +++ b/priv/profiles/os_discovery/primekey-sw.yaml @@ -0,0 +1,283 @@ +mib: PK-SOFTWARE-APPLIANCE-V2 +modules: + os: + version: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-systemVersion.0 + storage: + data: + - + type: sql + descr: Internal Database + size: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-databaseTotalStorage.0 + free: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-databaseAvailableStorage.0 + free_num_oid: '.1.3.6.1.4.1.22408.1.4.1.3.1.2.{{ $index }}' + units: 1048576 + sensors: + percent: + options: + skip_value_lt: 0 + data: + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-databaseUsage + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-databaseUsage + num_oid: '.1.3.6.1.4.1.22408.1.4.1.3.1.4.{{ $index }}' + descr: 'Internal Database Usage %' + group: 'Database' + index: pk-SAV2-internal-databaseUsage + warn_limit: 80 + high_limit: 95 + state: + options: + skip_value_lt: 0 + data: + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-authentication-service-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-authentication-service-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.1.{{ $index }}' + descr: 'Authentication' + group: 'Service Status' + index: pk-SAV2-authentication-service-status + state_name: pk-SAV2-authentication-service-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-crs-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-crs-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.2.{{ $index }}' + descr: 'Container Runtime' + group: 'Service Status' + index: pk-SAV2-crs-status + state_name: pk-SAV2-crs-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-documentation-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-documentation-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.3.{{ $index }}' + descr: 'Documentation' + group: 'Service Status' + index: pk-SAV2-documentation-status + state_name: pk-SAV2-documentation-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-monitoring-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-monitoring-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.4.{{ $index }}' + descr: 'Monitoring' + group: 'Service Status' + index: pk-SAV2-monitoring-status + state_name: pk-SAV2-monitoring-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-persistence-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-persistence-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.5.{{ $index }}' + descr: 'Persistent Data Store' + group: 'Service Status' + index: pk-SAV2-persistence-status + state_name: pk-SAV2-persistence-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-snmp-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-snmp-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.6.{{ $index }}' + descr: 'SNMP' + group: 'Service Status' + index: pk-SAV2-snmp-status + state_name: pk-SAV2-snmp-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-spc-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-spc-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.7.{{ $index }}' + descr: 'Support Package Creator' + group: 'Service Status' + index: pk-SAV2-spc-status + state_name: pk-SAV2-spc-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vs-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vs-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.8.{{ $index }}' + descr: 'Valuestore' + group: 'Service Status' + index: pk-SAV2-vs-status + state_name: pk-SAV2-vs-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vsapi-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vsapi-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.9.{{ $index }}' + descr: 'Valuestore API' + group: 'Service Status' + index: pk-SAV2-vsapi-status + state_name: pk-SAV2-vsapi-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-webconf-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-webconf-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.10.{{ $index }}' + descr: 'Webconf' + group: 'Service Status' + index: pk-SAV2-webconf-status + state_name: pk-SAV2-webconf-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vault-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-vault-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.1.11.{{ $index }}' + descr: 'Vault' + group: 'Service Status' + index: pk-SAV2-vault-status + state_name: pk-SAV2-vault-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-networkLink-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-networkLink-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.2.1.{{ $index }}' + descr: 'Network Link' + group: 'Network Status' + index: pk-SAV2-networkLink-status + state_name: pk-SAV2-networkLink-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-database-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-internal-database-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.3.1.1.{{ $index }}' + descr: 'Internal Database' + group: 'Service Status' + index: pk-SAV2-internal-database-status + state_name: pk-SAV2-internal-database-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-ejbca-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-ejbca-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.5.1.1.{{ $index }}' + descr: 'EJBCA' + group: 'Application Status' + index: pk-SAV2-ejbca-status + state_name: pk-SAV2-ejbca-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-ejbcaHealthCheck + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-ejbcaHealthCheck + num_oid: '.1.3.6.1.4.1.22408.1.4.1.5.1.3.{{ $index }}' + descr: 'EJBCA Health Check' + group: 'Application Status' + index: pk-SAV2-ejbcaHealthCheck + state_name: pk-SAV2-ejbcaHealthChecks + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-signserver-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-signserver-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.5.2.1.{{ $index }}' + descr: 'SignServer' + group: 'Application Status' + index: pk-SAV2-signserver-status + state_name: pk-SAV2-signserver-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-signserverHealthCheck + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-signserverHealthCheck + num_oid: '.1.3.6.1.4.1.22408.1.4.1.5.2.3.{{ $index }}' + descr: 'SignServer Health Check' + group: 'Application Status' + index: pk-SAV2-signserverHealthCheck + state_name: pk-SAV2-signserverHealthCheck + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-luna7-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-luna7-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.6.2.{{ $index }}' + descr: 'Luna 7 HSM' + group: 'HSM Status' + index: pk-SAV2-hsm-driver-luna7-status + state_name: pk-SAV2-hsm-driver-luna7-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-softhsm-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-softhsm-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.6.1.{{ $index }}' + descr: 'SoftHSM' + group: 'HSM Status' + index: pk-SAV2-hsm-driver-softhsm-status + state_name: pk-SAV2-hsm-driver-softhsm-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-utimaco-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-utimaco-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.6.3.1.{{ $index }}' + descr: 'Utimaco' + group: 'HSM Status' + index: pk-SAV2-hsm-driver-utimaco-status + state_name: pk-SAV2-hsm-driver-utimaco-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } + - + oid: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-ncipher-status + value: PK-SOFTWARE-APPLIANCE-V2::pk-SAV2-hsm-driver-ncipher-status + num_oid: '.1.3.6.1.4.1.22408.1.4.1.6.4.{{ $index }}' + descr: 'nCipher' + group: 'HSM Status' + index: pk-SAV2-hsm-driver-ncipher-status + state_name: pk-SAV2-hsm-driver-ncipher-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fault' } + - { value: -1, generic: 3, graph: 1, descr: 'Internal Error' } diff --git a/priv/profiles/os_discovery/primekey.yaml b/priv/profiles/os_discovery/primekey.yaml new file mode 100644 index 00000000..aeedea77 --- /dev/null +++ b/priv/profiles/os_discovery/primekey.yaml @@ -0,0 +1,271 @@ +mib: PRIMEKEY-APPLIANCE-MIB +modules: + os: + version: 'PRIMEKEY-APPLIANCE-MIB::pkAVersion' + serial: 'PRIMEKEY-APPLIANCE-MIB::pkAHsmSerialNumber' + # The Appliance S/N is not available via SNMP, + # but we can retrieve the S/N for the Hardware Security Module. + sensors: + count: + options: + skip_value_lt: 0 + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpLoad1m + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.108.111.97.100.50.1{{ $noindex }}' + descr: '1m CPU load' + group: 'CPU' + index: pkASfpLoad1m + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpLoad5m + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.108.111.97.100.51.1{{ $noindex }}' + descr: '5m CPU load' + group: 'CPU' + index: pkASfpLoad5m + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpLoad15m + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.108.111.97.100.52.1{{ $noindex }}' + descr: '15m CPU load' + group: 'CPU' + index: pkASfpLoad15m + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAClusterLocalNodeID + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.49.1{{ $noindex }}' + descr: 'Node ID' + group: 'Database' + index: pkAClusterLocalNodeID + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAClusterSize + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.50.1{{ $noindex }}' + descr: 'Node Count' + group: 'Database' + index: pkAClusterSize + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAClusterActiveNodes + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.51.1{{ $noindex }}' + descr: 'Nodes Active' + group: 'Database' + index: pkAClusterActiveNodes + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpRaidTotalDevices + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.114.97.105.100.52.1{{ $noindex }}' + descr: 'RAID Devices' + group: 'RAID' + index: pkASfpRaidTotalDevices + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpRaidActiveDevices + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.114.97.105.100.54.1{{ $noindex }}' + descr: 'RAID Active' + group: 'RAID' + index: pkASfpRaidActiveDevices + fanspeed: + options: + skip_value_lt: 0 + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpCpuFan + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.49.1{{ $noindex }}' + descr: 'CPU Fan' + group: 'CPU' + index: pkASfpCpuFan + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpSysFan1 + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.50.1{{ $noindex }}' + descr: 'System Fan 1' + group: 'System' + index: pkASfpSysFan1 + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpSysFan2 + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.51.1{{ $noindex }}' + descr: 'System Fan 2' + group: 'System' + index: pkASfpSysFan2 + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpSysFan3 + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.52.1{{ $noindex }}' + descr: 'System Fan 3' + group: 'System' + index: pkASfpSysFan3 + percent: + options: + skip_value_lt: 0 + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAVdbUsagePercent + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.118.100.98.49.1{{ $noindex }}' + descr: 'DB Usage %' + group: 'Database' + index: pkAVdbUsagePercent + warn_limit: 80 + high_limit: 100 + state: + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpVmStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.2.118.109.1{{ $noindex }}' + descr: 'Health VMs' + group: 'Health of VMs' + index: pkASfpVmStatus + state_name: HealthVMs + states: + - { value: 0, generic: 0, graph: 0, descr: 'All OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Some Inactive' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAEJBCAHealth + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.104.101.97.108.116.104.101.50.1{{ $noindex }}' + descr: 'Health EJBCA' + group: 'Health of VMs' + index: pkAEJBCAHealth + state_name: HealthEjbca + states: + - { value: 0, generic: 0, graph: 0, descr: 'All OK' } + - { value: 1, generic: 3, graph: 1, descr: 'Not Running or Unhealthy' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASignServerHealth + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.104.101.97.108.116.104.115.50.1{{ $noindex }}' + descr: 'Health SignServer' + group: 'Health of VMs' + index: pkASignServerHealth + snmp_flags: ['-OteQUS', '-Ci'] # Workaround to prevent walking off the end of the MiB + state_name: HealthSignserver + states: + - { value: 0, generic: 0, graph: 0, descr: 'All OK' } + - { value: 1, generic: 3, graph: 1, descr: 'Not Running or Unhealthy' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpCpuFanStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.53.1{{ $noindex }}' + descr: 'Fan CPU' + group: 'Fans' + index: pkASfpCpuFanStatus + state_name: FansCpu + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fail' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpSysFansStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.102.97.110.54.1{{ $noindex }}' + descr: 'Fans System' + group: 'Fans' + index: pkASfpSysFansStatus + state_name: FansSystem + states: + - { value: 0, generic: 0, graph: 0, descr: 'All OK' } + - { value: 1, generic: 1, graph: 1, descr: 'Fail' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAVdbStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.4.118.100.98.50.1{{ $noindex }}' + descr: 'DB Storage' + group: 'Database' + index: pkAVdbStatus + state_name: DbStorage + states: + - { value: 0, generic: 0, graph: 0, descr: '< 80% full' } + - { value: 1, generic: 2, graph: 1, descr: '> 80% full' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAClusterLocalGaleraState + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.52.1{{ $noindex }}' + descr: 'DB Enum' + group: 'Database' + index: pkAClusterLocalGaleraState + state_name: DbEnum + # Galera node status can be reported as a number or a comment: + # - wsrep_local_state + # - PRIMEKEY-APPLIANCE-MIB::pkAClusterLocalGaleraState + # - .1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.52.1 + # - wsrep_local_state_comment + # - PRIMEKEY-APPLIANCE-MIB::pkAClusterLocalGaleraStateString + # - .1.3.6.1.4.1.22408.1.1.2.1.8.99.108.117.115.116.101.114.53.1 + # This state table is based around an interpretation of how these two + # variables relate to each other. See these links for more info: + # https:#github.com/codership/wsrep-API/blob/master/wsrep_api.h#L306 and + # https://galeracluster.com/library/documentation/node-states.html#node-state-changes + states: + - { value: 0, generic: 3, graph: 0, descr: 'Undefined' } # undefined state + - { value: 1, generic: 1, graph: 1, descr: 'Joiner' } # incomplete state, requested state transfer + - { value: 2, generic: 0, graph: 2, descr: 'Donor' } # complete state, donates state transfer + - { value: 3, generic: 0, graph: 3, descr: 'Joined' } # complete state + - { value: 4, generic: 0, graph: 4, descr: 'Synced' } # complete state, synchronized with group + - { value: 5, generic: 2, graph: 5, descr: 'Error' } # this and above is provider-specific error code + - { value: 6, generic: 2, graph: 6, descr: 'Max' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpRaidStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.5.114.97.105.100.49.1{{ $noindex }}' + descr: 'RAID Health' + group: 'RAID' + index: pkASfpRaidStatus + state_name: RaidHealth + states: + - { value: 0, generic: 0, graph: 0, descr: 'Clean or Active' } + - { value: 1, generic: 2, graph: 1, descr: 'Degraded' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmStatusEnum + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.50.1{{ $noindex }}' + descr: 'HSM Enum' + group: 'HSM' + index: pkAHsmStatusEnum + state_name: HsmEnum + states: + - { value: 0, generic: 0, graph: 0, descr: 'STATUS_is_OPER' } + - { value: 1, generic: 1, graph: 1, descr: 'STATUS_is_MAINT' } + - { value: 2, generic: 1, graph: 2, descr: 'STATUS_is_BOOT' } + - { value: 3, generic: 2, graph: 3, descr: 'STATUS_is_ALARM' } + - { value: 4, generic: 2, graph: 4, descr: 'STATUS_is_EXTERNALERASE' } + - { value: 5, generic: 2, graph: 5, descr: 'STATUS_is_FAIL' } + - { value: 5, generic: 3, graph: 6, descr: 'STATUS_is_OTHER' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmStatusBool + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.51.1{{ $noindex }}' + descr: 'HSM Healthy' + group: 'HSM' + index: pkAHsmStatusBool + state_name: HsmHealthy + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Fail' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmBatteryIntStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.53.1{{ $noindex }}' + descr: 'Battery Int' + group: 'HSM' + index: pkAHsmBatteryIntStatus + state_name: BatteryInt + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Low or Fail' } + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmBatteryExtStatus + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.56.1{{ $noindex }}' + descr: 'Battery Ext' + group: 'HSM' + index: pkAHsmBatteryExtStatus + snmp_flags: ['-OteQUS', '-Ci'] # Workaround to prevent walking off the end of the MiB + state_name: BatteryExt + states: + - { value: 0, generic: 0, graph: 0, descr: 'Ok or Absent' } + - { value: 1, generic: 2, graph: 1, descr: 'Low or Fail' } + temperature: + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkASfpCpuTemp + num_oid: '.1.3.6.1.4.1.22408.1.1.2.1.3.99.112.117.1{{ $noindex }}' + descr: 'CPU Temp' + group: 'CPU' + index: pkASfpCpuTemp + voltage: + options: + skip_value_lt: 0 + data: + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmBatteryInt + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.52.1{{ $noindex }}' + descr: 'Int Battery' + group: 'HSM' + index: pkAHsmBatteryInt + user_func: \LibreNMS\Util\Number::cast + - + oid: PRIMEKEY-APPLIANCE-MIB::pkAHsmBatteryExt + num_oid: '.1.3.6.1.4.1.22408.1.1.2.2.4.104.115.109.55.1{{ $noindex }}' + descr: 'Ext Battery' + group: 'HSM' + index: pkAHsmBatteryExt + user_func: \LibreNMS\Util\Number::cast diff --git a/priv/profiles/os_discovery/procera.yaml b/priv/profiles/os_discovery/procera.yaml new file mode 100644 index 00000000..2c26af34 --- /dev/null +++ b/priv/profiles/os_discovery/procera.yaml @@ -0,0 +1,6 @@ +mib: PACKETLOGIC-MIB +modules: + os: + hardware: PACKETLOGIC-OVERVIEW-MIB::model.1.0 + serial: PACKETLOGIC-OVERVIEW-MIB::machineId.1.0 + version: PACKETLOGIC-OVERVIEW-MIB::firmwareVersion.1.0 diff --git a/priv/profiles/os_discovery/procurve.yaml b/priv/profiles/os_discovery/procurve.yaml new file mode 100644 index 00000000..dba736c9 --- /dev/null +++ b/priv/profiles/os_discovery/procurve.yaml @@ -0,0 +1,170 @@ +mib: POWERSUPPLY-MIB:FAN-MIB:STATISTICS-MIB:HP-ICF-POE-MIB:HP-STACK-MIB:ENTITY-MIB:ENTITY-STATE-MIB +modules: + mempools: + data: + - + total: NETSWITCH-MIB::hpLocalMemTotalBytes + free: NETSWITCH-MIB::hpLocalMemFreeBytes + used: NETSWITCH-MIB::hpLocalMemAllocBytes + descr: 'Local Memory {{ $index }}' + type: hpLocal + - + total: NETSWITCH-MIB::hpGlobalMemTotalBytes + free: NETSWITCH-MIB::hpGlobalMemFreeBytes + used: NETSWITCH-MIB::hpGlobalMemAllocBytes + descr: 'Global Memory {{ $index }}' + type: hpGlobal + os: + sysDescr_regex: + - '/^(Aruba|ProCurve|HP) (?[^,]+), revision (?[^ ,]+)/' + - '/^(HPE OfficeConnect Switch|HP ProCurve|HP) (?[^,]*), (?P\S[0-9\.]+)/' + - '/^(Aruba|HPE Networking) Instant On (?[^,]+), InstantOn_\d+_(?[0-9\.]+)/' + - '/^PROCURVE (?.*) - (?.*)$/' + - '/^(?GbE2c)/' + version: + - NETSWITCH-MIB::hpSwitchOsVersion.0 + - HP-SN-AGENT-MIB::snAgImgVer.0 + serial: SEMI-MIB::hpHttpMgSerialNumber.0 + hardware_replace: + - ['/ /', ' '] + - '/ Switch/' + - '/ Stack/' + processors: + data: + - + oid: hpSwitchCpuStat + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.9.6.1.{{ $index }}' + type: procurve-fixed + sensors: + additional_oids: + data: + - + oid: + - entPhysicalDescr + - entPhysicalName + - entPhysicalClass + temperature: + data: + - + oid: hpicfPsTable + value: hpicfPsTemp + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.55.1.1.1.4.{{ $index }}' + index: 'hpicfPsTemp.{{ $index }}' + descr: 'Power Supply #{{ $index }}' + power: + data: + - + oid: hpicfPsTable + value: hpicfPsWattageCur + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.55.1.1.1.6.{{ $index }}' + index: 'hpicfPsWattageCur.{{ $index }}' + high_limit: hpicfPsWattageMax + descr: 'Power Supply #{{ $index }}' + - + oid: hpicfPseFeaturesTable + value: hpicfPseUsedPower + num_oid: '.1.3.6.1.4.1.11.2.14.11.1.9.1.6.1.5.{{ $index }}' + index: 'hpicfPseAvailablePower.{{ $index }}' + skip_values: + - + oid: hpicfPseAvailablePower + op: '==' + value: 0 + high_limit: hpicfPseAvailablePower + descr: 'PoE Power Used' + state: + data: + - + oid: hpicfFanTable + value: hpicfFanState + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.54.2.1.1.4.{{ $index }}' + descr: 'Fan #{{ $index }}' + index: 'hpicfFanState.{{ $index }}' + state_name: hpicfFanState + states: + - { descr: removed, graph: 1, value: 1, generic: 3 } + - { descr: off, graph: 1, value: 2, generic: 3 } + - { descr: underspeed, graph: 1, value: 3, generic: 1 } + - { descr: overspeed, graph: 1, value: 4, generic: 1 } + - { descr: ok, graph: 1, value: 5, generic: 0 } + - { descr: maxstate, graph: 1, value: 6, generic: 3 } + - + oid: hpicfPsTable + value: hpicfPsState + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.55.1.1.1.2.{{ $index }}' + descr: 'Power Supply #{{ $index }}' + index: 'hpicfPsState.{{ $index }}' + state_name: hpicfPsState + states: + - { descr: psNotPresent, graph: 1, value: 1, generic: 3 } + - { descr: psNotPlugged, graph: 1, value: 2, generic: 2 } + - { descr: psPowered, graph: 1, value: 3, generic: 0 } + - { descr: psFailed, graph: 1, value: 4, generic: 2 } + - { descr: psPermFailure, graph: 1, value: 5, generic: 2 } + - { descr: psMax, graph: 1, value: 6, generic: 3 } + - + oid: hpStackConfig + value: hpStackOperStatus + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.69.1.1.2.{{ $index }}' + descr: 'Stack State' + state_name: hpStackOperStatus + states: + - { descr: disabled, graph: 1, value: 1, generic: 0 } + - { descr: active, graph: 1, value: 2, generic: 0 } + - { descr: fragmentInactive, graph: 1, value: 3, generic: 2 } + - { descr: unAvailable, graph: 1, value: 0, generic: 0 } + - { descr: fragmentActive, graph: 1, value: 4, generic: 2 } + - + oid: hpStackConfig + value: hpStackTopology + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.69.1.1.4.{{ $index }}' + descr: 'Stack Topology' + state_name: hpStackTopology + skip_values: + - + oid: hpStackOperStatus + op: '==' + value: 1 + states: + - { descr: unKnown, graph: 1, value: 0, generic: 0 } + - { descr: chain, graph: 1, value: 1, generic: 0 } + - { descr: ring, graph: 1, value: 2, generic: 0 } + - { descr: mesh, graph: 1, value: 3, generic: 0 } + - { descr: partialMesh, graph: 1, value: 4, generic: 1 } + - + oid: hpStackMemberTable + value: hpStackMemberState + num_oid: '.1.3.6.1.4.1.11.2.14.11.5.1.69.1.3.1.9.{{ $index }}' + descr: 'Stack Member State {{ $index }}' + index: 'hpStackMemberState.{{ $index }}' + state_name: hpStackMemberState + states: + - { descr: unusedID, graph: 1, value: 0, generic: 0 } + - { descr: missing, graph: 1, value: 1, generic: 3 } + - { descr: provision, graph: 1, value: 2, generic: 0 } + - { descr: commander, graph: 1, value: 3, generic: 0 } + - { descr: standby, graph: 1, value: 4, generic: 0 } + - { descr: member, graph: 1, value: 5, generic: 0 } + - { descr: shutdown, graph: 1, value: 6, generic: 3 } + - { descr: booting, graph: 1, value: 7, generic: 3 } + - { descr: communicationFailure, graph: 1, value: 8, generic: 3 } + - { descr: incompatibleOs , graph: 1, value: 9, generic: 3 } + - { descr: unknownState , graph: 1, value: 10, generic: 3 } + - { descr: standbyBooting , graph: 1, value: 11, generic: 3 } + - + oid: entStateOper + value: entStateOper + num_oid: '.1.3.6.1.2.1.131.1.1.1.3.{{ $index }}' + descr: '{{ $entPhysicalName }} [{{ $entPhysicalDescr }}]' + index: 'entStateOper.{{ $index }}' + state_name: entStateOper + states: + - { descr: notPresent, graph: 1, value: 1, generic: 3 } + - { descr: unknown, graph: 1, value: 2, generic: 1 } + - { descr: ok, graph: 1, value: 3, generic: 0 } + - { descr: failed, graph: 1, value: 4, generic: 2 } + skip_values: + - + oid: entPhysicalClass + op: 'in_array' + value: ['', 5, 6, 7, 8, 10] diff --git a/priv/profiles/os_discovery/profline-sfd.yaml b/priv/profiles/os_discovery/profline-sfd.yaml new file mode 100755 index 00000000..3b5315a8 --- /dev/null +++ b/priv/profiles/os_discovery/profline-sfd.yaml @@ -0,0 +1,112 @@ +modules: + os: + hardware: PROFLINE-SFD-MIB::sfdIdnOptions.0 + serial: PROFLINE-SFD-MIB::sfdIdnSerialNumber.0 + version: + - PROFLINE-SFD-MIB::sfdIdnFirmwareVersion.1 + - PROFLINE-SFD-MIB::sfdIdnFirmwareVersion.2 + version_template: '{{ PROFLINE-SFD-MIB::sfdIdnFirmwareVersion.1 }}, {{ PROFLINE-SFD-MIB::sfdIdnFirmwareVersion.2 }}' + sensors: + frequency: + data: + - + oid: PROFLINE-SFD-MIB::sfdSetRfInFrequency + num_oid: '.1.3.6.1.4.1.21222.1.4.1.2.3.1.{{ $index }}' + descr: 'RF Input Frequency' + multiplier: 10000 + index: 1 + dbm: + data: + - oid: PROFLINE-SFD-MIB::sfdMsrRfInSignalStrength + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.3.2.{{ $index }}' + descr: RSSI + index: 1 + state: + data: + - oid: PROFLINE-SFD-MIB::sfdMsrControlMode + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.7.1.{{ $index }}' + descr: Active control mode + states: + - { value: 1, generic: 2, graph: 0, descr: 'Local' } + - { value: 2, generic: 0, graph: 0, descr: 'Remote' } + - { value: 3, generic: 0, graph: 0, descr: 'LocalPlusRemote' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmRfInLevelLow + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.1.{{ $index }}' + descr: RSSI low level + group: Alarm Status - RF + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmRfInLevelHigh + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.2.{{ $index }}' + descr: RSSI high level + group: Alarm Status - RF + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmPilotLevel + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.3.{{ $index }}' + descr: Pilot level + group: Alarm Status - Modulator + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmMpxDeviation + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.4.{{ $index }}' + descr: MPX deviation + group: Alarm Status - Modulator + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmRdsBer + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.5.{{ $index }}' + descr: RDS bit error rate + group: Alarm Status - RDS + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmRdsLevel + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.6.{{ $index }}' + descr: RDS level + group: Alarm Status - RDS + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmAudioLevelLeft + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.7.{{ $index }}' + descr: Left audio level + group: Alarm Status - Audio + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmAudioLevelRight + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.8.{{ $index }}' + descr: Right audio level + group: Alarm Status - Audio + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmAudioLevelBoth + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.9.{{ $index }}' + descr: Both audio level + group: Alarm Status - Audio + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } + - oid: PROFLINE-SFD-MIB::sfdMsrAlarmRdsPi + num_oid: '.1.3.6.1.4.1.21222.1.4.1.3.1.10.{{ $index }}' + descr: RDS PI + group: Alarm Status - RDS + states: + - { value: 1, generic: 0, graph: 0, descr: 'Ok' } + - { value: 3, generic: 1, graph: 0, descr: 'Warning' } + - { value: 5, generic: 2, graph: 0, descr: 'Alarm' } diff --git a/priv/profiles/os_discovery/protelevision-t1.yaml b/priv/profiles/os_discovery/protelevision-t1.yaml new file mode 100644 index 00000000..503210b7 --- /dev/null +++ b/priv/profiles/os_discovery/protelevision-t1.yaml @@ -0,0 +1,262 @@ +mib: PT3080-MIB +modules: + os: + hardware: PT3080-MIB::pt3080SystemInstrumentType.0 + serial: PT3080-MIB::pt3080SystemInstrumentKU.0 + version: PT3080-MIB::pt3080SystemInstrumentSWRev.0 + sensors: + state: + data: + - + oid: pt3080InputTSPrimaryStatus + num_oid: '.1.3.6.1.4.1.18086.3080.3.36.{{ $index }}' + descr: TS Primary Status + group: Input + state_name: pt3080InputTSPrimaryStatus + states: + - { descr: 'Available', graph: 1, value: 0, generic: 0 } + - { descr: 'Unavailable', graph: 1, value: 1, generic: 1 } + - { descr: 'No sync', graph: 1, value: 2, generic: 2 } + - + oid: pt3080InputTSSecondaryStatus + num_oid: '.1.3.6.1.4.1.18086.3080.3.37.{{ $index }}' + descr: TS Secondary Status + group: Input + state_name: pt3080InputTSSecondaryStatus + states: + - { descr: 'Available', graph: 1, value: 0, generic: 0 } + - { descr: 'Unavailable', graph: 1, value: 1, generic: 3 } + - { descr: 'No sync', graph: 1, value: 2, generic: 2 } + - + oid: pt3080InputTSHp + num_oid: '.1.3.6.1.4.1.18086.3080.3.38.{{ $index }}' + descr: Input source On Air + group: Input + state_name: pt3080InputTSHp + states: + - { descr: 'asi-in-1', graph: 1, value: 0, generic: 0 } + - { descr: 'asi-in-2', graph: 1, value: 1, generic: 0 } + - { descr: 'demodulator-1', graph: 1, value: 2, generic: 0 } + - { descr: 'demodulator-2', graph: 1, value: 3, generic: 0 } + - { descr: 'tsoip-rx1', graph: 1, value: 4, generic: 0 } + - { descr: 'tsoip-rx2', graph: 1, value: 5, generic: 0 } + - { descr: 'satRecv', graph: 1, value: 6, generic: 0 } + - + oid: pt3080InputTSLp + num_oid: '.1.3.6.1.4.1.18086.3080.3.39.{{ $index }}' + descr: Input source Backup + group: Input + state_name: pt3080InputTSLp + states: + - { descr: 'asi-in-1', graph: 1, value: 0, generic: 0 } + - { descr: 'asi-in-2', graph: 1, value: 1, generic: 0 } + - { descr: 'demodulator-1', graph: 1, value: 2, generic: 0 } + - { descr: 'demodulator-2', graph: 1, value: 3, generic: 0 } + - { descr: 'tsoip-rx1', graph: 1, value: 4, generic: 0 } + - { descr: 'tsoip-rx2', graph: 1, value: 5, generic: 0 } + - { descr: 'satRecv', graph: 1, value: 6, generic: 0 } + - + oid: pt3080SystemModulationStandard + num_oid: '.1.3.6.1.4.1.18086.3080.1.32.{{ $index }}' + descr: Modulation standard + group: System + state_name: pt3080SystemModulationStandard + states: + - { descr: 'dvbt', graph: 1, value: 0, generic: 0 } + - { descr: 'dvbt2', graph: 1, value: 1, generic: 0 } + - { descr: 'atsc', graph: 1, value: 2, generic: 0 } + - { descr: 'isdbt', graph: 1, value: 3, generic: 0 } + - { descr: 'iboc', graph: 1, value: 4, generic: 0 } + - + oid: pt3080OutputSynchronized + num_oid: '.1.3.6.1.4.1.18086.3080.4.6.{{ $index }}' + descr: Output Synchronized Status + group: Output + state_name: pt3080OutputSynchronized + states: + - { descr: 'not-synchronized', graph: 1, value: 0, generic: 2 } + - { descr: 'synchronized', graph: 1, value: 1, generic: 0 } + - + oid: pt3080Gps1PPSStatus + num_oid: '.1.3.6.1.4.1.18086.3080.7.1.{{ $index }}' + descr: GPS Status + group: GPS + state_name: pt3080Gps1PPSStatus + states: + - { descr: 'locked', graph: 1, value: 0, generic: 0 } + - { descr: 'unlocked', graph: 1, value: 1, generic: 2 } + - + oid: pt3080GpsBias + num_oid: '.1.3.6.1.4.1.18086.3080.7.4.{{ $index }}' + descr: GPS Bias + group: GPS + state_name: pt3080GpsBias + states: + - { descr: 'off', graph: 1, value: 0, generic: 3 } + - { descr: 'on', graph: 1, value: 1, generic: 0 } + - + oid: pt3080GpsbiasVoltage + num_oid: '.1.3.6.1.4.1.18086.3080.7.15.{{ $index }}' + descr: GPS Bias Voltage + group: GPS + state_name: pt3080GpsbiasVoltage + states: + - { descr: 'gpsant-5v', graph: 1, value: 0, generic: 0 } + - { descr: 'gpsant-33v', graph: 1, value: 1, generic: 0 } + - + oid: pt3080GpsSatelliteSystemGPS + num_oid: '.1.3.6.1.4.1.18086.3080.7.16.{{ $index }}' + descr: GPS Satellites Timing + group: GPS + state_name: pt3080GpsSatelliteSystemGPS + states: + - { descr: 'disable', graph: 1, value: 0, generic: 3 } + - { descr: 'enable', graph: 1, value: 1, generic: 0 } + - + oid: pt3080GpsSatelliteSystemGLONASS + num_oid: '.1.3.6.1.4.1.18086.3080.7.17.{{ $index }}' + descr: GPS GLONASS Satellites Timing + group: GPS + state_name: pt3080GpsSatelliteSystemGLONASS + states: + - { descr: 'disable', graph: 1, value: 0, generic: 3 } + - { descr: 'enable', graph: 1, value: 1, generic: 0 } + - + oid: pt3080GpsSatelliteSystemGALILEO + num_oid: '.1.3.6.1.4.1.18086.3080.7.18.{{ $index }}' + descr: GPS GALILEO Satellites Timing + group: GPS + state_name: pt3080GpsSatelliteSystemGALILEO + states: + - { descr: 'disable', graph: 1, value: 0, generic: 3 } + - { descr: 'enable', graph: 1, value: 1, generic: 0 } + - + oid: pt3080GpsSatelliteSystemCOMPASS + num_oid: '.1.3.6.1.4.1.18086.3080.7.19.{{ $index }}' + descr: GPS COMPASS Satellites Timing + group: GPS + state_name: pt3080GpsSatelliteSystemCOMPASS + states: + - { descr: 'disable', graph: 1, value: 0, generic: 3 } + - { descr: 'enable', graph: 1, value: 1, generic: 0 } + - + oid: pt3080SystemDateTimeSyncActual + num_oid: '.1.3.6.1.4.1.18086.3080.1.31.{{ $index }}' + descr: Time Sync + group: System + state_name: pt3080SystemDateTimeSyncActual + states: + - { descr: 'manual', graph: 1, value: 0, generic: 1 } + - { descr: 'auto', graph: 1, value: 1, generic: 1 } + - { descr: 'gps', graph: 1, value: 2, generic: 0 } + - { descr: 'ntp', graph: 1, value: 3, generic: 1 } + - + oid: pt3080ModeCodeRateHighPrio + num_oid: '.1.3.6.1.4.1.18086.3080.2.4.{{ $index }}' + descr: HP Code Rate + group: Mode + state_name: pt3080ModeCodeRateHighPrio + states: + - { descr: 'code-rate-1/2', graph: 1, value: 0, generic: 0 } + - { descr: 'code-rate-2/3', graph: 1, value: 1, generic: 0 } + - { descr: 'code-rate-3/4', graph: 1, value: 2, generic: 0 } + - { descr: 'code-rate-5/6', graph: 1, value: 3, generic: 0 } + - { descr: 'code-rate-7/8', graph: 1, value: 4, generic: 0 } + - + oid: pt3080ModeCodeRateLowPrio + num_oid: '.1.3.6.1.4.1.18086.3080.2.5.{{ $index }}' + descr: LP Code Rate + group: Mode + state_name: pt3080ModeCodeRateLowPrio + states: + - { descr: 'code-rate-1/2', graph: 1, value: 0, generic: 0 } + - { descr: 'code-rate-2/3', graph: 1, value: 1, generic: 0 } + - { descr: 'code-rate-3/4', graph: 1, value: 2, generic: 0 } + - { descr: 'code-rate-5/6', graph: 1, value: 3, generic: 0 } + - { descr: 'code-rate-7/8', graph: 1, value: 4, generic: 0 } + - + oid: pt3080ModeConstellation + num_oid: '.1.3.6.1.4.1.18086.3080.2.6.{{ $index }}' + descr: OFDM Constellation Mode + group: Mode + state_name: pt3080ModeConstellation + states: + - { descr: 'qpsk', graph: 1, value: 0, generic: 0 } + - { descr: 'qam16', graph: 1, value: 1, generic: 0 } + - { descr: 'qam64', graph: 1, value: 2, generic: 0 } + - + oid: pt3080OutputMode + num_oid: '.1.3.6.1.4.1.18086.3080.4.1.{{ $index }}' + descr: RF Output Mode + group: Output + state_name: pt3080OutputMode + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'standby', graph: 1, value: 1, generic: 1 } + - + oid: pt3080TSoIPRx1Status + num_oid: '.1.3.6.1.4.1.18086.3080.10.17.{{ $index }}' + descr: TSoIP 1 Receiver Status + group: TSoIP + state_name: pt3080TSoIPRx1Status + states: + - { descr: 'locked', graph: 1, value: 0, generic: 0 } + - { descr: 'unlocked', graph: 1, value: 1, generic: 2 } + - { descr: 'disabled', graph: 1, value: 2, generic: 3 } + - + oid: pt3080TSoIPRx2Status + num_oid: '.1.3.6.1.4.1.18086.3080.10.47.{{ $index }}' + descr: TSoIP 2 Receiver Status + group: TSoIP + state_name: pt3080TSoIPRx2Status + states: + - { descr: 'locked', graph: 1, value: 0, generic: 0 } + - { descr: 'unlocked', graph: 1, value: 1, generic: 2 } + - { descr: 'disabled', graph: 1, value: 2, generic: 3 } + - + oid: pt3080ModeGuardInterval + num_oid: '.1.3.6.1.4.1.18086.3080.2.7.{{ $index }}' + descr: OFDM Guard Interval + group: Mode + state_name: pt3080ModeGuardInterval + states: + - { descr: 'guard-1/32', graph: 1, value: 0, generic: 0 } + - { descr: 'guard-1/16', graph: 1, value: 1, generic: 0 } + - { descr: 'guard-1/8', graph: 1, value: 2, generic: 0 } + - { descr: 'guard-1/4', graph: 1, value: 3, generic: 0 } + - + oid: pt3080Modeifft + num_oid: '.1.3.6.1.4.1.18086.3080.2.3.{{ $index }}' + descr: OFDM IFFT Mode + group: Mode + state_name: pt3080Modeifft + states: + - { descr: 'mode-2k', graph: 1, value: 0, generic: 0 } + - { descr: 'mode-4k', graph: 1, value: 1, generic: 2 } + - { descr: 'mode-8k', graph: 1, value: 2, generic: 0 } + dbm: + data: + - + oid: pt3080OutputEffectiveLevel + num_oid: '.1.3.6.1.4.1.18086.3080.4.17.{{ $index }}' + index: 0 + descr: 'Effective RF Output Level' + divisor: 100 + - + oid: pt3080OutputActualLevel + num_oid: '.1.3.6.1.4.1.18086.3080.4.18.{{ $index }}' + index: 1 + descr: 'Actual RF Output Level' + divisor: 100 + - + oid: pt3080OutputRfDetectedActualLevel + num_oid: '.1.3.6.1.4.1.18086.3080.4.19.{{ $index }}' + index: 2 + descr: 'Detected RF Output Level' + divisor: 100 + delay: + data: + - + oid: pt3080ModeNetworkDelayHP + num_oid: '.1.3.6.1.4.1.18086.3080.2.20.{{ $index }}' + descr: 'Network delay of HP TS' diff --git a/priv/profiles/os_discovery/ptp250.yaml b/priv/profiles/os_discovery/ptp250.yaml new file mode 100644 index 00000000..5a30b98f --- /dev/null +++ b/priv/profiles/os_discovery/ptp250.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/5\d(?.*?)( Wireless|,).*Version\s+(?[\d-]+)/' + hardware: CAMBIUM-PTP250-MIB::masterSlaveMode.0 + hardware_template: '{{ $hardware }} {{ CAMBIUM-PTP250-MIB::masterSlaveMode.0 }}' diff --git a/priv/profiles/os_discovery/ptp500.yaml b/priv/profiles/os_discovery/ptp500.yaml new file mode 100644 index 00000000..d2930be6 --- /dev/null +++ b/priv/profiles/os_discovery/ptp500.yaml @@ -0,0 +1,51 @@ +mib: CAMBIUM-PTP500-V2-MIB +modules: + os: + sysDescr_regex: '/5\d(?.*?)( Wireless|,).*Version\s+(?[\d-]+)/' + hardware: CAMBIUM-PTP500-V2-MIB::masterSlaveMode.0 + hardware_template: '{{ $hardware }} {{ CAMBIUM-PTP500-V2-MIB::masterSlaveMode.0 }}' + sensors: + state: + data: + - + oid: transmitModulationMode + num_oid: '.1.3.6.1.4.1.17713.5.12.9.{{ $index }}' + index: 'transmitModulationMode.{{ $index }}' + descr: Transmit Modulation Mode + states: + - { value: 1, generic: 0, graph: 1, descr: modBpsk50percent } + - { value: 2, generic: 0, graph: 1, descr: modQpsk50percentSingle } + - { value: 3, generic: 0, graph: 1, descr: modQpsk75percentSingle } + - { value: 4, generic: 0, graph: 1, descr: mod16qam50percentSingle } + - { value: 5, generic: 0, graph: 1, descr: mod16qam75percentSingle } + - { value: 6, generic: 0, graph: 1, descr: mod64qam67percentSingle } + - { value: 7, generic: 0, graph: 1, descr: mod64qam83percentSingle } + - { value: 8, generic: 0, graph: 1, descr: modReserved1 } + - { value: 9, generic: 0, graph: 1, descr: modQpsk50percentDual } + - { value: 10, generic: 0, graph: 1, descr: modQpsk75percentDual } + - { value: 11, generic: 0, graph: 1, descr: mod16qam50percentDual } + - { value: 12, generic: 0, graph: 1, descr: mod16qam75percentDual } + - { value: 13, generic: 0, graph: 1, descr: mod64qam67percentDual } + - { value: 14, generic: 0, graph: 1, descr: mod64qam83percentDual } + - { value: 15, generic: 0, graph: 1, descr: modReserved2 } + - + oid: receiveModulationMode + num_oid: '.1.3.6.1.4.1.17713.5.12.8.{{ $index }}' + index: 'receiveModulationMode.{{ $index }}' + descr: Receive Modulation Mode + states: + - { value: 1, generic: 0, graph: 1, descr: modBpsk50percent } + - { value: 2, generic: 0, graph: 1, descr: modQpsk50percentSingle } + - { value: 3, generic: 0, graph: 1, descr: modQpsk75percentSingle } + - { value: 4, generic: 0, graph: 1, descr: mod16qam50percentSingle } + - { value: 5, generic: 0, graph: 1, descr: mod16qam75percentSingle } + - { value: 6, generic: 0, graph: 1, descr: mod64qam67percentSingle } + - { value: 7, generic: 0, graph: 1, descr: mod64qam83percentSingle } + - { value: 8, generic: 0, graph: 1, descr: modReserved1 } + - { value: 9, generic: 0, graph: 1, descr: modQpsk50percentDual } + - { value: 10, generic: 0, graph: 1, descr: modQpsk75percentDual } + - { value: 11, generic: 0, graph: 1, descr: mod16qam50percentDual } + - { value: 12, generic: 0, graph: 1, descr: mod16qam75percentDual } + - { value: 13, generic: 0, graph: 1, descr: mod64qam67percentDual } + - { value: 14, generic: 0, graph: 1, descr: mod64qam83percentDual } + - { value: 15, generic: 0, graph: 1, descr: modReserved2 } diff --git a/priv/profiles/os_discovery/ptp600.yaml b/priv/profiles/os_discovery/ptp600.yaml new file mode 100644 index 00000000..70120663 --- /dev/null +++ b/priv/profiles/os_discovery/ptp600.yaml @@ -0,0 +1,71 @@ +mib: CAMBIUM-PTP600-MIB +modules: + os: + sysDescr_regex: '/5\d(?.*?)( Wireless|,).*Version\s+(?[\d-]+)/' + hardware: CAMBIUM-PTP600-MIB::masterSlaveMode.0 + hardware_template: '{{ $hardware }} {{ CAMBIUM-PTP600-MIB::masterSlaveMode.0 }}' + sensors: + state: + data: + - + oid: transmitModulationMode + num_oid: '.1.3.6.1.4.1.17713.6.12.9.{{ $index }}' + index: 'transmitModulationMode.{{ $index }}' + descr: Transmit Modulation Mode + states: + - { value: 0, generic: 0, graph: 1, descr: modAcquisition } + - { value: 1, generic: 0, graph: 1, descr: modBpsk63percent } + - { value: 2, generic: 0, graph: 1, descr: modQpsk63percentSingle } + - { value: 3, generic: 0, graph: 1, descr: modTransient1 } + - { value: 4, generic: 0, graph: 1, descr: modQpsk87percentSingle } + - { value: 5, generic: 0, graph: 1, descr: modTransient2 } + - { value: 6, generic: 0, graph: 1, descr: mod16qam63percentSingleA } + - { value: 7, generic: 0, graph: 1, descr: modTransient3 } + - { value: 8, generic: 0, graph: 1, descr: mod16qam87percentSingle } + - { value: 9, generic: 0, graph: 1, descr: modTransient4 } + - { value: 10, generic: 0, graph: 1, descr: mod64qam75percentSingle } + - { value: 11, generic: 0, graph: 1, descr: modTransient5 } + - { value: 12, generic: 0, graph: 1, descr: mod64qam92percentSingle } + - { value: 13, generic: 0, graph: 1, descr: modTransient6 } + - { value: 14, generic: 0, graph: 1, descr: mod256qam81percentSingle } + - { value: 15, generic: 0, graph: 1, descr: mod16qam63percentSingleB } + - { value: 16, generic: 0, graph: 1, descr: mod16qam63percentDual } + - { value: 17, generic: 0, graph: 1, descr: modTransient7 } + - { value: 18, generic: 0, graph: 1, descr: mod16qam87percentDual } + - { value: 19, generic: 0, graph: 1, descr: modTransient8 } + - { value: 20, generic: 0, graph: 1, descr: mod64qam75percentDual } + - { value: 21, generic: 0, graph: 1, descr: modTransient9 } + - { value: 22, generic: 0, graph: 1, descr: mod64qam92percentDual } + - { value: 23, generic: 0, graph: 1, descr: modTransient10 } + - { value: 24, generic: 0, graph: 1, descr: mod256qam81percentDual } + - + oid: receiveModulationMode + num_oid: '.1.3.6.1.4.1.17713.6.12.8.{{ $index }}' + index: 'receiveModulationMode.{{ $index }}' + descr: Receive Modulation Mode + states: + - { value: 0, generic: 0, graph: 1, descr: modAcquisition } + - { value: 1, generic: 0, graph: 1, descr: modBpsk63percent } + - { value: 2, generic: 0, graph: 1, descr: modQpsk63percentSingle } + - { value: 3, generic: 0, graph: 1, descr: modTransient1 } + - { value: 4, generic: 0, graph: 1, descr: modQpsk87percentSingle } + - { value: 5, generic: 0, graph: 1, descr: modTransient2 } + - { value: 6, generic: 0, graph: 1, descr: mod16qam63percentSingleA } + - { value: 7, generic: 0, graph: 1, descr: modTransient3 } + - { value: 8, generic: 0, graph: 1, descr: mod16qam87percentSingle } + - { value: 9, generic: 0, graph: 1, descr: modTransient4 } + - { value: 10, generic: 0, graph: 1, descr: mod64qam75percentSingle } + - { value: 11, generic: 0, graph: 1, descr: modTransient5 } + - { value: 12, generic: 0, graph: 1, descr: mod64qam92percentSingle } + - { value: 13, generic: 0, graph: 1, descr: modTransient6 } + - { value: 14, generic: 0, graph: 1, descr: mod256qam81percentSingle } + - { value: 15, generic: 0, graph: 1, descr: mod16qam63percentSingleB } + - { value: 16, generic: 0, graph: 1, descr: mod16qam63percentDual } + - { value: 17, generic: 0, graph: 1, descr: modTransient7 } + - { value: 18, generic: 0, graph: 1, descr: mod16qam87percentDual } + - { value: 19, generic: 0, graph: 1, descr: modTransient8 } + - { value: 20, generic: 0, graph: 1, descr: mod64qam75percentDual } + - { value: 21, generic: 0, graph: 1, descr: modTransient9 } + - { value: 22, generic: 0, graph: 1, descr: mod64qam92percentDual } + - { value: 23, generic: 0, graph: 1, descr: modTransient10 } + - { value: 24, generic: 0, graph: 1, descr: mod256qam81percentDual } diff --git a/priv/profiles/os_discovery/ptp650.yaml b/priv/profiles/os_discovery/ptp650.yaml new file mode 100644 index 00000000..76f441ee --- /dev/null +++ b/priv/profiles/os_discovery/ptp650.yaml @@ -0,0 +1,25 @@ +mib: CAMBIUM-PTP650-MIB +modules: + os: + sysDescr_regex: '/5\d(?.*?)( Wireless|,).*Version\s+(?[\d-]+)/' + hardware: CAMBIUM-PTP650-MIB::masterSlaveMode.0 + hardware_template: '{{ $hardware }} {{ CAMBIUM-PTP650-MIB::masterSlaveMode.0 }}' + sensors: + state: + data: + - + oid: tDDSynchronizationStatus + num_oid: '.1.3.6.1.4.1.17713.7.13.11.{{ $index }}' + index: 0 + descr: Sync Status + states: + - { value: 0, generic: 0, graph: 1, descr: locked } + - { value: 1, generic: 0, graph: 1, descr: holdover } + - { value: 2, generic: 1, graph: 1, descr: holdoverNoGPSSyncIn } + - { value: 3, generic: 2, graph: 1, descr: notSynchronized } + - { value: 4, generic: 2, graph: 1, descr: notSynchronizedNoGPSSyncIn } + - { value: 5, generic: 0, graph: 1, descr: pTPSYNCNotConnected } + - { value: 6, generic: 0, graph: 1, descr: initialising } + - { value: 7, generic: 0, graph: 1, descr: clusterTimingMaster } + - { value: 8, generic: 0, graph: 1, descr: acquiringLock } + - { value: 9, generic: 0, graph: 1, descr: inactive } diff --git a/priv/profiles/os_discovery/ptp670.yaml b/priv/profiles/os_discovery/ptp670.yaml new file mode 100644 index 00000000..3fa4954e --- /dev/null +++ b/priv/profiles/os_discovery/ptp670.yaml @@ -0,0 +1,27 @@ +mib: CAMBIUM-PTP670-MIB +modules: + os: + sysDescr_regex: '/Version (?\S+)/' + hardware: + - CAMBIUM-PTP670-MIB::masterSlaveMode.0 + - CAMBIUM-PTP670-MIB::hardwareVersion.0 + hardware_template: 'PTP 670 {{ CAMBIUM-PTP670-MIB::masterSlaveMode.0 }} ({{ CAMBIUM-PTP670-MIB::hardwareVersion.0 }})' + sensors: + state: + data: + - + oid: tDDSynchronizationStatus + num_oid: '.1.3.6.1.4.1.17713.7.13.11.{{ $index }}' + index: 0 + descr: Sync Status + states: + - { value: 0, generic: 0, graph: 1, descr: locked } + - { value: 1, generic: 0, graph: 1, descr: holdover } + - { value: 2, generic: 1, graph: 1, descr: holdoverNoGPSSyncIn } + - { value: 3, generic: 2, graph: 1, descr: notSynchronized } + - { value: 4, generic: 2, graph: 1, descr: notSynchronizedNoGPSSyncIn } + - { value: 5, generic: 0, graph: 1, descr: pTPSYNCNotConnected } + - { value: 6, generic: 0, graph: 1, descr: initialising } + - { value: 7, generic: 0, graph: 1, descr: clusterTimingMaster } + - { value: 8, generic: 0, graph: 1, descr: acquiringLock } + - { value: 9, generic: 0, graph: 1, descr: inactive } diff --git a/priv/profiles/os_discovery/ptp800.yaml b/priv/profiles/os_discovery/ptp800.yaml new file mode 100644 index 00000000..94cc32c3 --- /dev/null +++ b/priv/profiles/os_discovery/ptp800.yaml @@ -0,0 +1,33 @@ +mib: CAMBIUM-PTP800-MIB +modules: + os: + sysDescr_regex: '/Cambium (?.*) Wireless.* (?\S+)$/' + sensors: + state: + data: + - + oid: transmitModulation + num_oid: '.1.3.6.1.4.1.17713.8.12.9.{{ $index }}' + index: 'transmitModulation.{{ $index }}' + descr: Transmit Modulation Mode + states: + - { value: 0, generic: 0, graph: 1, descr: modQPSK } + - { value: 1, generic: 0, graph: 1, descr: mod8PSK } + - { value: 2, generic: 0, graph: 1, descr: mod16QAM } + - { value: 3, generic: 0, graph: 1, descr: mod32QAM } + - { value: 4, generic: 0, graph: 1, descr: mod64QAM } + - { value: 5, generic: 0, graph: 1, descr: mod128QAM } + - { value: 6, generic: 0, graph: 1, descr: mod256QAM } + - + oid: receiveModulation + num_oid: '.1.3.6.1.4.1.17713.8.12.8.{{ $index }}' + index: 'receiveModulation.{{ $index }}' + descr: Receive Modulation Mode + states: + - { value: 0, generic: 0, graph: 1, descr: modQPSK } + - { value: 1, generic: 0, graph: 1, descr: mod8PSK } + - { value: 2, generic: 0, graph: 1, descr: mod16QAM } + - { value: 3, generic: 0, graph: 1, descr: mod32QAM } + - { value: 4, generic: 0, graph: 1, descr: mod64QAM } + - { value: 5, generic: 0, graph: 1, descr: mod128QAM } + - { value: 6, generic: 0, graph: 1, descr: mod256QAM } diff --git a/priv/profiles/os_discovery/pulse.yaml b/priv/profiles/os_discovery/pulse.yaml new file mode 100644 index 00000000..6482b93a --- /dev/null +++ b/priv/profiles/os_discovery/pulse.yaml @@ -0,0 +1,19 @@ +mib: PULSESECURE-PSG-MIB +modules: + mempools: + data: + - + total: UCD-SNMP-MIB::memTotalReal + percent_used: PULSESECURE-PSG-MIB::iveMemoryUtil + precision: 1024 + descr: 'Main Memory' + type: 'pulse-mem' + os: + hardware: PULSESECURE-PSG-MIB::productName.0 + version: PULSESECURE-PSG-MIB::productVersion.0 + processors: + data: + - + oid: iveCpuUtil + num_oid: '.1.3.6.1.4.1.12532.10.{{ $index }}' + type: pulse-cpu diff --git a/priv/profiles/os_discovery/purestorage.yaml b/priv/profiles/os_discovery/purestorage.yaml new file mode 100644 index 00000000..0e01ac46 --- /dev/null +++ b/priv/profiles/os_discovery/purestorage.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/Pure Storage (?\w+), (?Purity\/\/FA [\d\.]+)/' + hardware_regex: '/Pure Storage (?\w+)/' + version_regex: '/Purity\/\/FA (?[\d\.]+)/' diff --git a/priv/profiles/os_discovery/qnap.yaml b/priv/profiles/os_discovery/qnap.yaml new file mode 100644 index 00000000..cdb3e4aa --- /dev/null +++ b/priv/profiles/os_discovery/qnap.yaml @@ -0,0 +1,126 @@ +mib: NAS-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - diskEnclosureID + - volumeName + temperature: + options: + skip_values: -1 + data: + - + oid: enclosureTable + value: enclosureSystemTemp + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.1.2.1.7.{{ $index }}' + descr: 'Enclosure {{ $enclosureID }}' + index: 'enclosureSystemTemp.{{ $index }}' + group: 'System' + - + oid: cpuTemp + value: cpuTemp + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.4.2.{{ $index }}' + descr: 'CPU' + index: 'cpuTemp.{{ $index }}' + group: 'System' + - + oid: systemPowerTable + value: systemPowerTemp + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.3.2.1.6.{{ $index }}' + descr: 'Enclosure {{ $systemPowerEnclosureID }} PSU {{ $systemPowerID}}' + index: 'systemPowerTemp.{{ $index }}' + group: 'System' + - + oid: diskTable + value: diskTemperture + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.5.2.1.6.{{ $index }}' + descr: 'Disk {{ $index }} {{ $diskModel }}' + index: 'diskTemperture.{{ $index }}' + group: 'Disks enclosure {{ $diskEnclosureID }}' + fanspeed: + options: + skip_values: -1 + data: + - + oid: systemFan2Table + value: systemFanSpeed + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.2.2.1.5.{{ $index }}' + descr: 'FAN {{ $index }}' + index: 'systemFanSpeed.{{ $index }}' + group: 'System enclosure {{ $systemFanEnclosureID }}' + - + oid: systemPowerTable + value: systemPowerFanSpeed + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.3.2.1.5.{{ $index }}' + descr: 'PSU {{ $systemPowerID }}' + index: 'systemPowerFanSpeed.{{ $index }}' + group: 'Power enclosure {{ $systemPowerEnclosureID }}' + state: + data: + - + oid: systemHdTable + value: hdStatus + num_oid: '.1.3.6.1.4.1.24681.1.2.11.1.4.{{ $index }}' + descr: 'Disk {{ $index }}' + index: 'hdStatus.{{ $index }}' + group: 'Disk Status' + state_name: hdStatus + states: + - { value: 0, generic: 0, graph: 0, descr: 'Ready' } + - { value: -5, generic: 3, graph: 0, descr: 'No Disk' } + - { value: -6, generic: 2, graph: 0, descr: 'Invalid' } + - { value: -9, generic: 2, graph: 0, descr: 'RW Error' } + - { value: -4, generic: 3, graph: 0, descr: 'Unknown' } + - + oid: diskTable + value: diskSmartInfo + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.5.2.1.5.{{ $index }}' + descr: 'Disk {{ $index }}' + index: 'diskSmartInfo.{{ $index }}' + group: 'Disk S.M.A.R.T. enclosure {{ $diskEnclosureID }}' + state_name: diskSmartInfo + states: + - { value: 2, generic: 2, graph: 0, descr: 'Abnormal' } + - { value: 1, generic: 1, graph: 0, descr: 'Warning' } + - { value: 0, generic: 0, graph: 0, descr: 'Good' } + - { value: -1, generic: 2, graph: 0, descr: 'Error' } + - + oid: systemFan2Table + value: systemFanStatus + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.5.2.1.5.{{ $index }}' + descr: 'FAN {{ $index }}' + index: 'systemFanStatus.{{ $index }}' + group: 'FANs enclosure {{ $systemFanEnclosureID }}' + state_name: systemFanStatus + states: + - { value: 0, generic: 0, graph: 0, descr: 'Ok' } + - { value: -1, generic: 2, graph: 0, descr: 'Fail' } + - + oid: systemPowerTable + value: systemPowerStatus + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.1.5.2.1.5.{{ $index }}' + descr: 'PSU {{ $index }}' + index: 'systemPowerStatus.{{ $index }}' + group: 'PSUs enclosure {{ $systemPowerEnclosureID }}' + state_name: systemPowerStatus + states: + - { value: 0, generic: 0, graph: 0, descr: 'Ok' } + - { value: -1, generic: 2, graph: 0, descr: 'Fail' } + - + oid: raidGroupTable + value: raidStatus + num_oid: '.1.3.6.1.4.1.24681.1.4.1.1.1.2.1.2.1.5.{{ $index }}' + descr: '{{ $volumeName }} Raid {{ $raidLevel }}' + index: 'raidStatus.{{ $index }}' + group: 'Volumes' + state_name: raidStatus + states: + - { value: 0, generic: 0, graph: 0, descr: 'Ready' } + - { value: 3, generic: 2, graph: 0, descr: 'Synchronizing' } + - { value: 2, generic: 2, graph: 0, descr: 'Rebulding' } + - { value: 1, generic: 1, graph: 0, descr: 'Degraded' } + - { value: 5, generic: 3, graph: 0, descr: 'Offline' } + - { value: 4, generic: 1, graph: 0, descr: 'Failure' } + - { value: 6, generic: 2, graph: 0, descr: 'Migrating...' } diff --git a/priv/profiles/os_discovery/qtech.yaml b/priv/profiles/os_discovery/qtech.yaml new file mode 100644 index 00000000..887ae0fd --- /dev/null +++ b/priv/profiles/os_discovery/qtech.yaml @@ -0,0 +1,9 @@ +mib: QTECH-MIB +modules: + os: + sysDescr_regex: '/^(?\S+).*SoftWare Version.*?(?\d+\.[\d.]+(\(R[\d.]+\))?).*?((Serial No\.:|Device serial number )(?\d*))?\s+Copyright/s' + processors: + data: + - + oid: switchCpuUsage + num_oid: '.1.3.6.1.4.1.27514.100.1.11.10.{{ $index }}' diff --git a/priv/profiles/os_discovery/quanta.yaml b/priv/profiles/os_discovery/quanta.yaml new file mode 100644 index 00000000..d270619d --- /dev/null +++ b/priv/profiles/os_discovery/quanta.yaml @@ -0,0 +1,10 @@ +modules: + mempools: + data: + - + total: NETGEAR-SWITCHING-MIB::agentSwitchCpuProcessMemAvailable + free: NETGEAR-SWITCHING-MIB::agentSwitchCpuProcessMemFree + precision: 1024 + os: + sysDescr_regex: '/(?[^,]+), (?[^,]+), (?[^,]+)/' + serial: NETGEAR-SWITCHING-MIB::agentInventorySerialNumber.0 diff --git a/priv/profiles/os_discovery/quantastor.yaml b/priv/profiles/os_discovery/quantastor.yaml new file mode 100644 index 00000000..16be7167 --- /dev/null +++ b/priv/profiles/os_discovery/quantastor.yaml @@ -0,0 +1,131 @@ +mib: QUANTASTOR-SYS-STATS:LM-SENSORS-MIB +modules: + sensors: + temperature: + data: + - + oid: hwDiskTable + value: hwDisk-DriveTemp + num_oid: '.1.3.6.1.4.1.39324.1.1.48.1.1.30.{{ $index }}' + index: '{{ $hwDisk-Index }}.{{ $index }}' + descr: '{{ $hwDisk-Name }}' + group: 'HDD' + - + oid: lmTempSensors + value: lmTempSensorsValue + divisor: 1000 + num_oid: '.1.3.6.1.4.1.2021.13.16.2.1.3.{{ $index }}' + descr: '{{ $lmTempSensorsDevice }}' + group: 'LM-SENSORS' + state: + data: + - + oid: licenseTable + value: license-State + num_oid: '.1.3.6.1.4.1.39324.1.1.21.1.1.5.{{ $index }}' + descr: 'License' + group: 'Status' + state_name: license-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: hwDiskTable + value: hwDisk-State + num_oid: '.1.3.6.1.4.1.39324.1.1.48.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: '{{ $hwDisk-Name }} SN {{ $hwDisk-SerialNum }}' + group: 'HDD' + state_name: hwDisk-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - { value: 1, generic: 1, graph: 1, descr: 'Rebuilding' } + - + oid: hwUnitTable + value: hwUnit-State + num_oid: '.1.3.6.1.4.1.39324.1.1.49.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: '{{ $hwUnit-Name }}' + group: 'Array(s)' + state_name: hwUnit-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: hwEnclosureTable + value: hwEnclosure-State + num_oid: '.1.3.6.1.4.1.39324.1.1.50.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: 'Enclosure {{ $hwEnclosure-Name }}' + group: 'Enclosure(s)' + state_name: hwEnclosure-status + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: hwEnclosureTable + value: hwEnclosure-AlarmCount + num_oid: '.1.3.6.1.4.1.39324.1.1.50.1.1.22.{{ $index }}' + index: '{{ $index }}' + descr: 'Enclosure {{ $hwEnclosure-Name }} alarm' + group: 'Enclosure(s)' + state_name: hwEnclosure-alarms + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: fcTargetPortTable + value: fcTargetPort-State + num_oid: '.1.3.6.1.4.1.39324.1.1.68.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: 'FC port {{ $index }} Target state' + group: 'FC ports' + state_name: fctarget-state + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: fcTargetPortTable + value: fcTargetPort-IsTargetModeEnabled + num_oid: '.1.3.6.1.4.1.39324.1.1.68.1.1.33.{{ $index }}' + index: '{{ $index }}' + descr: 'FC port {{ $index }} Target enabled' + group: 'FC ports' + state_name: fctarget-enablestate + states: + - { value: 1, generic: 0, graph: 0, descr: 'Enabled' } + - + oid: hwEnclosureTable + value: hwEnclosure-TempSensorUnits + num_oid: '.1.3.6.1.4.1.39324.1.1.50.1.1.20.{{ $index }}' + index: '{{ $index }}' + descr: 'Temp sensor {{ $index }}' + group: 'Temp sensor(s)' + state_name: hwEnclosure-tempsens + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: hwEnclosureTable + value: hwEnclosure-PowerSupplyUnits + num_oid: '.1.3.6.1.4.1.39324.1.1.50.1.1.21.{{ $index }}' + index: '{{ $index }}' + descr: 'PSU sensor {{ $index }}' + group: 'PSU sensor(s)' + state_name: hwEnclosure-psusens + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: storagePoolTable + value: storagePool-State + num_oid: '.1.3.6.1.4.1.39324.1.1.7.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: 'Pool {{ $storagePool-Name }}' + group: 'Pools' + state_name: storagePool + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } + - + oid: storageVolumeTable + value: storageVolume-State + num_oid: '.1.3.6.1.4.1.39324.1.1.3.1.1.5.{{ $index }}' + index: '{{ $index }}' + descr: 'Volume {{ $storageVolume-Name }}' + group: 'Volumes' + state_name: storageVolume + states: + - { value: 0, generic: 0, graph: 0, descr: 'OK' } diff --git a/priv/profiles/os_discovery/quantum.yaml b/priv/profiles/os_discovery/quantum.yaml new file mode 100644 index 00000000..9dca4578 --- /dev/null +++ b/priv/profiles/os_discovery/quantum.yaml @@ -0,0 +1,138 @@ +mib: ADIC-INTELLIGENT-STORAGE-MIB:ADIC-MANAGEMENT-MIB:ADIC-SANMGR-PROXY-MIB +modules: + os: + hardware: ADIC-INTELLIGENT-STORAGE-MIB::productName.0 + serial: ADIC-INTELLIGENT-STORAGE-MIB::productSerialNumber.0 + version: ADIC-INTELLIGENT-STORAGE-MIB::productVersion.0 + sensors: + temperature: + data: + - + oid: temperatureSensorTable + value: temperatureSensorDegreesCelsius + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.200.30.1.4.{{ $index }}' + index: 'temp.{{ $index }}' + descr: '{{ temperatureSensorName }} [{{ temperatureSensorLocation }}]' + low_warn_limit: temperatureSensorWarningLo + warn_limit: temperatureSensorWarningHi + fanspeed: + data: + - + oid: coolingFanTable + value: coolingFanRPM + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.200.40.1.4.{{ $index }}' + index: 'coolingFanRPM.{{ $index }}' + descr: '{{ coolingFanName }} [{{ coolingFanLocation }}]' + low_warn_limit: coolingFanWarningLo + warn_limit: coolingFanWarningHi + count: + data: + - + oid: phDriveTable + value: phDriveReadErrors + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.23.{{ $index }}' + index: 'phDriveReadErrors.{{ $index }}' + group: 'drives' + descr: '{{ phDriveSerialNumber }} read errors' + - + oid: phDriveTable + value: phDriveWriteErrors + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.24.{{ $index }}' + index: 'phDriveWriteErrors.{{ $index }}' + group: 'drives' + descr: '{{ phDriveSerialNumber }} write errors' + - + oid: phDriveTable + value: phDriveMbytesRead + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.25.{{ $index }}' + index: 'phDriveBytesRead.{{ $index }}' + multiplier: 1000000 + group: 'drives' + descr: '{{ phDriveSerialNumber }} read' + - + oid: phDriveTable + value: phDriveMbytesWritten + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.26.{{ $index }}' + index: 'phDriveBytesWrite.{{ $index }}' + multiplier: 1000000 + group: 'drives' + descr: '{{ phDriveSerialNumber }} written' + state: + data: + - + oid: phDriveTable + value: phDriveRasStatus + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.31.{{ $index }}' + index: 'phDriveRasStatus.{{ $index }}' + group: 'drives' + descr: 'Service: {{ phDriveSerialNumber }}' + states: + - { value: 1, generic: 0, graph: 0, descr: good } + - { value: 2, generic: 2, graph: 0, descr: failed } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 1, graph: 0, descr: warning } + - { value: 5, generic: 0, graph: 0, descr: informational } + - { value: 6, generic: 3, graph: 0, descr: unknown } + - { value: 7, generic: 3, graph: 0, descr: invalid } + - + oid: phIeStationTable + value: phIeStationDoorStatus + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.80.110.1.31.{{ $index }}' + index: 'phIeStationDoorStatus.{{ $index }}' + descr: 'Import/Export Door: {{ phIeStationNumber }}' + states: + - { value: 1, generic: 1, graph: 0, descr: open } + - { value: 2, generic: 0, graph: 0, descr: closed } + - { value: 3, generic: 0, graph: 0, descr: closed and locked } + - { value: 4, generic: 0, graph: 0, descr: closed and unlocked } + - { value: 5, generic: 2, graph: 0, descr: controller failed } + - { value: 6, generic: 4, graph: 0, descr: not installed } + - { value: 7, generic: 3, graph: 0, descr: no data } + skip_values: + - + oid: phIeStationDoorStatus + op: '==' + value: '6' + - + oid: rasSystemStatusTable + value: rasStatusGroupStatus + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.20.100.10.1.2.{{ $index }}' + index: 'rasStatusGroupStatus.{{ $index }}' + group: '{{ rasStatusGroupIndex }}' + descr: 'summary' + states: + - { value: 1, generic: 0, graph: 0, descr: good } + - { value: 2, generic: 2, graph: 0, descr: failed } + - { value: 3, generic: 2, graph: 0, descr: degraded } + - { value: 4, generic: 1, graph: 0, descr: warning } + - { value: 5, generic: 0, graph: 0, descr: informational } + - { value: 6, generic: 3, graph: 0, descr: unknown } + - { value: 7, generic: 3, graph: 0, descr: invalid } + - + oid: powerSupplyTable + value: powerSupplyStatus + snmp_flags: ['-ObsaQ'] + num_oid: '.1.3.6.1.4.1.3764.1.1.200.200.10.1.8.{{ $index }}' + index: 'powerSupplyStatus.{{ $index }}' + group: 'powerAndCooling' + descr: '{{ powerSupplyLocation }}' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 4, graph: 0, descr: not installed } + - { value: 3, generic: 0, graph: 0, descr: ok } + - { value: 4, generic: 1, graph: 0, descr: powered off } + - { value: 5, generic: 2, graph: 0, descr: failed} + skip_values: + - + oid: powerSupplyStatus + op: '==' + value: '2' diff --git a/priv/profiles/os_discovery/radlan.yaml b/priv/profiles/os_discovery/radlan.yaml new file mode 100644 index 00000000..b3c7a116 --- /dev/null +++ b/priv/profiles/os_discovery/radlan.yaml @@ -0,0 +1,7 @@ +mib: RADLAN-rndMng +modules: + processors: + data: + - + oid: rlCpuUtilDuringLast5Minutes + num_oid: '.1.3.6.1.4.1.89.1.9.{{ $index }}' diff --git a/priv/profiles/os_discovery/radwin.yaml b/priv/profiles/os_discovery/radwin.yaml new file mode 100644 index 00000000..e86e80eb --- /dev/null +++ b/priv/profiles/os_discovery/radwin.yaml @@ -0,0 +1,7 @@ +modules: + os: + hardware: RADWIN-MIB-WINLINK1000::winlink1000OduAdmProductName.0 + version: RADWIN-MIB-WINLINK1000::winlink1000OduAdmSwRev.0 + features: RADWIN-MIB-WINLINK1000::winlink1000OduAdmHwRev.0 + features_template: 'Ver. {{ RADWIN-MIB-WINLINK1000::winlink1000OduAdmHwRev.0 }}' + serial: RADWIN-MIB-WINLINK1000::winlink1000OduAdmSN.0 diff --git a/priv/profiles/os_discovery/raisecom-ros.yaml b/priv/profiles/os_discovery/raisecom-ros.yaml new file mode 100644 index 00000000..3ac6b20c --- /dev/null +++ b/priv/profiles/os_discovery/raisecom-ros.yaml @@ -0,0 +1,43 @@ +mib: ROSMGMT-ALARM-MGMT-MIB:ROSMGMT-COMMON-MANAGEMENT-MIB:ROSMGMT-SYSTEM-MIB:ROSMGMT-VERSION-MIB:ROSMGMT-MEMORY-MIB +modules: + mempools: + data: + - + total: ROSMGMT-MEMORY-MIB::rosMgmtMemoryTotal + free: ROSMGMT-MEMORY-MIB::rosMgmtMemoryAvailable + os: + hardware: ROSMGMT-VERSION-MIB::rosMgmtProductVersion.0 + serial: ROSMGMT-VERSION-MIB::rosMgmtSerialNumber.0 + version: ROSMGMT-VERSION-MIB::rosMgmtRosVersion.0 + processors: + data: + - + oid: rosMgmtCpuUtilization.oneMin + value: rosMgmtCpuUtilization + num_oid: '.1.3.6.1.4.1.8886.60.1.1.1.2.1.1.1.3.{{ $index }}' + descr: 'Processor' + sensors: + state: + data: + - + oid: rosMgmtConfigLoadState + value: rosMgmtConfigLoadState + num_oid: '.1.3.6.1.4.1.8886.1.2.1.3.{{ $index }}' + descr: 'Config {{ $index }} Load State' + states: + - { graph: 0, value: 1, generic: 1, descr: ready } + - { graph: 0, value: 2, generic: 1, descr: running } + - { graph: 0, value: 3, generic: 0, descr: successful } + - { graph: 0, value: 4, generic: 2, descr: failed } + - + oid: rosMgmtAlarmMgmtMonitorLevel + value: rosMgmtAlarmMgmtMonitorLevel + num_oid: '.1.3.6.1.4.1.8886.60.34.1.1.7.{{ $index }}' + descr: 'The level of Alarm Monitor' + states: + - { graph: 0, value: 1, generic: 0, descr: clear } + - { graph: 0, value: 2, generic: 0, descr: indeterminate } + - { graph: 0, value: 3, generic: 2, descr: critical } + - { graph: 0, value: 4, generic: 2, descr: major } + - { graph: 0, value: 5, generic: 1, descr: minor } + - { graph: 0, value: 6, generic: 1, descr: warning } diff --git a/priv/profiles/os_discovery/raisecom.yaml b/priv/profiles/os_discovery/raisecom.yaml new file mode 100644 index 00000000..f933c7d0 --- /dev/null +++ b/priv/profiles/os_discovery/raisecom.yaml @@ -0,0 +1,68 @@ +mib: RAISECOM-COMMON-MANAGEMENT-MIB:RAISECOM-FANMONITOR-MIB:RAISECOM-POWERMONITOR-MIB:RAISECOM-SYSTEM-MIB +modules: + mempools: + data: + - + total: RAISECOM-SYSTEM-MIB::raisecomMemoryTotal + free: RAISECOM-SYSTEM-MIB::raisecomMemoryAvailable + os: + sysDescr_regex: '/^ROAP Version (?[^,]+)/' + hardware: .1.3.6.1.4.1.8886.6.1.1.1.2.0 + serial: .1.3.6.1.4.1.8886.6.1.1.1.14.0 + version: .1.3.6.1.4.1.8886.6.1.1.1.1.0 + processors: + data: + - + oid: raisecomTotalCPUUtilization.oneMin + value: raisecomTotalCPUUtilization + num_oid: '.1.3.6.1.4.1.8886.1.1.1.3.1.2.1.2.{{ $index }}' + descr: 'Processor' + sensors: + fanspeed: + data: + - + oid: raisecomFanMonitorStateTable + value: raisecomFanSpeedValue + num_oid: '.1.3.6.1.4.1.8886.1.1.5.2.2.1.2.{{ $index }}' + descr: 'Fan {{ $index }} Speed' + low_limit: 0 + high_limit: 10000 + voltage: + data: + - + oid: raisecomVoltTable + value: raisecomVoltValue + num_oid: '.1.3.6.1.4.1.8886.1.1.4.3.1.1.3.{{ $index }}' + descr: 'Voltage {{ $index }} ({{ $raisecomVoltReference }}mV)' + divisor: 1000 + low_limit: raisecomVoltThresholdLow + high_limit: raisecomVoltThresholdHigh + state: + data: + - + oid: raisecomConfigLoadState + value: raisecomConfigLoadState + num_oid: '.1.3.6.1.4.1.8886.1.2.1.3.{{ $index }}' + descr: 'Config {{ $index }} Load State' + states: + - { descr: ready, graph: 0, value: 1, generic: 1 } + - { descr: running, graph: 0, value: 2, generic: 1 } + - { descr: successful, graph: 0, value: 3, generic: 0 } + - { descr: failed, graph: 0, value: 4, generic: 2 } + - + oid: raisecomFanMonitorStateTable + value: raisecomFanWorkState + num_oid: '.1.3.6.1.4.1.8886.1.1.5.2.2.1.3.{{ $index }}' + descr: 'Fan {{ $index }} State' + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: abnormal, graph: 0, value: 2, generic: 2 } + - + oid: raisecomPowerMonitorStateTable + value: raisecomPowerStatus + num_oid: '.1.3.6.1.4.1.8886.1.24.2.1.1.6.{{ $index }}' + descr: 'Power Supply {{ $index }} State' + states: + - { descr: offline, graph: 0, value: 1, generic: 2 } + - { descr: online, graph: 0, value: 2, generic: 0 } + - { descr: power-on, graph: 0, value: 3, generic: 0 } diff --git a/priv/profiles/os_discovery/rajant.yaml b/priv/profiles/os_discovery/rajant.yaml new file mode 100644 index 00000000..99863191 --- /dev/null +++ b/priv/profiles/os_discovery/rajant.yaml @@ -0,0 +1,12 @@ +modules: + os: + serial: RAJANT-CORPORATION-MIB::serialNumber + sensors: + temperature: + data: + - + oid: RAJANT-CORPORATION-MIB::systemTemperature + num_oid: '.1.3.6.1.4.1.34861.1.2{{ $noindex }}' + descr: 'System Temperature' + index: 1 + divisor: 100 diff --git a/priv/profiles/os_discovery/raritan-pdu.yaml b/priv/profiles/os_discovery/raritan-pdu.yaml new file mode 100644 index 00000000..aec8fafc --- /dev/null +++ b/priv/profiles/os_discovery/raritan-pdu.yaml @@ -0,0 +1,326 @@ +mib: PDU2-MIB +modules: + os: + hardware: + - .1.3.6.1.4.1.13742.6.3.2.1.1.3.1 + - .1.3.6.1.4.1.13742.4.1.1.12.0 + serial: + - .1.3.6.1.4.1.13742.6.3.2.1.1.4.1 + - .1.3.6.1.4.1.13742.4.1.1.2.0 + version: + - .1.3.6.1.4.1.13742.6.3.2.3.1.6.1.1.1 + - .1.3.6.1.4.1.13742.4.1.1.1.0 + sensors: + additional_oids: + data: + - oid: + - PDU2-MIB::externalSensorConfigurationTable + - PDU2-MIB::outletSensorConfigurationTable + - PDU2-MIB::outletConfigurationTable + - PDU2-MIB::inletSensorConfigurationTable + - PDU2-MIB::inletConfigurationTable + - PDU2-MIB::overCurrentProtectorSensorConfigurationTable + - PDU2-MIB::overCurrentProtectorConfigurationTable + current: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + divisor: 1000 + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.1' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + divisor: 1000 + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.1' + - oid: PDU2-MIB::overCurrentProtectorSensorMeasurementsTable + value: PDU2-MIB::measurementsOverCurrentProtectorSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.3.3.1.4.{{ $index }}' + divisor: 1000 + descr: '{{ PDU2-MIB::overCurrentProtectorLabel:0-1 }} {{ PDU2-MIB::overCurrentProtectorName:0-1 }}' + index: 'measurementsOverCurrentProtectorSensorValue.{{ $index }}' + group: OverCurrentProtector + low_limit: PDU2-MIB::overCurrentProtectorSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::overCurrentProtectorSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::overCurrentProtectorSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::overCurrentProtectorSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.1' + + frequency: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + divisor: 10 + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.23' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + divisor: 10 + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.23' + humidity: + data: + - oid: PDU2-MIB::externalSensorMeasurementsTable + value: PDU2-MIB::measurementsExternalSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.5.3.1.4.{{ $index }}' + descr: PDU2-MIB::externalSensorName + index: 'measurementsExternalSensorValue.{{ $index }}' + group: External + low_limit: PDU2-MIB::externalSensorLowerCriticalThreshold + low_warn_limit: PDU2-MIB::externalSensorLowerWarningThreshold + warn_limit: PDU2-MIB::externalSensorUpperWarningThreshold + high_limit: PDU2-MIB::externalSensorUpperCriticalThreshold + skip_values: + - oid: PDU2-MIB::externalSensorType + op: '!=' + value: 11 + power: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.5' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.5' + power_factor: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.7' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.7' + state: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + states: + - { value: 0, descr: On, graph: 0, generic: 0 } + - { value: 1, descr: Off, graph: 0, generic: 1 } + skip_values: + - oid: index + op: not_ends + value: '.14' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + group: Outlet + states: + - { value: 0, descr: On, graph: 0, generic: 0 } + - { value: 1, descr: Off, graph: 0, generic: 1 } + skip_values: + - oid: index + op: not_ends + value: '.14' + - oid: PDU2-MIB::externalSensorMeasurementsTable + value: PDU2-MIB::measurementsExternalSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.5.3.1.4.{{ $index }}' + descr: PDU2-MIB::externalSensorName + index: 'measurementsExternalSensorValue.{{ $index }}' + group: Door + states: + - { value: 0, descr: Closed, graph: 0, generic: 0 } + - { value: 1, descr: Open, graph: 0, generic: 1 } + skip_values: + - oid: PDU2-MIB::externalSensorType + op: '!=' + value: 43 + - oid: PDU2-MIB::externalSensorMeasurementsTable + value: PDU2-MIB::measurementsExternalSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.5.3.1.4.{{ $index }}' + descr: PDU2-MIB::externalSensorName + index: 'measurementsExternalSensorValue.{{ $index }}' + group: Lock + states: + - { value: 0, descr: Locked, graph: 0, generic: 0 } + - { value: 1, descr: Unlocked, graph: 0, generic: 1 } + skip_values: + - oid: PDU2-MIB::externalSensorType + op: '!=' + value: 49 + - oid: PDU2-MIB::externalSensorMeasurementsTable + value: PDU2-MIB::measurementsExternalSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.5.3.1.4.{{ $index }}' + descr: PDU2-MIB::externalSensorName + index: 'measurementsExternalSensorValue.{{ $index }}' + group: Door Handle + states: + - { value: 0, descr: Locked, graph: 0, generic: 0 } + - { value: 1, descr: Unlocked, graph: 0, generic: 1 } + skip_values: + - oid: PDU2-MIB::externalSensorType + op: '!=' + value: 50 + temperature: + data: + - oid: PDU2-MIB::externalSensorMeasurementsTable + value: PDU2-MIB::measurementsExternalSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.5.3.1.4.{{ $index }}' + descr: PDU2-MIB::externalSensorName + index: 'measurementsExternalSensorValue.{{ $index }}' + group: External + low_limit: PDU2-MIB::externalSensorLowerCriticalThreshold + low_warn_limit: PDU2-MIB::externalSensorLowerWarningThreshold + warn_limit: PDU2-MIB::externalSensorUpperWarningThreshold + high_limit: PDU2-MIB::externalSensorUpperCriticalThreshold + divisor: 10 + skip_values: + - oid: PDU2-MIB::externalSensorType + op: '!=' + value: 10 + voltage: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.4' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.4' + power_consumed: + data: + - oid: PDU2-MIB::inletSensorMeasurementsTable + value: PDU2-MIB::measurementsInletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.2.3.1.4.{{ $index }}' + divisor: 1000 + descr: '{{ PDU2-MIB::inletLabel:0-1 }} {{ PDU2-MIB::inletName:0-1 }}' + index: 'measurementsInletSensorValue.{{ $index }}' + group: Inlet + low_limit: PDU2-MIB::inletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::inletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::inletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::inletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.8' + - oid: PDU2-MIB::outletSensorMeasurementsTable + value: PDU2-MIB::measurementsOutletSensorValue + num_oid: '.1.3.6.1.4.1.13742.6.5.4.3.1.4.{{ $index }}' + divisor: 1000 + descr: '{{ PDU2-MIB::outletLabel:0-1 }} {{ PDU2-MIB::outletName:0-1 }}' + index: 'measurementsOutletSensorValue.{{ $index }}' + group: Outlet + low_limit: PDU2-MIB::outletSensorSignedLowerCriticalThreshold + low_warn_limit: PDU2-MIB::outletSensorSignedLowerWarningThreshold + warn_limit: PDU2-MIB::outletSensorSignedUpperWarningThreshold + high_limit: PDU2-MIB::outletSensorSignedUpperCriticalThreshold + skip_values: + - oid: index + op: not_ends + value: '.8' + diff --git a/priv/profiles/os_discovery/ray.yaml b/priv/profiles/os_discovery/ray.yaml new file mode 100644 index 00000000..1f02ac48 --- /dev/null +++ b/priv/profiles/os_discovery/ray.yaml @@ -0,0 +1,115 @@ +mib: RAY-MIB +modules: + os: + features: RAY-MIB::unitType.0 + hardware: RAY-MIB::productName.0 + serial: RAY-MIB::serialNumber.0 + version: RAY-MIB::swVer.0 + + mempools: + data: + - + percent_used: RAY-MIB::useMemory + + processors: + data: + - + oid: useCpu + num_oid: '.1.3.6.1.4.1.33555.1.1.5.1.{{ $index }}' + + sensors: + voltage: + data: + - + oid: voltageUnit + num_oid: '.1.3.6.1.4.1.33555.1.1.4.3.{{ $index }}' + descr: Voltage + divisor: 10 + + temperature: + data: + - + oid: temperatureRadio + num_oid: '.1.3.6.1.4.1.33555.1.1.4.2.{{ $index }}' + descr: Temperature + divisor: 100 + ber: + data: + - + oid: ber + num_oid: '.1.3.6.1.4.1.33555.1.3.2.11.{{ $index }}' + descr: BER + low_warn_limit: 0 + warn_limit: 0 + + state: + data: + - + oid: systemStatus + value: systemStatus + num_oid: '.1.3.6.1.4.1.33555.1.1.3.1.{{ $index }}' + descr: System Status + states: + - { value: 0, descr: Unknown, graph: 0, generic: 3 } + - { value: 1, descr: Ok, graph: 0, generic: 0 } + - { value: 2, descr: Warning, graph: 0, generic: 2 } + - { value: 3, descr: Alarm, graph: 0, generic: 3 } + + - + oid: rfPowerStatus + value: rfPowerStatus + num_oid: '.1.3.6.1.4.1.33555.1.1.3.4.{{ $index }}' + descr: RF Power Status + states: + - { value: 0, descr: Unknown, graph: 0, generic: 3 } + - { value: 1, descr: Ok, graph: 0, generic: 0 } + - { value: 2, descr: Failure, graph: 0, generic: 3 } + + - + oid: lineStatus + value: lineStatus + num_oid: '.1.3.6.1.4.1.33555.1.1.3.2.{{ $index }}' + descr: Radio Link Status + states: + - { value: 0, descr: Unknown, graph: 0, generic: 3 } + - { value: 1, descr: Ok, graph: 0, generic: 0 } + - { value: 2, descr: Analyzer, graph: 0, generic: 2 } + - { value: 3, descr: Connecting, graph: 0, generic: 2 } + - { value: 4, descr: Searching, graph: 0, generic: 3 } + + - + oid: ethPeer + value: ethPeer + num_oid: '.1.3.6.1.4.1.33555.1.1.3.6.{{ $index }}' + descr: Peer Station Ethernet Status + states: + - { value: 0, descr: Unknown, graph: 0, generic: 3 } + - { value: 1, descr: Up, graph: 0, generic: 0 } + - { value: 2, descr: Down, graph: 0, generic: 3 } + + - + oid: txModulationIndex + num_oid: '.1.3.6.1.4.1.33555.1.2.1.7.{{ $index }}' + descr: Tx Modulation Rate + state_name: txModulationIndex-ray + states: + - { value: 1, generic: 0, graph: 1, descr: 'QPSK' } + - { value: 2, generic: 0, graph: 1, descr: 'QAM16' } + - { value: 3, generic: 0, graph: 1, descr: 'QAM32' } + - { value: 4, generic: 0, graph: 1, descr: 'QAM64' } + - { value: 5, generic: 0, graph: 1, descr: 'QAM128' } + - { value: 6, generic: 0, graph: 1, descr: 'QAM256' } + + - + oid: rxModulationIndex + num_oid: '.1.3.6.1.4.1.33555.1.2.1.8.{{ $index }}' + descr: Rx Modulation Rate + state_name: rxModulationIndex-ray + states: + - { value: 1, generic: 0, graph: 1, descr: 'QPSK' } + - { value: 2, generic: 0, graph: 1, descr: 'QAM16' } + - { value: 3, generic: 0, graph: 1, descr: 'QAM32' } + - { value: 4, generic: 0, graph: 1, descr: 'QAM64' } + - { value: 5, generic: 0, graph: 1, descr: 'QAM128' } + - { value: 6, generic: 0, graph: 1, descr: 'QAM256' } + diff --git a/priv/profiles/os_discovery/ray3.yaml b/priv/profiles/os_discovery/ray3.yaml new file mode 100644 index 00000000..2ebe9133 --- /dev/null +++ b/priv/profiles/os_discovery/ray3.yaml @@ -0,0 +1,93 @@ +mib: RAY3-MIB +modules: + os: + features: RAY3-MIB::unitType.0 + hardware: RAY3-MIB::productName.0 + serial: RAY3-MIB::serialNumber.0 + version: RAY3-MIB::swVer.0 + + mempools: + data: + - + percent_used: RAY3-MIB::useMemory + + processors: + data: + - + oid: useCpu + num_oid: '.1.3.6.1.4.1.33555.4.1.5.1.{{ $index }}' + + sensors: + voltage: + data: + - + oid: voltageUnit + num_oid: '.1.3.6.1.4.1.33555.4.1.4.3.{{ $index }}' + descr: Voltage + divisor: 10 + + temperature: + data: + - + oid: temperatureRadio + num_oid: '.1.3.6.1.4.1.33555.4.1.4.2.{{ $index }}' + descr: Temperature + divisor: 100 + + ber: + data: + - + oid: ber + num_oid: '.1.3.6.1.4.1.33555.4.3.2.11.{{ $index }}' + descr: BER + low_warn_limit: 0 + warn_limit: 0 + + state: + data: + - + oid: systemStatus + value: systemStatus + num_oid: '.1.3.6.1.4.1.33555.4.1.3.1.{{ $index }}' + descr: System Status + states: + - { value: 0, descr: Unknown, graph: 0, generic: 3 } + - { value: 1, descr: Ok, graph: 0, generic: 0 } + - { value: 2, descr: Warning, graph: 0, generic: 2 } + - { value: 3, descr: Alarm, graph: 0, generic: 3 } + + - + oid: txModulationIndex + num_oid: '.1.3.6.1.4.1.33555.4.2.1.7.{{ $index }}' + descr: Tx Modulation Rate + state_name: txModulationIndex-ray3 + states: + - { value: 1, generic: 0, graph: 1, descr: 'QPSK_S' } + - { value: 2, generic: 0, graph: 1, descr: 'QPSK' } + - { value: 3, generic: 0, graph: 1, descr: 'QAM16' } + - { value: 4, generic: 0, graph: 1, descr: 'QAM32' } + - { value: 5, generic: 0, graph: 1, descr: 'QAM64' } + - { value: 6, generic: 0, graph: 1, descr: 'QAM128' } + - { value: 7, generic: 0, graph: 1, descr: 'QAM256' } + - { value: 8, generic: 0, graph: 1, descr: 'QAM512' } + - { value: 9, generic: 0, graph: 1, descr: 'QAM1024' } + - { value: 10, generic: 0, graph: 1, descr: 'QAM2048' } + - { value: 11, generic: 0, graph: 1, descr: 'QAM4096' } + + - + oid: rxModulationIndex + num_oid: '.1.3.6.1.4.1.33555.4.2.1.8.{{ $index }}' + descr: Rx Modulation Rate + state_name: rxModulationIndex-ray3 + states: + - { value: 1, generic: 0, graph: 1, descr: 'QPSK_S' } + - { value: 2, generic: 0, graph: 1, descr: 'QPSK' } + - { value: 3, generic: 0, graph: 1, descr: 'QAM16' } + - { value: 4, generic: 0, graph: 1, descr: 'QAM32' } + - { value: 5, generic: 0, graph: 1, descr: 'QAM64' } + - { value: 6, generic: 0, graph: 1, descr: 'QAM128' } + - { value: 7, generic: 0, graph: 1, descr: 'QAM256' } + - { value: 8, generic: 0, graph: 1, descr: 'QAM512' } + - { value: 9, generic: 0, graph: 1, descr: 'QAM1024' } + - { value: 10, generic: 0, graph: 1, descr: 'QAM2048' } + - { value: 11, generic: 0, graph: 1, descr: 'QAM4096' } diff --git a/priv/profiles/os_discovery/recoveryos.yaml b/priv/profiles/os_discovery/recoveryos.yaml new file mode 100644 index 00000000..4f2d7592 --- /dev/null +++ b/priv/profiles/os_discovery/recoveryos.yaml @@ -0,0 +1,22 @@ +mib: UNITRENDS-SNMP +modules: + additional_oids: + data: + - + oid: + - backupClient + - backupType + - backupTime + sensors: + state: + data: + - + oid: backupStatusString + num_oid: '.1.3.6.1.4.1.21865.1.3.10.2.1.4.{{ $index }}' + group: Backup + descr: "{{ $backupClient }} ({{ $backupType }}: {{ $backupTime }})" + state_name: backupStatusString + states: + - { value: 0, generic: 0, graph: 1, descr: 'Success' } + - { value: 1, generic: 1, graph: 1, descr: 'Warnings' } + - { value: 2, generic: 2, graph: 1, descr: 'Failed' } diff --git a/priv/profiles/os_discovery/remoteye4.yaml b/priv/profiles/os_discovery/remoteye4.yaml new file mode 100644 index 00000000..ef92d3f9 --- /dev/null +++ b/priv/profiles/os_discovery/remoteye4.yaml @@ -0,0 +1,140 @@ +mib: TIC-RMTI4-G9000-G2020-MIB +modules: + os: + hardware: UPS-MIB::upsIdentName.0 + version: UPS-MIB::upsIdentAgentSoftwareVersion.0 + version_regex: '/(RemotEye4 )?(?.*)/' + sensors: + voltage: + data: + - + oid: upsInputLLVoltageAB + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.2.{{ $index }}' + index: 'upsInputLLVoltageAB.{{ $index }}' + descr: Input LL (AB) + - + oid: upsInputLLVoltageBC + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.3.{{ $index }}' + index: 'upsInputLLVoltageBC.{{ $index }}' + descr: Input (BC) + - + oid: upsInputLLVoltageCA + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.4.{{ $index }}' + index: 'upsInputLLVoltageCA.{{ $index }}' + descr: Input (CA) + - + oid: upsOutputLLVoltageAB + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.3.{{ $index }}' + index: 'upsOutputLLVoltageAB.{{ $index }}' + descr: Output LL (AB) + - + oid: upsOutputLLVoltageBC + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.4.{{ $index }}' + index: 'upsOutputLLVoltageBC.{{ $index }}' + descr: Output (BC) + - + oid: upsOutputLLVoltageCA + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.5.{{ $index }}' + index: 'upsOutputLLVoltageCA.{{ $index }}' + descr: Output (CA) + - + oid: upsBypassLLVoltageAB + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.4.2.{{ $index }}' + index: 'upsBypassLLVoltageAB.{{ $index }}' + descr: Bypass LL (AB) + - + oid: upsBypassLLVoltageBC + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.4.3.{{ $index }}' + index: 'upsBypassLLVoltageBC.{{ $index }}' + descr: Bypass (BC) + - + oid: upsBypassLLVoltageCA + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.4.4.{{ $index }}' + index: 'upsBypassLLVoltageCA.{{ $index }}' + descr: Bypass (CA) + - + oid: upsBatteryVoltage + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.5.4.{{ $index }}' + index: 'upsBatteryVoltage.{{ $index }}' + descr: Battery + current: + options: + divisor: 10 + data: + - + oid: upsInputCurrentPhaseA + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.8.{{ $index }}' + index: 'upsInputCurrentPhaseA.{{ $index }}' + descr: Input Phase A + - + oid: upsInputCurrentPhaseB + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.9.{{ $index }}' + index: 'upsInputCurrentPhaseB.{{ $index }}' + descr: Input Phase B + - + oid: upsInputCurrentPhaseC + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.10.{{ $index }}' + index: 'upsInputCurrentPhaseC.{{ $index }}' + descr: Input Phase C + - + oid: upsOutputCurrentPhaseA + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.6.{{ $index }}' + index: 'upsOutputCurrentPhaseA.{{ $index }}' + descr: Output Phase A + - + oid: upsOutputCurrentPhaseB + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.7.{{ $index }}' + index: 'upsOutputCurrentPhaseB.{{ $index }}' + descr: Output Phase B + - + oid: upsOutputCurrentPhaseC + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.8.{{ $index }}' + index: 'upsOutputCurrentPhaseC.{{ $index }}' + descr: Output Phase C + frequency: + options: + divisor: 10 + data: + - + oid: upsInputFrequency + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.2.11.{{ $index }}' + index: 'upsInputFrequency.{{ $index }}' + descr: Input + - + oid: upsOutputFrequency + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.3.9.{{ $index }}' + index: 'upsOutputFrequency.{{ $index }}' + descr: Output + - + oid: upsBypassFrequency + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.4.5.{{ $index }}' + index: 'upsBypassFrequency.{{ $index }}' + descr: Bypass + runtime: + data: + - + oid: upsEstimatedBatteryRuntime + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.5.3.{{ $index }}' + index: 'upsEstimatedBatteryRuntime.{{ $index }}' + descr: Estimated runtime + charge: + data: + - + oid: upsBatteryChargeCurrent + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.5.8.{{ $index }}' + index: 'upsBatteryChargeCurrent.{{ $index }}' + descr: Battery charge + state: + data: + - + oid: upsBatteryStatus + num_oid: '.1.3.6.1.4.1.186.1.19.2.5.1.5.1.{{ $index }}' + descr: 'Battery status' + index: 'upsBatteryStatus.{{ $index }}' + states: + - { descr: unknown, graph: 1, value: 1, generic: 3 } + - { descr: batteryNormal, graph: 1, value: 2, generic: 0 } + - { descr: batteryLow, graph: 1, value: 3, generic: 1 } + - { descr: batteryDepleted, graph: 1, value: 4, generic: 2 } + - { descr: batteryDischarging, graph: 1, value: 5, generic: 2 } + - { descr: batteryFailure, graph: 1, value: 6, generic: 2 } diff --git a/priv/profiles/os_discovery/ricoh.yaml b/priv/profiles/os_discovery/ricoh.yaml new file mode 100644 index 00000000..789e1816 --- /dev/null +++ b/priv/profiles/os_discovery/ricoh.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.367.3.2.1.1.1.1.0 + serial: .1.3.6.1.4.1.367.3.2.1.2.1.4.0 + version: .1.3.6.1.4.1.367.3.2.1.1.1.2.0 diff --git a/priv/profiles/os_discovery/rittal-cmc-iii-pu.yaml b/priv/profiles/os_discovery/rittal-cmc-iii-pu.yaml new file mode 100644 index 00000000..bd9e3a62 --- /dev/null +++ b/priv/profiles/os_discovery/rittal-cmc-iii-pu.yaml @@ -0,0 +1,20 @@ +mib: RITTAL-CMC-III-MIB +modules: + os: + hardware: RITTAL-CMC-III-MIB::cmcIIIDevName.1 + serial: RITTAL-CMC-III-MIB::cmcIIIUnitSerial.0 + version: RITTAL-CMC-III-MIB::cmcIIIUnitFWRev.0 + sensors: + state: + data: + - + oid: cmcIIIUnitStatus + value: cmcIIIUnitStatus + state_name: cmcIIIUnitStatus + num_oid: '.1.3.6.1.4.1.2606.7.2.1.{{ $index }}' + index: 'cmcIIIUnitStatus.{{ $index }}' + descr: Unit Status + states: + - { descr: OK, graph: 1, value: 1, generic: 0 } + - { descr: Failed, graph: 1, value: 2, generic: 2 } + - { descr: Overload, graph: 1, value: 3, generic: 1 } diff --git a/priv/profiles/os_discovery/rittal-cmc.yaml b/priv/profiles/os_discovery/rittal-cmc.yaml new file mode 100644 index 00000000..ad411e48 --- /dev/null +++ b/priv/profiles/os_discovery/rittal-cmc.yaml @@ -0,0 +1,307 @@ +mib: RITTAL-CMC-TC-MIB +modules: + os: + sysDescr_regex: '/SN (?\S+) HW V(?\S+) - SW V(?\S+)/' + sensors: + temperature: + data: + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit1SensorType + op: 'not_in_array' + value: [58,59,64,66,100,101] + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit1SensorType + op: 'not_in_array' + value: [48,49,50,51,52,53,54,55,56,57] + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit2SensorType + op: 'not_in_array' + value: [58,59,64,66,100,101] + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit2SensorType + op: 'not_in_array' + value: [48,49,50,51,52,53,54,55,56,57] + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit3SensorType + op: 'not_in_array' + value: [58,59,64,66,100,101] + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit3SensorType + op: 'not_in_array' + value: [48,49,50,51,52,53,54,55,56,57] + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit4SensorType + op: 'not_in_array' + value: [58,59,64,66,100,101] + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit4SensorType + op: 'not_in_array' + value: [48,49,50,51,52,53,54,55,56,57] + fanspeed: + data: + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit1SensorType + op: 'not_in_array' + value: [40,41,42,43,44,45,46,47] + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit2SensorType + op: 'not_in_array' + value: [40,41,42,43,44,45,46,47] + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit3SensorType + op: 'not_in_array' + value: [40,41,42,43,44,45,46,47] + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + group: 'Air' + skip_values: + - + oid: unit2SensorType + op: 'not_in_array' + value: [40,41,42,43,44,45,46,47] + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit1SensorType + op: '!=' + value: 61 + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit2SensorType + op: '!=' + value: 61 + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit3SensorType + op: '!=' + value: 61 + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + group: 'Water' + skip_values: + - + oid: unit4SensorType + op: '!=' + value: 61 + cooling: + data: + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + skip_values: + - + oid: unit1SensorType + op: '!=' + value: 27 + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + skip_values: + - + oid: unit2SensorType + op: '!=' + value: 27 + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + skip_values: + - + oid: unit3SensorType + op: '!=' + value: 27 + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + skip_values: + - + oid: unit4SensorType + op: '!=' + value: 27 + waterflow: + data: + - + oid: cmcTcUnit1SensorTable + value: unit1SensorValue + descr: unit1SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.3.5.2.1.5.{{ $index }}' + index: 'unit1SensorIndex.{{ $index }}' + skip_values: + - + oid: unit1uensorType + op: '!=' + value: 60 + - + oid: cmcTcUnit2SensorTable + value: unit2SensorValue + descr: unit2SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.4.5.2.1.5.{{ $index }}' + index: 'unit2SensorIndex.{{ $index }}' + skip_values: + - + oid: unit2SensorType + op: '!=' + value: 60 + - + oid: cmcTcUnit3SensorTable + value: unit3SensorValue + descr: unit3SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.5.5.2.1.5.{{ $index }}' + index: 'unit3SensorIndex.{{ $index }}' + skip_values: + - + oid: unit3SensorType + op: '!=' + value: 60 + - + oid: cmcTcUnit4SensorTable + value: unit4SensorValue + descr: unit4SensorText + num_oid: '.1.3.6.1.4.1.2606.4.2.6.5.2.1.5.{{ $index }}' + index: 'unit4SensorIndex.{{ $index }}' + skip_values: + - + oid: unit4SensorType + op: '!=' + value: 60 + state: + data: + - + oid: cmcTcMibCondition + value: cmcTcMibCondition + descr: 'Overall status' + num_oid: '.1.3.6.1.4.1.2606.4.1.3.{{ $index }}' + index: '.cmcTcMibCondition.{{ $index }}' + states: + - { value: 1, generic: 3, graph: 0, descr: OTHER } + - { value: 2, generic: 0, graph: 0, descr: OK } + - { value: 3, generic: 1, graph: 0, descr: DEGRADED } + - { value: 4, generic: 2, graph: 0, descr: FAILED } + - { value: 5, generic: 3, graph: 0, descr: configChanged } diff --git a/priv/profiles/os_discovery/rittal-lcp.yaml b/priv/profiles/os_discovery/rittal-lcp.yaml new file mode 100644 index 00000000..bd9e3a62 --- /dev/null +++ b/priv/profiles/os_discovery/rittal-lcp.yaml @@ -0,0 +1,20 @@ +mib: RITTAL-CMC-III-MIB +modules: + os: + hardware: RITTAL-CMC-III-MIB::cmcIIIDevName.1 + serial: RITTAL-CMC-III-MIB::cmcIIIUnitSerial.0 + version: RITTAL-CMC-III-MIB::cmcIIIUnitFWRev.0 + sensors: + state: + data: + - + oid: cmcIIIUnitStatus + value: cmcIIIUnitStatus + state_name: cmcIIIUnitStatus + num_oid: '.1.3.6.1.4.1.2606.7.2.1.{{ $index }}' + index: 'cmcIIIUnitStatus.{{ $index }}' + descr: Unit Status + states: + - { descr: OK, graph: 1, value: 1, generic: 0 } + - { descr: Failed, graph: 1, value: 2, generic: 2 } + - { descr: Overload, graph: 1, value: 3, generic: 1 } diff --git a/priv/profiles/os_discovery/riverbed.yaml b/priv/profiles/os_discovery/riverbed.yaml new file mode 100644 index 00000000..64a480cf --- /dev/null +++ b/priv/profiles/os_discovery/riverbed.yaml @@ -0,0 +1,56 @@ +mib: STEELHEAD-MIB:RBT-MIB +modules: + os: + hardware: .1.3.6.1.4.1.17163.1.1.1.1.0 + serial: .1.3.6.1.4.1.17163.1.1.1.2.0 + version: .1.3.6.1.4.1.17163.1.1.1.3.0 + processors: + data: + - + oid: cpuUtil1 + num_oid: '.1.3.6.1.4.1.17163.1.1.5.1.4.{{ $index }}' + precision: 1 + type: riverbed-cpu + + sensors: + temperature: + data: + - + oid: systemTemperature + value: systemTemperature + num_oid: '.1.3.6.1.4.1.17163.1.1.2.9.{{ $index }}' + snmp_flags: '-OQUs' + index: 0 + descr: 'System Temperature' + high_limit: 65 + state: + data: + - + oid: systemHealth + value: systemHealth + num_oid: '.1.3.6.1.4.1.17163.1.1.2.7.{{ $index }}' + descr: 'System Health' + index: 0 + state_name: systemHealth + states: + - { descr: healthy, graph: 1, value: 10000, generic: 0 } + - { descr: degraded, graph: 1, value: 30000, generic: 1 } + - { descr: admissionControl, graph: 1, value: 31000, generic: 1 } + - { descr: critical, graph: 1, value: 50000, generic: 2 } + - + oid: optServiceStatus + value: optServiceStatus + num_oid: '.1.3.6.1.4.1.17163.1.1.2.8.{{ $index }}' + descr: 'Optimization Service Status' + index: 0 + state_name: optServiceStatus + states: + - { descr: none, graph: 1, value: 0, generic: 3 } + - { descr: unmanaged, graph: 1, value: 1, generic: 3 } + - { descr: running, graph: 1, value: 2, generic: 0 } + - { descr: sentCom1, graph: 1, value: 3, generic: 1 } + - { descr: sentTerm1, graph: 1, value: 4, generic: 1 } + - { descr: sentTerm2, graph: 1, value: 5, generic: 1 } + - { descr: sentTerm3, graph: 1, value: 6, generic: 1 } + - { descr: pending, graph: 1, value: 7, generic: 1 } + - { descr: stopped, graph: 1, value: 8, generic: 2 } diff --git a/priv/profiles/os_discovery/rnx-updu.yaml b/priv/profiles/os_discovery/rnx-updu.yaml new file mode 100644 index 00000000..1a396b77 --- /dev/null +++ b/priv/profiles/os_discovery/rnx-updu.yaml @@ -0,0 +1,47 @@ +mib: RNX-UPDU-MIB +modules: + os: + sysDescr_regex: '/RNX UPDU (?\S+) \(\S+\), S\/N: (?\S+), Version (?\S+)/' + sensors: + temperature: + data: + - oid: upduSensorTable + num_oid: '.1.3.6.1.4.1.55108.1.3.2.1.4.{{ $index }}' + value: upduSensorTemperatureCelsius + descr: Temperature + divisor: 10 + skip_values: + - oid: upduSensorType + op: '!=' + value: '2' # tempHumidity + humidity: + data: + - oid: upduSensorTable + num_oid: '.1.3.6.1.4.1.55108.1.3.2.1.5.{{ $index }}' + value: upduSensorHumidity + descr: Humidity + divisor: 10 + skip_values: + - oid: upduSensorType + op: '!=' + value: '2' # tempHumidity + current: + data: + - oid: upduMeterTable + num_oid: '.1.3.6.1.4.1.55108.1.3.1.1.11.{{ $index }}' + value: upduMeterIrms + descr: upduMeterSystemName + divisor: 1000 + power: + data: + - oid: upduMeterTable + num_oid: '.1.3.6.1.4.1.55108.1.3.1.1.7.{{ $index }}' + value: upduMeterPowerP + descr: upduMeterSystemName + voltage: + data: + - oid: upduMeterTable + num_oid: '.1.3.6.1.4.1.55108.1.3.1.1.10.{{ $index }}' + value: upduMeterUrms + descr: upduMeterSystemName + divisor: 1000 diff --git a/priv/profiles/os_discovery/ros.yaml b/priv/profiles/os_discovery/ros.yaml new file mode 100644 index 00000000..f2cc1f7f --- /dev/null +++ b/priv/profiles/os_discovery/ros.yaml @@ -0,0 +1,67 @@ +mib: RUGGEDCOM-SYS-INFO-MIB +modules: + os: + version: RUGGEDCOM-SYS-INFO-MIB::rcDeviceInfoMainSwVersion.0 + serial: RUGGEDCOM-SYS-INFO-MIB::rcDeviceInfoSerialNumber.0 + sysDescr_regex: '/(?.*?)-/' + sensors: + state: + data: + - + oid: rcDeviceStsPowerSupply1 + num_oid: '.1.3.6.1.4.1.15004.4.2.2.4.{{ $index }}' + descr: 'Power Supply 1 Status' + index: 'rcDeviceStsPowerSupply1.{{ $index }}' + states: + - { descr: notPresent, graph: 0, value: 1, generic: 3 } + - { descr: functional, graph: 0, value: 2, generic: 0 } + - { descr: notFunctional, graph: 0, value: 3, generic: 2 } + - { descr: notConnected, graph: 0, value: 4, generic: 1 } + - + oid: rcDeviceStsPowerSupply2 + num_oid: '.1.3.6.1.4.1.15004.4.2.2.5.{{ $index }}' + descr: 'Power Supply 2 Status' + index: 'rcDeviceStsPowerSupply2.{{ $index }}' + states: + - { descr: notPresent, graph: 0, value: 1, generic: 3 } + - { descr: functional, graph: 0, value: 2, generic: 0 } + - { descr: notFunctional, graph: 0, value: 3, generic: 2 } + - { descr: notConnected, graph: 0, value: 4, generic: 1 } + - + oid: rcDeviceStsFailSafeRelay + num_oid: '.1.3.6.1.4.1.15004.4.2.2.7.{{ $index }}' + descr: Fail Safe Relay + index: 'rcDeviceStsFailSafeRelay.{{ $index }}' + states: + - { descr: energized, graph: 0, value: 1, generic: 0 } + - { descr: deEnergized, graph: 0, value: 2, generic: 2 } + - + oid: rcDeviceStsFanBank1 + num_oid: '.1.3.6.1.4.1.15004.4.2.2.10.{{ $index }}' + descr: 'Fan Bank Module 1' + index: 'rcDeviceStsFanBank1.{{ $index }}' + states: + - { descr: notPresent, graph: 0, value: 1, generic: 3 } + - { descr: failed, graph: 0, value: 2, generic: 2 } + - { descr: standby, graph: 0, value: 3, generic: 0 } + - { descr: off, graph: 0, value: 4, generic: 0 } + - { descr: on, graph: 0, value: 5, generic: 0 } + - + oid: rcDeviceStsFanBank2 + num_oid: '.1.3.6.1.4.1.15004.4.2.2.11.{{ $index }}' + descr: 'Fan Bank Module 2' + index: 'rcDeviceStsFanBank2.{{ $index }}' + states: + - { descr: notPresent, graph: 0, value: 1, generic: 3 } + - { descr: failed, graph: 0, value: 2, generic: 2 } + - { descr: standby, graph: 0, value: 3, generic: 0 } + - { descr: off, graph: 0, value: 4, generic: 0 } + - { descr: on, graph: 0, value: 5, generic: 0 } + temperature: + data: + - + oid: rcDeviceStsTemperature + num_oid: '.1.3.6.1.4.1.15004.4.2.2.3.{{ $index }}' + index: 'rcDeviceStsTemperature.{{ $index }}' + descr: System Temperature + divisor: 1 diff --git a/priv/profiles/os_discovery/routeros.yaml b/priv/profiles/os_discovery/routeros.yaml new file mode 100644 index 00000000..d629b161 --- /dev/null +++ b/priv/profiles/os_discovery/routeros.yaml @@ -0,0 +1,262 @@ +modules: + os: + sysDescr_regex: '/RouterOS (?.*)/' + features: MIKROTIK-MIB::mtxrLicLevel.0 + features_template: 'Level {{ MIKROTIK-MIB::mtxrLicLevel.0 }}' + serial: MIKROTIK-MIB::mtxrSerialNumber.0 + version: MIKROTIK-MIB::mtxrLicVersion.0 + sensors: + additional_oids: + data: + - + oid: + - MIKROTIK-MIB::mtxrInterfaceStatsName + temperature: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.6.{{ $index }}' + descr: MIKROTIK-MIB::mtxrOpticalName + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'mtxrOpticalTemperature.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + index: 'mtxrGaugeTemperature.{{ $index }}' + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 1 + voltage: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalSupplyVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.7.{{ $index }}' + divisor: 1000 + descr: MIKROTIK-MIB::mtxrOpticalName + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'mtxrOpticalSupplyVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.4.{{ $index }}' + divisor: 10 + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + index: 'mtxrPOEVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + divisor: 10 + index: 'mtxrGaugeVoltage.{{ $index }}' + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 3 + - + oid: MIKROTIK-MIB::mtxrHlVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.8.{{ $index }}' + divisor: 10 + descr: 'Voltage {{ $index }}' + current: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxBiasCurrent + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.8.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx Bias' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalTxBiasCurrent.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOECurrent + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.5.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + divisor: 1000 + index: 'mtxrPOECurrent.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + divisor: 10 + index: 'mtxrGaugeCurrent.{{ $index }}' + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 4 + + dbm: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxPower + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.9.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalTxPower.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalRxPower + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.10.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalRxPower.{{ $index }}' + state: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalRxLoss + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.3.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Rx' + group: Ports + index: 'mtxrOpticalRxLoss.{{ $index }}' + state_name: mtxrOpticalRxLoss + states: + - { descr: no, graph: 1, value: 0, generic: 0 } + - { descr: yes, graph: 1, value: 1, generic: 2 } + - { descr: 'null', graph: 1, value: 2, generic: 3 } + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxFault + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.4.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx' + group: Ports + index: 'mtxrOpticalTxFault.{{ $index }}' + state_name: mtxrOpticalTxFault + states: + - { descr: no, graph: 1, value: 0, generic: 0 } + - { descr: yes, graph: 1, value: 1, generic: 2 } + - { descr: 'null', graph: 1, value: 2, generic: 3 } + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEStatus + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.3.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + index: 'mtxrPOEStatus.{{ $index }}' + state_name: mtxrPOEStatus + states: + - { descr: 'disabled', graph: 1, value: 1, generic: 3 } + - { descr: 'waitingForLoad', graph: 1, value: 2, generic: 3 } + - { descr: 'poweredOn', graph: 1, value: 3, generic: 0 } + - { descr: 'overload', graph: 1, value: 4, generic: 2 } + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + state_name: mtxrGaugeStatus + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 6 + states: + - { value: 0, generic: 0, graph: 1, descr: 'ok' } + - { value: 1, generic: 2, graph: 1, descr: 'fail' } + - + oid: MIKROTIK-MIB::mtxrWl60GConnected + num_oid: '.1.3.6.1.4.1.14988.1.1.1.8.1.4.{{ $index }}' + descr: Station Connected + group: Wireless + index: 'mtxrWl60GConnected.{{ $index }}' + state_name: mtxrWl60GConnected + states: + - { value: 0, generic: 2, graph: 1, descr: 'disconnected' } + - { value: 1, generic: 0, graph: 1, descr: 'connected' } + - + oid: MIKROTIK-MIB::mtxrWl60GMode + num_oid: '.1.3.6.1.4.1.14988.1.1.1.8.1.2.{{ $index }}' + descr: Mode + group: Wireless + index: 'mtxrWl60GMode.{{ $index }}' + state_name: mtxrWl60GMode + states: + - { value: 0, generic: 0, graph: 1, descr: 'AP Bridge' } + - { value: 1, generic: 0, graph: 1, descr: 'Station Bridge' } + - { value: 2, generic: 0, graph: 1, descr: 'Sniff' } + - { value: 3, generic: 0, graph: 1, descr: 'Bridge' } + power: + data: + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEPower + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.6.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + divisor: 10 + index: 'mtxrPOEPower.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + divisor: 10 + index: 'mtxrGaugePower.{{ $index }}' + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 5 + fanspeed: + data: + - + oid: MIKROTIK-MIB::mtxrGaugeTable + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: MIKROTIK-MIB::mtxrGaugeName + group: System + index: 'mtxrGuageFanspeed.{{ $index }}' + skip_values: + - oid: MIKROTIK-MIB::mtxrGaugeUnit + op: '!=' + value: 2 + count: + data: + - + oid: MIKROTIK-MIB::mtxrDHCPLeaseCount + num_oid: '.1.3.6.1.4.1.14988.1.1.6.1.{{ $index }}' + descr: DHCP Lease Count + index: mtxrDHCPLeaseCount.{{ $index }} + - + oid: MIKROTIK-MIB::mtxrCtTotalEntries + num_oid: .1.3.6.1.4.1.14988.1.1.22.1.1.{{ $index }} + descr: 'Total number of connections' + index: mtxrCtTotalEntries.{{ $index }} + group: Firewall + - + oid: MIKROTIK-MIB::mtxrCtIP4Entries + num_oid: .1.3.6.1.4.1.14988.1.1.22.1.2.{{ $index }} + descr: 'Total number of ipv4 connections' + index: mtxrCtIP4Entries.{{ $index }} + group: Firewall + - + oid: MIKROTIK-MIB::mtxrCtIP6Entries + num_oid: .1.3.6.1.4.1.14988.1.1.22.1.3.{{ $index }} + descr: 'Total number of ipv6 connections' + index: mtxrCtIP6Entries.{{ $index }} + group: Firewall diff --git a/priv/profiles/os_discovery/rs.yaml b/priv/profiles/os_discovery/rs.yaml new file mode 100644 index 00000000..8cb319c7 --- /dev/null +++ b/priv/profiles/os_discovery/rs.yaml @@ -0,0 +1,113 @@ +mib: RS-COMMON-MIB:RS-XX8000-COMMON-MIB:RS-XX8000-DVB-TX-MIB:IRT-DVBT-SINGLETRANSMITTER-MIB +modules: + os: + serial: RS-XX8000-COMMON-MIB::serialNumber.0 + version: RS-XX8000-COMMON-MIB::versionNumberSW.0 + sysDescr_regex: "/(?.*)/" + sensors: + power: + data: + - + oid: forwardPower + value: forwardPower + descr: 'Output Power' + num_oid: '.1.3.6.1.4.1.2566.127.1.2.167.4.1.2.5.{{ $index }}' + index: 'forwardPower.{{ $index }}' + - + oid: reflectedPower + value: reflectedPower + descr: 'Reflected Power' + num_oid: '.1.3.6.1.4.1.2566.127.1.2.167.4.1.2.6.{{ $index }}' + index: 'reflectedPower.{{ $index }}' + state: + data: + - + oid: dvbSTTransmitterOpMode + value: dvbSTTransmitterOpMode + descr: 'Transmitter Operational Mode' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.3.{{ $index }}' + index: 'dvbSTTransmitterOpMode.{{ $index }}' + state_name: dvbSTTransmitterOpMode + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: ON } + - { value: 2, generic: 1, graph: 0, descr: OFF } + - + oid: dvbSTRFPresent + value: dvbSTRFPresent + descr: 'Output Power' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.4.{{ $index }}' + index: 'dvbSTRFPresent.{{ $index }}' + state_name: dvbSTRFPresent + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: Present } + - { value: 2, generic: 1, graph: 0, descr: 'Not Present' } + - + oid: dvbSTFault + value: dvbSTFault + descr: 'Fault status' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.6.{{ $index }}' + index: 'dvbSTFault.{{ $index }}' + state_name: dvbSTFault + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 2, graph: 0, descr: Fault } + - { value: 2, generic: 0, graph: 0, descr: OK } + - + oid: dvbSTWarning + value: dvbSTWarning + descr: 'Warning status' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.7.{{ $index }}' + index: 'dvbSTWarning.{{ $index }}' + state_name: dvbSTWarning + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 1, graph: 0, descr: Warning } + - { value: 2, generic: 0, graph: 0, descr: OK } + - + oid: dvbSTInput1OK + value: dvbSTInput1OK + descr: 'Input 1' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.8.{{ $index }}' + index: 'dvbSTInput1OK.{{ $index }}' + state_name: dvbSTInput1OK + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: Ok } + - { value: 2, generic: 1, graph: 0, descr: 'No Signal' } + - + oid: dvbSTInput2OK + value: dvbSTInput2OK + descr: 'Input 2' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.9.{{ $index }}' + index: 'dvbSTInput2OK.{{ $index }}' + state_name: dvbSTInput2OK + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: Ok } + - { value: 2, generic: 1, graph: 0, descr: 'No Signal' } + - + oid: dvbSTLocalMode + value: dvbSTLocalMode + descr: 'Configuration Mode' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.10.{{ $index }}' + index: 'dvbSTLocalMode.{{ $index }}' + state_name: dvbSTLocalMode + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: Local } + - { value: 2, generic: 0, graph: 0, descr: Remote } + - + oid: dvbSTActiveInput + value: dvbSTActiveInput + descr: 'Active Input' + num_oid: '.1.3.6.1.4.1.19831.1.1.1.1.1.11.{{ $index }}' + index: 'dvbSTActiveInput.{{ $index }}' + state_name: dvbSTActiveInput + states: + - { value: 0, generic: 3, graph: 0, descr: Undefined } + - { value: 1, generic: 0, graph: 0, descr: 'Input 1' } + - { value: 2, generic: 0, graph: 0, descr: 'Input 2' } + - { value: 2, generic: 0, graph: 0, descr: Seamless } + - { value: 2, generic: 0, graph: 0, descr: HierarchicalModulation } diff --git a/priv/profiles/os_discovery/ruckuswireless-hotzone.yaml b/priv/profiles/os_discovery/ruckuswireless-hotzone.yaml new file mode 100644 index 00000000..c837e04a --- /dev/null +++ b/priv/profiles/os_discovery/ruckuswireless-hotzone.yaml @@ -0,0 +1,20 @@ +mib: RUCKUS-SYSTEM-MIB +modules: + mempools: + data: + - + percent_used: RUCKUS-SYSTEM-MIB::ruckusSystemMemoryUtil + descr: 'System Memory' + os: + hardware: RUCKUS-HWINFO-MIB::ruckusHwInfoModelNumber.0 + serial: RUCKUS-HWINFO-MIB::ruckusHwInfoSerialNumber.0 + version: + - RUCKUS-SWINFO-MIB::ruckusSwRevision.1 + - RUCKUS-DEVICE-MIB::ruckusDeviceCountryCode.0 + version_template: '{{ RUCKUS-SWINFO-MIB::ruckusSwRevision.1 }} ({{ RUCKUS-DEVICE-MIB::ruckusDeviceCountryCode.0 }})' + processors: + data: + - + oid: ruckusSystemCPUUtil + num_oid: '.1.3.6.1.4.1.25053.1.1.11.1.1.1.1.{{ $index }}' + type: ruckuswireless diff --git a/priv/profiles/os_discovery/ruckuswireless-unleashed.yaml b/priv/profiles/os_discovery/ruckuswireless-unleashed.yaml new file mode 100644 index 00000000..cdc8d398 --- /dev/null +++ b/priv/profiles/os_discovery/ruckuswireless-unleashed.yaml @@ -0,0 +1,20 @@ +mib: RUCKUS-UNLEASHED-SYSTEM-MIB +modules: + mempools: + data: + - + percent_used: RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemStatsMemoryUtil + descr: 'System Memory' + os: + hardware: RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemModel.0 + serial: RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemSerialNumber.0 + version: + - RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemVersion.0 + - RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemCountryCode.0 + version_template: '{{ RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemVersion.0 }} ({{ RUCKUS-UNLEASHED-SYSTEM-MIB::ruckusUnleashedSystemCountryCode.0 }})' + processors: + data: + - + oid: ruckusUnleashedSystemStatsCPUUtil + num_oid: '.1.3.6.1.4.1.25053.1.15.1.1.1.15.13.{{ $index }}' + type: ruckuswireless diff --git a/priv/profiles/os_discovery/ruckuswireless.yaml b/priv/profiles/os_discovery/ruckuswireless.yaml new file mode 100644 index 00000000..8d4dcf1e --- /dev/null +++ b/priv/profiles/os_discovery/ruckuswireless.yaml @@ -0,0 +1,24 @@ +mib: RUCKUS-ZD-SYSTEM-MIB +modules: + mempools: + data: + - + percent_used: RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemMemoryUtil + descr: 'System Memory' + os: + features: + - RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumRegisteredAP.0 + - RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemLicensedAPs.0 + features_template: 'Licenses: {{ RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemStatsNumRegisteredAP.0 }}/{{ RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemLicensedAPs.0 }}' + hardware: RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemModel.0 + version: + - RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemVersion.0 + - RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemCountryCode.0 + version_template: '{{ RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemVersion.0 }} ({{ RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemCountryCode.0 }})' + serial: RUCKUS-ZD-SYSTEM-MIB::ruckusZDSystemSerialNumber.0 + processors: + data: + - + oid: ruckusZDSystemCPUUtil + num_oid: '.1.3.6.1.4.1.25053.1.2.1.1.1.5.58.{{ $index }}' + type: ruckuszd diff --git a/priv/profiles/os_discovery/ruijie.yaml b/priv/profiles/os_discovery/ruijie.yaml new file mode 100755 index 00000000..c67b5d3f --- /dev/null +++ b/priv/profiles/os_discovery/ruijie.yaml @@ -0,0 +1,160 @@ +modules: + os: + hardware: RUIJIE-ENTITY-MIB::ruijieDeviceHWVersion.1 + version: RUIJIE-ENTITY-MIB::ruijieDeviceSWVersion.1 + serial: RUIJIE-ENTITY-MIB::ruijieDeviceSerialNumber.1 + mempools: + data: + - + total: RUIJIE-MEMORY-MIB::ruijieMemoryPoolSize + free: RUIJIE-MEMORY-MIB::ruijieMemoryPoolFree + used: RUIJIE-MEMORY-MIB::ruijieMemoryPoolUsed + warn_percent: RUIJIE-MEMORY-MIB::ruijieMemoryPoolWarning + precision: 1024 + descr: 'Memory Usage' + processors: + data: + - + oid: RUIJIE-PROCESS-MIB::ruijieNodeCPUTotalTable + descr: RUIJIE-PROCESS-MIB::ruijieNodeCPUTotalName + value: RUIJIE-PROCESS-MIB::ruijieNodeCPUTotal5min + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.36.1.2.1.5.{{ $index }}' + warn_percent: RUIJIE-PROCESS-MIB::fsNodeCPUTotalCritical + sensors: + dbm: + data: + - + oid: RUIJIE-FIBER-MIB::ruijieFiberTable + value: RUIJIE-FIBER-MIB::ruijieFiberRXpower + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.105.1.1.1.76.{{ $index }}' + descr: "{{ $RUIJIE-FIBER-MIB::ruijieFiberPortDescr }} RX" + divisor: 100 + low_warn_limit: RUIJIE-FIBER-MIB::ruijieFiberRXpowerLowWarnThreshold + warn_limit: RUIJIE-FIBER-MIB::ruijieFiberRXpowerHighWarnThreshold + low_limit: RUIJIE-FIBER-MIB::ruijieFiberRXpowerLowAlarmThreshold + high_limit: RUIJIE-FIBER-MIB::ruijieFiberRXpowerHighAlarmThreshold + index: 'ruijieFiberRXpower.{{ $index }}' + skip_values: + - + oid: RUIJIE-FIBER-MIB::ruijieFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: RUIJIE-FIBER-MIB::ruijieFiberRXpower + op: '=' + value: -10000 + - + oid: RUIJIE-FIBER-MIB::ruijieFiberTable + value: RUIJIE-FIBER-MIB::ruijieFiberTXpower + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.105.1.1.1.81.{{ $index }}' + descr: "{{ $RUIJIE-FIBER-MIB::ruijieFiberPortDescr }} TX" + divisor: 100 + low_warn_limit: RUIJIE-FIBER-MIB::ruijieFiberTXpowerLowWarnThreshold + warn_limit: RUIJIE-FIBER-MIB::ruijieFiberTXpowerHighWarnThreshold + low_limit: RUIJIE-FIBER-MIB::ruijieFiberTXpowerLowAlarmThreshold + high_limit: RUIJIE-FIBER-MIB::ruijieFiberTXpowerHighAlarmThreshold + index: 'ruijieFiberTXpower.{{ $index }}' + skip_values: + - + oid: RUIJIE-FIBER-MIB::ruijieFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: RUIJIE-FIBER-MIB::ruijieFiberRXpower + op: '=' + value: -10000 + fanspeed: + data: + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemFanStatusTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemFanStatusSpeed + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.43.1.6.{{ $index }}' + descr: 'Fan {{ $subindex0 }}/{{ $subindex1 }}' + temperature: + data: + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemMultipleTemperatureTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemMultipleTemperatureCurrent + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.44.1.5.{{ $index }}' + warn_limit: RUIJIE-SYSTEM-MIB::ruijieSystemMultipleTemperatureWarning + high_limit: RUIJIE-SYSTEM-MIB::ruijieSystemMultipleTemperatureCritical + descr: "{{ $RUIJIE-SYSTEM-MIB::ruijieSystemMultipleTemperatureName }} {{ $subindex0 }}/{{ $subindex1 }}" + - + oid: RUIJIE-FIBER-MIB::ruijieFiberTable + value: RUIJIE-FIBER-MIB::ruijieFiberTemp + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.105.1.1.1.17.{{ $index }}' + descr: "{{ $RUIJIE-FIBER-MIB::ruijieFiberPortDescr }}" + index: 'ruijieSystemMultipleTemperatureCurrent.{{ $index }}' + group: Transceivers + skip_values: + - + oid: RUIJIE-FIBER-MIB::ruijieFiberDDMSupportStatus + op: '=' + value: 2 + - + oid: RUIJIE-FIBER-MIB::ruijieFiberTemp + op: '=' + value: 0 + voltage: + data: + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationInVoltage + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.41.1.11.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + power: + data: + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationOutPower + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.41.1.15.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + state: + data: + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemFanStatusTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemFanStatus + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.43.1.4.{{ $index }}' + descr: 'Fan {{ $subindex0 }}/{{ $subindex1 }}' + state_name: RUIJIE-SYSTEM-MIB::ruijieSystemFanStatus + index: 'ruijieSystemFanStatus.{{ $index }}' + group: Fans + states: + - { value: 1, generic: 3, graph: 0, descr: 'noexist' } + - { value: 2, generic: 2, graph: 0, descr: 'existnopower' } + - { value: 3, generic: 1, graph: 0, descr: 'existreadypower' } + - { value: 4, generic: 0, graph: 0, descr: 'normal' } + - { value: 5, generic: 2, graph: 0, descr: 'powerbutabnormal' } + - { value: 6, generic: 3, graph: 0, descr: 'unknown' } + - + oid: RUIJIE-FIBER-MIB::ruijieFiberTable + value: RUIJIE-FIBER-MIB::ruijieFiberTempStatus + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.105.1.1.1.18.{{ $index }}' + descr: '{{ RUIJIE-FIBER-MIB::ruijieFiberPortDescr }} Temperature' + state_name: RUIJIE-FIBER-MIB::ruijieFiberTempStatus + index: 'ruijieFiberTempStatus.{{ $index }}' + group: Transceivers + skip_values: + - 1 + states: + - { value: 2, generic: 0, graph: 0, descr: 'ok' } + - { value: 3, generic: 1, graph: 0, descr: 'warning' } + - { value: 4, generic: 2, graph: 0, descr: 'alarm' } + - + oid: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationTable + value: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationStatus + num_oid: '.1.3.6.1.4.1.4881.1.1.10.2.1.1.41.1.3.{{ $index }}' + descr: 'Power supply {{ $subindex0 }}/{{ $subindex1 }}' + state_name: RUIJIE-SYSTEM-MIB::ruijieSystemElectricalInformationStatus + index: 'ruijieSystemElectricalInformationStatus.{{ $index }}' + group: 'Power Supplies' + states: + - { value: 1, generic: 3, graph: 0, descr: 'noexist' } + - { value: 2, generic: 2, graph: 0, descr: 'existnopower' } + - { value: 3, generic: 1, graph: 0, descr: 'existreadypower' } + - { value: 4, generic: 0, graph: 0, descr: 'normal' } + - { value: 5, generic: 2, graph: 0, descr: 'powerbutabnormal' } + - { value: 6, generic: 3, graph: 0, descr: 'unknown' } + + + diff --git a/priv/profiles/os_discovery/rutos-2xx.yaml b/priv/profiles/os_discovery/rutos-2xx.yaml new file mode 100644 index 00000000..d06c9442 --- /dev/null +++ b/priv/profiles/os_discovery/rutos-2xx.yaml @@ -0,0 +1,107 @@ +mib: TELTONIKA-MIB +modules: + os: + hardware: TELTONIKA-MIB::RouterName.0 + serial: TELTONIKA-MIB::ModemSerial.0 + version: TELTONIKA-MIB::FirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - Operator + temperature: + data: + - + oid: Temperature + num_oid: ".1.3.6.1.4.1.48690.2.9.{{ $index }}" + descr: Module Temp + group: Modem + index: "Temperature.{{ $index }}" + divisor: 10 + state: + data: + - + oid: SimState + num_oid: ".1.3.6.1.4.1.48690.2.1.{{ $index }}" + descr: SIM State + group: Mobile + state_name: simState + states: + - { descr: inserted, graph: 1, value: 0, generic: 0 } + - { descr: not inserted, graph: 1, value: 1, generic: 2 } + - { descr: unknown, graph: 1, value: 2, generic: 3 } + - + oid: PinState + num_oid: ".1.3.6.1.4.1.48690.2.2.{{ $index }}" + descr: Pin State + group: Mobile + state_name: rutos2xx_pinState + states: + - { descr: PIN REQUIRED, graph: 1, value: 0, generic: 2 } + - { descr: NOT READY, graph: 1, value: 1, generic: 1 } + - { descr: READY, graph: 1, value: 2, generic: 0 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - + oid: NetState + num_oid: ".1.3.6.1.4.1.48690.2.3.{{ $index }}" + descr: Mobile Net State + group: Mobile + state_name: NetState + states: + - { descr: searching, graph: 1, value: 0, generic: 1 } + - { descr: registered (home), graph: 1, value: 1, generic: 0 } + - { descr: registered (roaming), graph: 1, value: 2, generic: 1 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - { descr: unregistered, graph: 1, value: 4, generic: 2 } + - + oid: ConnectionState + num_oid: ".1.3.6.1.4.1.48690.2.7.{{ $index }}" + descr: "Connection State ({{ $Operator }})" + group: Mobile + index: "ConnectionState.{{ $index }}" + state_name: ConnectionState + states: + - { descr: connected, graph: 1, value: 0, generic: 0 } + - { descr: not connected, graph: 1, value: 1, generic: 2 } + - { descr: disconnected, graph: 1, value: 2, generic: 2 } + - + oid: ConnectionType + num_oid: ".1.3.6.1.4.1.48690.2.8.{{ $index }}" + descr: "Connection Type ({{ $Operator }})" + group: Mobile + index: "ConnectionType.{{ $index }}" + state_name: ConnectionType + states: + - { descr: LTE, graph: 1, value: 0, generic: 0 } + - { descr: 4G, graph: 1, value: 1, generic: 0 } + - { descr: 3G, graph: 1, value: 2, generic: 1 } + - { descr: 2G, graph: 1, value: 3, generic: 1 } + - { descr: WCDMA, graph: 1, value: 4, generic: 0 } + - { descr: unknown, graph: 1, value: 5, generic: 3 } + signal: + data: + - + oid: Signal + num_oid: ".1.3.6.1.4.1.48690.2.4.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level" + group: Mobile + index: "Signal.{{ $index }}" + count: + data: + - + oid: SimSlot + num_oid: ".1.3.6.1.4.1.48690.2.15.{{ $index }}" + descr: "Number of SIM Slots" + group: Mobile + index: "simSlot.{{ $index }}" + runtime: + data: + - + oid: ConnectionUptime + num_oid: ".1.3.6.1.4.1.48690.2.17.{{ $index }}" + descr: "Connection Uptime " + group: Mobile + index: "ConnectionUptime.{{ $index }}" + divisor: 60 diff --git a/priv/profiles/os_discovery/rutos-rutm.yaml b/priv/profiles/os_discovery/rutos-rutm.yaml new file mode 100644 index 00000000..4de58e7f --- /dev/null +++ b/priv/profiles/os_discovery/rutos-rutm.yaml @@ -0,0 +1,267 @@ +mib: TELTONIKA-RUTM-MIB +modules: + os: + hardware: TELTONIKA-RUTM-MIB::deviceName.0 + serial: TELTONIKA-RUTM-MIB::serial.0 + version: TELTONIKA-RUTM-MIB::fwVersion.0 + lat: TELTONIKA-RUTM-MIB::latitude.0 + long: TELTONIKA-RUTM-MIB::longtitude.0 + sensors: + additional_oids: + data: + - + oid: + - mOperator + - ioSystemName + temperature: + data: + - + oid: mTemperature + num_oid: ".1.3.6.1.4.1.48690.2.2.1.17.{{ $index }}" + descr: Modem Module Temp + group: Modem + index: "mTemperature.{{ $index }}" + divisor: 10 + low_limit: -40 + high_limit: 75 + state: + data: + - + oid: ioInput + num_oid: ".1.3.6.1.4.1.48690.6.2.1.7.{{ $index }}" + descr: I/O {{ $index }} Type + group: Inputs/Outputs + state_name: TELTONIKA-RUTM-MIB::ioInput + states: + - { descr: Digital Output, graph: 1, value: 0, generic: 0 } + - { descr: Digital Input, graph: 1, value: 1, generic: 0 } + - + oid: ioState + num_oid: ".1.3.6.1.4.1.48690.6.2.1.6.{{ $index }}" + descr: I/O {{ $index }} State ({{ $ioSystemName }}) + group: Inputs/Outputs + state_name: TELTONIKA-RUTM-MIB::ioState + states: + - { descr: Low, graph: 1, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 2 } + - + oid: mSimState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.9.{{ $index }}" + descr: SIM State + group: Mobile + state_name: TELTONIKA-RUTM-MIB::SimState + states: + - { descr: inserted, graph: 1, value: 0, generic: 0 } + - { descr: not inserted, graph: 1, value: 1, generic: 2 } + - { descr: unknown, graph: 1, value: 2, generic: 3 } + - + oid: mPinState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.10.{{ $index }}" + descr: SIM PIN State + group: Mobile + state_name: TELTONIKA-RUTM-MIB::PinState + states: + - { descr: PIN REQUIRED, graph: 1, value: 0, generic: 2 } + - { descr: NOT READY, graph: 1, value: 1, generic: 1 } + - { descr: READY, graph: 1, value: 2, generic: 0 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - { descr: SIM not inserted, graph: 1, value: 4, generic: 2 } + - { descr: OK, graph: 1, value: 5, generic: 0 } + - { descr: Required PIN, graph: 1, value: 6, generic: 1 } + - { descr: Required PUK, graph: 1, value: 7, generic: 1 } + - { descr: Required network personalization password, graph: 1, value: 8, generic: 1 } + - { descr: Required network personalization unlocking password, graph: 1, value: 9, generic: 1 } + - { descr: Required network subset personalization password, graph: 1, value: 10, generic: 1 } + - { descr: Required network subset personalization unlocking password, graph: 1, value: 11, generic: 1 } + - { descr: SIM failure, graph: 1, value: 12, generic: 2 } + - { descr: SIM busy, graph: 1, value: 13, generic: 1 } + - { descr: PUK, graph: 1, value: 14, generic: 1 } + - + oid: mNetState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.11.{{ $index }}" + descr: Mobile Net State + group: Mobile + state_name: TELTONIKA-RUTM-MIB::NetState + states: + - { descr: searching, graph: 1, value: 0, generic: 1 } + - { descr: registered (home), graph: 1, value: 1, generic: 0 } + - { descr: registered (roaming), graph: 1, value: 2, generic: 1 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - { descr: unregistered, graph: 1, value: 4, generic: 2 } + - { descr: 'Registered, home', graph: 1, value: 5, generic: 0 } + - { descr: Denied, graph: 1, value: 6, generic: 2 } + - { descr: 'Registered, roaming', graph: 1, value: 7, generic: 2 } + - { descr: Not supported, graph: 1, value: 8, generic: 2 } + - { descr: 'Registered, emergency services only', graph: 1, value: 9, generic: 2 } + - + oid: mConnectionState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.15.{{ $index }}" + descr: "Connection State ({{ $mOperator }})" + group: Mobile + index: "mConnectionState.{{ $index }}" + state_name: TELTONIKA-RUTM-MIB::ConnectionState + states: + - { descr: Connected, graph: 1, value: 0, generic: 0 } + - { descr: Not connected, graph: 1, value: 1, generic: 2 } + - { descr: Disconnected, graph: 1, value: 2, generic: 2 } + - + oid: mConnectionType + num_oid: ".1.3.6.1.4.1.48690.2.2.1.16.{{ $index }}" + descr: "Connection Type" + group: Mobile + index: "mConnectionType.{{ $index }}" + state_name: TELTONIKA-RUTM-MIB::ConnectionType + states: + - { descr: LTE, graph: 1, value: 0, generic: 0 } + - { descr: 4G, graph: 1, value: 1, generic: 0 } + - { descr: 3G, graph: 1, value: 2, generic: 1 } + - { descr: 2G, graph: 1, value: 3, generic: 1 } + - { descr: WCDMA, graph: 1, value: 4, generic: 0 } + - { descr: unknown, graph: 1, value: 5, generic: 3 } + - { descr: Auto, graph: 1, value: 6, generic: 0 } + - { descr: No service, graph: 1, value: 7, generic: 1 } + - { descr: GSM, graph: 1, value: 8, generic: 0 } + - { descr: GPRS, graph: 1, value: 9, generic: 0 } + - { descr: EDGE, graph: 1, value: 10, generic: 0 } + - { descr: TDSCDMA, graph: 1, value: 11, generic: 0 } + - { descr: CDMA, graph: 1, value: 12, generic: 0 } + - { descr: EVDO, graph: 1, value: 13, generic: 0 } + - { descr: CDMA-EVDO, graph: 1, value: 14, generic: 0 } + - { descr: HSDPA, graph: 1, value: 15, generic: 0 } + - { descr: HSUPA, graph: 1, value: 16, generic: 0 } + - { descr: HSPA+, graph: 1, value: 17, generic: 0 } + - { descr: EHRPD, graph: 1, value: 18, generic: 0 } + - { descr: HDR, graph: 1, value: 19, generic: 0 } + - { descr: UMTS, graph: 1, value: 20, generic: 0 } + - { descr: HSDPA+HSUPA, graph: 1, value: 21, generic: 0 } + - { descr: 5G, graph: 1, value: 22, generic: 0 } + - { descr: NR5G, graph: 1, value: 23, generic: 0 } + - { descr: 5G-NSA, graph: 1, value: 24, generic: 0 } + - { descr: 5G-SA, graph: 1, value: 25, generic: 0 } + - { descr: CAT-M1, graph: 1, value: 26, generic: 0 } + - { descr: CAT-NB, graph: 1, value: 27, generic: 0 } + - { descr: 2G_3G, graph: 1, value: 28, generic: 0 } + - { descr: GSM_WCDMA, graph: 1, value: 29, generic: 0 } + - { descr: 2G_4G, graph: 1, value: 30, generic: 0 } + - { descr: GSM_LTE, graph: 1, value: 31, generic: 0 } + - { descr: 3G_4G, graph: 1, value: 32, generic: 0 } + - { descr: WCDMA_LTE, graph: 1, value: 33, generic: 0 } + - { descr: 3G_5G, graph: 1, value: 34, generic: 0 } + - { descr: WCDMA_NR5G, graph: 1, value: 35, generic: 0 } + - { descr: 4G_5G, graph: 1, value: 36, generic: 0 } + - { descr: LTE_NR5G, graph: 1, value: 37, generic: 0 } + count: + data: + - + oid: mReceivedToday + num_oid: ".1.3.6.1.4.1.48690.2.2.1.26.{{ $index }}" + descr: "Mobile bytes received today" + group: Mobile + index: "mReceivedToday.{{ $index }}" + - + oid: mSentToday + num_oid: ".1.3.6.1.4.1.48690.2.2.1.25.{{ $index }}" + descr: "Mobile bytes sent today" + group: Mobile + index: "mSentToday.{{ $index }}" + - + oid: mReceived + num_oid: ".1.3.6.1.4.1.48690.2.2.1.23.{{ $index }}" + descr: "Mobile total bytes received" + group: Mobile + index: "mReceived.{{ $index }}" + - + oid: mSent + num_oid: ".1.3.6.1.4.1.48690.2.2.1.22.{{ $index }}" + descr: "Mobile total bytes sent" + group: Mobile + index: "mSent.{{ $index }}" + - + oid: numSatellites + num_oid: ".1.3.6.1.4.1.48690.3.5.{{ $index }}" + descr: "Number of GPS Satellites" + group: GPS + index: "numSatellites.{{ $index }}" + - + oid: latitude + num_oid: ".1.3.6.1.4.1.48690.3.1.{{ $index }}" + descr: "GPS Latitude" + group: GPS + index: "latitude.{{ $index }}" + - + oid: longtitude + num_oid: ".1.3.6.1.4.1.48690.3.2.{{ $index }}" + descr: "GPS Longitude" + group: GPS + index: "longtitude.{{ $index }}" + - + oid: mCellID + num_oid: ".1.3.6.1.4.1.48690.2.2.1.18.{{ $index }}" + descr: "Cell ID" + group: Mobile + index: "mCellID.{{ $index }}" + - + oid: mImei + num_oid: ".1.3.6.1.4.1.48690.2.2.1.3.{{ $index }}" + descr: "IMEI" + group: Mobile + index: "mImei.{{ $index }}" + - + oid: mIMSI + num_oid: ".1.3.6.1.4.1.48690.2.2.1.8.{{ $index }}" + descr: "IMSI" + group: Mobile + index: "mIMSI.{{ $index }}" + signal: + data: + - + oid: mSignal + num_oid: ".1.3.6.1.4.1.48690.2.2.1.12.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSSI" + group: Mobile + index: "mSignal.{{ $index }}" + low_warn_limit: -75 + low_limit: -85 + high_limit: 0 + - + oid: mRSRP + num_oid: ".1.3.6.1.4.1.48690.2.2.1.20.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSRP" + group: Mobile + index: "mRSRP.{{ $index }}" + low_warn_limit: -90 + low_limit: -100 + high_limit: 0 + - + oid: mRSRQ + num_oid: ".1.3.6.1.4.1.48690.2.2.1.21.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSRQ" + group: Mobile + index: "mRSRQ.{{ $index }}" + low_warn_limit: -15 + low_limit: -20 + high_limit: 0 + snr: + data: + - + oid: mSINR + num_oid: ".1.3.6.1.4.1.48690.2.2.1.19.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - SINR" + group: Mobile + index: "mSINR.{{ $index }}" + low_warn_limit: 13 + low_limit: 6 + high_limit: 30 + runtime: + data: + - + oid: connectionUptime + num_oid: ".1.3.6.1.4.1.48690.2.3.{{ $index }}" + descr: "Connection Uptime " + group: Mobile + index: "ConnectionUptime.{{ $index }}" + divisor: 60 diff --git a/priv/profiles/os_discovery/rutos-rutx.yaml b/priv/profiles/os_discovery/rutos-rutx.yaml new file mode 100644 index 00000000..db0d2b29 --- /dev/null +++ b/priv/profiles/os_discovery/rutos-rutx.yaml @@ -0,0 +1,267 @@ +mib: TELTONIKA-RUTX-MIB +modules: + os: + hardware: TELTONIKA-RUTX-MIB::routerName.0 + serial: TELTONIKA-RUTX-MIB::serial.0 + version: TELTONIKA-RUTX-MIB::fwVersion.0 + lat: TELTONIKA-RUTX-MIB::latitude.0 + long: TELTONIKA-RUTX-MIB::longtitude.0 + sensors: + additional_oids: + data: + - + oid: + - mOperator + - ioSystemName + temperature: + data: + - + oid: mTemperature + num_oid: ".1.3.6.1.4.1.48690.2.2.1.17.{{ $index }}" + descr: Modem Module Temp + group: Modem + index: "mTemperature.{{ $index }}" + divisor: 10 + low_limit: -40 + high_limit: 75 + state: + data: + - + oid: ioInput + num_oid: ".1.3.6.1.4.1.48690.6.2.1.7.{{ $index }}" + descr: I/O {{ $index }} Type + group: Inputs/Outputs + state_name: TELTONIKA-RUTX-MIB::ioInput + states: + - { descr: Digital Output, graph: 1, value: 0, generic: 0 } + - { descr: Digital Input, graph: 1, value: 1, generic: 0 } + - + oid: ioState + num_oid: ".1.3.6.1.4.1.48690.6.2.1.6.{{ $index }}" + descr: I/O {{ $index }} State ({{ $ioSystemName }}) + group: Inputs/Outputs + state_name: TELTONIKA-RUTX-MIB::ioState + states: + - { descr: Low, graph: 1, value: 0, generic: 0 } + - { descr: High, graph: 1, value: 1, generic: 2 } + - + oid: mSimState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.9.{{ $index }}" + descr: SIM State + group: Mobile + state_name: TELTONIKA-RUTX-MIB::SimState + states: + - { descr: inserted, graph: 1, value: 0, generic: 0 } + - { descr: not inserted, graph: 1, value: 1, generic: 2 } + - { descr: unknown, graph: 1, value: 2, generic: 3 } + - + oid: mPinState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.10.{{ $index }}" + descr: SIM PIN State + group: Mobile + state_name: TELTONIKA-RUTX-MIB::PinState + states: + - { descr: PIN REQUIRED, graph: 1, value: 0, generic: 2 } + - { descr: NOT READY, graph: 1, value: 1, generic: 1 } + - { descr: READY, graph: 1, value: 2, generic: 0 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - { descr: SIM not inserted, graph: 1, value: 4, generic: 2 } + - { descr: OK, graph: 1, value: 5, generic: 0 } + - { descr: Required PIN, graph: 1, value: 6, generic: 1 } + - { descr: Required PUK, graph: 1, value: 7, generic: 1 } + - { descr: Required network personalization password, graph: 1, value: 8, generic: 1 } + - { descr: Required network personalization unlocking password, graph: 1, value: 9, generic: 1 } + - { descr: Required network subset personalization password, graph: 1, value: 10, generic: 1 } + - { descr: Required network subset personalization unlocking password, graph: 1, value: 11, generic: 1 } + - { descr: SIM failure, graph: 1, value: 12, generic: 2 } + - { descr: SIM busy, graph: 1, value: 13, generic: 1 } + - { descr: PUK, graph: 1, value: 14, generic: 1 } + - + oid: mNetState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.11.{{ $index }}" + descr: Mobile Net State + group: Mobile + state_name: TELTONIKA-RUTX-MIB::NetState + states: + - { descr: searching, graph: 1, value: 0, generic: 1 } + - { descr: registered (home), graph: 1, value: 1, generic: 0 } + - { descr: registered (roaming), graph: 1, value: 2, generic: 1 } + - { descr: unknown, graph: 1, value: 3, generic: 3 } + - { descr: unregistered, graph: 1, value: 4, generic: 2 } + - { descr: 'Registered, home', graph: 1, value: 5, generic: 0 } + - { descr: Denied, graph: 1, value: 6, generic: 2 } + - { descr: 'Registered, roaming', graph: 1, value: 7, generic: 2 } + - { descr: Not supported, graph: 1, value: 8, generic: 2 } + - { descr: 'Registered, emergency services only', graph: 1, value: 9, generic: 2 } + - + oid: mConnectionState + num_oid: ".1.3.6.1.4.1.48690.2.2.1.15.{{ $index }}" + descr: "Connection State ({{ $mOperator }})" + group: Mobile + index: "mConnectionState.{{ $index }}" + state_name: TELTONIKA-RUTX-MIB::ConnectionState + states: + - { descr: Connected, graph: 1, value: 0, generic: 0 } + - { descr: Not connected, graph: 1, value: 1, generic: 2 } + - { descr: Disconnected, graph: 1, value: 2, generic: 2 } + - + oid: mConnectionType + num_oid: ".1.3.6.1.4.1.48690.2.2.1.16.{{ $index }}" + descr: "Connection Type" + group: Mobile + index: "mConnectionType.{{ $index }}" + state_name: TELTONIKA-RUTX-MIB::ConnectionType + states: + - { descr: LTE, graph: 1, value: 0, generic: 0 } + - { descr: 4G, graph: 1, value: 1, generic: 0 } + - { descr: 3G, graph: 1, value: 2, generic: 1 } + - { descr: 2G, graph: 1, value: 3, generic: 1 } + - { descr: WCDMA, graph: 1, value: 4, generic: 0 } + - { descr: unknown, graph: 1, value: 5, generic: 3 } + - { descr: Auto, graph: 1, value: 6, generic: 0 } + - { descr: No service, graph: 1, value: 7, generic: 1 } + - { descr: GSM, graph: 1, value: 8, generic: 0 } + - { descr: GPRS, graph: 1, value: 9, generic: 0 } + - { descr: EDGE, graph: 1, value: 10, generic: 0 } + - { descr: TDSCDMA, graph: 1, value: 11, generic: 0 } + - { descr: CDMA, graph: 1, value: 12, generic: 0 } + - { descr: EVDO, graph: 1, value: 13, generic: 0 } + - { descr: CDMA-EVDO, graph: 1, value: 14, generic: 0 } + - { descr: HSDPA, graph: 1, value: 15, generic: 0 } + - { descr: HSUPA, graph: 1, value: 16, generic: 0 } + - { descr: HSPA+, graph: 1, value: 17, generic: 0 } + - { descr: EHRPD, graph: 1, value: 18, generic: 0 } + - { descr: HDR, graph: 1, value: 19, generic: 0 } + - { descr: UMTS, graph: 1, value: 20, generic: 0 } + - { descr: HSDPA+HSUPA, graph: 1, value: 21, generic: 0 } + - { descr: 5G, graph: 1, value: 22, generic: 0 } + - { descr: NR5G, graph: 1, value: 23, generic: 0 } + - { descr: 5G-NSA, graph: 1, value: 24, generic: 0 } + - { descr: 5G-SA, graph: 1, value: 25, generic: 0 } + - { descr: CAT-M1, graph: 1, value: 26, generic: 0 } + - { descr: CAT-NB, graph: 1, value: 27, generic: 0 } + - { descr: 2G_3G, graph: 1, value: 28, generic: 0 } + - { descr: GSM_WCDMA, graph: 1, value: 29, generic: 0 } + - { descr: 2G_4G, graph: 1, value: 30, generic: 0 } + - { descr: GSM_LTE, graph: 1, value: 31, generic: 0 } + - { descr: 3G_4G, graph: 1, value: 32, generic: 0 } + - { descr: WCDMA_LTE, graph: 1, value: 33, generic: 0 } + - { descr: 3G_5G, graph: 1, value: 34, generic: 0 } + - { descr: WCDMA_NR5G, graph: 1, value: 35, generic: 0 } + - { descr: 4G_5G, graph: 1, value: 36, generic: 0 } + - { descr: LTE_NR5G, graph: 1, value: 37, generic: 0 } + count: + data: + - + oid: mReceivedToday + num_oid: ".1.3.6.1.4.1.48690.2.2.1.26.{{ $index }}" + descr: "Mobile bytes received today" + group: Mobile + index: "mReceivedToday.{{ $index }}" + - + oid: mSentToday + num_oid: ".1.3.6.1.4.1.48690.2.2.1.25.{{ $index }}" + descr: "Mobile bytes sent today" + group: Mobile + index: "mSentToday.{{ $index }}" + - + oid: mReceived + num_oid: ".1.3.6.1.4.1.48690.2.2.1.23.{{ $index }}" + descr: "Mobile total bytes received" + group: Mobile + index: "mReceived.{{ $index }}" + - + oid: mSent + num_oid: ".1.3.6.1.4.1.48690.2.2.1.22.{{ $index }}" + descr: "Mobile total bytes sent" + group: Mobile + index: "mSent.{{ $index }}" + - + oid: numSatellites + num_oid: ".1.3.6.1.4.1.48690.3.5.{{ $index }}" + descr: "Number of GPS Satellites" + group: GPS + index: "numSatellites.{{ $index }}" + - + oid: latitude + num_oid: ".1.3.6.1.4.1.48690.3.1.{{ $index }}" + descr: "GPS Latitude" + group: GPS + index: "latitude.{{ $index }}" + - + oid: longtitude + num_oid: ".1.3.6.1.4.1.48690.3.2.{{ $index }}" + descr: "GPS Longitude" + group: GPS + index: "longtitude.{{ $index }}" + - + oid: mCellID + num_oid: ".1.3.6.1.4.1.48690.2.2.1.18.{{ $index }}" + descr: "Cell ID" + group: Mobile + index: "mCellID.{{ $index }}" + - + oid: mImei + num_oid: ".1.3.6.1.4.1.48690.2.2.1.3.{{ $index }}" + descr: "IMEI" + group: Mobile + index: "mImei.{{ $index }}" + - + oid: mIMSI + num_oid: ".1.3.6.1.4.1.48690.2.2.1.8.{{ $index }}" + descr: "IMSI" + group: Mobile + index: "mIMSI.{{ $index }}" + signal: + data: + - + oid: mSignal + num_oid: ".1.3.6.1.4.1.48690.2.2.1.12.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSSI" + group: Mobile + index: "mSignal.{{ $index }}" + low_warn_limit: -75 + low_limit: -85 + high_limit: 0 + - + oid: mRSRP + num_oid: ".1.3.6.1.4.1.48690.2.2.1.20.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSRP" + group: Mobile + index: "mRSRP.{{ $index }}" + low_warn_limit: -90 + low_limit: -100 + high_limit: 0 + - + oid: mRSRQ + num_oid: ".1.3.6.1.4.1.48690.2.2.1.21.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - RSRQ" + group: Mobile + index: "mRSRQ.{{ $index }}" + low_warn_limit: -15 + low_limit: -20 + high_limit: 0 + snr: + data: + - + oid: mSINR + num_oid: ".1.3.6.1.4.1.48690.2.2.1.19.{{ $index }}" + entPhysicalIndex: "{{ $index }}" + descr: "Signal Level - SINR" + group: Mobile + index: "mSINR.{{ $index }}" + low_warn_limit: 13 + low_limit: 6 + high_limit: 30 + runtime: + data: + - + oid: connectionUptime + num_oid: ".1.3.6.1.4.1.48690.2.3.{{ $index }}" + descr: "Connection Uptime " + group: Mobile + index: "ConnectionUptime.{{ $index }}" + divisor: 60 diff --git a/priv/profiles/os_discovery/rutos.yaml b/priv/profiles/os_discovery/rutos.yaml new file mode 100644 index 00000000..b8823e51 --- /dev/null +++ b/priv/profiles/os_discovery/rutos.yaml @@ -0,0 +1,66 @@ +mib: TELTONIKA-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - Operator + temperature: + data: + - + oid: Temperature + value: Temperature + num_oid: '.1.3.6.1.4.1.48690.2.9.{{ $index }}' + descr: system + index: 'Temperature.{{ $index }}' + divisor: 10 + + state: + data: + - + oid: PinState + value: PinState + num_oid: '.1.3.6.1.4.1.48690.2.2.{{ $index }}' + descr: Pinstate + index: 'PinState.{{ $index }}' + state_name: Pinstate + states: + - { descr: READY , graph: 0, value: 0, generic: 0 } + - { descr: not READY, graph: 0, value: 1, generic: 2 } + + - + oid: ConnectionState + value: ConnectionState + num_oid: '.1.3.6.1.4.1.48690.2.7.{{ $index }}' + descr: "{{ $Operator }}" + index: 'ConnectionState.{{ $index }}' + state_name: ConnectionState + states: + - { descr: connected , graph: 0, value: 0, generic: 0 } + - { descr: not connected, graph: 0, value: 1, generic: 2 } + + - + oid: ConnectionType + value: ConnectionType + num_oid: '.1.3.6.1.4.1.48690.2.8.{{ $index }}' + descr: "{{ $Operator }}" + index: 'ConnectionType.{{ $index }}' + state_name: ConnectionType + states: + - { descr: LTE , graph: 0, value: 0, generic: 0 } + - { descr: 3G, graph: 0, value: 1, generic: 2 } + - { descr: 2G, graph: 0, value: 2, generic: 2 } + + + dbm: + data: + - + oid: Signal + value: Signal + num_oid: '.1.3.6.1.4.1.48690.2.4.{{ $index }}' + entPhysicalIndex: '{{ $index }}' + descr: 'signal' + index: 'Signal.{{ $index }}' + + diff --git a/priv/profiles/os_discovery/saf-cfm.yaml b/priv/profiles/os_discovery/saf-cfm.yaml new file mode 100644 index 00000000..e9fa0415 --- /dev/null +++ b/priv/profiles/os_discovery/saf-cfm.yaml @@ -0,0 +1,239 @@ +--- +mib: SAF-MPMUX-MIB +modules: + processors: + data: + - + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.28.{{ $index }}' + oid: cpuUsage + precision: 1 + type: saf-cfm + sensors: + state: + data: + - + descr: 'Active link' + index: 'activeLink.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.5.1.{{ $index }}' + oid: activeLink + state_name: activeLink + states: + - { value: 0, descr: Unknown, graph: 1, generic: 1 } + - { value: 1, descr: 'Link 1', graph: 1, generic: 0 } + - { value: 2, descr: 'Link 2', graph: 1, generic: 0 } + - { value: 255, descr: Error, graph: 1, generic: 2 } + - + descr: 'Active TX' + index: 'activeTx.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.5.2.{{ $index }}' + oid: activeTx + state_name: activeTx + states: + - { value: 0, descr: None, graph: 1, generic: 2 } + - { value: 1, descr: 'Link 1', graph: 1, generic: 0 } + - { value: 2, descr: 'Link 2', graph: 1, generic: 0 } + - { value: 3, descr: Both, graph: 1, generic: 0 } + - + descr: 'Forced link' + index: 'forcedLink.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.5.4.{{ $index }}' + oid: forcedLink + state_name: forcedLink + states: + - { value: 0, descr: Off, graph: 1, generic: 0 } + - { value: 1, descr: 'Link 1', graph: 1, generic: 0 } + - { value: 2, descr: 'Link 2', graph: 1, generic: 0 } + - { value: 255, descr: Error, graph: 1, generic: 2 } + - + descr: 'Switch mode' + index: 'switchMode.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.5.5.{{ $index }}' + oid: switchMode + state_name: switchMode + states: + - { value: 0, descr: Unknown, graph: 1, generic: 1 } + - { value: 1, descr: 'Frequency diversity', graph: 1, generic: 0 } + - { value: 2, descr: 'Hot standby', graph: 1, generic: 0 } + - { value: 3, descr: Independent, graph: 1, generic: 0 } + - + descr: 'Switch enabled for RX BER' + index: 'switchEnabledForRxBer.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.5.13.{{ $index }}' + oid: switchEnabledForRxBer + state_name: switchEnabledForRxBer + states: + - { value: 0, descr: Disabled, graph: 1, generic: 0 } + - { value: 1, descr: Enabled, graph: 1, generic: 0 } + - + descr: Sync + index: 'bbSyncLostAlarm.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.2.6.{{ $index }}' + oid: bbSyncLostAlarm + state_name: bbSyncLostAlarm + states: + - { value: 0, descr: Ok, graph: 1, generic: 0 } + - { value: 1, descr: Alarm, graph: 1, generic: 2 } + - + descr: 'R1 Operation' + index: 'rf1Operation.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.3.1.{{ $index }}' + oid: rf1Operation + state_name: rf1Operation + states: + - { value: 0, descr: None, graph: 1, generic: 1 } + - { value: 1, descr: Booting, graph: 1, generic: 1 } + - { value: 2, descr: Ok, graph: 1, generic: 0 } + - { value: 3, descr: Testing, graph: 1, generic: 1 } + - { value: 4, descr: Error, graph: 1, generic: 2 } + - { value: 5, descr: 'No data from ODU', graph: 1, generic: 2 } + - + descr: 'R2 Operation' + index: 'rf2Operation.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.4.1.{{ $index }}' + oid: rf2Operation + state_name: rf2Operation + states: + - { value: 0, graph: 1, generic: 1, descr: None } + - { value: 1, graph: 1, generic: 1, descr: Booting } + - { value: 2, graph: 1, generic: 0, descr: Ok } + - { value: 3, graph: 1, generic: 1, descr: Testing } + - { value: 4, graph: 1, generic: 2, descr: Error } + - { value: 5, graph: 1, generic: 2, descr: 'No data from ODU' } + - + descr: 'R1 Humidity' + index: 'rf1OduHumidity.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.3.16.{{ $index }}' + oid: rf1OduHumidity + state_name: rf1OduHumidity + states: + - { value: 0, descr: Low, graph: 1, generic: 0 } + - { value: 1, descr: High, graph: 1, generic: 1 } + - + descr: 'R2 Humidity' + index: 'rf2OduHumidity.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.4.16.{{ $index }}' + oid: rf2OduHumidity + state_name: rf2OduHumidity + states: + - { value: 0, descr: Low, graph: 1, generic: 0 } + - { value: 1, descr: High, graph: 1, generic: 1 } + - + descr: R1CblPwrStat + index: 'termRf1CablePowerStatus.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.14.{{ $index }}' + oid: termRf1CablePowerStatus + state_name: termRf1CablePowerStatus + states: + - { value: 0, descr: 'false', graph: 1, generic: 1 } + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: short, graph: 1, generic: 2 } + - { value: 3, descr: error, graph: 1, generic: 2 } + - { value: 4, descr: power-off, graph: 1, generic: 2 } + - + descr: R2CblPwrStat + index: 'termRf2CablePowerStatus.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.15.{{ $index }}' + oid: termRf2CablePowerStatus + state_name: termRf2CablePowerStatus + states: + - { value: 0, descr: 'false', graph: 1, generic: 1 } + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: short, graph: 1, generic: 2 } + - { value: 3, descr: error, graph: 1, generic: 2 } + - { value: 4, descr: power-off, graph: 1, generic: 2 } + signal: + data: + - + descr: 'R1 cable attenuation' + index: 'rf1CableAttenuation.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.3.11.{{ $index }}' + oid: rf1CableAttenuation + - + descr: 'R2 cable attenuation' + index: 'rf2CableAttenuation.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.4.11.{{ $index }}' + oid: rf2CableAttenuation + temperature: + data: + - + descr: 'Idu temp' + index: 'termIduTemperature.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.6.{{ $index }}' + oid: termIduTemperature + - + descr: 'R1 odu temp' + index: 'rf1OduTemperature.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.3.15.{{ $index }}' + oid: rf1OduTemperature + - + descr: 'R2 odu temp' + index: 'rf2OduTemperature.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.4.15.{{ $index }}' + oid: rf2OduTemperature + voltage: + data: + - + descr: 'PSU-1 3V' + index: 'power3V3PS1.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.16.{{ $index }}' + oid: power3V3PS1 + - + descr: 'PSU-1 5V' + index: 'power5VPS1.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.17.{{ $index }}' + oid: power5VPS1 + - + descr: 'PSU-1 -5V' + index: 'powerM5VPS1.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.18.{{ $index }}' + oid: powerM5VPS1 + - + descr: 'ODU-1 V' + index: 'powerODU1V.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.19.{{ $index }}' + oid: powerODU1V + - + descr: 'PSU-2 3V' + index: 'power3V3PS2.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.22.{{ $index }}' + oid: power3V3PS2 + - + descr: 'PSU-2 5V' + index: 'power5VPS2.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.23.{{ $index }}' + oid: power5VPS2 + - + descr: 'PSU-2 -5V' + index: 'powerM5VPS2.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.24.{{ $index }}' + oid: powerM5VPS2 + - + descr: 'ODU-2 V' + index: 'powerODU2V.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.25.{{ $index }}' + oid: powerODU2V + current: + data: + - + descr: 'ODU-1 Amp' + index: 'powerODU1I.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.20.{{ $index }}' + oid: powerODU1I + - + descr: 'ODU-2 Amp' + index: 'powerODU2I.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.26.{{ $index }}' + oid: powerODU2I + power: + data: + - + descr: 'OUD-1 Watt' + index: 'powerODU1W.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.21.{{ $index }}' + oid: powerODU1W + - + descr: 'OUD-2 Watt' + index: 'powerODU2W.{{ $index }}' + num_oid: '.1.3.6.1.4.1.7571.100.1.1.2.22.1.27.{{ $index }}' + oid: powerODU2W + diff --git a/priv/profiles/os_discovery/saf-integra-b.yaml b/priv/profiles/os_discovery/saf-integra-b.yaml new file mode 100644 index 00000000..52db0ffb --- /dev/null +++ b/priv/profiles/os_discovery/saf-integra-b.yaml @@ -0,0 +1,66 @@ +mib: SAF-INTEGRAB-MIB +modules: + os: + sysDescr_regex: '/Prod: (?[A-Za-z-_]+);Vers: (?[0-9.]+);.*;S\/N: (?[0-9]+)/' + processors: + data: + - + oid: integraBsysCPUidle + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.10.{{ $index }}' + precision: -10 + type: saf-integra + sensors: + temperature: + options: + divisor: 10 + data: + - + oid: integraBsysCPUtemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.2.{{ $index }}' + descr: System CPU + index: 'integraBsysCPUtemperature.{{ $index }}' + - + oid: integraBsysBoardTemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.8.{{ $index }}' + descr: System Board + index: 'integraBsysBoardTemperature.{{ $index }}' + voltage: + options: + divisor: 1000 + data: + - + oid: integraBsysPSUvoltage + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.5.{{ $index }}' + descr: PSU Voltage + index: 'integraBsysPSUvoltage.{{ $index }}' + current: + options: + divisor: 1000 + data: + - + oid: integraBsysPSUcurrent + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.6.{{ $index }}' + descr: PSU Current + index: 'integraBsysPSUcurrent.{{ $index }}' + power: + options: + divisor: 1000 + data: + - + oid: integraBsysPSUpower + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.7.{{ $index }}' + descr: PSU Power + index: 'integraBsysPSUpower.{{ $index }}' + state: + data: + - + oid: integraBsysLicenseGenStatus + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.1.4.4.{{ $index }}' + descr: License Status + index: 'integraBsysLicenseGenStatus.{{ $index }}' + state_name: integraBsysLicenseGenStatus + states: + - { value: 1, generic: 0, graph: 1, descr: ok } + - { value: 2, generic: 2, graph: 1, descr: expired } + - { value: 3, generic: 3, graph: 1, descr: unknown } + - { value: 4, generic: 0, graph: 1, descr: unlimitedTime } diff --git a/priv/profiles/os_discovery/saf-integra-e.yaml b/priv/profiles/os_discovery/saf-integra-e.yaml new file mode 100644 index 00000000..fe243dbd --- /dev/null +++ b/priv/profiles/os_discovery/saf-integra-e.yaml @@ -0,0 +1,66 @@ +mib: SAF-INTEGRAE-MIB +modules: + os: + sysDescr_regex: '/Prod: (?[A-Za-z-_]+);Vers: (?[0-9.]+);.*;S\/N: (?[0-9]+)/' + processors: + data: + - + oid: integraEsysCPUidle + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.10.{{ $index }}' + precision: -10 + type: saf-integra + sensors: + temperature: + options: + divisor: 10 + data: + - + oid: integraEsysCPUtemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.2.{{ $index }}' + descr: System CPU + index: 'integraEsysCPUtemperature.{{ $index }}' + - + oid: integraEsysBoardTemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.8.{{ $index }}' + descr: System Board + index: 'integraEsysBoardTemperature.{{ $index }}' + voltage: + options: + divisor: 1000 + data: + - + oid: integraEsysPSUvoltage + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.5.{{ $index }}' + descr: PSU Voltage + index: 'integraEsysPSUvoltage.{{ $index }}' + current: + options: + divisor: 1000 + data: + - + oid: integraEsysPSUcurrent + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.6.{{ $index }}' + descr: PSU Current + index: 'integraEsysPSUcurrent.{{ $index }}' + power: + options: + divisor: 1000 + data: + - + oid: integraEsysPSUpower + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.7.{{ $index }}' + descr: PSU Power + index: 'integraEsysPSUpower.{{ $index }}' + state: + data: + - + oid: integraEsysLicenseGenStatus + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.9.4.4.{{ $index }}' + descr: License Status + index: 'integraEsysLicenseGenStatus.{{ $index }}' + state_name: integraBsysLicenseGenStatus + states: + - { value: 1, generic: 0, graph: 1, descr: ok } + - { value: 2, generic: 2, graph: 1, descr: expired } + - { value: 3, generic: 3, graph: 1, descr: unknown } + - { value: 4, generic: 0, graph: 1, descr: unlimitedTime } diff --git a/priv/profiles/os_discovery/saf-integra-w.yaml b/priv/profiles/os_discovery/saf-integra-w.yaml new file mode 100644 index 00000000..bbbf30b2 --- /dev/null +++ b/priv/profiles/os_discovery/saf-integra-w.yaml @@ -0,0 +1,66 @@ +mib: SAF-INTEGRAW-MIB +modules: + os: + sysDescr_regex: '/Prod: (?[A-Za-z-_]+);Vers: (?[0-9.]+-(mux|esw));.*;S\/N: (?[0-9]+)/' + processors: + data: + - + oid: integraWsysCPUidle + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.10.{{ $index }}' + precision: -10 + type: saf-integra + sensors: + temperature: + options: + divisor: 10 + data: + - + oid: integraWsysCPUtemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.2.{{ $index }}' + descr: System CPU + index: 'integraWsysCPUtemperature.{{ $index }}' + - + oid: integraWsysBoardTemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.8.{{ $index }}' + descr: System Board + index: 'integraWsysBoardTemperature.{{ $index }}' + voltage: + options: + divisor: 1000 + data: + - + oid: integraWsysPSUvoltage + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.5.{{ $index }}' + descr: PSU Voltage + index: 'integraWsysPSUvoltage.{{ $index }}' + current: + options: + divisor: 1000 + data: + - + oid: integraWsysPSUcurrent + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.6.{{ $index }}' + descr: PSU Current + index: 'integraWsysPSUcurrent.{{ $index }}' + power: + options: + divisor: 1000 + data: + - + oid: integraWsysPSUpower + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.7.{{ $index }}' + descr: PSU Power + index: 'integraWsysPSUpower.{{ $index }}' + state: + data: + - + oid: integraWsysLicenseGenStatus + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.2.4.4.{{ $index }}' + descr: License Status + index: 'integraWsysLicenseGenStatus.{{ $index }}' + state_name: integraWsysLicenseGenStatus + states: + - { value: 1, generic: 0, graph: 1, descr: ok } + - { value: 2, generic: 2, graph: 1, descr: expired } + - { value: 3, generic: 3, graph: 1, descr: unknown } + - { value: 4, generic: 0, graph: 1, descr: unlimitedTime } diff --git a/priv/profiles/os_discovery/saf-integra-x.yaml b/priv/profiles/os_discovery/saf-integra-x.yaml new file mode 100644 index 00000000..38ac6c3f --- /dev/null +++ b/priv/profiles/os_discovery/saf-integra-x.yaml @@ -0,0 +1,66 @@ +mib: SAF-INTEGRAX-MIB +modules: + os: + sysDescr_regex: '/Prod: (?[A-Za-z-_]+);Vers: (?[0-9.]+);.*;S\/N: (?[0-9]+)/' + processors: + data: + - + oid: integraXsysCPUidle + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.10.{{ $index }}' + precision: -10 + type: saf-integra + sensors: + temperature: + options: + divisor: 10 + data: + - + oid: integraXsysCPUtemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.2.{{ $index }}' + descr: System CPU + index: 'integraXsysCPUtemperature.{{ $index }}' + - + oid: integraXsysBoardTemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.8.{{ $index }}' + descr: System Board + index: 'integraXsysBoardTemperature.{{ $index }}' + voltage: + options: + divisor: 1000 + data: + - + oid: integraXsysPSUvoltage + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.5.{{ $index }}' + descr: PSU Voltage + index: 'integraXsysPSUvoltage.{{ $index }}' + current: + options: + divisor: 1000 + data: + - + oid: integraXsysPSUcurrent + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.6.{{ $index }}' + descr: PSU Current + index: 'integraXsysPSUcurrent.{{ $index }}' + power: + options: + divisor: 1000 + data: + - + oid: integraXsysPSUpower + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.7.{{ $index }}' + descr: PSU Power + index: 'integraXsysPSUpower.{{ $index }}' + state: + data: + - + oid: integraXsysLicenseGenStatus + num_oid: '.1.3.6.1.4.1.7571.100.1.1.7.10.4.4.{{ $index }}' + descr: License Status + index: 'integraXsysLicenseGenStatus.{{ $index }}' + state_name: integraXsysLicenseGenStatus + states: + - { value: 1, generic: 0, graph: 1, descr: ok } + - { value: 2, generic: 2, graph: 1, descr: expired } + - { value: 3, generic: 3, graph: 1, descr: unknown } + - { value: 4, generic: 0, graph: 1, descr: unlimitedTime } diff --git a/priv/profiles/os_discovery/saf.yaml b/priv/profiles/os_discovery/saf.yaml new file mode 100644 index 00000000..57e4a2cc --- /dev/null +++ b/priv/profiles/os_discovery/saf.yaml @@ -0,0 +1,16 @@ +modules: + os: + sysDescr_regex: '/ radio;(?.*) v(?[0-9.]*);.*;SN: (?[0-9]+);/' + sensors: + voltage: + data: + - + oid: SAF-IPADDONS::iduInputVoltage + num_oid: '.1.3.6.1.4.1.7571.100.1.1.5.15.1.2.{{ $index }}' + descr: 'System Voltage' + temperature: + data: + - + oid: SAF-IPRADIO::sysTemperature + num_oid: '.1.3.6.1.4.1.7571.100.1.1.5.1.1.1.5{{ $noindex }}' + descr: 'System Temperature' diff --git a/priv/profiles/os_discovery/samlex.yaml b/priv/profiles/os_discovery/samlex.yaml new file mode 100644 index 00000000..fd5cf87a --- /dev/null +++ b/priv/profiles/os_discovery/samlex.yaml @@ -0,0 +1,224 @@ +mib: SAMLEXAMERICA-MIB +modules: + os: + hardware: SAMLEXAMERICA-MIB::model.0 + version: SAMLEXAMERICA-MIB::version.0 + sensors: + temperature: + data: + - + oid: tempDD + num_oid: .1.3.6.1.4.1.49075.1.3.3.8.{{ $index }} + index: tempDD.{{ $index }} + descr: DC-to-DC + - + oid: tempDA + num_oid: .1.3.6.1.4.1.49075.1.3.3.9.{{ $index }} + index: tempDA.{{ $index }} + descr: DC-to-AC + state: + data: + - + oid: fan + num_oid: '.1.3.6.1.4.1.49075.1.3.3.1.{{ $index }}' + descr: Fan + index: 'fan.{{ $index }}' + state_name: fanStatus + states: + - { descr: off, graph: 0, value: 0, generic: 0 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - + oid: inverterMode + num_oid: '.1.3.6.1.4.1.49075.1.3.3.2.{{ $index }}' + descr: Inverter Mode + index: 'inverterMode.{{ $index }}' + state_name: inverterMode + states: + - { descr: offline, graph: 0, value: 0, generic: 0 } + - { descr: online, graph: 0, value: 1, generic: 0 } + - + oid: transferType + num_oid: '.1.3.6.1.4.1.49075.1.3.3.3.{{ $index }}' + descr: Transfer Type + index: 'transferType.{{ $index }}' + state_name: transferTypes + states: + - { descr: synchronized, graph: 0, value: 0, generic: 0 } + - { descr: unsynchronized, graph: 0, value: 1, generic: 0 } + - + oid: byPassRelay + num_oid: '.1.3.6.1.4.1.49075.1.3.3.4.{{ $index }}' + descr: Bypass Relay + index: 'byPassRelay.{{ $index }}' + state_name: transferTypes + states: + - { descr: grid, graph: 0, value: 0, generic: 0 } + - { descr: inverter, graph: 0, value: 1, generic: 0 } + - + oid: gridAC + num_oid: '.1.3.6.1.4.1.49075.1.3.3.5.{{ $index }}' + descr: Grid AC + index: 'gridAC.{{ $index }}' + state_name: gridACStatus + states: + - { descr: non-existent, graph: 0, value: 0, generic: 3 } + - { descr: detect, graph: 0, value: 1, generic: 1 } + - { descr: present, graph: 0, value: 2, generic: 1 } + - { descr: sync, graph: 0, value: 3, generic: 0 } + - { descr: wont-sync, graph: 0, value: 4, generic: 2 } + - + oid: warningFanFault + num_oid: '.1.3.6.1.4.1.49075.1.3.6.1.{{ $index }}' + descr: Fan Fault + index: 'warningFanFault.{{ $index }}' + state_name: warningFanFaultStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningOverVoltageAlarm + num_oid: '.1.3.6.1.4.1.49075.1.3.6.2.{{ $index }}' + descr: Over Voltage Alarm + index: 'warningOverVoltageAlarm.{{ $index }}' + state_name: warningOverVoltageAlarmStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningUnderVoltageAlarm + num_oid: '.1.3.6.1.4.1.49075.1.3.6.3.{{ $index }}' + descr: Under Voltage Alarm + index: 'warningUnderVoltageAlarm.{{ $index }}' + state_name: warningUnderVoltageAlarmStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningOverload + num_oid: '.1.3.6.1.4.1.49075.1.3.6.4.{{ $index }}' + descr: Overload + index: 'warningOverload.{{ $index }}' + state_name: warningOverloadStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningOverTemperature + num_oid: '.1.3.6.1.4.1.49075.1.3.6.5.{{ $index }}' + descr: Temperature + index: 'warningOverTemperature.{{ $index }}' + state_name: warningOverTemperatureStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningShortCircuit + num_oid: '.1.3.6.1.4.1.49075.1.3.6.6.{{ $index }}' + descr: Short Circuit + index: 'warningShortCircuit.{{ $index }}' + state_name: warningShortCircuitStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningOverVoltageProtection + num_oid: '.1.3.6.1.4.1.49075.1.3.6.7.{{ $index }}' + descr: Overvoltage Protection + index: 'warningOverVoltageProtection.{{ $index }}' + state_name: warningOverVoltageProtectionStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + - + oid: warningUnderVoltageProtection + num_oid: '.1.3.6.1.4.1.49075.1.3.6.8.{{ $index }}' + descr: Undervoltage Protection + index: 'warningUnderVoltageProtection.{{ $index }}' + state_name: warningUnderVoltageProtectionStatus + states: + - { descr: normal, graph: 0, value: 0, generic: 0 } + - { descr: warning, graph: 0, value: 1, generic: 1 } + + power: + data: + - + oid: power + num_oid: '.1.3.6.1.4.1.49075.1.3.1.4.{{ $index }}' + descr: 'Inverter Power' + index: 'power.{{ $index }}' + divisor: 10 + - + oid: gridpower + num_oid: '.1.3.6.1.4.1.49075.1.3.1.9.{{ $index }}' + descr: 'Grid Power' + index: 'gridpower.{{ $index }}' + divisor: 10 + frequency: + data: + - + oid: cfgFrequency + num_oid: '.1.3.6.1.4.1.49075.1.3.1.5.{{ $index }}' + descr: 'Inverter Frequency Config' + index: 'power.{{ $index }}' + divisor: 10 + - + oid: frequency + num_oid: '.1.3.6.1.4.1.49075.1.3.1.6.{{ $index }}' + descr: 'Inverter Output Frequency' + index: 'frequency.{{ $index }}' + divisor: 10 + - + oid: gridfrequency + num_oid: '.1.3.6.1.4.1.49075.1.3.1.10.{{ $index }}' + descr: 'Grid Frequency' + index: 'gridfrequency.{{ $index }}' + divisor: 10 + + current: + data: + - + oid: iout + num_oid: '.1.3.6.1.4.1.49075.1.3.1.3.{{ $index }}' + descr: 'Inverter Current' + index: 'iout.{{ $index }}' + divisor: 10 + - + oid: gridiout + num_oid: '.1.3.6.1.4.1.49075.1.3.1.8.{{ $index }}' + descr: 'Grid Current' + index: 'vin.{{ $index }}' + divisor: 10 + + voltage: + data: + - + oid: cfgVout + num_oid: '.1.3.6.1.4.1.49075.1.3.1.1.{{ $index }}' + descr: 'Inverter Vout Config' + index: 'cfgVout.{{ $index }}' + divisor: 10 + - + oid: vout + num_oid: '.1.3.6.1.4.1.49075.1.3.1.2.{{ $index }}' + descr: 'Inverter Output Volts' + index: 'vout.{{ $index }}' + divisor: 10 + - + oid: vin + num_oid: '.1.3.6.1.4.1.49075.1.3.2.1.{{ $index }}' + descr: 'DC Input Volts' + index: 'vin.{{ $index }}' + divisor: 10 + - + oid: gridvout + num_oid: '.1.3.6.1.4.1.49075.1.3.1.7.{{ $index }}' + descr: 'Grid Input Volts' + index: 'gridvout.{{ $index }}' + divisor: 10 + percent: + data: + - + oid: olProtection + num_oid: '.1.3.6.1.4.1.49075.1.3.3.6.{{ $index }}' + descr: 'Overload Protection' + index: 'olProtection.{{ $index }}' diff --git a/priv/profiles/os_discovery/samsungprinter.yaml b/priv/profiles/os_discovery/samsungprinter.yaml new file mode 100644 index 00000000..593daf63 --- /dev/null +++ b/priv/profiles/os_discovery/samsungprinter.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(Samsung )+(?.*?)( Series)?; ?V?(?[\d.]+).*S\/N (?\S+)/' diff --git a/priv/profiles/os_discovery/savin.yaml b/priv/profiles/os_discovery/savin.yaml new file mode 100644 index 00000000..59936c66 --- /dev/null +++ b/priv/profiles/os_discovery/savin.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.367.3.2.1.1.1.1.0 + version: .1.3.6.1.4.1.367.3.2.1.1.1.2.0 + serial: .1.3.6.1.4.1.367.3.2.1.2.1.4.0 diff --git a/priv/profiles/os_discovery/scalance.yaml b/priv/profiles/os_discovery/scalance.yaml new file mode 100644 index 00000000..8e8d5ef1 --- /dev/null +++ b/priv/profiles/os_discovery/scalance.yaml @@ -0,0 +1,169 @@ +mib: SN-MSPS-SCX200-MIB +modules: + os: + sysDescr_regex: '/SCALANCE (?[^,]+), (?[^,]+)/' + serial: '.1.3.6.1.4.1.4329.6.3.2.1.1.3.0' + version: '.1.3.6.1.4.1.4329.6.3.2.1.1.5.0' +# processors: +# data: +# - +# # snMspsDiagnosticsUsageTable contains multiple disaparate items with no formal type identifiers, specific OIDs used +# oid: SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageValue.0 +# num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.79.3.1.13.{{ $index }}' +# mempools: +# additional_oids: +# data: +# - +# oid: +# - SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageName +# data: +# - +# +# #oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.79.3.1.13.1' +# percent_used: SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageValue +# warn_percent: SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageHighWarning +# #index: 1 +# skip_values: +# - +# oid: SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageName +# op: 'regex' +# value: '/CPU/' +# #- +# #oid: SN-MSPS-SCX200-MIB::snMspsDiagnosticsUsageValue.0 +# #op: 'exists' +# #value: true + sensors: + additional_oids: + data: + - + oid: + - ifName + #- snMspsKeyPlugHwSerialNumber + temperature: + data: + - + oid: snMspsDiagnosticsTemperatureTable + value: snMspsDiagnosticsTemperatureValue + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.79.7.1.16.{{ $index }}' + descr: snMspsDiagnosticsTemperatureName + index: snMspsDiagnosticsTemperatureValue.{{ $index }} + dbm: + data: + - + oid: snMspsSfpTable + value: snMspsSfpTxPowerdBm + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.46.10.1.35.{{ $index }}' + divisor: 10 + descr: '{{ $ifName }} Transmit Power' + index: 'snMspsSfpTxPowerdBm.{{ $index }}' + low_limit: snMspsSfpTxPowerMindBm + high_limit: snMspsSfpTxPowerMaxdBm + skip_values: + - + oid: snMspsSfpStatus + op: '==' + value: 2 # false + + - + oid: snMspsSfpTable + value: snMspsSfpRxPowerdBm + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.46.10.1.32.{{ $index }}' + divisor: 10 + descr: '{{ $ifName }} Receive Power' + index: 'snMspsSfpRxPowerdBm.{{ $index }}' + low_limit: snMspsSfpTxPowerMindBm + high_limit: snMspsSfpTxPowerMaxdBm + skip_values: + - + oid: snMspsSfpStatus + op: '==' + value: 2 # false + voltage: + data: + - + oid: snMspsSfpTable + value: snMspsSfpVoltage + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.46.10.1.13.{{ $index }}' + divisor: 100 + descr: '{{ $ifName }} Supply Voltage' + index: 'snMspsSfpVoltage.{{ $index }}' + low_limit: snMspsSfpVoltageMin + high_limit: snMspsSfpVoltageMax + skip_values: + - + oid: snMspsSfpStatus + op: '==' + value: 2 # false + current: + data: + - + oid: snMspsSfpTable + value: snMspsSfpCurrent + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.46.10.1.16.{{ $index }}' + divisor: 100000 + descr: '{{ $ifName }} Bias Current' + index: 'snMspsSfpCurrent.{{ $index }}' + low_limit: snMspsSfpCurrentMin + high_limit: snMspsSfpCurrentMax + skip_values: + - + oid: snMspsSfpStatus + op: '==' + value: 2 # false + state: + data: + - + oid: snMspsFaultState + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.28.1.{{ $index }}' + descr: "Faults" + group: System + state_name: "Faults" + states: + - { value: 1, generic: 0, graph: 0, descr: 'noFault' } + - { value: 2, generic: 2, graph: 1, descr: 'fault' } + - + oid: snMspsPowerSupply1State + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.28.4.{{ $index }}' + descr: "Power Supply 1" + group: Power + state_name: "Power Supply 1" + states: + - { value: 0, generic: 0, graph: 1, descr: 'active' } + - { value: 1, generic: 2, graph: 0, descr: 'inactive' } + - + oid: snMspsPowerSupply2State + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.28.5.{{ $index }}' + descr: "Power Supply 2" + group: Power + state_name: "Power Supply 2" + states: + - { value: 0, generic: 0, graph: 1, descr: 'active' } + - { value: 1, generic: 2, graph: 0, descr: 'inactive' } + - + oid: snMspsCplugState + num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.35.1.{{ $index }}' + descr: 'C-Plug' + group: Plugs + state_name: "C-Plug" + states: + - { value: 1, generic: 2, graph: 0 , descr: 'notPresent' } + - { value: 4, generic: 2, graph: 0, descr: 'notAccepted' } + - { value: 5, generic: 0, graph: 1, descr: 'accepted' } + - { value: 6, generic: 2, graph: 0, descr: 'factory' } + - { value: 7, generic: 2, graph: 0, descr: 'missing' } +# probable KEY-PLUG only supported for Scalance W series +# - +# oid: snMspsKeyPlugState +# num_oid: '.1.3.6.1.4.1.4329.20.1.1.1.1.35.1.{{ $index }}' +# descr: 'KEY-PLUG [{{ $snMspsKeyPlugHwSerialNumber }}]' +# group: Plugs +# state_name: "KEY-Plug" +# states: +# - { value: 1, generic: 2, graph: 0 , descr: 'notPresent' } +# - { value: 4, generic: 2, graph: 0, descr: 'notAccepted' } +# - { value: 5, generic: 0, graph: 0, descr: 'accepted' } +# - { value: 7, generic: 2, graph: 0, descr: 'missing' } +# - { value: 8, generic: 2, graph: 0, descr: 'wrong' } +# - { value: 9, generic: 2, graph: 0, descr: 'unknown' } +# - { value: 10, generic: 2, graph: 0, descr: 'defective' } +# END diff --git a/priv/profiles/os_discovery/schleifenbauer.yaml b/priv/profiles/os_discovery/schleifenbauer.yaml new file mode 100644 index 00000000..1dd7a48d --- /dev/null +++ b/priv/profiles/os_discovery/schleifenbauer.yaml @@ -0,0 +1,32 @@ +mib: SCHLEIFENBAUER-DATABUS-MIB +modules: + sensors: + state: + data: + - + oid: sdbMgmtStsRingState + num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.5.{{ $index }}' + entPhysicalIndex: 2 + descr: 'Databus Ring State' + index: 'sdbMgmtStsRingState.{{ $index }}' + state_name: sdbMgmtStsRingState + states: + - { value: 0, generic: 2, graph: 0, descr: open } + - { value: 1, generic: 0, graph: 1, descr: closed } + count: + data: + - + oid: sdbMgmtStsDuplicateDevices + num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.4.{{ $index }}' + high_limit: '1' + entPhysicalIndex: 3 + descr: 'Duplicate Device Addresses' + index: 'sdbMgmtStsDuplicateDevices.{{ $index }}' + - + oid: sdbMgmtStsNewDevices + num_oid: '.1.3.6.1.4.1.31034.12.1.1.1.1.3.{{ $index }}' + warn_limit: 1 + high_limit: 2 + entPhysicalIndex: 4 + descr: 'New Devices' + index: 'sdbMgmtStsNewDevices.{{ $index }}' diff --git a/priv/profiles/os_discovery/screenos.yaml b/priv/profiles/os_discovery/screenos.yaml new file mode 100644 index 00000000..178d441f --- /dev/null +++ b/priv/profiles/os_discovery/screenos.yaml @@ -0,0 +1,15 @@ +mib: NETSCREEN-RESOURCE-MIB +modules: + mempools: + data: + - + used: NETSCREEN-RESOURCE-MIB::nsResMemAllocate + free: NETSCREEN-RESOURCE-MIB::nsResMemLeft + os: + sysDescr_regex: '/(?.+) version (?.+) \(SN: (?[^,]+), (?.+)\)/' + processors: + data: + - + oid: nsResCpuLast5Min + num_oid: '.1.3.6.1.4.1.3224.16.1.3.{{ $index }}' + index: 1 diff --git a/priv/profiles/os_discovery/scs-ks.yaml b/priv/profiles/os_discovery/scs-ks.yaml new file mode 100644 index 00000000..ebe54876 --- /dev/null +++ b/priv/profiles/os_discovery/scs-ks.yaml @@ -0,0 +1,226 @@ +mib: SCS-ks-MIB +modules: + sensors: + temperature: + data: + - + oid: exhaust-air-temperature.0 + value: exhaust-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.15.{{ $index }}' + descr: 'Exhaust air temperature' + index: "exhaust.{{ $index }}" + divisor: 10 + + - + oid: supply-air-temperature.0 + value: supply-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.16.{{ $index }}' + descr: 'Supply air temperature' + index: "supply.{{ $index }}" + divisor: 10 + + - + oid: outside-air-temperature.0 + value: outside-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.17.{{ $index }}' + descr: 'Outside air temperature' + index: "outside.{{ $index }}" + divisor: 10 + + - + oid: room-temperature.0 + value: room-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.18.{{ $index }}' + descr: 'Room temperature' + index: "room.{{ $index }}" + divisor: 10 + + humidity: + data: + - + oid: room-humidity.0 + value: room-humidity + num_oid: '.1.3.6.1.4.1.9839.1.2.19.{{ $index }}' + descr: 'Room humidity' + divisor: 10 + + state: + data: + - + oid: status-evaporator-fan.0 + value: status-evaporator-fan + num_oid: '.1.3.6.1.4.1.9839.1.2.1.{{ $index }}' + descr: 'Evaporator Fan alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-condenser-fan.0 + value: status-condenser-fan + num_oid: '.1.3.6.1.4.1.9839.1.2.2.{{ $index }}' + descr: 'Condenser Fan alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-compressor.0 + value: status-compressor + num_oid: '.1.3.6.1.4.1.9839.1.2.3.{{ $index }}' + descr: 'Compressor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-heater-thermal-protection.0 + value: status-heater-thermal-protection + num_oid: '.1.3.6.1.4.1.9839.1.2.4.{{ $index }}' + descr: 'Heater thermal protection alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + + - + oid: status-exhaust-air-sensor.0 + value: status-exhaust-air-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.5.{{ $index }}' + descr: 'Exhaust air sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + + - + oid: status-supply-air-sensor.0 + value: status-supply-air-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.6.{{ $index }}' + descr: 'Supply air sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + + - + oid: status-outside-sensor.0 + value: status-outside-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.7.{{ $index }}' + descr: 'Outside temperature sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-room-temperature-sensor.0 + value: status-room-temperature-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.8.{{ $index }}' + descr: 'Temperature room sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-room-humidity-sensor.0 + value: status-room-humidity-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.9.{{ $index }}' + descr: 'Humidity room sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-min-exhaust-air-temperature.0 + value: status-min-exhaust-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.10.{{ $index }}' + descr: 'Minimum exhaust air temperature alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-max-exhaust-air-temperature.0 + value: status-max-exhaust-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.11.{{ $index }}' + descr: 'Maximum exhaust air temperature alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-min-supply-air-temperature.0 + value: status-min-supply-air-temperature + num_oid: '.1.3.6.1.4.1.9839.1.2.12.{{ $index }}' + descr: 'Minimum supply air temperature alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-water-sensor.0 + value: status-water-sensor + num_oid: '.1.3.6.1.4.1.9839.1.2.13.{{ $index }}' + descr: 'Water sensor alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-filter-monitoring.0 + value: status-filter-monitoring + num_oid: '.1.3.6.1.4.1.9839.1.2.14.{{ $index }}' + descr: 'Filter monitoring alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } + + - + oid: status-operational-status.0 + value: status-operational-status + num_oid: '.1.3.6.1.4.1.9839.1.2.20.{{ $index }}' + descr: 'Operational status' + group: Status + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 2, graph: 0, descr: Shut Down } + - { value: 1, generic: 0, graph: 0, descr: Running } + + - + oid: status-collective-fault.0 + value: status-collective-fault + num_oid: '.1.3.6.1.4.1.9839.1.2.21.{{ $index }}' + descr: 'Collective fault alarm' + group: Alarm + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 2, graph: 0, descr: Error } diff --git a/priv/profiles/os_discovery/secureplatform.yaml b/priv/profiles/os_discovery/secureplatform.yaml new file mode 100644 index 00000000..769d1aab --- /dev/null +++ b/priv/profiles/os_discovery/secureplatform.yaml @@ -0,0 +1,63 @@ +mib: CHECKPOINT-MIB +modules: + os: + hardware: CHECKPOINT-MIB::svnApplianceProductName.0 + serial: CHECKPOINT-MIB::svnApplianceSerialNumber.0 + version: CHECKPOINT-MIB::svnVersion.0 + processors: + data: + - + oid: procUsage + num_oid: '.1.3.6.1.4.1.2620.1.6.7.2.4.{{ $index }}' + type: splat-cpu + sensors: + fanspeed: + data: + - + oid: fanSpeedSensorTable + value: fanSpeedSensorValue + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.2.1.3.{{ $index }}' + descr: '{{ $fanSpeedSensorName }}' + index: 'fanSpeedSensorValue.{{ $index }}' + load: + data: + - + oid: procUsage + num_oid: '.1.3.6.1.4.1.2620.1.6.7.2.4.{{ $index }}' + descr: Overall CPU utilization + - + oid: multiProcUsage + num_oid: '.1.3.6.1.4.1.2620.1.6.7.5.1.5.{{ $index }}' + descr: CPU {{ $index }} + index: 'multiProcUsage.{{ $index }}.0' + + state: + data: + - + oid: fanSpeedSensorTable + value: fanSpeedSensorStatus + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.2.1.6.{{ $index }}' + descr: '{{ $fanSpeedSensorName }}' + index: 'fanSpeedSensorValue.{{ $index }}' + state_name: fanSpeedSensor + states: + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 1, graph: 0, descr: Warning } + - { value: 2, generic: 3, graph: 0, descr: Unknown } + - + oid: haStatCode + num_oid: '.1.3.6.1.4.1.2620.1.5.101.{{ $index }}' + descr: HA Status + state_name: haSensor + states: + - { value: 0, generic: 0, graph: 0, descr: OK } + - { value: 1, generic: 1, graph: 0, descr: 'Needs Atention' } + - { value: 2, generic: 2, graph: 0, descr: 'HA Down' } + temperature: + data: + - + oid: tempertureSensorTable + value: tempertureSensorValue + num_oid: '.1.3.6.1.4.1.2620.1.6.7.8.1.1.3.{{ $index }}' + descr: '{{ $tempertureSensorName }}' + index: 'tempertureSensorValue.{{ $index }}' diff --git a/priv/profiles/os_discovery/seh-uds.yaml b/priv/profiles/os_discovery/seh-uds.yaml new file mode 100644 index 00000000..6c8c6ec4 --- /dev/null +++ b/priv/profiles/os_discovery/seh-uds.yaml @@ -0,0 +1,30 @@ +mib: SEH-PSRV-MIB +modules: + os: + sysDescr_regex: '/SEH (?\S+); SN (?\S+), .* SW (?\S+)/' + sensors: + state: + data: + - + oid: utnPortTable + value: utnPortSlot + num_oid: '.1.3.6.1.4.1.1229.2.50.2.1.27.{{ $index }}' + descr: 'Port{{ utnPortIndex }}: {{ utnPortUsbOwn }}' + group: USB Port + index: 'utnPortIndex.{{ $index }}' + skip_values: + - + oid: utnPortTag + op: 'exists' + value: false + state_name: utnPortSlot + states: + - { value: 0, generic: 3, graph: 0, descr: disabled } + - { value: 1, generic: 0, graph: 0, descr: enabled } + - { value: 2, generic: 0, graph: 0, descr: enabled } + - { value: 3, generic: 0, graph: 0, descr: enabled } + - { value: 4, generic: 0, graph: 0, descr: enabled } + - { value: 5, generic: 0, graph: 0, descr: enabled } + - { value: 6, generic: 0, graph: 0, descr: enabled } + - { value: 7, generic: 0, graph: 0, descr: enabled } + - { value: 8, generic: 0, graph: 0, descr: enabled } diff --git a/priv/profiles/os_discovery/sensatronics-em1.yaml b/priv/profiles/os_discovery/sensatronics-em1.yaml new file mode 100644 index 00000000..71bfe9f1 --- /dev/null +++ b/priv/profiles/os_discovery/sensatronics-em1.yaml @@ -0,0 +1,63 @@ +mib: SENSATRONICS-EM1:SENSATRONICS-ITTM:SENSATRONICS-SMI +modules: + sensors: + temperature: + data: + - + oid: group1 + value: group1TempDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.1.3.{{ $index }}' + index: 'group1TempDataStr.{{ $index }}' + descr: '{{ $group1Name }} {{ $group1TempName }}' + skip_values: -999.9 + - + oid: group2 + value: group2TempDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.2.3.{{ $index }}' + index: 'group2TempDataStr.{{ $index }}' + descr: '{{ $group2Name }} {{ $group2TempName }}' + skip_values: -999.9 + - + oid: group3 + value: group3TempDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.3.3.{{ $index }}' + index: 'group3TempDataStr.{{ $index }}' + descr: '{{ $group3Name }} {{ $group3TempName }}' + skip_values: -999.9 + - + oid: group4 + value: group4TempDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.4.3.{{ $index }}' + index: 'group4TempDataStr.{{ $index }}' + descr: '{{ $group4Name }} {{ $group4TempName }}' + skip_values: -999.9 + humidity: + data: + - + oid: group1 + value: group1HumidDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.1.6.{{ $index }}' + index: 'group1HumidDataStr.{{ $index }}' + descr: '{{ $group1Name }} {{ $group1HumidName }}' + skip_values: -999.9 + - + oid: group2 + value: group2HumidDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.2.6.{{ $index }}' + index: 'group2HumidDataStr.{{ $index }}' + descr: '{{ $group2Name }} {{ $group2HumidName }}' + skip_values: -999.9 + - + oid: group3 + value: group3HumidDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.3.6.{{ $index }}' + index: 'group3HumidDataStr.{{ $index }}' + descr: '{{ $group3Name }} {{ $group3HumidName }}' + skip_values: -999.9 + - + oid: group4 + value: group4HumidDataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.3.3.4.6.{{ $index }}' + descr: '{{ $group4Name }} {{ $group4HumidName }}' + index: 'group4HumidDataStr.{{ $index }}' + skip_values: -999.9 diff --git a/priv/profiles/os_discovery/sensatronics-ittm.yaml b/priv/profiles/os_discovery/sensatronics-ittm.yaml new file mode 100644 index 00000000..d73e14e1 --- /dev/null +++ b/priv/profiles/os_discovery/sensatronics-ittm.yaml @@ -0,0 +1,117 @@ +mib: SENSATRONICS-ITTM:SENSATRONICS-SMI +modules: + sensors: + temperature: + data: + - + oid: sensor1 + value: sensor1DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.1.2.{{ $index }}' + index: 'sensor1Name.{{ $index }}' + descr: '{{ $sensor1Name }}' + skip_values: -99.9 + - + oid: sensor2 + value: sensor2DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.2.2.{{ $index }}' + index: 'sensor2Name.{{ $index }}' + descr: '{{ $sensor2Name }}' + skip_values: -99.9 + - + oid: sensor3 + value: sensor3DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.3.2.{{ $index }}' + index: 'sensor3Name.{{ $index }}' + descr: '{{ $sensor3Name }}' + skip_values: -99.9 + - + oid: sensor4 + value: sensor4DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.4.2.{{ $index }}' + index: 'sensor4Name.{{ $index }}' + descr: '{{ $sensor4Name }}' + skip_values: -99.9 + - + oid: sensor5 + value: sensor5DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.5.2.{{ $index }}' + index: 'sensor5Name.{{ $index }}' + descr: '{{ $sensor5Name }}' + skip_values: -99.9 + - + oid: sensor6 + value: sensor6DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.6.2.{{ $index }}' + index: 'sensor6Name.{{ $index }}' + descr: '{{ $sensor6Name }}' + skip_values: -99.9 + - + oid: sensor7 + value: sensor7DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.7.2.{{ $index }}' + index: 'sensor7Name.{{ $index }}' + descr: '{{ $sensor7Name }}' + skip_values: -99.9 + - + oid: sensor8 + value: sensor8DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.8.2.{{ $index }}' + index: 'sensor8Name.{{ $index }}' + descr: '{{ $sensor8Name }}' + skip_values: -99.9 + - + oid: sensor9 + value: sensor9DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.9.2.{{ $index }}' + index: 'sensor9Name.{{ $index }}' + descr: '{{ $sensor9Name }}' + skip_values: -99.9 + - + oid: sensor10 + value: sensor10DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.10.2.{{ $index }}' + index: 'sensor10Name.{{ $index }}' + descr: '{{ $sensor10Name }}' + skip_values: -99.9 + - + oid: sensor11 + value: sensor11DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.11.2.{{ $index }}' + index: 'sensor11Name.{{ $index }}' + descr: '{{ $sensor11Name }}' + skip_values: -99.9 + - + oid: sensor12 + value: sensor12DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.12.2.{{ $index }}' + index: 'sensor12Name.{{ $index }}' + descr: '{{ $sensor12Name }}' + skip_values: -99.9 + - + oid: sensor13 + value: sensor13DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.13.2.{{ $index }}' + index: 'sensor13Name.{{ $index }}' + descr: '{{ $sensor13Name }}' + skip_values: -99.9 + - + oid: sensor14 + value: sensor14DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.14.2.{{ $index }}' + index: 'sensor14Name.{{ $index }}' + descr: '{{ $sensor14Name }}' + skip_values: -99.9 + - + oid: sensor15 + value: sensor15DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.15.2.{{ $index }}' + index: 'sensor15Name.{{ $index }}' + descr: '{{ $sensor15Name }}' + skip_values: -99.9 + - + oid: sensor16 + value: sensor16DataStr + num_oid: '.1.3.6.1.4.1.16174.1.1.1.3.16.2.{{ $index }}' + index: 'sensor16Name.{{ $index }}' + descr: '{{ $sensor16Name }}' + skip_values: -99.9 diff --git a/priv/profiles/os_discovery/sentry3.yaml b/priv/profiles/os_discovery/sentry3.yaml new file mode 100644 index 00000000..0d6ffa1b --- /dev/null +++ b/priv/profiles/os_discovery/sentry3.yaml @@ -0,0 +1,111 @@ +mib: Sentry3-MIB +modules: + os: + hardware: Sentry3-MIB::towerModelNumber.1 + serial: Sentry3-MIB::towerProductSN.1 + version: Sentry3-MIB::systemVersion.0 + version_regex: '/Version (?\S+)/' + sensors: + # note 2-dimensional index tower.infeed for infeed + # and 3-dimensional index tower.infeed.outlet for outlets + current: + options: + divisor: 100 + skip_value_lt: 0 + data: + - oid: infeedTable + value: infeedLoadValue + num_oid: '.1.3.6.1.4.1.1718.3.2.2.1.7.{{ $index }}' + descr: infeedName + index: 'infeedID.{{ $index }}' + ## limits need to be excluded from the divisor somehow + #warn_limit: infeedLoadHighThresh + #high_limit: infeedCapacity + + - oid: outletTable + value: outletLoadValue + num_oid: '.1.3.6.1.4.1.1718.3.2.3.1.7.{{ $index }}' + descr: outletName + index: 'outletID.{{ $index }}' + ## limits need to be excluded from the divisor somehow + #low_warn_limit: outletLoadLowThresh + #warn_limit: outletLoadHighThresh + #high_limit: outputCapacity + voltage: + options: + divisor: 10 + skip_value_lt: 0 + data: + - oid: infeedTable + value: infeedVoltage + num_oid: '.1.3.6.1.4.1.1718.3.2.2.1.11.{{ $index }}' + descr: infeedName + # recording voltage for additional feeds (3-phase) + # would require reindexing and moving RRD files; + # this is a configured value, not measured. + # ^ yeah, you broke it anyway by setting "index: '{{ $subindex0 }}'" + group: 'Configured Voltage' + power: + options: + skip_value_lt: 0 + data: + - oid: infeedTable + value: infeedPower + num_oid: '.1.3.6.1.4.1.1718.3.2.2.1.12.{{ $index }}' + descr: infeedName + skip_value_lt: 0 + + - oid: systemTotalPower + num_oid: '.1.3.6.1.4.1.1718.3.1.6.{{ $index }}' + descr: 'System Total Power' + + power_factor: + data: + - oid: systemPowerFactor + num_oid: '.1.3.6.1.4.1.1718.3.1.10.{{ $index }}' + descr: 'System Power Factor' + group: 'Configured Power Factor' + humidity: + data: + - + oid: Sentry3-MIB::tempHumidSensorTable + value: Sentry3-MIB::tempHumidSensorHumidValue + num_oid: '.1.3.6.1.4.1.1718.3.2.5.1.10.{{ $index }}' + descr: 'Removable Sensor {{ $Sentry3-MIB::tempHumidSensorID }}' + index: 'tempHumidSensorHumidValue1.{{ $subindex1 }}' + high_limit: Sentry3-MIB::tempHumidSensorHumidHighThresh + low_limit: Sentry3-MIB::tempHumidSensorHumidLowThresh + skip_value_lt: 0 + temperature: + data: + - + oid: Sentry3-MIB::tempHumidSensorTable + value: Sentry3-MIB::tempHumidSensorTempValue + num_oid: '.1.3.6.1.4.1.1718.3.2.5.1.6.{{ $index }}' + descr: 'Removable Sensor {{ $Sentry3-MIB::tempHumidSensorID }}' + index: 'tempHumidSensorTempValue1.{{ $subindex1 }}' + divisor: 10 + high_limit: Sentry3-MIB::tempHumidSensorTempHighThresh + low_limit: Sentry3-MIB::tempHumidSensorTempLowThresh + skip_value_lt: 0 + skip_values: + - + oid: Sentry3-MIB::tempHumidSensorTempScale + op: '==' + value: '1' + - + oid: Sentry3-MIB::tempHumidSensorTable + value: Sentry3-MIB::tempHumidSensorTempValue + num_oid: '.1.3.6.1.4.1.1718.3.2.5.1.6.{{ $index }}' + descr: 'Removable Sensor {{ $Sentry3-MIB::tempHumidSensorID }}' + index: 'tempHumidSensorTempValue1.{{ $subindex1 }}' + divisor: 10 + high_limit: Sentry3-MIB::tempHumidSensorTempHighThresh + low_limit: Sentry3-MIB::tempHumidSensorTempLowThresh + user_func: fahrenheit_to_celsius + skip_value_lt: 0 + skip_values: + - + oid: Sentry3-MIB::tempHumidSensorTempScale + op: '!=' + value: '1' diff --git a/priv/profiles/os_discovery/sentry4.yaml b/priv/profiles/os_discovery/sentry4.yaml new file mode 100644 index 00000000..f3bc2b2b --- /dev/null +++ b/priv/profiles/os_discovery/sentry4.yaml @@ -0,0 +1,502 @@ +mib: Sentry4-MIB +modules: + os: + hardware: Sentry4-MIB::st4UnitModel.1 + serial: Sentry4-MIB::st4UnitProductSN.1 + version: Sentry4-MIB::st4SystemFirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - st4InputCordName + - st4LineLabel + - st4PhaseLabel + - st4OcpLabel + - st4BranchLabel + current: + data: + - + oid: st4LineCurrent + num_oid: '.1.3.6.1.4.1.1718.4.1.4.3.1.3.{{ $index }}' + index: 'st4LineCurrent.{{ $index }}' + descr: Line, {{ $st4LineLabel }}, Current + divisor: 100 + - + oid: st4PhaseCurrent + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.6.{{ $index }}' + index: 'st4PhaseCurrent.{{ $index }}' + descr: Phase, {{ $st4PhaseLabel }}, Current + divisor: 100 + frequency: + data: + - + oid: st4InputCordFrequency + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.11.{{ $index }}' + index: 'st4InputCord.{{ $index }}' + descr: Line, {{ $st4InputCordName }}, Frequency + divisor: 10 + power: + data: + - + oid: st4InputCordActivePower + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.3.{{ $index }}' + index: 'st4InputCord.{{ $index }}' + descr: Cord, {{ $st4InputCordName }}, Active Power + - + oid: st4PhaseActivePower + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.8.{{ $index }}' + index: 'st4PhaseActivePower.{{ $index }}' + descr: Phase, {{ $st4PhaseLabel }}, Active Power + voltage: + data: + - + oid: st4PhaseVoltage + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.3.{{ $index }}' + index: 'st4PhaseVoltage.{{ $index }}' + descr: Phase, {{ $st4PhaseLabel }}, Voltage + divisor: 10 + percent: + data: + - + oid: st4InputCordOutOfBalance + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.12.{{ $index }}' + index: 'st4InputCord.{{ $index }}' + descr: Cord, {{ $st4InputCordName }}, Balance + divisor: 10 + state: + data: + - + oid: st4UnitStatus + value: st4UnitStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.2.3.1.1.{{ $index }}' + descr: Unit Status + index: 'st4UnitStatus.{{ $index }}' + state_name: st4UnitStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4InputCordState + value: st4InputCordState + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.1.{{ $index }}' + descr: Input Cord State + index: 'st4InputCordState.{{ $index }}' + state_name: st4InputCordState + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 3 } + - + oid: st4InputCordStatus + value: st4InputCordStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.2.{{ $index }}' + descr: Input Cord Status + index: 'st4InputCordStatus.{{ $index }}' + state_name: st4InputCordStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4InputCordActivePowerStatus + value: st4InputCordActivePowerStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.4.{{ $index }}' + descr: Input Cord Active Power Status + index: 'st4InputCordActivePowerStatus.{{ $index }}' + state_name: st4InputCordActivePowerStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4InputCordApparentPowerStatus + value: st4InputCordApparentPowerStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.6.{{ $index }}' + descr: Input Cord Apparent Power Status + index: 'st4InputCordApparentPowerStatus.{{ $index }}' + state_name: st4InputCordApparentPowerStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4InputCordPowerFactorStatus + value: st4InputCordPowerFactorStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.9.{{ $index }}' + descr: Input Cord Power Factor Status + index: 'st4InputCordPowerFactorStatus.{{ $index }}' + state_name: st4InputCordPowerFactorStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4InputCordOutOfBalanceStatus + value: st4InputCordOutOfBalanceStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.3.3.1.13.{{ $index }}' + descr: Input Out Of Balance Status + index: 'st4InputCordOutOfBalanceStatus.{{ $index }}' + state_name: st4InputCordOutOfBalanceStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4LineState + value: st4LineState + num_oid: '.1.3.6.1.4.1.1718.4.1.4.3.1.1.{{ $index }}' + descr: Line {{ $st4LineLabel }} State + index: 'st4LineState.{{ $index }}' + state_name: st4LineState + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 3 } + - + oid: st4LineStatus + value: st4LineStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.4.3.1.2.{{ $index }}' + descr: Line {{ $st4LineLabel }} Status + index: 'st4LineStatus.{{ $index }}' + state_name: st4LineStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4PhaseState + value: st4PhaseState + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.1.{{ $index }}' + descr: Phase {{ $st4PhaseLabel }} State + index: 'st4PhaseState.{{ $index }}' + state_name: st4PhaseState + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 3 } + - + oid: st4PhaseStatus + value: st4PhaseStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.2.{{ $index }}' + descr: Phase {{ $st4PhaseLabel }} Status + index: 'st4PhaseStatus.{{ $index }}' + state_name: st4PhaseStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4PhaseVoltageStatus + value: st4PhaseVoltageStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.4.{{ $index }}' + descr: Phase {{ $st4PhaseLabel }} Voltage Status + index: 'st4PhaseVoltageStatus.{{ $index }}' + state_name: st4PhaseVoltageStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4PhasePowerFactorStatus + value: st4PhasePowerFactorStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.5.3.1.11.{{ $index }}' + descr: Phase {{ $st4PhaseLabel }} Power Factor Status + index: 'st4PhasePowerFactorStatus.{{ $index }}' + state_name: st4PhasePowerFactorStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4OcpStatus + value: st4OcpStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.6.3.1.1.{{ $index }}' + descr: Over-current Protector {{ $st4OcpLabel }} Status + index: 'st4OcpStatus.{{ $index }}' + state_name: st4OcpStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4BranchState + value: st4BranchState + num_oid: '.1.3.6.1.4.1.1718.4.1.7.3.1.1.{{ $index }}' + descr: Branch {{ $st4OcpLabel }} State + index: 'st4BranchState.{{ $index }}' + state_name: st4BranchState + states: + - { descr: unknown, graph: 0, value: 0, generic: 3 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - { descr: off, graph: 0, value: 2, generic: 3 } + - + oid: st4BranchStatus + value: st4BranchStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.7.3.1.2.{{ $index }}' + descr: Branch {{ $st4OcpLabel }} Status + index: 'st4BranchStatus.{{ $index }}' + state_name: st4BranchStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } + - + oid: st4BranchCurrentStatus + value: st4BranchCurrentStatus + num_oid: '.1.3.6.1.4.1.1718.4.1.7.3.1.4.{{ $index }}' + descr: Branch Current {{ $st4OcpLabel }} Status + index: 'st4BranchCurrentStatus.{{ $index }}' + state_name: st4BranchCurrentStatus + states: + - { descr: normal, graph: 1, value: 0, generic: 0 } + - { descr: disabled, graph: 1, value: 1, generic: 3 } + - { descr: purged, graph: 1, value: 2, generic: 2 } + - { descr: reading, graph: 1, value: 5, generic: 2 } + - { descr: settle, graph: 1, value: 6, generic: 1 } + - { descr: notFound, graph: 1, value: 7, generic: 3 } + - { descr: lost, graph: 1, value: 8, generic: 1 } + - { descr: readError, graph: 1, value: 9, generic: 1 } + - { descr: noComm, graph: 1, value: 10, generic: 1 } + - { descr: pwrError, graph: 1, value: 11, generic: 2 } + - { descr: breakerTripped, graph: 1, value: 12, generic: 2 } + - { descr: fuseBlown, graph: 1, value: 13, generic: 2 } + - { descr: lowAlarm, graph: 1, value: 14, generic: 2 } + - { descr: lowWarning, graph: 1, value: 15, generic: 1 } + - { descr: highWarning, graph: 1, value: 16, generic: 1 } + - { descr: highAlarm, graph: 1, value: 17, generic: 2 } + - { descr: alarm, graph: 1, value: 18, generic: 2 } + - { descr: underLimit, graph: 1, value: 19, generic: 1 } + - { descr: overLimit, graph: 1, value: 20, generic: 1 } + - { descr: nvmFail, graph: 1, value: 21, generic: 2 } + - { descr: profileError, graph: 1, value: 22, generic: 2 } + - { descr: conflict, graph: 1, value: 23, generic: 2 } diff --git a/priv/profiles/os_discovery/seos.yaml b/priv/profiles/os_discovery/seos.yaml new file mode 100644 index 00000000..1904fc31 --- /dev/null +++ b/priv/profiles/os_discovery/seos.yaml @@ -0,0 +1,8 @@ +mib: RBN-CPU-METER-MIB +modules: + processors: + data: + - + oid: rbnCpuMeterFiveSecondAvg + num_oid: '.1.3.6.1.4.1.2352.2.6.1.1.{{ $index }}' + diff --git a/priv/profiles/os_discovery/serveriron.yaml b/priv/profiles/os_discovery/serveriron.yaml new file mode 100644 index 00000000..bf6310cf --- /dev/null +++ b/priv/profiles/os_discovery/serveriron.yaml @@ -0,0 +1,11 @@ +modules: + os: + serial: FOUNDRY-SN-AGENT-MIB::snChasSerNum.0 + hardware: FOUNDRY-SN-AGENT-MIB::snAgentBrdMainBrdDescription.1 + version: FOUNDRY-SN-AGENT-MIB::snAgImgVer.0 + mempools: + data: + - + total: FOUNDRY-SN-AGENT-MIB::snAgGblDynMemTotal + free: FOUNDRY-SN-AGENT-MIB::snAgGblDynMemFree + descr: 'Dynamic Memory' diff --git a/priv/profiles/os_discovery/serverscheck.yaml b/priv/profiles/os_discovery/serverscheck.yaml new file mode 100644 index 00000000..4171fea5 --- /dev/null +++ b/priv/profiles/os_discovery/serverscheck.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: .1.3.6.1.2.1.1.5.0 + hardware_regex: '/Sensor Gateway: (?.*)/' + version: ServersCheck::product.productversion.0 + version_regex: '/Release (?.*)/' diff --git a/priv/profiles/os_discovery/sgos.yaml b/priv/profiles/os_discovery/sgos.yaml new file mode 100644 index 00000000..87d467b2 --- /dev/null +++ b/priv/profiles/os_discovery/sgos.yaml @@ -0,0 +1,10 @@ +modules: + os: + hardware: BLUECOAT-SG-PROXY-MIB::sgProxySoftware.0 + version: BLUECOAT-SG-PROXY-MIB::sgProxyVersion.0 + mempools: + data: + - + used: BLUECOAT-SG-PROXY-MIB::sgProxyMemSysUsage + free: BLUECOAT-SG-PROXY-MIB::sgProxyMemAvailable + descr: 'ProxySG Memory' diff --git a/priv/profiles/os_discovery/sharp.yaml b/priv/profiles/os_discovery/sharp.yaml new file mode 100644 index 00000000..7e29a506 --- /dev/null +++ b/priv/profiles/os_discovery/sharp.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: .1.3.6.1.4.1.2385.2.1.3.2.1.4.13501.1302.1 + version: .1.3.6.1.4.1.2385.2.1.1.2.1.2.1 + serial: .1.3.6.1.2.1.43.5.1.1.17.1 + features: .1.3.6.1.4.1.2385.2.1.3.2.1.4.11703.36.1 diff --git a/priv/profiles/os_discovery/siklu.yaml b/priv/profiles/os_discovery/siklu.yaml new file mode 100644 index 00000000..766fd006 --- /dev/null +++ b/priv/profiles/os_discovery/siklu.yaml @@ -0,0 +1,16 @@ +modules: + sensors: + voltage: + data: + - + oid: RADIO-BRIDGE-MIB::rbSysVoltage + num_oid: '.1.3.6.1.4.1.31926.1.1.{{ $index }}' + index: 'rbSysVoltage.{{ $index }}' + descr: 'System voltage' + temperature: + data: + - + oid: RADIO-BRIDGE-MIB::rbSysTemperature + num_oid: '.1.3.6.1.4.1.31926.1.2.{{ $index }}' + index: '.1.3.6.1.4.1.31926.1.2.{{ $index }}' + descr: 'System Temp' diff --git a/priv/profiles/os_discovery/sinetica.yaml b/priv/profiles/os_discovery/sinetica.yaml new file mode 100644 index 00000000..0a0ca1b6 --- /dev/null +++ b/priv/profiles/os_discovery/sinetica.yaml @@ -0,0 +1,119 @@ +modules: + os: + sysDescr_regex: '/OS (?\S+), .*H\/w (?\S+)/' + sensors: + charge: + data: + - + oid: UPS-MIB::upsEstimatedChargeRemaining + num_oid: '.1.3.6.1.4.1.13891.101.2.4.{{ $index }}' + index: 'upsEstimatedChargeRemaining.{{ $index }}' + descr: Battery Charge + low_limit: 0 + low_warn_limit: 10 + current: + data: + - + oid: UPS-MIB::upsInputTable + value: UPS-MIB::upsInputCurrent + num_oid: '.1.3.6.1.4.1.13891.101.3.3.1.4.{{ $index }}' + index: 'upsInputCurrent.{{ $index }}' + descr: 'Input #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsOutputTable + value: UPS-MIB::upsOutputCurrent + num_oid: '.1.3.6.1.4.1.13891.101.4.4.1.3.{{ $index }}' + index: 'upsOutputCurrent.{{ $index }}' + descr: 'Output #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsBatteryCurrent + num_oid: '.1.3.6.1.4.1.13891.101.2.6.{{ $index }}' + index: 'upsBatteryCurrent.{{ $index }}' + descr: 'Battery' + divisor: 10 + + frequency: + data: + - + oid: UPS-MIB::upsInputTable + value: UPS-MIB::upsInputFrequency + num_oid: '.1.3.6.1.4.1.13891.101.3.3.1.2.{{ $index }}' + index: 'upsInputFrequency.{{ $index }}' + descr: 'Input #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsOutputTable + value: UPS-MIB::upsOutputFrequency + num_oid: '.1.3.6.1.4.1.13891.101.4.2.{{ $index }}' + index: 'upsOutputFrequency.{{ $index }}' + descr: 'Output #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsBypassFrequency + num_oid: '.1.3.6.1.4.1.13891.101.5.1.{{ $index }}' + index: 'upsBypassFrequency.{{ $index }}' + descr: Bypass + divisor: 10 + load: + data: + - + oid: UPS-MIB::upsOutputTable + value: UPS-MIB::upsOutputPercentLoad + num_oid: '.1.3.6.1.4.1.13891.101.4.4.1.5.{{ $index }}' + index: 'upsOutputPercentLoad.{{ $index }}' + descr: 'Output #{{ $index }}' + power: + data: + - + oid: UPS-MIB::upsOutputTable + value: UPS-MIB::upsOutputPower + num_oid: '.1.3.6.1.4.1.13891.101.4.4.1.4.{{ $index }}' + index: 'upsOutputPower.{{ $index }}' + descr: 'Output #{{ $index }}' + divisor: 10 + runtime: + data: + - + oid: UPS-MIB::upsEstimatedMinutesRemaining + num_oid: '.1.3.6.1.4.1.13891.101.2.3.{{ $index }}' + index: 'upsEstimatedMinutesRemaining.{{ $index }}' + descr: 'Battery Runtime' + low_limit: 5 + low_warn_limit: 10 + state: + data: + - + oid: UPS-MIB::upsBatteryStatus + num_oid: '.1.3.6.1.4.1.13891.101.2.1.{{ $index }}' + descr: Battery Status + index: 'upsBatteryStatus.{{ $index }}' + state_name: upsBatteryStatus + states: + - { value: 1, generic: 3, graph: 1, descr: unknown } + - { value: 2, generic: 0, graph: 1, descr: batteryNormal } + - { value: 3, generic: 1, graph: 1, descr: batteryLow } + - { value: 4, generic: 2, graph: 1, descr: batteryDepleted } + voltage: + data: + - + oid: UPS-MIB::upsInputTable + value: UPS-MIB::upsInputVoltage + num_oid: '.1.3.6.1.4.1.13891.101.3.3.1.3.{{ $index }}' + index: 'upsInputVoltage.{{ $index }}' + descr: 'Input #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsOutputVoltage + value: UPS-MIB::upsOutputVoltage + num_oid: '.1.3.6.1.4.1.13891.101.4.4.1.2.{{ $index }}' + index: 'upsOutputVoltage.{{ $index }}' + descr: 'Output #{{ $index }}' + divisor: 10 + - + oid: UPS-MIB::upsBatteryVoltage + num_oid: '.1.3.6.1.4.1.13891.101.2.5.{{ $index }}' + index: 'upsBatteryVoltage.{{ $index }}' + descr: Battery + divisor: 10 diff --git a/priv/profiles/os_discovery/siteboss.yaml b/priv/profiles/os_discovery/siteboss.yaml new file mode 100644 index 00000000..c8805057 --- /dev/null +++ b/priv/profiles/os_discovery/siteboss.yaml @@ -0,0 +1,128 @@ +mib: SITEBOSS-530-STD-MIB +modules: + os: + sysDescr_regex: '/(?SiteBoss \S+) (?.*)/' + sysName: SITEBOSS-530-STD-MIB::siteName.0 + sensors: + temperature: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 1 + state: + data: + - + oid: esPointTable + value: esPointInEventState + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.5.{{ $index }}' + descr: esPointName + group: Contact Closures + state_name: contactClosure + states: + - { value: 1, generic: 2, graph: 1, descr: event } + - { value: 2, generic: 0, graph: 1, descr: normal } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 2 + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Relay Outputs + state_name: relayOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['Active/Energized', 'Inactive/Energized', 'Active/De-energized', 'Inactive/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Power Outputs + state_name: powerOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['On/Energized', 'Off/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + humidity: + data: + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.6.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 3 + count: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.12.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 5 + - + oid: esPointName + op: '=' + value: unnamed + percent: + data: + - + oid: fsStatusTable + value: fsStatusVolumePercentLevel + num_oid: '.1.3.6.1.4.1.3052.12.1.6.1.1.7.{{ $index }}' + descr: fsStatusName + divisor: 100 + low_warn_limit: 20 + low_limit: 10 + skip_values: + - + oid: fsStatusVolumeValueString + op: '=' + value: -999 diff --git a/priv/profiles/os_discovery/siteboss360.yaml b/priv/profiles/os_discovery/siteboss360.yaml new file mode 100644 index 00000000..98b51690 --- /dev/null +++ b/priv/profiles/os_discovery/siteboss360.yaml @@ -0,0 +1,127 @@ +mib: SITEBOSS-360-STD-MIB +modules: + os: + sysDescr_regex: '/(?SiteBoss \S+) (?.*)/' + sensors: + temperature: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 1 + state: + data: + - + oid: esPointTable + value: esPointInEventState + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.5.{{ $index }}' + descr: esPointName + group: Contact Closures + state_name: contactClosure + states: + - { value: 1, generic: 2, graph: 1, descr: event } + - { value: 2, generic: 0, graph: 1, descr: normal } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 2 + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Relay Outputs + state_name: relayOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['Active/Energized', 'Inactive/Energized', 'Active/De-energized', 'Inactive/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Power Outputs + state_name: powerOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['On/Energized', 'Off/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + humidity: + data: + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.6.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 3 + count: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.23.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 5 + - + oid: esPointName + op: '=' + value: unnamed + percent: + data: + - + oid: fsStatusTable + value: fsStatusVolumePercentLevel + num_oid: '.1.3.6.1.4.1.3052.23.1.6.1.1.7.{{ $index }}' + descr: fsStatusName + divisor: 100 + low_warn_limit: 20 + low_limit: 10 + skip_values: + - + oid: fsStatusVolumeValueString + op: '=' + value: -999 diff --git a/priv/profiles/os_discovery/siteboss550.yaml b/priv/profiles/os_discovery/siteboss550.yaml new file mode 100644 index 00000000..a4bb2fb2 --- /dev/null +++ b/priv/profiles/os_discovery/siteboss550.yaml @@ -0,0 +1,128 @@ +mib: SITEBOSS-550-STD-MIB +modules: + os: + sysDescr_regex: '/(?SiteBoss \S+) (?.*)/' + sysName: SITEBOSS-550-STD-MIB::siteName.0 + sensors: + temperature: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 1 + state: + data: + - + oid: esPointTable + value: esPointInEventState + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.5.{{ $index }}' + descr: esPointName + group: Contact Closures + state_name: contactClosure + states: + - { value: 1, generic: 2, graph: 1, descr: event } + - { value: 2, generic: 0, graph: 1, descr: normal } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 2 + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Relay Outputs + state_name: relayOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['Active/Energized', 'Inactive/Energized', 'Active/De-energized', 'Inactive/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.6.{{ $index }}' + descr: esPointName + group: Power Outputs + state_name: powerOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['On/Energized', 'Off/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + humidity: + data: + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.6.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 3 + count: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.10.1.1.1.1.7.{{ $index }}' + descr: esPointName + skip_values: + - + oid: esIndexPC + op: '!=' + value: 5 + - + oid: esPointName + op: '=' + value: unnamed + percent: + data: + - + oid: fsStatusTable + value: fsStatusVolumePercentLevel + num_oid: '.1.3.6.1.4.1.3052.10.1.6.1.1.7.{{ $index }}' + descr: fsStatusName + divisor: 100 + low_warn_limit: 20 + low_limit: 10 + skip_values: + - + oid: fsStatusVolumeValueString + op: '=' + value: -999 diff --git a/priv/profiles/os_discovery/siteboss571.yaml b/priv/profiles/os_discovery/siteboss571.yaml new file mode 100644 index 00000000..0338bcb8 --- /dev/null +++ b/priv/profiles/os_discovery/siteboss571.yaml @@ -0,0 +1,171 @@ +mib: SITEBOSS-571-STD-MIB +modules: + os: + sysDescr_regex: '/(?SiteBoss \S+) (?.*)/' + serial: '.1.3.6.1.4.1.3052.14.2.16.15.3.0' + location: '.1.3.6.1.4.1.3052.14.3.1.0' + + sensors: + temperature: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.7.{{ $index }}' + descr: 'Sensor: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 1 + state: + data: + - + oid: esPointTable + value: esPointInEventState + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.5.{{ $index }}' + descr: 'Contact: {{ $index }} | {{ $esPointName }}' + group: 'Contact Closures' + state_name: contactClosure + states: + - { value: 1, generic: 2, graph: 1, descr: Open } + - { value: 2, generic: 0, graph: 1, descr: Closed } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 2 + - + oid: esPointName + op: '=' + value: '' + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.6.{{ $index }}' + descr: 'Relay: {{ $index }} | {{ $esPointName }}' + group: 'Relay Outputs' + state_name: relayOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['Active/Energized', 'Inactive/Energized', 'Active/De-energized', 'Inactive/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.6.{{ $index }}' + descr: 'Port: {{ $index }} | {{ $esPointName }}' + group: 'Power Outputs' + state_name: powerOutput + states: + - { value: 0, generic: 1, graph: 1, descr: de-energized } + - { value: 1, generic: 0, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['On/Energized', 'Off/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + + current: + options: + divisor: 1000 + data: + - + oid: pdnTable + value: pdnOutputCurrentValue + num_oid: '.1.3.6.1.4.1.3052.14.1.5.4.1.1.23.{{ $index }}' + entPhysicalIndex: pdnIndexPD + index: 'pdnOutputCurrentValue.{{ $index }}' + descr: 'Port: {{ $index }}' + group: 'Current (Per Port)' + low_limit: pdnOutputCurrentVLowCurrent + low_warn_limit: pdnOutputCurrentLowCurrent + warn_limit: pdnOutputCurrentHighCurrent + high_limit: pdnOutputCurrentVHighCurrent + - + oid: pdnTable + value: pdnMainCurrentValue + num_oid: '.1.3.6.1.4.1.3052.14.1.5.4.1.1.5.{{ $index }}' + entPhysicalIndex: pdnIndexPD + index: 'pdnMainCurrentValue.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Current (Per Module)' + low_limit: pdnMainCurrentVLowCurrent + low_warn_limit: pdnMainCurrentLowCurrent + warn_limit: pdnMainCurrentHighCurrent + high_limit: pdnMainCurrentVHighCurrent + + voltage: + options: + divisor: 1000 + data: + - + oid: pdnTable + value: pdnMainVoltageValue + num_oid: '.1.3.6.1.4.1.3052.14.1.5.4.1.1.13.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Voltage (Per Module)' + low_limit: pdnMainVoltageVLowCurrent + low_warn_limit: pdnMainVoltageLowCurrent + warn_limit: pdnMainVoltageHighCurrent + high_limit: pdnMainVoltageVHighCurrent + + power: + options: + divisor: 1 + data: + - + oid: pdnTable + value: pdnMainPowerValue + num_oid: '.1.3.6.1.4.1.3052.14.1.5.4.1.1.20.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Power (Per Module)' + + humidity: + data: + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.6.{{ $index }}' + descr: 'Sensor: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 3 + count: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.14.1.1.1.1.7.{{ $index }}' + descr: 'Analog: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 5 + - + oid: esPointName + op: '=' + value: unnamed diff --git a/priv/profiles/os_discovery/siteboss572.yaml b/priv/profiles/os_discovery/siteboss572.yaml new file mode 100644 index 00000000..ab357082 --- /dev/null +++ b/priv/profiles/os_discovery/siteboss572.yaml @@ -0,0 +1,171 @@ +mib: SITEBOSS-572-STD-MIB +modules: + os: + sysDescr_regex: '/(?SiteBoss \S+) (?.*)/' + serial: '.1.3.6.1.4.1.3052.20.2.16.15.3.0' + location: '.1.3.6.1.4.1.3052.20.3.1.0' + + sensors: + temperature: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.7.{{ $index }}' + descr: 'Sensor: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 1 + state: + data: + - + oid: esPointTable + value: esPointInEventState + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.5.{{ $index }}' + descr: 'Contact: {{ $index }} | {{ $esPointName }}' + group: 'Contact Closures' + state_name: contactClosure + states: + - { value: 1, generic: 2, graph: 1, descr: Open } + - { value: 2, generic: 0, graph: 1, descr: Closed } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 2 + - + oid: esPointName + op: '=' + value: '' + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.6.{{ $index }}' + descr: 'Relay: {{ $index }} | {{ $esPointName }}' + group: 'Relay Outputs' + state_name: relayOutput + states: + - { value: 0, generic: 0, graph: 1, descr: de-energized } + - { value: 1, generic: 2, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['Active/Energized', 'Inactive/Energized', 'Active/De-energized', 'Inactive/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.6.{{ $index }}' + descr: 'Port: {{ $index }} | {{ $esPointName }}' + group: 'Power Outputs' + state_name: powerOutput + states: + - { value: 0, generic: 1, graph: 1, descr: de-energized } + - { value: 1, generic: 0, graph: 1, descr: energized } + skip_values: + - + oid: esIndexPC + op: '!=' + value: 6 + - + oid: esPointValueStr + op: 'not_in_array' + value: ['On/Energized', 'Off/De-energized'] + - + oid: esPointName + op: '=' + value: unnamed + + current: + options: + divisor: 1000 + data: + - + oid: pdnTable + value: pdnOutputCurrentValue + num_oid: '.1.3.6.1.4.1.3052.20.1.5.4.1.1.23.{{ $index }}' + entPhysicalIndex: pdnIndexPD + index: 'pdnOutputCurrentValue.{{ $index }}' + descr: 'Port: {{ $index }}' + group: 'Current (Per Port)' + low_limit: pdnOutputCurrentVLowCurrent + low_warn_limit: pdnOutputCurrentLowCurrent + warn_limit: pdnOutputCurrentHighCurrent + high_limit: pdnOutputCurrentVHighCurrent + - + oid: pdnTable + value: pdnMainCurrentValue + num_oid: '.1.3.6.1.4.1.3052.20.1.5.4.1.1.5.{{ $index }}' + entPhysicalIndex: pdnIndexPD + index: 'pdnMainCurrentValue.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Current (Per Module)' + low_limit: pdnMainCurrentVLowCurrent + low_warn_limit: pdnMainCurrentLowCurrent + warn_limit: pdnMainCurrentHighCurrent + high_limit: pdnMainCurrentVHighCurrent + + voltage: + options: + divisor: 1000 + data: + - + oid: pdnTable + value: pdnMainVoltageValue + num_oid: '.1.3.6.1.4.1.3052.20.1.5.4.1.1.13.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Voltage (Per Module)' + low_limit: pdnMainVoltageVLowCurrent + low_warn_limit: pdnMainVoltageLowCurrent + warn_limit: pdnMainVoltageHighCurrent + high_limit: pdnMainVoltageVHighCurrent + + power: + options: + divisor: 1 + data: + - + oid: pdnTable + value: pdnMainPowerValue + num_oid: '.1.3.6.1.4.1.3052.20.1.5.4.1.1.20.{{ $index }}' + descr: 'Module: {{ $index }}' + group: 'Power (Per Module)' + + humidity: + data: + - + oid: esPointTable + value: esPointValueInt + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.6.{{ $index }}' + descr: 'Sensor: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 3 + count: + data: + - + oid: esPointTable + value: esPointValueStr + num_oid: '.1.3.6.1.4.1.3052.20.1.1.1.1.7.{{ $index }}' + descr: 'Analog: {{ $index }} | {{ $esPointName }}' + skip_values: + - + oid: esIndexPC + op: '!=' + value: 5 + - + oid: esPointName + op: '=' + value: unnamed diff --git a/priv/profiles/os_discovery/sixnet.yaml b/priv/profiles/os_discovery/sixnet.yaml new file mode 100644 index 00000000..e2197694 --- /dev/null +++ b/priv/profiles/os_discovery/sixnet.yaml @@ -0,0 +1,48 @@ +mib: SIXNET-MIB +modules: + os: + serial: SIXNET-MIB::serialNumber.0 + version: SIXNET-MIB::firmwareRevision.0 + sensors: + state: + data: + - + oid: p1status + num_oid: '.1.3.6.1.4.1.20540.2.1.1.1.{{ $index }}' + descr: 'Power Supply #1' + index: 'p1status.{{ $index }}' + state_name: p1status + states: + - { value: 0, generic: 2, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + - { value: 2, generic: 3, graph: 1, descr: Unknown } + - + oid: p2status + num_oid: '.1.3.6.1.4.1.20540.2.1.1.2.{{ $index }}' + descr: 'Power Supply #2' + index: 'p2status.{{ $index }}' + state_name: p2status + states: + - { value: 0, generic: 2, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + - { value: 2, generic: 3, graph: 1, descr: Unknown } + - + oid: oKstatus + num_oid: '.1.3.6.1.4.1.20540.2.1.1.3.{{ $index }}' + descr: 'Ok Relay' + index: 'oKstatus.{{ $index }}' + state_name: oKstatus + states: + - { value: 0, generic: 2, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + - { value: 2, generic: 3, graph: 1, descr: Unknown } + - + oid: fromPLCstatus + num_oid: '.1.3.6.1.4.1.20540.2.1.1.7.{{ $index }}' + descr: 'PLC Input' + index: 'fromPLCstatus.{{ $index }}' + state_name: fromPLCstatus + states: + - { value: 0, generic: 2, graph: 1, descr: Off } + - { value: 1, generic: 0, graph: 1, descr: On } + - { value: 2, generic: 3, graph: 1, descr: Unknown } diff --git a/priv/profiles/os_discovery/skyhighwebprotect.yaml b/priv/profiles/os_discovery/skyhighwebprotect.yaml new file mode 100644 index 00000000..7c61e618 --- /dev/null +++ b/priv/profiles/os_discovery/skyhighwebprotect.yaml @@ -0,0 +1,91 @@ +mib: SKYHIGHSECURITY-SWG-MIB +modules: + os: + version: SKYHIGHSECURITY-SWG-MIB::kProductVersion.0 + sensors: + additional_oids: + data: + - + oid: + - stCategoryName + count: + data: + - + oid: stMalwareDetected + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.2.{{ $index }}' + descr: 'Infections detected by Antimalware' + index: 'stMalwareDetected{{ $index }}' + rrd_type: COUNTER + - + oid: stConnectionsLegitimate + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.3.{{ $index }}' + descr: 'Total requests' + index: 'stConnectionsLegitimate{{ $index }}' + group: Requests + rrd_type: COUNTER + - + oid: stBlockedByAntiMalware + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.4.{{ $index }}' + index: 'stBlockedByAntiMalware{{ $index }}' + descr: 'Connections blocked by Anti-Malware' + rrd_type: COUNTER + - + oid: stConnectionsBlocked + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.5.{{ $index }}' + descr: 'Total Connections blocked' + index: 'stConnectionsBlocked{{ $index }}' + rrd_type: COUNTER + - + oid: stBlockedByMediaFilter + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.6.{{ $index }}' + index: 'stBlockedByMediaFilter{{ $index }}' + descr: 'Connections blocked by the Media-Type' + rrd_type: COUNTER + - + oid: stBlockedByURLFilter + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.7.{{ $index }}' + index: 'stBlockedByURLFilter{{ $index }}' + descr: 'Connections blocked by the URL filter' + rrd_type: COUNTER + - + oid: stMimeType + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.8.{{ $index }}' + index: 'stMimeType{{ $index }}' + descr: 'Media types detected by the Media Type filter' + rrd_type: COUNTER + - + oid: stCategoryCount + num_oid: '.1.3.6.1.4.1.59732.2.7.2.1.10.1.2.{{ $index }}' + index: 'Blocked {{ $stCategoryName }}' + descr: 'Blocked {{ $stCategoryName }}' + group: 'Categories Blocked' + rrd_type: COUNTER + - + oid: stHttpRequests + num_oid: '.1.3.6.1.4.1.59732.2.7.2.2.1.{{ $index }}' + index: 'stHttpRequests{{ $index }}' + descr: 'HTTP requests' + group: Requests + rrd_type: COUNTER + - + oid: stHttpsRequests + num_oid: '.1.3.6.1.4.1.59732.2.7.2.3.1.{{ $index }}' + index: 'stHttpsRequests{{ $index }}' + descr: 'HTTPS requests' + group: Requests + rrd_type: COUNTER + - + oid: stClientCount + num_oid: '.1.3.6.1.4.1.59732.2.7.2.5.2.{{ $index }}' + index: 'stClientCount.{{ $index }}' + descr: 'Connected clients' + - + oid: stConnectedSockets + num_oid: '.1.3.6.1.4.1.59732.2.7.2.5.3.{{ $index }}' + index: 'stConnectedSockets.{{ $index }}' + descr: 'Open network sockets' + - + oid: stResolveHostViaDNS + num_oid: '.1.3.6.1.4.1.59732.2.7.2.5.6.{{ $index }}' + index: 'stResolveHostViaDNS.{{ $index }}' + descr: 'Time to resolve DNS (ms)' diff --git a/priv/profiles/os_discovery/slms.yaml b/priv/profiles/os_discovery/slms.yaml new file mode 100644 index 00000000..10acce7e --- /dev/null +++ b/priv/profiles/os_discovery/slms.yaml @@ -0,0 +1,22 @@ +mib: ZHONE-CARD-RESOURCES-MIB +modules: + processors: + data: + - + oid: cardProcessorUsage + num_oid: '.1.3.6.1.4.1.5504.3.3.3.1.5.{{ $index }}' + descr: 'Processor {{ $index }}' + type: slms + mempools: + additional_oids: + oids: + - ZHONE-CARD-RESOURCES-MIB::cardResourceTable + + data: + - + oid: ZHONE-CARD-RESOURCES-MIB::cardRuntimeTable + total: ZHONE-CARD-RESOURCES-MIB::cardTotalMem + free: ZHONE-CARD-RESOURCES-MIB::cardAvailMem + descr: '{{ ZHONE-CARD-RESOURCES-MIB::cardIdentification }} ({{ $index }})' + precision: 1024 + diff --git a/priv/profiles/os_discovery/slxos.yaml b/priv/profiles/os_discovery/slxos.yaml new file mode 100644 index 00000000..e5f52082 --- /dev/null +++ b/priv/profiles/os_discovery/slxos.yaml @@ -0,0 +1,58 @@ +mib: Brocade-REG-MIB +modules: + os: + serial: ENTITY-MIB::entPhysicalSerialNum.1 + hardware: ENTITY-MIB::entPhysicalName.1 + sysDescr_regex: '/SLX.*Version (?\S+)\./' + mempools: + data: + - + total: BROCADE-MODULE-MEM-UTIL-MIB::bcsiModuleMemTotal + free: BROCADE-MODULE-MEM-UTIL-MIB::bcsiModuleMemAvailable + precision: 1024 + processors: + data: + - + oid: SYSTEM-MIB::swCpuUsage + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.26.1.{{ $index }}' + descr: CPU + sensors: + temperature: + data: + - + oid: SYSTEM-MIB::swSensorTable + value: SYSTEM-MIB::swSensorValue + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{{ $index }}' + descr: SYSTEM-MIB::swSensorInfo + skip_values: + - + oid: SYSTEM-MIB::swSensorType + op: '!=' + value: 1 + fanspeed: + data: + - + oid: SYSTEM-MIB::swSensorTable + value: SYSTEM-MIB::swSensorValue + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.4.{{ $index }}' + descr: SYSTEM-MIB::swSensorInfo + skip_values: + - + oid: SYSTEM-MIB::swSensorType + op: '!=' + value: 2 + state: + data: + - + oid: SYSTEM-MIB::swSensorTable + value: SYSTEM-MIB::swSensorStatus + num_oid: '.1.3.6.1.4.1.1588.2.1.1.1.1.22.1.3.{{ $index }}' + descr: SYSTEM-MIB::swSensorInfo + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 2, graph: 0, descr: faulty } + - { value: 3, generic: 1, graph: 0, descr: below-min } + - { value: 4, generic: 0, graph: 0, descr: nominal } + - { value: 5, generic: 1, graph: 0, descr: above-max } + - { value: 6, generic: 3, graph: 0, descr: absent } + diff --git a/priv/profiles/os_discovery/sm-os.yaml b/priv/profiles/os_discovery/sm-os.yaml new file mode 100644 index 00000000..5d7cf6a4 --- /dev/null +++ b/priv/profiles/os_discovery/sm-os.yaml @@ -0,0 +1,145 @@ +mib: SIAE-UNIT-MIB:SIAE-POWER-SUPPLY-MIB:SIAE-SFP-MIB +modules: + os: + hardware: + - SIAE-UNIT-MIB::unitPartNumber.1 + - SIAE-UNIT-MIB::unitLabel.1 + hardware_template: '{{ SIAE-UNIT-MIB::unitLabel.1 }} ({{ SIAE-UNIT-MIB::unitPartNumber.1 }})' + serial: SIAE-UNIT-MIB::unitParentSerialNumber.1 + version: SIAE-SOFT-MIB::softwareEquipmentReleaseBench1.0 + sensors: + additional_oids: + data: + - + oid: + - SIAE-SFP-MIB::sfpLabel + state: + data: + - + oid: SIAE-POWER-SUPPLY-MIB::pwrSupplyTable + value: SIAE-POWER-SUPPLY-MIB::pwrSupplyRowStatus + num_oid: '.1.3.6.1.4.1.3373.1103.89.2.1.4.{{ $index }}' + descr: SIAE-POWER-SUPPLY-MIB::pwrSupplyLabel + index: 'pwrSupplyRowStatus.{{ $index }}' + state_name: pwrSupplyRowStatus + states: + - { descr: Active, graph: 1, value: 1, generic: 0 } + - { descr: 'Not in service', graph: 1, value: 2, generic: 3 } + - { descr: 'Not ready', graph: 1, value: 3, generic: 2 } + - { descr: 'Create and go', graph: 1, value: 4, generic: 3 } + - { descr: 'Create and wait', graph: 1, value: 5, generic: 3 } + - { descr: 'Destroy', graph: 1, value: 6, generic: 3 } + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpLOSPinOut + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.2.{{ $index }}' + descr: '{{ $SIAE-SFP-MIB::sfpLabel }} LOS' + index: 'sfpLOSPinOut.{{ $index }}' + state_name: sfpLOSPinOut + states: + - { descr: 'LOS Detected', graph: 1, value: 1, generic: 2 } + - { descr: 'LOS OK', graph: 1, value: 2, generic: 0 } + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpTxFaultPinOut + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.3.{{ $index }}' + descr: '{{ $SIAE-SFP-MIB::sfpLabel }} Tx Status' + index: 'sfpTxFaultPinOut.{{ $index }}' + state_name: sfpTxFaultPinOut + states: + - { descr: 'Fault', graph: 1, value: 1, generic: 2 } + - { descr: 'OK', graph: 1, value: 2, generic: 0 } + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + temperature: + data: + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpTemperature + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.6.{{ $index }}' + descr: SIAE-SFP-MIB::sfpLabel + index: 'sfpTemperature.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + voltage: + data: + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpVoltage + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.7.{{ $index }}' + descr: SIAE-SFP-MIB::sfpLabel + index: 'sfpVoltage.{{ $index }}' + divisor: 1000 + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + current: + data: + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpTxBias + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.8.{{ $index }}' + descr: SIAE-SFP-MIB::sfpLabel + index: 'sfpTxBias.{{ $index }}' + divisor: 1000000 + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + - + oid: SIAE-SFP-MIB::sfpTxBias + op: '=' + value: 0 + power: + data: + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpTxPower + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.9.{{ $index }}' + descr: SIAE-SFP-MIB::sfpLabel + index: 'sfpTxPower.{{ $index }}' + divisor: 1000000 + group: transceiver + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + - + oid: SIAE-SFP-MIB::sfpTxPower + op: '=' + value: 0 + - + oid: SIAE-SFP-MIB::sfpDiagnosticTable + value: SIAE-SFP-MIB::sfpRxPower + num_oid: '.1.3.6.1.4.1.3373.1103.74.7.1.10.{{ $index }}' + descr: SIAE-SFP-MIB::sfpLabel + index: 'sfpRxPower.{{ $index }}' + divisor: 1000000 + group: transceiver + entPhysicalIndex: '{{ $index }}' + skip_values: + - + oid: SIAE-SFP-MIB::sfpDiagnosticValid + op: '=' + value: 2 + - + oid: SIAE-SFP-MIB::sfpRxPower + op: '=' + value: 0 diff --git a/priv/profiles/os_discovery/smartax.yaml b/priv/profiles/os_discovery/smartax.yaml new file mode 100644 index 00000000..10a422bf --- /dev/null +++ b/priv/profiles/os_discovery/smartax.yaml @@ -0,0 +1,190 @@ +mib: HUAWEI-DEVICE-MIB:HUAWEI-POWER-MIB:HWMUSA-DEV-MIB:HUAWEI-XPON-MIB:IF-MIB +modules: + mempools: + additional_oids: + oids: + - HWMUSA-DEV-MIB::hwMusaBoardSlotDesc + data: + - + percent_used: HWMUSA-DEV-MIB::hwMusaBoardRamUseRate + descr: 'Slot {{ $subindex1 }} {{ HWMUSA-DEV-MIB::hwMusaBoardSlotDesc }}' + skip_values: + - + oid: HWMUSA-DEV-MIB::hwMusaBoardRamUseRate + op: '=' + value: -1 + os: + hardware: + - ENTITY-MIB::entPhysicalDescr.36 + - ENTITY-MIB::entPhysicalDescr.888624 + hardware_regex: '/(?[^,]+)/' + serial: HUAWEI-DEVICE-MIB::hwBackplanePhySerialNum.0 + version: HUAWEI-DEVICE-MIB::hwSysVersionVrcb.0 + sensors: + additional_oids: + data: + - + oid: + - hwFrameTypeName + - hwFrameIndex + - hwSlotIndex + - hwSlotTypeName + - hwPowerIndex + - hwPowerName + - ifName + + temperature: + data: + - + oid: hwGponOltOpticsDdmInfoEntry + value: hwGponOltOpticsDdmInfoTemperature + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.23.1.1.{{ $index }}' + descr: "SFP {{ $ifName }}" + group: SFPs + skip_value_gt: 999999 + voltage: + data: + - + oid: hwACVoltA + num_oid: '.1.3.6.1.4.1.2011.6.2.1.2.1.3.{{ $index }}' + divisor: 1000 + descr: AC Input A + group: Power + - + oid: hwDCVoltageOut + num_oid: '.1.3.6.1.4.1.2011.6.2.1.3.1.1.{{ $index }}' + divisor: 1000 + descr: DC Output + group: Power + - + oid: hwGponOltOpticsDdmInfoSupplyVoltage + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.23.1.2.{{ $index }}' + descr: "SFP {{ $ifName }}" + group: SFPs + divisor: 100 + skip_value_gt: 999999 + + dbm: + data: + - + oid: hwGponOltOpticsDdmInfoTxPower + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.23.1.4.{{ $index }}' + descr: "SFP {{ $ifName }} TX" + group: SFPs TX + index: 'tx-{{ $index }}' + divisor: 100 + skip_value_gt: 999999 + + current: + data: + - + oid: hwDCOutLoadCurrent + num_oid: '.1.3.6.1.4.1.2011.6.2.1.3.1.10.{{ $index }}' + divisor: 1000 + descr: DC Total Output Load + group: Power + - + oid: hwBatteryCurrent + num_oid: '.1.3.6.1.4.1.2011.6.2.1.6.3.1.6.{{ $index }}' + divisor: 1000 + descr: Battery + group: Power + - + oid: hwGponOltOpticsDdmInfoTxBiasCurrent + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.23.1.3.{{ $index }}' + descr: "SFP {{ $ifName }}" + group: SFPs + divisor: 1000 + skip_value_gt: 999999 + + count: + data: + - + oid: hwGponDeviceOltControlOntNum + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.21.1.16.{{ $index }}' + descr: "{{ $ifName }} Added ONTs" + group: ONTs Count + index: 'count-{{ $index }}' + skip_value_lt: 1 + - + oid: hwGponDeviceOltControlTcontNumInCard + num_oid: '.1.3.6.1.4.1.2011.6.128.1.1.2.21.1.21.{{ $index }}' + descr: "{{ $ifName }} T-CONT's" + group: T-CONTs Count + index: 'tconts-{{ $index }}' + skip_value_lt: 1 + + state: + data: + - + oid: hwFrameOperStatus + num_oid: '.1.3.6.1.4.1.2011.6.3.3.1.1.5.{{ $index }}' + index: hwFrameIndex + group: Frames + descr: "Frame {{ $hwFrameIndex }} ({{ $hwFrameTypeName }}) Status" + state_name: hwFrameOperStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'normal' } + - { value: 2, generic: 2, graph: 1, descr: 'fault' } + - { value: 3, generic: 3, graph: 1, descr: 'other' } + - { value: 4, generic: 1, graph: 1, descr: 'discovery' } + - { value: 5, generic: 1, graph: 1, descr: 'mismatch' } + - { value: 6, generic: 3, graph: 1, descr: 'offline' } + - + oid: hwPowerState + num_oid: '.1.3.6.1.4.1.2011.6.2.1.1.1.4.{{ $index }}' + descr: "Emu {{ $hwPowerIndex }} ({{ $hwPowerName }}) Status" + group: Power + state_name: hwPowerState + states: + - { value: 1, generic: 0, graph: 1, descr: 'normal' } + - { value: 2, generic: 2, graph: 1, descr: 'fault' } + - { value: 3, generic: 1, graph: 1, descr: 'protecting' } + - { value: 4, generic: 1, graph: 1, descr: 'switched' } + - + oid: hwACPowerState + num_oid: '.1.3.6.1.4.1.2011.6.2.1.2.1.2.{{ $index }}' + descr: "AC Power State" + group: Power + state_name: hwACPowerState + states: + - { value: 1, generic: 0, graph: 1, descr: 'normal' } + - { value: 2, generic: 2, graph: 1, descr: 'offline' } + - { value: 3, generic: 1, graph: 1, descr: 'exceedVoltage' } + - { value: 4, generic: 1, graph: 1, descr: 'belowVoltage' } + - { value: 5, generic: 1, graph: 1, descr: 'backup' } + - + oid: hwDCVoltageOutState + num_oid: '.1.3.6.1.4.1.2011.6.2.1.3.1.5.{{ $index }}' + descr: "DC Voltage Out State" + group: Power + state_name: hwDCVoltageOutState + states: + - { value: 1, generic: 0, graph: 1, descr: 'normal' } + - { value: 2, generic: 1, graph: 1, descr: 'exceedVoltage' } + - { value: 3, generic: 1, graph: 1, descr: 'belowVoltage' } + - + oid: hwSlotOperStatus + num_oid: '.1.3.6.1.4.1.2011.6.3.3.2.1.8.{{ $index }}' + descr: "Slot {{ $hwSlotIndex }} ({{ $hwSlotTypeName }}) Status" + group: Boards + state_name: hwSlotOperStatus + states: + - { value: 1, generic: 0, graph: 1, descr: 'online' } + - { value: 2, generic: 0, graph: 1, descr: 'normal' } + - { value: 3, generic: 2, graph: 1, descr: 'fault' } + - { value: 4, generic: 3, graph: 1, descr: 'forbidden' } + - { value: 5, generic: 0, graph: 1, descr: 'autofind' } + - { value: 6, generic: 1, graph: 1, descr: 'config' } + - { value: 7, generic: 3, graph: 1, descr: 'offline' } + - { value: 8, generic: 2, graph: 1, descr: 'abnormal' } + - { value: 9, generic: 1, graph: 1, descr: 'versionerr' } + - { value: 10, generic: 1, graph: 1, descr: 'autoload' } + - { value: 11, generic: 3, graph: 1, descr: 'outofservice' } + - { value: 12, generic: 2, graph: 1, descr: 'graceful' } + - { value: 13, generic: 3, graph: 1, descr: 'shutdown' } + - { value: 14, generic: 1, graph: 1, descr: 'energysavingshutdown' } + - { value: 15, generic: 2, graph: 1, descr: 'hightemperatureshutdown' } + - { value: 16, generic: 3, graph: 1, descr: 'manualshutdown' } + - { value: 17, generic: 1, graph: 1, descr: 'mismatch' } + - { value: 18, generic: 2, graph: 1, descr: 'acoffshutdown' } diff --git a/priv/profiles/os_discovery/smartbyte.yaml b/priv/profiles/os_discovery/smartbyte.yaml new file mode 100644 index 00000000..aea77531 --- /dev/null +++ b/priv/profiles/os_discovery/smartbyte.yaml @@ -0,0 +1,155 @@ +modules: + os: + hardware: + - 'ENTITY-MIB::entPhysicalModelName.1' + version: + - 'ENTITY-MIB::entPhysicalSoftwareRev.1' + serial: + - 'ENTITY-MIB::entPhysicalSerialNum.1' + sensors: + additional_oids: + data: + - oid: + - IF-MIB::ifName + temperature: + data: + - + oid: NMS-SYS-MIB::temperatureTable + value: NMS-SYS-MIB::temperatureValue + num_oid: '.1.3.6.1.4.1.56166.1.2.4.1.2.{{ $index }}' + index: 'temperatureValue.{{ $index }}' + descr: 'Temperature {{ $index }}' + - + oid: NMS-OPTICAL-MIB::opticalModuleInfoTable + value: NMS-OPTICAL-MIB::opticalTemperature + num_oid: '.1.3.6.1.4.1.56166.1.8.2.1.10.{{ $index }}' + descr: '{{ IF-MIB::ifName }} Transceiver Temperature' + low_limit: NMS-OPTICAL-MIB::opticalTempLoAlarm + low_warn_limit: NMS-OPTICAL-MIB::opticalTempLoWarn + high_limit: NMS-OPTICAL-MIB::opticalTempHiAlarm + warn_limit: NMS-OPTICAL-MIB::opticalTempHiWarn + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'opticalTemperature.{{ $index }}' + group: transceiver + skip_values: + - + oid: NMS-OPTICAL-MIB::opticalSupportDDM + op: '!=' + value: '1' + state: + data: + - + oid: NMS-SYS-MIB::powerTable + value: NMS-SYS-MIB::powerState + num_oid: '.1.3.6.1.4.1.56166.1.2.3.1.3.{{ $index }}' + index: 'powerState.{{ $index }}' + descr: 'Power {{ $index }} state' + state_name: 'NMS-SYS-MIB::powerState' + states: + - { descr: 'on', graph: 1, value: 1, generic: 0 } + - { descr: 'off', graph: 2, value: 2, generic: 2 } + - + oid: NMS-SYS-MIB::fanStatusTable + value: NMS-SYS-MIB::fanStatus + num_oid: '.1.3.6.1.4.1.56166.1.2.5.1.3.{{ $index }}' + index: 'fanStatus.{{ $index }}' + descr: 'Fan {{ $index }} status' + state_name: 'NMS-SYS-MIB::fanStatus' + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: failure, graph: 0, value: 2, generic: 2 } + - + oid: NMS-SYS-MIB::fanStatusTable + value: NMS-SYS-MIB::fanSpeedStatus + num_oid: '.1.3.6.1.4.1.56166.1.2.5.1.2.{{ $index }}' + descr: 'Fan {{ $index }} speed' + index: 'fanSpeedStatus.{{ $index }}' + state_name: 'NMS-SYS-MIB::fanSpeedStatus' + states: + - { descr: unknown, graph: 0, value: 0, generic: 2 } + - { descr: low, graph: 1, value: 1, generic: 0 } + - { descr: medium, graph: 2, value: 2, generic: 0 } + - { descr: high, graph: 3, value: 3, generic: 0 } + dbm: + data: + - + oid: NMS-OPTICAL-MIB::opticalModuleInfoTable + value: NMS-OPTICAL-MIB::opticalRxPower + num_oid: '.1.3.6.1.4.1.56166.1.8.2.1.13.{{ $index }}' + descr: '{{ IF-MIB::ifName }} Transceiver Receive Power' + divisor: 100 + low_limit: NMS-OPTICAL-MIB::opticalRxLoAlarm + low_warn_limit: NMS-OPTICAL-MIB::opticalRxLoWarn + high_limit: NMS-OPTICAL-MIB::opticalRxHiAlarm + warn_limit: NMS-OPTICAL-MIB::opticalRxHiWarn + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'opticalRxPower.{{ $index }}' + group: transceiver + skip_values: + - + oid: NMS-OPTICAL-MIB::opticalSupportDDM + op: '!=' + value: '1' + - + oid: NMS-OPTICAL-MIB::opticalModuleInfoTable + value: NMS-OPTICAL-MIB::opticalTxPower + num_oid: '.1.3.6.1.4.1.56166.1.8.2.1.14.{{ $index }}' + descr: '{{ IF-MIB::ifName }} Transceiver Transmit Power' + divisor: 100 + low_limit: NMS-OPTICAL-MIB::opticalTxLoAlarm + low_warn_limit: NMS-OPTICAL-MIB::opticalTxLoWarn + high_limit: NMS-OPTICAL-MIB::opticalTxHiAlarm + warn_limit: NMS-OPTICAL-MIB::opticalTxHiWarn + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'opticalTxPower.{{ $index }}' + group: transceiver + skip_values: + - + oid: NMS-OPTICAL-MIB::opticalSupportDDM + op: '!=' + value: '1' + current: + data: + - + oid: NMS-OPTICAL-MIB::opticalModuleInfoTable + value: NMS-OPTICAL-MIB::opticalBiasCurrent + num_oid: '.1.3.6.1.4.1.56166.1.8.2.1.12.{{ $index }}' + descr: '{{ IF-MIB::ifName }} Transceiver Bias Current' + divisor: 100000 + low_limit: NMS-OPTICAL-MIB::opticalBiasLoAlarm + low_warn_limit: NMS-OPTICAL-MIB::opticalBiasLoWarn + high_limit: NMS-OPTICAL-MIB::opticalBiasHiAlarm + warn_limit: NMS-OPTICAL-MIB::opticalBiasHiWarn + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'opticalBiasCurrent.{{ $index }}' + group: transceiver + skip_values: + - + oid: NMS-OPTICAL-MIB::opticalSupportDDM + op: '!=' + value: '1' + voltage: + data: + - + oid: NMS-OPTICAL-MIB::opticalModuleInfoTable + value: NMS-OPTICAL-MIB::opticalVoltage + num_oid: '.1.3.6.1.4.1.56166.1.8.2.1.11.{{ $index }}' + descr: '{{ IF-MIB::ifName }} Transceiver Voltage' + divisor: 100 + low_limit: NMS-OPTICAL-MIB::opticalVoltLoAlarm + low_warn_limit: NMS-OPTICAL-MIB::opticalVoltLoWarn + high_limit: NMS-OPTICAL-MIB::opticalVoltHiAlarm + warn_limit: NMS-OPTICAL-MIB::opticalVoltHiWarn + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'opticalVoltage.{{ $index }}' + group: transceiver + skip_values: + - + oid: opticalSupportDDM + op: '!=' + value: '1' diff --git a/priv/profiles/os_discovery/smartos-dcp-m.yaml b/priv/profiles/os_discovery/smartos-dcp-m.yaml new file mode 100644 index 00000000..224422e7 --- /dev/null +++ b/priv/profiles/os_discovery/smartos-dcp-m.yaml @@ -0,0 +1,69 @@ +mib: DCP-INTERFACE-MIB:DCP-LINKVIEW-MIB +modules: + os: + sysDescr_regex: '/Smartoptics, (?DCP-M[\d]{1,2}-PAM4(-[\w\+]+)?)/' + sensors: + state: + data: + - + oid: dcpInterfaceTable + num_oid: '.1.3.6.1.4.1.30826.2.2.1.1.1.1.5.{{ $index }}' + value: dcpInterfaceStatus + descr: '{{ $dcpInterfaceName }}' + index: 'dcpInterfaceStatus.{{ $index }}' + state_name: InterfaceStatus + states: + - { value: 1, generic: 0, graph: 1, descr: idle } + - { value: 2, generic: 2, graph: 1, descr: down } + - { value: 3, generic: 0, graph: 1, descr: up } + - + oid: dcpLinkviewTable + num_oid: '.1.3.6.1.4.1.30826.2.2.3.1.1.1.4.{{ $index }}' + value: dcpLinkviewLocalStatus + descr: '{{ $dcpLinkviewLocalName }} - {{ $dcpLinkviewRemoteName }}' + index: 'dcpLinkviewLocalStatus.{{ $index }}' + state_name: InterfaceStatus + states: + - { value: 1, generic: 0, graph: 1, descr: idle } + - { value: 2, generic: 2, graph: 1, descr: down } + - { value: 3, generic: 0, graph: 1, descr: up } + dbm: + data: + - + oid: dcpInterfaceTable + num_oid: '.1.3.6.1.4.1.30826.2.2.1.1.1.1.3.{{ $index }}' + value: dcpInterfaceRxPower + divisor: 10 + descr: '{{ $dcpInterfaceName }} - RX' + index: 'dcpInterfaceRxPower.{{ $index }}' + skip_values: + - + oid: dcpInterfaceStatus + op: '=' + value: 1 + - + oid: dcpInterfaceTable + num_oid: '.1.3.6.1.4.1.30826.2.2.1.1.1.1.4.{{ $index }}' + divisor: 10 + value: dcpInterfaceTxPower + descr: '{{ $dcpInterfaceName }} - TX' + index: 'dcpInterfaceTxPower.{{ $index }}' + skip_values: + - + oid: dcpInterfaceStatus + op: '=' + value: 1 + - + oid: dcpLinkviewTable + num_oid: '.1.3.6.1.4.1.30826.2.2.3.1.1.1.14.{{ $index }}' + divisor: 10 + value: dcpLinkviewRemotePower + descr: '{{ $dcpLinkviewLocalName }} - {{ $dcpLinkviewRemoteName }} - Remote Power' + index: 'dcpLinkviewRemotePower.{{ $index }}' + - + oid: dcpLinkviewTable + num_oid: '.1.3.6.1.4.1.30826.2.2.3.1.1.1.5.{{ $index }}' + divisor: 10 + value: dcpLinkviewLocalPower + descr: '{{ $dcpLinkviewLocalName }} - {{ $dcpLinkviewRemoteName }} - Local Power' + index: 'dcpLinkviewLocalPower.{{ $index }}' diff --git a/priv/profiles/os_discovery/smartos.yaml b/priv/profiles/os_discovery/smartos.yaml new file mode 100644 index 00000000..e2e75caf --- /dev/null +++ b/priv/profiles/os_discovery/smartos.yaml @@ -0,0 +1,41 @@ +mib: MSERIES-ENVMON-MIB:MSERIES-PORT-MIB +modules: + os: + sysDescr_regex: '/Smart[Oo]ptics, (M-Series )?(?\S+( [^,]+))(, SmartOS (?\S+))?/' + sensors: + state: + data: + - + oid: smartPortTable + num_oid: '.1.3.6.1.4.1.30826.1.3.1.2.1.1.6.{{ $index }}' + value: smartPortStatus + descr: '{{ $smartPortAlias }} - {{ $smartPortName }}' + index: 'smartPortStatus.{{ $index }}' + state_name: smartPortStatus + states: + - { value: 1, generic: 0, graph: 1, descr: idle } + - { value: 2, generic: 2, graph: 1, descr: down } + - { value: 3, generic: 0, graph: 1, descr: up } + - { value: 4, generic: 1, graph: 1, descr: high } + - { value: 5, generic: 1, graph: 1, descr: low } + - { value: 6, generic: 1, graph: 1, descr: eyeSafety } + - { value: 7, generic: 3, graph: 1, descr: cd } + - { value: 8, generic: 3, graph: 1, descr: ncd } + temperature: + data: + - + oid: smartEnvMonTemperatureTable + value: smartEnvMonTemperatureValue + num_oid: '.1.3.6.1.4.1.30826.1.4.1.1.1.3.{{ $index }}' + descr: smartEnvMonTemperatureDescr + power: + data: + - + oid: smartPortTable + value: smartPortPower + num_oid: '.1.3.6.1.4.1.30826.1.3.1.2.1.1.5.{{ $index }}' + divisor: 10 + descr: '{{ $smartPortAlias }} - {{ $smartPortName }}' + low_limit: smartPortLowPowerAlarmThreshold + high_limit: smartPortHighPowerAlarmThreshold + skip_values: -400 diff --git a/priv/profiles/os_discovery/snr-erd.yaml b/priv/profiles/os_discovery/snr-erd.yaml new file mode 100644 index 00000000..50460622 --- /dev/null +++ b/priv/profiles/os_discovery/snr-erd.yaml @@ -0,0 +1,54 @@ +mib: SNR-ERD-4 +modules: + additional_oids: + data: + - + oid: + - diName + - diAlarmName + - doName + - doDeviceName + - rsshtpName + sensors: + temperature: + data: + - + oid: rsshtpTemp + num_oid: '.1.3.6.1.4.1.40418.2.6.1.30.1.1.3.{{ $index }}' + descr: '{{ $rsshtpName }} {{ $index }}' + state: + data: + - + oid: diTable + value: diState + num_oid: '.1.3.6.1.4.1.40418.2.6.2.1.1.3.{{ $index }}' + descr: "{{ $diName }} {{ $diAlarmName }}" + index: "diState.{{ $index }}" + group: "Ports DI" + states: + - { descr: Connected, graph: 1, value: 0, generic: 0 } + - { descr: Empty, graph: 1, value: 1, generic: 1 } + - { descr: Off, graph: 1, value: 2, generic: 2 } + - + oid: doTable + value: doState + num_oid: '.1.3.6.1.4.1.40418.2.6.2.2.1.3.{{ $index }}' + descr: "{{ $doName }} {{ $doDeviceName }}" + index: "doState.{{ $index }}" + group: "Ports DO" + states: + - { descr: Off, graph: 1, value: 0, generic: 1 } + - { descr: On, graph: 1, value: 1, generic: 0 } + - { descr: Reload, graph: 1, value: 2, generic: 2 } + humidity: + data: + - + oid: rsshtpHum + num_oid: '.1.3.6.1.4.1.40418.2.6.1.30.1.1.4.{{ $index }}' + descr: '{{ $rsshtpName }} {{ $index }}' + pressure: + data: + - + oid: rsshtpPssr + num_oid: '.1.3.6.1.4.1.40418.2.6.1.30.1.1.6.{{ $index }}' + descr: '{{ $rsshtpName }} {{ $index }}' diff --git a/priv/profiles/os_discovery/snr.yaml b/priv/profiles/os_discovery/snr.yaml new file mode 100644 index 00000000..42dae46f --- /dev/null +++ b/priv/profiles/os_discovery/snr.yaml @@ -0,0 +1,94 @@ +mib: NAG-MIB +modules: + mempools: + data: + - + total: NAG-MIB::sysMemorySize + used: NAG-MIB::sysMemoryBusy + descr: 'Memory Usage' + index: 0 + os: + hardware: + - NAG-MIB::sysHardwareVersion.0 + - NAG-MIB::sysHardwareVersion.1 + version: + - NAG-MIB::sysSoftwareVersion.0 + - NAG-MIB::sysSoftwareVersion.1 + additional_oids: + data: + - + oid: + - portName + processors: + data: + - + oid: sysCpuUsage + num_oid: '.1.3.6.1.4.1.40418.7.100.1.8.1.11.{{ $index }}' + sensors: + temperature: + data: + - + oid: sysTemperature + num_oid: '.1.3.6.1.4.1.40418.7.100.1.8.1.10.{{ $index }}' + descr: 'Temperature {{ $index }}' + state: + data: + - + oid: sysFanStatus + num_oid: '.1.3.6.1.4.1.40418.7.100.1.12.1.1.3.{{ $index }}' + descr: 'Fan {{ $index }} status' + states: + - { descr: Normal, graph: 0, value: 0, generic: 0 } + - { descr: Abnormal, graph: 0, value: 1, generic: 2 } + - + oid: sysFanSpeed + num_oid: '.1.3.6.1.4.1.40418.7.100.1.12.1.4.{{ $index }}' + descr: 'Fan {{ $index }} speed' + states: + - { value: 0, generic: 3, graph: 0, descr: none } + - { value: 1, generic: 0, graph: 0, descr: low } + - { value: 2, generic: 0, graph: 0, descr: medium-low } + - { value: 3, generic: 1, graph: 0, descr: medium } + - { value: 4, generic: 2, graph: 0, descr: medium-high } + - { value: 5, generic: 2, graph: 0, descr: high } + - + oid: showSwitchStartUpStatus + num_oid: '.1.3.6.1.4.1.40418.7.100.1.16.{{ $index }}' + descr: 'Switch {{ $index }} Startup status' + states: + - { descr: idle, graph: 0, value: 1, generic: 3 } + - { descr: success, graph: 0, value: 2, generic: 0 } + - { descr: fail, graph: 0, value: 3, generic: 2 } + - { descr: inProgress, graph: 0, value: 4, generic: 3 } + voltage: + data: + - + oid: ddmTranscDiagnosisTable + value: ddmDiagnosisVoltage + num_oid: '.1.3.6.1.4.1.40418.7.100.30.1.1.7.{{ $index }}' + descr: "{{ $portName }}" + index: "ddmDiagnosisVoltage.{{ $index }}" + current: + data: + - + oid: ddmTranscDiagnosisTable + value: ddmDiagnosisBias + num_oid: '.1.3.6.1.4.1.40418.7.100.30.1.1.12.{{ $index }}' + descr: "{{ $portName }}" + index: "ddmDiagnosisBias.{{ $index }}" + dbm: + data: + - + oid: ddmTranscDiagnosisTable + value: ddmDiagnosisRXPower + num_oid: '.1.3.6.1.4.1.40418.7.100.30.1.1.17.{{ $index }}' + descr: "{{ $portName }}" + index: "ddmDiagnosisRXPower.{{ $index }}" + group: "Optical RX" + - + oid: ddmTranscDiagnosisTable + value: ddmDiagnosisTXPower + num_oid: '.1.3.6.1.4.1.40418.7.100.30.1.1.22.{{ $index }}' + descr: "{{ $portName }}" + index: "ddmDiagnosisTXPower.{{ $index }}" + group: "Optical TX" diff --git a/priv/profiles/os_discovery/socomec-ups.yaml b/priv/profiles/os_discovery/socomec-ups.yaml new file mode 100644 index 00000000..d2f75cd4 --- /dev/null +++ b/priv/profiles/os_discovery/socomec-ups.yaml @@ -0,0 +1,265 @@ +modules: + os: + hardware: SOCOMECUPS-MIB::upsIdentModel.0 + version: SOCOMECUPS-MIB::upsIdentAgentSoftwareVersion.0 + version_regex: '/v(?[0-9]+.[0-9]+)/' + serial: SOCOMECUPS-MIB::upsIdentSerialNumber.0 + sensors: + voltage: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsBatteryVoltage + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.5.{{ $index }}' + descr: 'Battery #{{ $index }} Voltage' + index: 'upsBatteryVoltage.{{ $index }}' + divisor: 10 + low_limit: 10 + low_warn_limit: 11 + warn_limit: 55 + high_limit: 60 + - + oid: SOCOMECUPS-MIB::upsBypass + value: SOCOMECUPS-MIB::upsBypassVoltage + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.5.3.1.2.{{ $index }}' + descr: 'Bypass #{{ $index }} Voltage' + index: 'upsBypassVoltage.{{ $index }}' + divisor: 10 + - + oid: SOCOMECUPS-MIB::upsInput + value: SOCOMECUPS-MIB::upsInputVoltage + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.3.3.1.2.{{ $index }}' + descr: 'Input #{{ $index }} Voltage' + index: 'upsInputVoltage.{{ $index }}' + divisor: 10 + low_limit: 200 + low_warn_limit: 210 + warn_limit: 235 + high_limit: 240 + - + oid: SOCOMECUPS-MIB::upsOutput + value: SOCOMECUPS-MIB::upsOutputVoltage + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.4.4.1.2.{{ $index }}' + descr: 'Output #{{ $index }} Voltage' + index: 'upsOutputVoltage.{{ $index }}' + divisor: 10 + current: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsBatteryCurrent + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.8.{{ $index }}' + descr: 'Battery #{{ $index }} Current' + index: 'upsBatteryCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsBatteryCurrent + op: '>' + value: 32767 + - + oid: SOCOMECUPS-MIB::upsBypass + value: SOCOMECUPS-MIB::upsBypassCurrent + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.5.3.1.3.{{ $index }}' + descr: 'Bypass #{{ $index }} Current' + index: 'upsBypassCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsBypassCurrent + op: '>' + value: 32767 + - + oid: SOCOMECUPS-MIB::upsInput + value: SOCOMECUPS-MIB::upsInputCurrent + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.3.3.1.3.{{ $index }}' + descr: 'Input #{{ $index }} Current' + index: 'upsInputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsInputCurrent + op: '>' + value: 32767 + - + oid: SOCOMECUPS-MIB::upsOutput + value: SOCOMECUPS-MIB::upsOutputCurrent + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.4.4.1.3.{{ $index }}' + descr: 'Output #{{ $index }} Current' + index: 'upsOutputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsOutputCurrent + op: '>' + value: 32767 + load: + data: + - + oid: SOCOMECUPS-MIB::upsOutput + value: SOCOMECUPS-MIB::upsOutputPercentLoad + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.4.4.1.4.{{ $index }}' + descr: 'Output #{{ $index }} Load' + index: 'upsOutputPercentLoad.{{ $index }}' + frequency: + data: + - + oid: SOCOMECUPS-MIB::upsBypass + value: SOCOMECUPS-MIB::upsBypassFrequency + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.5.1.{{ $index }}' + descr: 'Bypass #{{ $index }} Frequency' + index: 'upsBypassFrequency.{{ $index }}' + divisor: 10 + - + oid: SOCOMECUPS-MIB::upsInput + value: SOCOMECUPS-MIB::upsInputFrequency + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.3.2.{{ $index }}' + descr: 'Input #{{ $index }} Frequency' + index: 'upsInputFrequency.{{ $index }}' + divisor: 10 + - + oid: SOCOMECUPS-MIB::upsOutput + value: SOCOMECUPS-MIB::upsOutputFrequency + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.4.2.{{ $index }}' + descr: 'Output #{{ $index }} Frequency' + index: 'upsOutputFrequency.{{ $index }}' + divisor: 10 + temperature: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsBatteryTemperature + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.6.{{ $index }}' + descr: 'Battery #{{ $index }} Temperature' + index: 'upsBatteryTemperature.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsBatteryTemperature + op: '=' + value: 0 + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsAmbientTemperature + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.7.{{ $index }}' + descr: 'Ambient #{{ $index }} Temperature' + index: 'upsAmbientTemperature.{{ $index }}' + divisor: 10 + skip_values: + - + oid: SOCOMECUPS-MIB::upsAmbientTemperature + op: '=' + value: 0 + runtime: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsEstimatedMinutesRemaining + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.3.{{ $index }}' + descr: 'Battery #{{ $index }} Minutes remaining' + index: 'upsEstimatedMinutesRemaining.{{ $index }}' + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsSecondsOnBattery + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.2.{{ $index }}' + descr: 'Battery #{{ $index }} Runtime seconds' + index: 'upsSecondsOnBattery.{{ $index }}' + charge: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsEstimatedChargeRemaining + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.4.{{ $index }}' + descr: 'Battery #{{ $index }} Charge remaining' + index: 'upsEstimatedChargeRemaining.{{ $index }}' + state: + data: + - + oid: SOCOMECUPS-MIB::upsBattery + value: SOCOMECUPS-MIB::upsBatteryStatus + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.1.{{ $index }}' + descr: 'Battery #{{ $index }} Status' + index: 'upsBatteryStatus.{{ $index }}' + state_name: upsBatteryStatus + states: + - { value: 1, generic: 3, graph: 1, descr: 'Unknown' } + - { value: 2, generic: 0, graph: 1, descr: 'Normal' } + - { value: 3, generic: 1, graph: 1, descr: 'Charging' } + - { value: 4, generic: 3, graph: 1, descr: 'Test' } + - { value: 5, generic: 1, graph: 1, descr: 'Discharging' } + - { value: 6, generic: 1, graph: 1, descr: 'Low' } + - { value: 7, generic: 2, graph: 1, descr: 'Depleted' } + - { value: 8, generic: 2, graph: 1, descr: 'Failure' } + - { value: 9, generic: 2, graph: 1, descr: 'Disconnected' } + - + oid: SOCOMECUPS-MIB::upsOutput + value: SOCOMECUPS-MIB::upsOutputSource + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.2.1.{{ $index }}' + descr: 'Output #{{ $index }} Source' + index: 'upsOutputSource.{{ $index }}' + state_name: upsOutputSource + states: + - { value: 1, generic: 3, graph: 1, descr: 'Unknown' } + - { value: 2, generic: 1, graph: 1, descr: 'on Maintenance Bypass' } + - { value: 3, generic: 1, graph: 1, descr: 'on Inverter' } + - { value: 4, generic: 0, graph: 1, descr: 'Normal mode' } + - { value: 5, generic: 0, graph: 1, descr: 'ECO mode' } + - { value: 6, generic: 1, graph: 1, descr: 'on Bypass' } + - { value: 7, generic: 0, graph: 1, descr: 'on Standby' } + - { value: 8, generic: 2, graph: 1, descr: 'UPS Off' } + - { value: 9, generic: 1, graph: 1, descr: 'line Interactive' } + - + oid: SOCOMECUPS-MIB::upsAlarm + value: SOCOMECUPS-MIB::upsAlarmOverload + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.6.3.2.{{ $index }}' + descr: 'Output #{{ $index }} Overload' + index: 'upsAlarmOverload.{{ $index }}' + group: Alarm + state_name: upsAlarmOverload + states: + - { value: 0, generic: 0, graph: 1, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Alarm' } + - + oid: SOCOMECUPS-MIB::upsAlarm + value: SOCOMECUPS-MIB::upsAlarmTemperature + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.6.3.3.{{ $index }}' + descr: 'Temperature #{{ $index }} Out of tolerance' + index: 'upsAlarmTemperature.{{ $index }}' + group: Alarm + state_name: upsAlarmTemperature + states: + - { value: 0, generic: 0, graph: 1, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Alarm' } + - + oid: SOCOMECUPS-MIB::upsAlarm + value: SOCOMECUPS-MIB::upsAlarmRectifierAlarm + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.6.3.21.{{ $index }}' + descr: 'Rectifier #{{ $index }} Preventive alarm' + index: 'upsAlarmRectifierAlarm.{{ $index }}' + group: Alarm + state_name: upsAlarmRectifierAlarm + states: + - { value: 0, generic: 0, graph: 1, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Alarm' } + - + oid: SOCOMECUPS-MIB::upsAlarm + value: SOCOMECUPS-MIB::upsAlarmFansFailure + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.6.3.32.{{ $index }}' + descr: 'Fan #{{ $index }} Alarm' + index: 'upsAlarmFansFailure.{{ $index }}' + group: Alarm + state_name: upsAlarmFansFailure + states: + - { value: 0, generic: 0, graph: 1, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Alarm' } + - + oid: SOCOMECUPS-MIB::upsAlarm + value: SOCOMECUPS-MIB::upsAlarmGeneralFault + num_oid: '.1.3.6.1.4.1.4555.1.1.7.1.6.3.11.{{ $index }}' + descr: 'General Alarm' + index: 'upsAlarmGeneralFault.{{ $index }}' + group: Alarm + state_name: upsAlarmGeneralFault + states: + - { value: 0, generic: 0, graph: 1, descr: 'OK' } + - { value: 1, generic: 2, graph: 1, descr: 'Alarm' } diff --git a/priv/profiles/os_discovery/socomec.yaml b/priv/profiles/os_discovery/socomec.yaml new file mode 100644 index 00000000..01b6641d --- /dev/null +++ b/priv/profiles/os_discovery/socomec.yaml @@ -0,0 +1,66 @@ +mib: SOCOMECPDU-MIB +modules: + os: + hardware: SOCOMECPDU-MIB::dpduIdentModel.0 + serial: SOCOMECPDU-MIB::dpduIdentSerialNumber.0 + version: + - SOCOMECPDU-MIB::dpduIdentPDUFirmwareVersion.0 + - SOCOMECPDU-MIB::dpduIdentAgentSoftwareVersion.0 + version_template: 'FW {{ SOCOMECPDU-MIB::dpduIdentPDUFirmwareVersion.0 }} / SW {{ SOCOMECPDU-MIB::dpduIdentAgentSoftwareVersion.0 }}' + sensors: + voltage: + data: + - + oid: dpduOutput + value: dpduOutputVoltage1 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.2.{{ $index }}' + descr: 'Line 1 Voltage' + divisor: 10 + index: 'dpduOutputVoltage1' + - + oid: dpduOutput + value: dpduOutputVoltage2 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.4.{{ $index }}' + descr: 'Line 2 Voltage' + divisor: 10 + index: 'dpduOutputVoltage2' + - + oid: dpduOutput + value: dpduOutputVoltage3 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.6.{{ $index }}' + descr: 'Line 3 Voltage' + divisor: 10 + index: 'dpduOutputVoltage3' + + current: + data: + - + oid: dpduOutput + value: dpduOutputCurrent1 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.3.{{ $index }}' + descr: 'Line 1 Current' + divisor: 10 + index: 'dpduOutputCurrent1' + - + oid: dpduOutput + value: dpduOutputCurrent2 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.5.{{ $index }}' + descr: 'Line 2 Current' + divisor: 10 + index: 'dpduOutputCurrent2' + - + oid: dpduOutput + value: dpduOutputCurrent3 + num_oid: '.1.3.6.1.4.1.4555.2.30.2.7.{{ $index }}' + descr: 'Line 3 Current' + divisor: 10 + index: 'dpduOutputCurrent3' + + frequency: + data: + - + oid: dpduOutput + value: dpduOutputFrequency + num_oid: '.1.3.6.1.4.1.4555.2.30.2.1.{{ $index }}' + divisor: 10 + descr: 'Output frequency' diff --git a/priv/profiles/os_discovery/solaris.yaml b/priv/profiles/os_discovery/solaris.yaml new file mode 100644 index 00000000..496b8acd --- /dev/null +++ b/priv/profiles/os_discovery/solaris.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?[\d.-]+) (?\S+) (?\S+)$/' diff --git a/priv/profiles/os_discovery/solidserver.yaml b/priv/profiles/os_discovery/solidserver.yaml new file mode 100644 index 00000000..78323d46 --- /dev/null +++ b/priv/profiles/os_discovery/solidserver.yaml @@ -0,0 +1,249 @@ +mib: EIP-STATS-MIB:EIP-MON-MIB +modules: + os: + hardware: EIP-MON-MIB::eipHwApplianceModel.0 + serial: EIP-MON-MIB::eipHwApplianceSerial.0 + version: EIP-MON-MIB::eipSdsVersionNumber.0 + sensors: + power: + data: + - + oid: eipHwPowerInstant + value: eipHwPowerInstant + descr: 'Instant Power' + num_oid: '.1.3.6.1.4.1.2440.1.14.6.1.{{ $index }}' + index: 'power.{{ $index }}' + temperature: + data: + - + oid: eipHwTempRaidController + value: eipHwTempRaidController + descr: 'Raid Controller Temperature' + num_oid: '.1.3.6.1.4.1.2440.1.14.3.6.{{ $index }}' + index: 'raid.{{ $index }}' + - + oid: eipHwTempInlet + value: eipHwTempInlet + descr: 'Inlet Temperature' + num_oid: '.1.3.6.1.4.1.2440.1.14.3.4.{{ $index }}' + index: 'inlet.{{ $index }}' + - + oid: eipHwTempCpu + value: eipHwTempCpu + num_oid: '.1.3.6.1.4.1.2440.1.14.3.1.{{ $index }}' + descr: 'Cpu Temperature' + index: 'cpu.{{ $index }}' + - + oid: eipHwTempBaseboard + value: eipHwTempBaseboard + num_oid: '.1.3.6.1.4.1.2440.1.14.3.5.{{ $index }}' + descr: 'Baseboard Temperature' + index: 'BB.{{ $index }}' + count: + data: + - + oid: eipDnsStatTable + value: eipDnsStatValue + num_oid: '.1.3.6.1.4.1.2440.1.4.2.3.1.3.{{ $index }}' + descr: '{{ $eipDnsStatName }}' + index: 'counter__{{ $index_string }}' + rrd_type: 'COUNTER' + group: 'DNS' + skip_values: + - + oid: eipDnsStatName + op: 'not_in_array' + value: + - requestv4 + - requestv6 + - badednsver + - requesttcp + - recurserej + - success + - ratedropped + - udp + - tcp + - queryv4 + - queryv6 + - responsev4 + - responsev6 + - xfrdone + - servfail + - invalidsig + - + oid: eipDhcpStatTable + value: eipDhcpStatValue + num_oid: '.1.3.6.1.4.1.2440.1.3.2.22.1.3.{{ $index }}' + descr: '{{ $eipDhcpStatName }}' + rrd_type: 'COUNTER' + index: 'counter__{{ $index_string }}' + group: 'DHCP' + state: + data: + - + oid: eipHwPsuRedundancy + num_oid: '.1.3.6.1.4.1.2440.1.14.5.1.{{ $index }}' + descr: 'Power Supply Redundancy' + group: 'HW' + state_name: eipHwPsuRedundancy + states: + - { descr: 'not available', graph: 1, value: 0, generic: 3 } + - { descr: 'fully redundant', graph: 1, value: 1, generic: 0 } + - { descr: 'lost redundancy', graph: 1, value: 2, generic: 2 } + - + oid: eipSvcSyslogStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.1.1.{{ $index }}' + descr: 'Syslog' + group: 'Services' + state_name: eipSyslogStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcSshStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.2.1.{{ $index }}' + descr: 'SSH' + group: 'Services' + state_name: eipSshStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcApacheStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.3.1.{{ $index }}' + descr: 'Apache' + group: 'Services' + state_name: eipSvcApacheStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcIpmServerStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.4.1.{{ $index }}' + descr: 'IpmServer' + group: 'Services' + state_name: eipSvcIpmServerStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcDatabaseStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.5.1.{{ $index }}' + descr: 'Database' + group: 'Services' + state_name: eipSvcDatabaseStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcDhcpStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.6.1.{{ $index }}' + descr: 'DHCP' + group: 'Services' + state_name: eipSvcDhcpStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcDhcpMsStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.7.1.{{ $index }}' + descr: 'DHCP MS' + group: 'Services' + state_name: eipSvcDhcpMsStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - + oid: eipSvcDnsStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.8.1.{{ $index }}' + descr: 'DNS' + group: 'Services' + state_name: eipSvcDnsStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcQuaggaStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.10.1.{{ $index }}' + descr: 'Quagga' + group: 'Services' + state_name: eipSvcQuaggaStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcNtpStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.11.1.{{ $index }}' + descr: 'Ntp' + group: 'Services' + state_name: eipSvcNtpStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcTftpStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.12.1.{{ $index }}' + descr: 'Tftp' + group: 'Services' + state_name: eipSvcTftpStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSvcSendmailStatus + num_oid: '.1.3.6.1.4.1.2440.1.16.14.1.{{ $index }}' + descr: 'Sendmail' + group: 'Services' + state_name: eipSvcSendmailStatus + states: + - { descr: disabled, graph: 1, value: 0, generic: 3 } + - { descr: running, graph: 1, value: 1, generic: 0 } + - { descr: misconfigured, graph: 1, value: 2, generic: 1 } + - { descr: failed, graph: 1, value: 3, generic: 2 } + - + oid: eipSdsMemberRole + num_oid: '.1.3.6.1.4.1.2440.1.17.2.1.{{ $index }}' + descr: 'Member Role' + group: 'Cluster' + state_name: eipSdsMemberRole + states: + - { descr: standalone, graph: 1, value: 0, generic: 0 } + - { descr: master, graph: 1, value: 1, generic: 0 } + - { descr: 'hot-standby', graph: 1, value: 2, generic: 0 } + - { descr: 'master-recovered', graph: 1, value: 3, generic: 1 } + - + oid: eipSdsMemberStatus + num_oid: '.1.3.6.1.4.1.2440.1.17.2.2.{{ $index }}' + descr: 'Member Status' + group: 'Cluster' + state_name: eipSdsMemberStatus + states: + - { descr: ok, graph: 1, value: 0, generic: 0 } + - { descr: 'not-configured', graph: 1, value: 1, generic: 3 } + - { descr: upgrading, graph: 1, value: 2, generic: 1 } + - { descr: 'init-standby', graph: 1, value: 3, generic: 1 } + - { descr: 'invalid-credentials', graph: 1, value: 4, generic: 2 } + - { descr: 'remote-managed', graph: 1, value: 5, generic: 0 } + - { descr: timeout, graph: 1, value: 6, generic: 2 } + - { descr: 'split-brain', graph: 1, value: 7, generic: 2 } + - { descr: 'replication-stopped', graph: 1, value: 8, generic: 2 } diff --git a/priv/profiles/os_discovery/sonicwall.yaml b/priv/profiles/os_discovery/sonicwall.yaml new file mode 100644 index 00000000..3bcd9996 --- /dev/null +++ b/priv/profiles/os_discovery/sonicwall.yaml @@ -0,0 +1,31 @@ +modules: + mempools: + data: + - + percent_used: SNWL-SSLVPN-MIB::memoryUtilization + type: sonicwall-mem + descr: 'Memory Utilization' + - + percent_used: SONICWALL-FIREWALL-IP-STATISTICS-MIB::sonicCurrentRAMUtil + type: sonicwall-mem + descr: 'Memory Utilization' + os: + hardware: SNWL-COMMON-MIB::snwlSysModel.0 + serial: SNWL-COMMON-MIB::snwlSysSerialNumber.0 + version: + - SNWL-COMMON-MIB::snwlSysFirmwareVersion.0 + - SNWL-COMMON-MIB::snwlSysROMVersion.0 + version_template: '(Firmware {{ SNWL-COMMON-MIB::snwlSysFirmwareVersion.0 }} / ROM {{ SNWL-COMMON-MIB::snwlSysROMVersion.0 }})' + sensors: + count: + data: + - + oid: SONICWALL-FIREWALL-IP-STATISTICS-MIB::sonicCurrentConnCacheEntries + num_oid: '.1.3.6.1.4.1.8741.1.3.1.2.{{ $index }}' + index: sonicCurrentConnCacheEntries + descr: Current Connections + - + oid: SONICWALL-FIREWALL-IP-STATISTICS-MIB::sonicMaxConnCacheEntries + num_oid: '.1.3.6.1.4.1.8741.1.3.1.1.{{ $index }}' + index: sonicMaxConnCacheEntries + descr: Max Connections diff --git a/priv/profiles/os_discovery/sophos-xg.yaml b/priv/profiles/os_discovery/sophos-xg.yaml new file mode 100644 index 00000000..b28644ff --- /dev/null +++ b/priv/profiles/os_discovery/sophos-xg.yaml @@ -0,0 +1,177 @@ +mib: SFOS-FIREWALL-MIB +modules: + os: + version: + - SFOS-FIREWALL-MIB::sfosDeviceFWVersion.0 + hardware: + - SFOS-FIREWALL-MIB::sfosDeviceType.0 + serial: + - SFOS-FIREWALL-MIB::sfosDeviceAppKey.0 + sensors: + additional_oids: + data: + - + oid: + - sfosIPSecVpnConnName + state: + data: +# HA + - + oid: sfosHAStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.4.1.{{ $index }}' + index: 'sfosHAStatus.{{ $index }}' + descr: 'HA status' + group: HA + value: sfosHAStatus + states: + - { value: 0, graph: 0, generic: 0, descr: disabled } + - { value: 1, graph: 1, generic: 0, descr: enabled } + - + oid: sfosDeviceCurrentHAState + num_oid: '.1.3.6.1.4.1.2604.5.1.4.4.{{ $index }}' + index: 'sfosDeviceCurrentHAState.{{ $index }}' + descr: 'HA local appliance state' + group: HA + value: sfosDeviceCurrentHAState + states: + - { value: 0, graph: 0, generic: 0, descr: notapplicable } + - { value: 1, graph: 1, generic: 2, descr: auxiliary } + - { value: 2, graph: 2, generic: 2, descr: standAlone } + - { value: 3, graph: 3, generic: 0, descr: primary } + - { value: 4, graph: 4, generic: 2, descr: faulty } + - { value: 5, graph: 5, generic: 0, descr: ready } + - + oid: sfosDevicePeerHAState + num_oid: '.1.3.6.1.4.1.2604.5.1.4.5.{{ $index }}' + index: 'sfosDevicePeerHAState.{{ $index }}' + descr: 'HA peer appliance state' + group: HA + value: sfosDevicePeerHAState + states: + - { value: 0, graph: 0, generic: 0, descr: notapplicable } + - { value: 1, graph: 1, generic: 0, descr: auxiliary } + - { value: 2, graph: 2, generic: 2, descr: standAlone } + - { value: 3, graph: 3, generic: 2, descr: primary } + - { value: 4, graph: 4, generic: 2, descr: faulty } + - { value: 5, graph: 5, generic: 0, descr: ready } +# Licensing + - + oid: sfosNetProtectionLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.2.1.{{ $index }}' + index: 'sfosNetProtectionLicRegStatus.{{ $index }}' + descr: 'Network Protection registration Lic status' + group: Licensing + value: sfosNetProtectionLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosWebProtectionLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.3.1.{{ $index }}' + index: 'sfosWebProtectionLicRegStatus.{{ $index }}' + descr: 'Web Protection registration Lic status' + group: Licensing + value: sfosWebProtectionLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosMailProtectionLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.4.1.{{ $index }}' + index: 'sfosMailProtectionLicRegStatus.{{ $index }}' + descr: 'EMail Protection Lic Status' + group: Licensing + value: sfosMailProtectionLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosWebServerProtectionLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.5.1.{{ $index }}' + index: 'sfosWebServerProtectionLicRegStatus.{{ $index }}' + descr: 'Web Server Protection Lic status' + group: Licensing + value: sfosWebServerProtectionLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosSandstromLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.6.1.{{ $index }}' + index: 'sfosSandstromLicRegStatus.{{ $index }}' + descr: 'Sandstorm Protection Lic status' + group: Licensing + value: sfosSandstromLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosEnhancedSupportLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.7.1.{{ $index }}' + index: 'sfosEnhancedSupportLicRegStatus.{{ $index }}' + descr: 'Enhanced Support Lic Status' + group: Licensing + value: sfosEnhancedSupportLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosEnhancedPlusLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.8.1.{{ $index }}' + index: 'sfosEnhancedPlusLicRegStatus.{{ $index }}' + descr: 'Enhanced Plus Support Lic Status' + group: Licensing + value: sfosEnhancedPlusLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + - + oid: sfosCentralOrchestrationLicRegStatus + num_oid: '.1.3.6.1.4.1.2604.5.1.5.9.1.{{ $index }}' + index: 'sfosCentralOrchestrationLicRegStatus.{{ $index }}' + descr: 'Central Orchestration registration Lic Status' + group: Licensing + value: sfosCentralOrchestrationLicRegStatus + states: + - { value: 0, graph: 0, generic: 0, descr: none } + - { value: 1, graph: 1, generic: 0, descr: evaluating } + - { value: 2, graph: 2, generic: 0, descr: notsubscribed } + - { value: 3, graph: 3, generic: 0, descr: subscribed } + - { value: 4, graph: 4, generic: 2, descr: expired } + - { value: 5, graph: 5, generic: 0, descr: deactivated } + count: + data: + - + oid: sfosIPSecVpnActiveTunnel + num_oid: '.1.3.6.1.4.1.2604.5.1.6.1.1.1.1.8.{{ $index }}' + index: 'sfosIPSecVpnActiveTunnel.{{ $index }}' + descr: '{{ $sfosIPSecVpnConnName }} active tunnels' + group: IPSec diff --git a/priv/profiles/os_discovery/speedtouch.yaml b/priv/profiles/os_discovery/speedtouch.yaml new file mode 100644 index 00000000..8c9a9897 --- /dev/null +++ b/priv/profiles/os_discovery/speedtouch.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?\S+)/' diff --git a/priv/profiles/os_discovery/srlinux.yaml b/priv/profiles/os_discovery/srlinux.yaml new file mode 100644 index 00000000..335f7d71 --- /dev/null +++ b/priv/profiles/os_discovery/srlinux.yaml @@ -0,0 +1,111 @@ +mib: TIMETRA-SYSTEM-MIB:TIMETRA-CHASSIS-MIB:TIMETRA-BGP-MIB +modules: + os: + version: TIMETRA-CHASSIS-MIB::tmnxHwSoftwareCodeVersion.1.134217729 + hardware: TIMETRA-CHASSIS-MIB::tmnxHwMfgString.1.50331649 + serial: TIMETRA-CHASSIS-MIB::tmnxHwSerialNumber.1.50331649 + mempools: + data: + - + descr: 'Memory' + used: TIMETRA-SYSTEM-MIB::sgiKbMemoryUsed + free: TIMETRA-SYSTEM-MIB::sgiKbMemoryAvailable + precision: 1024 + processors: + data: + - + oid: TIMETRA-SYSTEM-MIB::sgiCpuUsage + num_oid: '.1.3.6.1.4.1.6527.3.1.2.1.1.1.{{ $index }}' + type: nokia + descr: 'CPU' + sensors: + state: + data: + - + oid: tmnxPhysChassisFanEntry + value: tmnxPhysChassisFanOperStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.24.1.1.2.{{ $index }}' + descr: 'Fan {{ $subindex2 }}' + index: 'tmnxPhysChassisFanOperStatus.{{ $index }}' + state_name: tmnxPhysChassisFanOperStatus + group: 'Fan State' + states: + - { value: 1, generic: 3, graph: 0, descr: Unknown } + - { value: 2, generic: 3, graph: 0, descr: NotEquipped } + - { value: 3, generic: 0, graph: 0, descr: OK } + - { value: 4, generic: 2, graph: 0, descr: Failed } + - { value: 5, generic: 1, graph: 0, descr: OOS } + - { value: 6, generic: 1, graph: 0, descr: NotProvisioned } + - { value: 7, generic: 3, graph: 0, descr: NotApplicable } + - + oid: tBgpPeerNgTable + value: tBgpPeerNgConnState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.14.4.7.1.59.{{ $index }}' + group: 'BGP Peer State' + descr: '{{ $tBgpPeerNgDescription }}' + states: + - { value: 1, generic: 1, graph: 0, descr: 'idle' } + - { value: 2, generic: 1, graph: 0, descr: 'connect' } + - { value: 3, generic: 1, graph: 0, descr: 'active' } + - { value: 4, generic: 1, graph: 0, descr: 'openSent' } + - { value: 5, generic: 1, graph: 0, descr: 'openConfirm' } + - { value: 6, generic: 0, graph: 0, descr: 'established' } + - { value: 7, generic: 2, graph: 0, descr: 'clearing' } + skip_values: + - + oid: tBgpPeerNgDescription + op: '==' + value: "" + - + oid: tBgpPeerNgTable + value: tBgpPeerNgConnState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.14.4.7.1.59.{{ $index }}' + group: 'BGP Peer State' + descr: '{{ $subindex3 }}.{{ $subindex4 }}.{{ $subindex5 }}.{{ $subindex6 }} - {{ $tBgpPeerNgPeerGroup }}' + states: + - { value: 1, generic: 1, graph: 0, descr: 'idle' } + - { value: 2, generic: 1, graph: 0, descr: 'connect' } + - { value: 3, generic: 1, graph: 0, descr: 'active' } + - { value: 4, generic: 1, graph: 0, descr: 'openSent' } + - { value: 5, generic: 1, graph: 0, descr: 'openConfirm' } + - { value: 6, generic: 0, graph: 0, descr: 'established' } + - { value: 7, generic: 2, graph: 0, descr: 'clearing' } + skip_values: + - + oid: tBgpPeerNgDescription + op: '!=' + value: "" + temperature: + data: + - + oid: tmnxHwTable + value: tmnxHwTemperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.8.1.18.{{ $index }}' + descr: 'CPU {{ $tmnxHwName }}' + index: 'tmnxHwID.{{ $index }}' + skip_values: + - + oid: tmnxHwClass + op: '!=' + value: 9 # TIMETRA-CHASSIS-MIB::tmnxHwClass.1.150995105 = INTEGER: cpmModule(9) + - + oid: tmnxHwTable + value: tmnxHwTemperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.8.1.18.{{ $index }}' + descr: 'PSU {{ $tmnxHwName }}' + group: 'PSUs' + index: '{{ $index }}' + skip_values: + - + oid: tmnxHwClass + op: '!=' + value: 5 # TIMETRA-CHASSIS-MIB::tmnxHwClass.1.83886081 = INTEGER: powerSupply(5) + percent: + data: + - + oid: tmnxPhysChassisFanTable + value: tmnxPhysChassisFanSpeedPercent + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.24.1.1.5.{{ $index }}' + descr: 'Fan {{ $subindex2 }}' + group: 'System Fans' + index: '{{ $index }}' diff --git a/priv/profiles/os_discovery/ssu2000.yaml b/priv/profiles/os_discovery/ssu2000.yaml new file mode 100644 index 00000000..11da5283 --- /dev/null +++ b/priv/profiles/os_discovery/ssu2000.yaml @@ -0,0 +1,90 @@ +mib: SSU2000-MIB:DATUM-MIB +modules: + os: + hardware: + - SSU2000-MIB::inName.1.2 + - SSU2000-MIB::inHwPart.1.2 + hardware_template: '{{ SSU2000-MIB::inName.1.2 }} Module {{ SSU2000-MIB::inHwPart.1.2 }}' + serial: SSU2000-MIB::inSerial.1.2 + version: SSU2000-MIB::inSwPart.1.2 + features: SSU2000-MIB::inFeature.1 + features_template: 'NTP {{ SSU2000-MIB::inFeature.1 }}' + sensors: + additional_oids: + data: + - + oid: + - staPtPtpTable + - staPtNtpTable + - staGpsTable + - staClkTable + state: + data: + - + oid: staPtPtpTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.16.1.1.3.{{ $index }}' + value: staPtPtpStatus + descr: 'PTP Status - Chassis.Slot# {{ $index }}' + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: disabled, graph: 0, value: 3, generic: 1 } + - { descr: fault, graph: 0, value: 4, generic: 2 } + - { descr: reject, graph: 0, value: 5, generic: 1 } + - + oid: staPtNtpTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.15.1.1.3.{{ $index }}' + value: staPtNtpStatus + descr: 'NTP Status - Chassis.Slot# {{ $index }}' + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: disabled, graph: 0, value: 3, generic: 1 } + - { descr: fault, graph: 0, value: 4, generic: 2 } + - { descr: reject, graph: 0, value: 5, generic: 1 } + - + oid: staGpsTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.5.1.1.3.{{ $index }}' + value: staGpsStatus + descr: 'GPS Status - Chassis.Slot# {{ $index }}' + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: selected, graph: 0, value: 2, generic: 0 } + - { descr: disabled, graph: 0, value: 3, generic: 1 } + - { descr: fault, graph: 0, value: 4, generic: 2 } + - { descr: reject, graph: 0, value: 5, generic: 1 } + - + oid: staClkTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.2.1.1.3.{{ $index }}' + value: staCkStatus + descr: 'Clock Status - Chassis.Slot# {{ $index }}' + states: + - { descr: normal, graph: 0, value: 1, generic: 0 } + - { descr: selected, graph: 0, value: 2, generic: 0 } + - { descr: disabled, graph: 0, value: 3, generic: 1 } + - { descr: fault, graph: 0, value: 4, generic: 2 } + - + oid: staClkTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.2.1.1.4.{{ $index }}' + value: staCkPLLMode + descr: 'PLL Mode - Chassis.Slot# {{ $index }}' + states: + - { descr: failed, graph: 0, value: 1, generic: 2 } + - { descr: warmup, graph: 0, value: 2, generic: 1 } + - { descr: acquire, graph: 0, value: 3, generic: 1 } + - { descr: holdover, graph: 0, value: 4, generic: 1 } + - { descr: lock, graph: 0, value: 5, generic: 0 } + delay: + data: + - + oid: staGpsTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.5.1.1.4.{{ $index }}' + value: staGpsPhaseA + index: 'staGpsPhaseA.{{ $index }}' + descr: 'GPS Phase A - Chassis.Slot# {{ $index }}' + divisor: 1000000000 + - + oid: staGpsTable + num_oid: '.1.3.6.1.4.1.601.3.1.1.2.5.1.1.5.{{ $index }}' + value: staGpsPhaseB + index: 'staGpsPhaseB.{{ $index }}' + descr: 'GPS Phase B - Chassis.Slot# {{ $index }}' + divisor: 1000000000 diff --git a/priv/profiles/os_discovery/stellar.yaml b/priv/profiles/os_discovery/stellar.yaml new file mode 100644 index 00000000..c82b65f1 --- /dev/null +++ b/priv/profiles/os_discovery/stellar.yaml @@ -0,0 +1,38 @@ +modules: + os: + hardware: + - OAW-AP1101::apModel + - OAW-AP1201BG::apModel + - OAW-AP1201HL::apModel + - OAW-AP1201H::apModel + - OAW-AP1201L::apModel + - OAW-AP1201::apModel + - OAW-AP1221::apModel + - OAW-AP1222::apModel + - OAW-AP1231::apModel + - OAW-AP1232::apModel + - OAW-AP1251D::apModel + - OAW-AP1251::apModel + - OAW-AP1321::apModel + - OAW-AP1322::apModel + - OAW-AP1361D::apModel + - OAW-AP1361::apModel + - OAW-AP1362::apModel + serial: + - OAW-AP1101::apSerial + - OAW-AP1201BG::apSerial + - OAW-AP1201HL::apSerial + - OAW-AP1201H::apSerial + - OAW-AP1201L::apSerial + - OAW-AP1201::apSerial + - OAW-AP1221::apSerial + - OAW-AP1222::apSerial + - OAW-AP1231::apSerial + - OAW-AP1232::apSerial + - OAW-AP1251D::apSerial + - OAW-AP1251::apSerial + - OAW-AP1321::apSerial + - OAW-AP1322::apSerial + - OAW-AP1361D::apSerial + - OAW-AP1361::apSerial + - OAW-AP1362::apSerial diff --git a/priv/profiles/os_discovery/stoneos.yaml b/priv/profiles/os_discovery/stoneos.yaml new file mode 100644 index 00000000..621fca2b --- /dev/null +++ b/priv/profiles/os_discovery/stoneos.yaml @@ -0,0 +1,42 @@ +mib: HILLSTONE-FAN-MIB:HILLSTONE-POWER-MIB:HILLSTONE-TEMPERATURE-MIB +modules: + mempools: + data: + - + total: HILLSTONE-SYSTEM-MIB::sysTotalMemory + used: HILLSTONE-SYSTEM-MIB::sysCurMemory + precision: 1024 + os: + sysDescr_regex: '/(?\S+)$/' + serial: HILLSTONE-SYSTEM-MIB::sysSerialNumber.0 + version: HILLSTONE-SYSTEM-MIB::sysSoftware.0 + version_regex: '/Version (?\S+)/' + processors: + data: + - + oid: HILLSTONE-SYSTEM-MIB::sysCPU + num_oid: '.1.3.6.1.4.1.28557.2.2.1.3.{{ $index }}' + sensors: + temperature: + data: + - + oid: hillstoneTemperatureTable + value: hillstoneTemperatureValue + num_oid: '.1.3.6.1.4.1.28557.2.28.1.2.1.3.{{ $index }}' + descr: '{{ $hillstoneTemperatureDescr }}' + state: + data: + - + oid: hillstonePowerTable + value: hillstonePowerState + num_oid: '.1.3.6.1.4.1.28557.2.27.1.2.1.3.{{ $index }}' + descr: '{{ $hillstonePowerDescr }}' + index: 'hillstonePowerIndex.{{ $index }}' + state_name: hillstonePowerState + states: + - { descr: fine, graph: 0, value: 0, generic: 0 } + - { descr: absent, graph: 0, value: 1, generic: 1 } + - { descr: warning, graph: 0, value: 2, generic: 1 } + - { descr: fail, graph: 0, value: 3, generic: 2 } + - { descr: fail or nopower, graph: 0, value: 4, generic: 2 } + - { descr: unsupport, graph: 0, value: 5, generic: 3 } diff --git a/priv/profiles/os_discovery/stulz.yaml b/priv/profiles/os_discovery/stulz.yaml new file mode 100644 index 00000000..c6fd9ce7 --- /dev/null +++ b/priv/profiles/os_discovery/stulz.yaml @@ -0,0 +1,290 @@ +mib: Stulz-WIB8000-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - Stulz-WIB8000-MIB::unitsettingName + state: + data: + - + oid: busalarm + value: busalarm + num_oid: '.1.3.6.1.4.1.29462.10.2.1.4.1.1.1.10.{{ $index }}' + index: 'busalarm.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} bus alarm' + states: + - { descr: Ok, graph: 1, value: 0, generic: 0 } + - { descr: Error, graph: 1, value: 1, generic: 2 } + - + oid: basadrconflict + value: busadrconflict + num_oid: '.1.3.6.1.4.1.29462.10.2.1.4.1.1.1.12.{{ $index }}' + index: 'busadrconflict.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} bus conflict' + states: + - { descr: Ok, graph: 1, value: 0, generic: 0 } + - { descr: Error, graph: 1, value: 1, generic: 2 } + - + oid: unitOnOff + value: unitOnOff + num_oid: '.1.3.6.1.4.1.29462.10.2.1.4.1.1.1.1013.{{ $index }}' + index: 'unitOnOff.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} running state' + states: + - { descr: Stopped, graph: 1, value: 0, generic: 0 } + - { descr: Running, graph: 1, value: 1, generic: 0 } + - + oid: generalError + value: generalError + num_oid: '.1.3.6.1.4.1.29462.10.2.1.4.2.1.1.8.{{ $index }}' + index: 'generalError.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} error state' + states: + - { descr: Ok, graph: 1, value: 0, generic: 0 } + - { descr: Error, graph: 1, value: 1, generic: 2 } + - + oid: compr1Running + value: compr1Running + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.1.1.1.4403.{{ $index }}' + index: 'compr1Running.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} compressor state' + states: + - { descr: Stopped, graph: 1, value: 0, generic: 0 } + - { descr: Running, graph: 1, value: 1, generic: 0 } + - + oid: humidifier1Running + value: humidifier1Running + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.3.1.1.6402.{{ $index }}' + index: 'humidifier1Running.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} humidifier state' + states: + - { descr: Stopped, graph: 1, value: 0, generic: 0 } + - { descr: Running, graph: 1, value: 1, generic: 0 } + - + oid: dehumidificationRunning + value: dehumidificationRunning + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.3.1.1.6802.{{ $index }}' + index: 'dehumidificationRunning.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} dehumidification' + states: + - { descr: Stopped, graph: 1, value: 0, generic: 0 } + - { descr: Running, graph: 1, value: 1, generic: 0 } + - + oid: fan1Running + value: fan1Running + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.4.1.1.6902.{{ $index }}' + index: 'fan1Running.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} fan state' + states: + - { descr: Stopped, graph: 1, value: 0, generic: 0 } + - { descr: Running, graph: 1, value: 1, generic: 0 } + - + oid: unitFreecoolingValve + value: unitFreecoolingValve + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.2.5.1.2238.{{ $index }}' + index: 'unitFreecoolingValve.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} freecool valve' + states: + - { descr: Closed, graph: 1, value: 0, generic: 0 } + - { descr: Open, graph: 1, value: 1, generic: 0 } + + temperature: + data: + - + oid: unitTemperature + value: unitTemperature + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.1.1.1.1170.{{ $index }}' + index: 'unitTemperature.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} temp' + divisor: 10 + - + oid: unitSupplyAirTemperature + value: unitSupplyAirTemperature + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.1.1.1.1193.{{ $index }}' + index: 'unitSupplyAirTemperature.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} supply temp' + divisor: 10 + - + oid: unitReturnAirTemperature + value: unitReturnAirTemperature + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.1.1.1.1192.{{ $index }}' + index: 'unitReturnAirTemperature.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} return temp' + divisor: 10 + - + oid: unitOutsideAirTemperature + value: unitOutsideAirTemperature + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.1.1.1.1196.{{ $index }}' + index: 'unitOutsideAirTemperature.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} outside air temp' + divisor: 10 + - + oid: unitWaterInTemperature1 + value: unitWaterInTemperature1 + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1191.{{ $index }}' + index: 'unitWaterInTemperature1.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water In Temperature Primary' + divisor: 10 + group: Water In Temperature Primary + - + oid: Stulz-WIB8000-MIB::unitSetpointAirTratureCorrected + value: Stulz-WIB8000-MIB::unitSetpointAirTratureCorrected + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.1.1.1.1175.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Setpoint Air Temperature' + index: 'unitSetpointAirTratureCorrected.{{ $index }}' + divisor: 10 + group: Air Setpoint + - + oid: Stulz-WIB8000-MIB::waterInTemperatu1ChillersPrimary + value: Stulz-WIB8000-MIB::waterInTemperatu1ChillersPrimary + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1191.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water In Temperature Primary' + index: 'waterInTemperatu1ChillersPrimary.{{ $index }}' + divisor: 10 + group: Water In Temperature Primary + - + oid: Stulz-WIB8000-MIB::waterInTemperatuhillersSecondary + value: Stulz-WIB8000-MIB::waterInTemperatuhillersSecondary + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1202.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water In Temperature Secondary' + index: 'waterInTemperatuhillersSecondary.{{ $index }}' + divisor: 10 + group: Water In Temperature Secondary + - + oid: Stulz-WIB8000-MIB::waterOutTemperatChillersPrimary + value: Stulz-WIB8000-MIB::waterOutTemperatChillersPrimary + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1206.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water Out Temperature Primary' + index: 'waterOutTemperatChillersPrimary.{{ $index }}' + divisor: 10 + group: Water Out Temperature Primary + - + oid: Stulz-WIB8000-MIB::waterOutTemperatillersSecondary + value: Stulz-WIB8000-MIB::waterOutTemperatillersSecondary + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1207.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water Out Temperature Secondary' + index: 'waterOutTemperatillersSecondary.{{ $index }}' + divisor: 10 + group: Water Out Temperature Secondary + + humidity: + data: + - + oid: unitHumidity + value: unitHumidity + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.2.1.1.1171.{{ $index }}' + index: 'unitHumidity.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} humidity' + divisor: 10 + - + oid: unitSupplyAirHumidity + value: unitSupplyAirHumidity + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.2.1.1.1195.{{ $index }}' + index: 'unitSupplyAirHumidity.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} supply humidity' + divisor: 10 + group: Supply Air + - + oid: unitReturnAirHumidity + value: unitReturnAirHumidity + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.2.1.1.1194.{{ $index }}' + index: 'unitReturnAirHumidity.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} return humidity' + divisor: 10 + group: Return Air + - + oid: Stulz-WIB8000-MIB::unitSetpointHumidityCorrected + value: Stulz-WIB8000-MIB::unitSetpointHumidityCorrected + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.1.2.1.1.1178.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Setpoint Humidity' + index: 'unitSetpointHumidityCorrected.{{ $index }}' + divisor: 10 + group: Humidity Setpoint + + pressure: + data: + - + oid: unitCondensationPressure1 + value: unitCondensationPressure1 + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.3.1.1.2235.{{ $index }}' + index: 'unitCondensationPressure1.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} condensation pressure' + multiplier: 10 + - + oid: filter1PressureDrop + value: filter1PressureDrop + num_oid: '.1.3.6.1.4.1.29462.10.2.1.2.2.4.6.1.1.11009.{{ $index }}' + index: 'filter1PressureDrop.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} filter 1 pressure drop' + divisor: 1000 + - + oid: filter2PressureDrop + value: filter2PressureDrop + num_oid: '.1.3.6.1.4.1.29462.10.2.1.2.2.4.6.1.1.11109.{{ $index }}' + index: 'filter2PressureDrop.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} filter 2 pressure drop' + divisor: 1000 + - + oid: filter3PressureDrop + value: filter3PressureDrop + num_oid: '.1.3.6.1.4.1.29462.10.2.1.2.2.4.6.1.1.11209.{{ $index }}' + index: 'filter3PressureDrop.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} filter 3 pressure drop' + divisor: 1000 + + percent: + data: + - + oid: fan1Speed + value: fan1Speed + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.4.1.1.6932.{{ $index }}' + index: 'fan1Speed.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} fan speed' + - + oid: gValveOpeningGrade + value: gValveOpeningGrade + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.2.5.1.5312.{{ $index }}' + index: 'gValveOpeningGrade.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} gValve grade' + - + oid: Stulz-WIB8000-MIB::unitFreecoolingValve + value: Stulz-WIB8000-MIB::unitFreecoolingValve + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.2.5.1.2238.{{ $index }}' + index: 'unitFreecoolingValve.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Freecooling Valve Opening' + group: Free Cooling + - + oid: Stulz-WIB8000-MIB::gECWValveOpeningGrade1 + value: Stulz-WIB8000-MIB::gECWValveOpeningGrade1 + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.2.2.1.1.5214.{{ $index }}' + index: 'gECWValveOpeningGrade1.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} GE/CW Valve 1 Opening' + group: GE/CW Valve 1 + - + oid: Stulz-WIB8000-MIB::gECWValveOpeningGrade2 + value: Stulz-WIB8000-MIB::gECWValveOpeningGrade2 + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.2.1.2.2.1.1.5224.{{ $index }}' + index: 'gECWValveOpeningGrade2.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} GE/CW Valve 2 Opening' + group: GE/CW Valve 2 + + waterflow: + data: + - + oid: Stulz-WIB8000-MIB::waterFlowVolume + value: Stulz-WIB8000-MIB::waterFlowVolume + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1249.{{ $index }}' + index: 'waterFlowVolume.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water Flow Volume' + multiplier: 50 #Multiply and divide to generate a multiplier of 16.66667 + divisor: 3 + - + oid: Stulz-WIB8000-MIB::waterFlowVolumeB + value: Stulz-WIB8000-MIB::waterFlowVolumeB + num_oid: '.1.3.6.1.4.1.29462.10.2.1.1.1.2.1.1.1740.{{ $index }}' + index: 'waterFlowVolumeB.{{ $index }}' + descr: 'Unit {{ Stulz-WIB8000-MIB::unitsettingName:0-1 }} Water Flow Volume B' + multiplier: 50 #Multiply and divide to generate a multiplier of 16.66667 + divisor: 3 diff --git a/priv/profiles/os_discovery/sub10.yaml b/priv/profiles/os_discovery/sub10.yaml new file mode 100644 index 00000000..56582310 --- /dev/null +++ b/priv/profiles/os_discovery/sub10.yaml @@ -0,0 +1,5 @@ +modules: + os: + serial: SUB10SYSTEMS-MIB::sub10UnitLclHWSerialNumber.0 + version: SUB10SYSTEMS-MIB::sub10UnitLclFirmwareVersion.0 + sysDescr_regex: '/(?(Liberator[ -])?\S+)$/' diff --git a/priv/profiles/os_discovery/supercap.yaml b/priv/profiles/os_discovery/supercap.yaml new file mode 100644 index 00000000..35de8836 --- /dev/null +++ b/priv/profiles/os_discovery/supercap.yaml @@ -0,0 +1,2560 @@ +modules: + sensors: + temperature: + data: + - + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.2{{ $noindex }}' + descr: 'BMS 01 Ambient Temperature' + index: 'BMS01-AmbientTemperature' + divisor: 100 + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS01-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.3{{ $noindex }}' + descr: 'BMS 01 Power Temperature' + index: 'BMS01-PowerTemperature' + divisor: 100 + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS02-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.15{{ $noindex }}' + descr: 'BMS 02 Ambient Temperature' + index: 'BMS02-AmbientTemperature' + divisor: 100 + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS02-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.16{{ $noindex }}' + descr: 'BMS 02 Power Temperature' + index: 'BMS02-PowerTemperature' + divisor: 100 + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS03-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.28{{ $noindex }}' + descr: 'BMS 03 Ambient Temperature' + index: 'BMS03-AmbientTemperature' + divisor: 100 + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS03-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.29{{ $noindex }}' + descr: 'BMS 03 Power Temperature' + index: 'BMS03-PowerTemperature' + divisor: 100 + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS04-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.41{{ $noindex }}' + descr: 'BMS 04 Ambient Temperature' + index: 'BMS04-AmbientTemperature' + divisor: 100 + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS04-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.42{{ $noindex }}' + descr: 'BMS 04 Power Temperature' + index: 'BMS04-PowerTemperature' + divisor: 100 + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS05-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.54{{ $noindex }}' + descr: 'BMS 05 Ambient Temperature' + index: 'BMS05-AmbientTemperature' + divisor: 100 + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS05-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.55{{ $noindex }}' + descr: 'BMS 05 Power Temperature' + index: 'BMS05-PowerTemperature' + divisor: 100 + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS06-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.67{{ $noindex }}' + descr: 'BMS 06 Ambient Temperature' + index: 'BMS06-AmbientTemperature' + divisor: 100 + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS06-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.68{{ $noindex }}' + descr: 'BMS 06 Power Temperature' + index: 'BMS06-PowerTemperature' + divisor: 100 + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.80{{ $noindex }}' + descr: 'BMS 07 Ambient Temperature' + index: 'BMS07-AmbientTemperature' + divisor: 100 + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS07-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.81{{ $noindex }}' + descr: 'BMS 07 Power Temperature' + index: 'BMS07-PowerTemperature' + divisor: 100 + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS08-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.93{{ $noindex }}' + descr: 'BMS 08 Ambient Temperature' + index: 'BMS08-AmbientTemperature' + divisor: 100 + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS08-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.94{{ $noindex }}' + descr: 'BMS 08 Power Temperature' + index: 'BMS08-PowerTemperature' + divisor: 100 + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS09-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.106{{ $noindex }}' + descr: 'BMS 09 Ambient Temperature' + index: 'BMS09-AmbientTemperature' + divisor: 100 + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS09-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.107{{ $noindex }}' + descr: 'BMS 09 Power Temperature' + index: 'BMS09-PowerTemperature' + divisor: 100 + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS10-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.119{{ $noindex }}' + descr: 'BMS 10 Ambient Temperature' + index: 'BMS10-AmbientTemperature' + divisor: 100 + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS10-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.120{{ $noindex }}' + descr: 'BMS 10 Power Temperature' + index: 'BMS10-PowerTemperature' + divisor: 100 + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS11-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.132{{ $noindex }}' + descr: 'BMS 11 Ambient Temperature' + index: 'BMS11-AmbientTemperature' + divisor: 100 + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS11-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.133{{ $noindex }}' + descr: 'BMS 11 Power Temperature' + index: 'BMS11-PowerTemperature' + divisor: 100 + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS12-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.145{{ $noindex }}' + descr: 'BMS 12 Ambient Temperature' + index: 'BMS12-AmbientTemperature' + divisor: 100 + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS12-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.146{{ $noindex }}' + descr: 'BMS 12 Power Temperature' + index: 'BMS12-PowerTemperature' + divisor: 100 + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS13-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.158{{ $noindex }}' + descr: 'BMS 13 Ambient Temperature' + index: 'BMS13-AmbientTemperature' + divisor: 100 + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS13-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.159{{ $noindex }}' + descr: 'BMS 13 Power Temperature' + index: 'BMS13-PowerTemperature' + divisor: 100 + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS14-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.171{{ $noindex }}' + descr: 'BMS 14 Ambient Temperature' + index: 'BMS14-AmbientTemperature' + divisor: 100 + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS14-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.172{{ $noindex }}' + descr: 'BMS 14 Power Temperature' + index: 'BMS14-PowerTemperature' + divisor: 100 + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-AmbientTemperature + value: SUPERCAPBATTERY-MIB::BMS15-AmbientTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.184{{ $noindex }}' + descr: 'BMS 15 Ambient Temperature' + index: 'BMS15-AmbientTemperature' + divisor: 100 + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-PowerTemperature + value: SUPERCAPBATTERY-MIB::BMS15-PowerTemperature + num_oid: '.1.3.6.1.2.1.555.1.1.1.185{{ $noindex }}' + descr: 'BMS 15 Power Temperature' + index: 'BMS15-PowerTemperature' + divisor: 100 + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-PowerTemperature + op: '=' + value: 0 + current: + data: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Current + value: SUPERCAPBATTERY-MIB::BMS01-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.4{{ $noindex }}' + descr: 'BMS 01 Current' + index: 'BMS01-Current' + divisor: 10 + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-Current + value: SUPERCAPBATTERY-MIB::BMS02-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.17{{ $noindex }}' + descr: 'BMS 02 Current' + index: 'BMS02-Current' + divisor: 10 + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-Current + value: SUPERCAPBATTERY-MIB::BMS03-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.30{{ $noindex }}' + descr: 'BMS 03 Current' + index: 'BMS03-Current' + divisor: 10 + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-Current + value: SUPERCAPBATTERY-MIB::BMS04-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.43{{ $noindex }}' + descr: 'BMS 04 Current' + index: 'BMS04-Current' + divisor: 10 + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-Current + value: SUPERCAPBATTERY-MIB::BMS05-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.56{{ $noindex }}' + descr: 'BMS 05 Current' + index: 'BMS05-Current' + divisor: 10 + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-Current + value: SUPERCAPBATTERY-MIB::BMS06-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.69{{ $noindex }}' + descr: 'BMS 06 Current' + index: 'BMS06-Current' + divisor: 10 + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-Current + value: SUPERCAPBATTERY-MIB::BMS07-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.82{{ $noindex }}' + descr: 'BMS 07 Current' + index: 'BMS07-Current' + divisor: 10 + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-Current + value: SUPERCAPBATTERY-MIB::BMS08-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.95{{ $noindex }}' + descr: 'BMS 08 Current' + index: 'BMS08-Current' + divisor: 10 + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-Current + value: SUPERCAPBATTERY-MIB::BMS09-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.108{{ $noindex }}' + descr: 'BMS 09 Current' + index: 'BMS09-Current' + divisor: 10 + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-Current + value: SUPERCAPBATTERY-MIB::BMS10-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.121{{ $noindex }}' + descr: 'BMS 10 Current' + index: 'BMS10-Current' + divisor: 10 + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-Current + value: SUPERCAPBATTERY-MIB::BMS11-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.134{{ $noindex }}' + descr: 'BMS 11 Current' + index: 'BMS11-Current' + divisor: 10 + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-Current + value: SUPERCAPBATTERY-MIB::BMS12-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.147{{ $noindex }}' + descr: 'BMS 12 Current' + index: 'BMS12-Current' + divisor: 10 + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-Current + value: SUPERCAPBATTERY-MIB::BMS13-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.160{{ $noindex }}' + descr: 'BMS 13 Current' + index: 'BMS13-Current' + divisor: 10 + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-Current + value: SUPERCAPBATTERY-MIB::BMS14-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.173{{ $noindex }}' + descr: 'BMS 14 Current' + index: 'BMS14-Current' + divisor: 10 + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-Current + value: SUPERCAPBATTERY-MIB::BMS15-Current + num_oid: '.1.3.6.1.2.1.555.1.1.1.186{{ $noindex }}' + descr: 'BMS 15 Current' + index: 'BMS15-Current' + divisor: 10 + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS01-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.6{{ $noindex }}' + descr: 'BMS 01 Remaining Capacity (AH)' + index: 'BMS01-RemainingCapacity' + divisor: 100 + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS01-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.7{{ $noindex }}' + descr: 'BMS 01 Total Capacity (AH)' + index: 'BMS01-TotalCapacity' + divisor: 100 + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS01-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.9{{ $noindex }}' + descr: 'BMS 01 Total Discharge Capacity (AH)' + index: 'BMS01-TotalDischargeCapacity' + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS02-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.19{{ $noindex }}' + descr: 'BMS 02 Remaining Capacity (AH)' + index: 'BMS02-RemainingCapacity' + divisor: 100 + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.20{{ $noindex }}' + descr: 'BMS 02 Total Capacity (AH)' + index: 'BMS02-TotalCapacity' + divisor: 100 + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS02-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.21{{ $noindex }}' + descr: 'BMS 02 Total Discharge Capacity (AH)' + index: 'BMS02-TotalDischargeCapacity' + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS03-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.32{{ $noindex }}' + descr: 'BMS 03 Remaining Capacity (AH)' + index: 'BMS03-RemainingCapacity' + divisor: 100 + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS03-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.33{{ $noindex }}' + descr: 'BMS 03 Total Capacity (AH)' + index: 'BMS03-TotalCapacity' + divisor: 100 + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS03-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.35{{ $noindex }}' + descr: 'BMS 03 Total Discharge Capacity (AH)' + index: 'BMS03-TotalDischargeCapacity' + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS04-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.45{{ $noindex }}' + descr: 'BMS 04 Remaining Capacity (AH)' + index: 'BMS04-RemainingCapacity' + divisor: 100 + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS04-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.46{{ $noindex }}' + descr: 'BMS 04 Total Capacity (AH)' + index: 'BMS04-TotalCapacity' + divisor: 100 + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS04-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.48{{ $noindex }}' + descr: 'BMS 04 Total Discharge Capacity (AH)' + index: 'BMS04-TotalDischargeCapacity' + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS05-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.58{{ $noindex }}' + descr: 'BMS 05 Remaining Capacity (AH)' + index: 'BMS05-RemainingCapacity' + divisor: 100 + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS05-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.59{{ $noindex }}' + descr: 'BMS 05 Total Capacity (AH)' + index: 'BMS05-TotalCapacity' + divisor: 100 + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS05-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.61{{ $noindex }}' + descr: 'BMS 05 Total Discharge Capacity (AH)' + index: 'BMS05-TotalDischargeCapacity' + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS06-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.71{{ $noindex }}' + descr: 'BMS 06 Remaining Capacity (AH)' + index: 'BMS06-RemainingCapacity' + divisor: 100 + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS06-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.72{{ $noindex }}' + descr: 'BMS 06 Total Capacity (AH)' + index: 'BMS06-TotalCapacity' + divisor: 100 + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS06-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.74{{ $noindex }}' + descr: 'BMS 06 Total Discharge Capacity (AH)' + index: 'BMS06-TotalDischargeCapacity' + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS07-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.84{{ $noindex }}' + descr: 'BMS 07 Remaining Capacity (AH)' + index: 'BMS07-RemainingCapacity' + divisor: 100 + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.85{{ $noindex }}' + descr: 'BMS 07 Total Capacity (AH)' + index: 'BMS07-TotalCapacity' + divisor: 100 + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS07-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.87{{ $noindex }}' + descr: 'BMS 07 Total Discharge Capacity (AH)' + index: 'BMS07-TotalDischargeCapacity' + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS08-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.97{{ $noindex }}' + descr: 'BMS 08 Remaining Capacity (AH)' + index: 'BMS08-RemainingCapacity' + divisor: 100 + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS08-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.98{{ $noindex }}' + descr: 'BMS 08 Total Capacity (AH)' + index: 'BMS08-TotalCapacity' + divisor: 100 + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS08-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.100{{ $noindex }}' + descr: 'BMS 08 Total Discharge Capacity (AH)' + index: 'BMS08-TotalDischargeCapacity' + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS09-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.110{{ $noindex }}' + descr: 'BMS 09 Remaining Capacity (AH)' + index: 'BMS09-RemainingCapacity' + divisor: 100 + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS09-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.111{{ $noindex }}' + descr: 'BMS 09 Total Capacity (AH)' + index: 'BMS09-TotalCapacity' + divisor: 100 + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS09-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.113{{ $noindex }}' + descr: 'BMS 09 Total Discharge Capacity (AH)' + index: 'BMS09-TotalDischargeCapacity' + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS10-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.123{{ $noindex }}' + descr: 'BMS 10 Remaining Capacity (AH)' + index: 'BMS10-RemainingCapacity' + divisor: 100 + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS10-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.124{{ $noindex }}' + descr: 'BMS 10 Total Capacity (AH)' + index: 'BMS10-TotalCapacity' + divisor: 100 + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS10-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.126{{ $noindex }}' + descr: 'BMS 10 Total Discharge Capacity (AH)' + index: 'BMS10-TotalDischargeCapacity' + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS11-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.136{{ $noindex }}' + descr: 'BMS 11 Remaining Capacity (AH)' + index: 'BMS11-RemainingCapacity' + divisor: 100 + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS11-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.137{{ $noindex }}' + descr: 'BMS 11 Total Capacity (AH)' + index: 'BMS11-TotalCapacity' + divisor: 100 + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS11-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.139{{ $noindex }}' + descr: 'BMS 11 Total Discharge Capacity (AH)' + index: 'BMS11-TotalDischargeCapacity' + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS12-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.149{{ $noindex }}' + descr: 'BMS 12 Remaining Capacity (AH)' + index: 'BMS12-RemainingCapacity' + divisor: 100 + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS12-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.150{{ $noindex }}' + descr: 'BMS 12 Total Capacity (AH)' + index: 'BMS12-TotalCapacity' + divisor: 100 + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS12-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.152{{ $noindex }}' + descr: 'BMS 12 Total Discharge Capacity (AH)' + index: 'BMS12-TotalDischargeCapacity' + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS13-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.162{{ $noindex }}' + descr: 'BMS 13 Remaining Capacity (AH)' + index: 'BMS13-RemainingCapacity' + divisor: 100 + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS13-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.163{{ $noindex }}' + descr: 'BMS 13 Total Capacity (AH)' + index: 'BMS13-TotalCapacity' + divisor: 100 + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS13-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.165{{ $noindex }}' + descr: 'BMS 13 Total Discharge Capacity (AH)' + index: 'BMS13-TotalDischargeCapacity' + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS14-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.175{{ $noindex }}' + descr: 'BMS 14 Remaining Capacity (AH)' + index: 'BMS14-RemainingCapacity' + divisor: 100 + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS14-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.176{{ $noindex }}' + descr: 'BMS 14 Total Capacity (AH)' + index: 'BMS14-TotalCapacity' + divisor: 100 + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS14-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.178{{ $noindex }}' + descr: 'BMS 14 Total Discharge Capacity (AH)' + index: 'BMS14-TotalDischargeCapacity' + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-TotalDischargeCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-RemainingCapacity + value: SUPERCAPBATTERY-MIB::BMS15-RemainingCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.188{{ $noindex }}' + descr: 'BMS 15 Remaining Capacity (AH)' + index: 'BMS15-RemainingCapacity' + divisor: 100 + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-RemainingCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-TotalCapacity + value: SUPERCAPBATTERY-MIB::BMS15-TotalCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.189{{ $noindex }}' + descr: 'BMS 15 Total Capacity (AH)' + index: 'BMS15-TotalCapacity' + divisor: 100 + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-TotalCapacity + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-TotalDischargeCapacity + value: SUPERCAPBATTERY-MIB::BMS15-TotalDischargeCapacity + num_oid: '.1.3.6.1.2.1.555.1.1.1.191{{ $noindex }}' + descr: 'BMS 15 Total Discharge Capacity (AH)' + index: 'BMS15-TotalDischargeCapacity' + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-TotalDischargeCapacity + op: '=' + value: 0 + count: + data: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Cycles + value: SUPERCAPBATTERY-MIB::BMS01-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.8{{ $noindex }}' + descr: 'BMS 01 Cycles' + index: 'BMS01-Cycles' + group: 'BMS 01' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-Cycles + value: SUPERCAPBATTERY-MIB::BMS02-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.21{{ $noindex }}' + descr: 'BMS 02 Cycles' + index: 'BMS02-Cycles' + group: 'BMS 02' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-Cycles + value: SUPERCAPBATTERY-MIB::BMS03-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.34{{ $noindex }}' + descr: 'BMS 03 Cycles' + index: 'BMS03-Cycles' + group: 'BMS 03' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-Cycles + value: SUPERCAPBATTERY-MIB::BMS04-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.47{{ $noindex }}' + descr: 'BMS 04 Cycles' + index: 'BMS04-Cycles' + group: 'BMS 04' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-Cycles + value: SUPERCAPBATTERY-MIB::BMS05-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.60{{ $noindex }}' + descr: 'BMS 05 Cycles' + index: 'BMS05-Cycles' + group: 'BMS 05' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-Cycles + value: SUPERCAPBATTERY-MIB::BMS06-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.73{{ $noindex }}' + descr: 'BMS 06 Cycles' + index: 'BMS06-Cycles' + group: 'BMS 06' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-Cycles + value: SUPERCAPBATTERY-MIB::BMS07-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.86{{ $noindex }}' + descr: 'BMS 07 Cycles' + index: 'BMS07-Cycles' + group: 'BMS 07' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-Cycles + value: SUPERCAPBATTERY-MIB::BMS08-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.99{{ $noindex }}' + descr: 'BMS 08 Cycles' + index: 'BMS08-Cycles' + group: 'BMS 08' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-Cycles + value: SUPERCAPBATTERY-MIB::BMS09-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.112{{ $noindex }}' + descr: 'BMS 09 Cycles' + index: 'BMS09-Cycles' + group: 'BMS 09' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-Cycles + value: SUPERCAPBATTERY-MIB::BMS10-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.125{{ $noindex }}' + descr: 'BMS 10 Cycles' + index: 'BMS10-Cycles' + group: 'BMS 10' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-Cycles + value: SUPERCAPBATTERY-MIB::BMS11-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.138{{ $noindex }}' + descr: 'BMS 11 Cycles' + index: 'BMS11-Cycles' + group: 'BMS 11' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-Cycles + value: SUPERCAPBATTERY-MIB::BMS12-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.151{{ $noindex }}' + descr: 'BMS 12 Cycles' + index: 'BMS12-Cycles' + group: 'BMS 12' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-Cycles + value: SUPERCAPBATTERY-MIB::BMS13-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.164{{ $noindex }}' + descr: 'BMS 13 Cycles' + index: 'BMS13-Cycles' + group: 'BMS 13' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-Cycles + value: SUPERCAPBATTERY-MIB::BMS14-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.177{{ $noindex }}' + descr: 'BMS 14 Cycles' + index: 'BMS14-Cycles' + group: 'BMS 14' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-Cycles + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-Cycles + value: SUPERCAPBATTERY-MIB::BMS15-Cycles + num_oid: '.1.3.6.1.2.1.555.1.1.1.190{{ $noindex }}' + descr: 'BMS 15 Cycles' + index: 'BMS15-Cycles' + group: 'BMS 15' + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-Cycles + op: '=' + value: 0 + percent: + data: + - + oid: SUPERCAPBATTERY-MIB::BMS01-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS01-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.10{{ $noindex }}' + descr: 'BMS 01 Health Status (%)' + index: 'BMS01-HealthStatus' + group: 'BMS 01' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS02-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.23{{ $noindex }}' + descr: 'BMS 02 Health Status (%)' + index: 'BMS02-HealthStatus' + group: 'BMS 02' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS03-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.36{{ $noindex }}' + descr: 'BMS 03 Health Status (%)' + index: 'BMS03-HealthStatus' + group: 'BMS 03' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS04-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.49{{ $noindex }}' + descr: 'BMS 04 Health Status (%)' + index: 'BMS04-HealthStatus' + group: 'BMS 04' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS05-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.62{{ $noindex }}' + descr: 'BMS 05 Health Status (%)' + index: 'BMS05-HealthStatus' + group: 'BMS 05' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS06-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.75{{ $noindex }}' + descr: 'BMS 06 Health Status (%)' + index: 'BMS06-HealthStatus' + group: 'BMS 06' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS07-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.88{{ $noindex }}' + descr: 'BMS 07 Health Status (%)' + index: 'BMS07-HealthStatus' + group: 'BMS 07' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS08-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.101{{ $noindex }}' + descr: 'BMS 08 Health Status (%)' + index: 'BMS08-HealthStatus' + group: 'BMS 08' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS09-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.114{{ $noindex }}' + descr: 'BMS 09 Health Status (%)' + index: 'BMS09-HealthStatus' + group: 'BMS 09' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS10-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.127{{ $noindex }}' + descr: 'BMS 10 Health Status (%)' + index: 'BMS10-HealthStatus' + group: 'BMS 10' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS11-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.140{{ $noindex }}' + descr: 'BMS 11 Health Status (%)' + index: 'BMS11-HealthStatus' + group: 'BMS 11' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS12-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.153{{ $noindex }}' + descr: 'BMS 12 Health Status (%)' + index: 'BMS12-HealthStatus' + group: 'BMS 12' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS13-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.166{{ $noindex }}' + descr: 'BMS 13 Health Status (%)' + index: 'BMS13-HealthStatus' + group: 'BMS 13' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS14-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.179{{ $noindex }}' + descr: 'BMS 14 Health Status (%)' + index: 'BMS14-HealthStatus' + group: 'BMS 14' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-HealthStatus + value: SUPERCAPBATTERY-MIB::BMS15-HealthStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.192{{ $noindex }}' + descr: 'BMS 15 Health Status (%)' + index: 'BMS15-HealthStatus' + group: 'BMS 15' + divisor: 100 + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-AmbientTemperature + op: '=' + value: 0 + state: + data: + - + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS01-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.11{{ $noindex }}' + descr: 'BMS 01 Ambient Temperature Alarm Status' + index: 'BMS01-AmbientTempAlarmStatus' + group: 'BMS 01' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS01-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.12{{ $noindex }}' + descr: 'BMS 01 Power Temperature Alarm Status' + index: 'BMS01-PowerTempAlarmStatus' + group: 'BMS 01' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS01-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.13{{ $noindex }}' + descr: 'BMS 01 Charge Discharge Current Alarm Status' + index: 'BMS01-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 01' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS01-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS01-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.14{{ $noindex }}' + descr: 'BMS 01 Battery Voltage Alarm Status' + index: 'BMS01-BatteryVoltageAlarmStatus' + group: 'BMS 01' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS01-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS02-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.24{{ $noindex }}' + descr: 'BMS 02 Ambient Temperature Alarm Status' + index: 'BMS02-AmbientTempAlarmStatus' + group: 'BMS 02' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS02-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.25{{ $noindex }}' + descr: 'BMS 02 Power Temperature Alarm Status' + index: 'BMS02-PowerTempAlarmStatus' + group: 'BMS 02' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS02-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.26{{ $noindex }}' + descr: 'BMS 02 Charge Discharge Current Alarm Status' + index: 'BMS02-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 02' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS02-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS02-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.27{{ $noindex }}' + descr: 'BMS 02 Battery Voltage Alarm Status' + index: 'BMS02-BatteryVoltageAlarmStatus' + group: 'BMS 02' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS02-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS03-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.37{{ $noindex }}' + descr: 'BMS 03 Ambient Temperature Alarm Status' + index: 'BMS03-AmbientTempAlarmStatus' + group: 'BMS 03' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS03-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.38{{ $noindex }}' + descr: 'BMS 03 Power Temperature Alarm Status' + index: 'BMS03-PowerTempAlarmStatus' + group: 'BMS 03' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS03-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.39{{ $noindex }}' + descr: 'BMS 03 Charge Discharge Current Alarm Status' + index: 'BMS03-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 03' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS03-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS03-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.40{{ $noindex }}' + descr: 'BMS 03 Battery Voltage Alarm Status' + index: 'BMS03-BatteryVoltageAlarmStatus' + group: 'BMS 03' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS03-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS04-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.50{{ $noindex }}' + descr: 'BMS 04 Ambient Temperature Alarm Status' + index: 'BMS04-AmbientTempAlarmStatus' + group: 'BMS 04' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS04-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.51{{ $noindex }}' + descr: 'BMS 04 Power Temperature Alarm Status' + index: 'BMS04-PowerTempAlarmStatus' + group: 'BMS 04' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS04-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.52{{ $noindex }}' + descr: 'BMS 04 Charge Discharge Current Alarm Status' + index: 'BMS04-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 04' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS04-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS04-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.53{{ $noindex }}' + descr: 'BMS 04 Battery Voltage Alarm Status' + index: 'BMS04-BatteryVoltageAlarmStatus' + group: 'BMS 04' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS04-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS05-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.63{{ $noindex }}' + descr: 'BMS 05 Ambient Temperature Alarm Status' + index: 'BMS05-AmbientTempAlarmStatus' + group: 'BMS 05' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS05-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.64{{ $noindex }}' + descr: 'BMS 05 Power Temperature Alarm Status' + index: 'BMS05-PowerTempAlarmStatus' + group: 'BMS 05' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS05-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.65{{ $noindex }}' + descr: 'BMS 05 Charge Discharge Current Alarm Status' + index: 'BMS05-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 05' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS05-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS05-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.66{{ $noindex }}' + descr: 'BMS 05 Battery Voltage Alarm Status' + index: 'BMS05-BatteryVoltageAlarmStatus' + group: 'BMS 05' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS05-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS06-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.76{{ $noindex }}' + descr: 'BMS 06 Ambient Temperature Alarm Status' + index: 'BMS06-AmbientTempAlarmStatus' + group: 'BMS 06' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS06-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.77{{ $noindex }}' + descr: 'BMS 06 Power Temperature Alarm Status' + index: 'BMS06-PowerTempAlarmStatus' + group: 'BMS 06' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS06-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.78{{ $noindex }}' + descr: 'BMS 06 Charge Discharge Current Alarm Status' + index: 'BMS06-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 06' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS06-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS06-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.79{{ $noindex }}' + descr: 'BMS 06 Battery Voltage Alarm Status' + index: 'BMS06-BatteryVoltageAlarmStatus' + group: 'BMS 06' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS06-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS07-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.89{{ $noindex }}' + descr: 'BMS 07 Ambient Temperature Alarm Status' + index: 'BMS07-AmbientTempAlarmStatus' + group: 'BMS 07' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS07-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.90{{ $noindex }}' + descr: 'BMS 07 Power Temperature Alarm Status' + index: 'BMS07-PowerTempAlarmStatus' + group: 'BMS 07' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS07-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.91{{ $noindex }}' + descr: 'BMS 07 Charge Discharge Current Alarm Status' + index: 'BMS07-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 07' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS07-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS07-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.92{{ $noindex }}' + descr: 'BMS 07 Battery Voltage Alarm Status' + index: 'BMS07-BatteryVoltageAlarmStatus' + group: 'BMS 07' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS07-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS08-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.102{{ $noindex }}' + descr: 'BMS 08 Ambient Temperature Alarm Status' + index: 'BMS08-AmbientTempAlarmStatus' + group: 'BMS 08' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS08-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.103{{ $noindex }}' + descr: 'BMS 08 Power Temperature Alarm Status' + index: 'BMS08-PowerTempAlarmStatus' + group: 'BMS 08' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS08-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.104{{ $noindex }}' + descr: 'BMS 08 Charge Discharge Current Alarm Status' + index: 'BMS08-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 08' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS08-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS08-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.105{{ $noindex }}' + descr: 'BMS 08 Battery Voltage Alarm Status' + index: 'BMS08-BatteryVoltageAlarmStatus' + group: 'BMS 08' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS08-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS09-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.115{{ $noindex }}' + descr: 'BMS 09 Ambient Temperature Alarm Status' + index: 'BMS09-AmbientTempAlarmStatus' + group: 'BMS 09' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS09-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.116{{ $noindex }}' + descr: 'BMS 09 Power Temperature Alarm Status' + index: 'BMS09-PowerTempAlarmStatus' + group: 'BMS 09' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS09-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.117{{ $noindex }}' + descr: 'BMS 09 Charge Discharge Current Alarm Status' + index: 'BMS09-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 09' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS09-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS09-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.118{{ $noindex }}' + descr: 'BMS 09 Battery Voltage Alarm Status' + index: 'BMS09-BatteryVoltageAlarmStatus' + group: 'BMS 09' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS09-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS10-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.128{{ $noindex }}' + descr: 'BMS 10 Ambient Temperature Alarm Status' + index: 'BMS10-AmbientTempAlarmStatus' + group: 'BMS 10' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS10-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.129{{ $noindex }}' + descr: 'BMS 10 Power Temperature Alarm Status' + index: 'BMS10-PowerTempAlarmStatus' + group: 'BMS 10' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS10-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.130{{ $noindex }}' + descr: 'BMS 10 Charge Discharge Current Alarm Status' + index: 'BMS10-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 10' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS10-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS10-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.131{{ $noindex }}' + descr: 'BMS 10 Battery Voltage Alarm Status' + index: 'BMS10-BatteryVoltageAlarmStatus' + group: 'BMS 10' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS10-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS11-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.141{{ $noindex }}' + descr: 'BMS 11 Ambient Temperature Alarm Status' + index: 'BMS11-AmbientTempAlarmStatus' + group: 'BMS 11' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS11-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.142{{ $noindex }}' + descr: 'BMS 11 Power Temperature Alarm Status' + index: 'BMS11-PowerTempAlarmStatus' + group: 'BMS 11' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS11-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.143{{ $noindex }}' + descr: 'BMS 11 Charge Discharge Current Alarm Status' + index: 'BMS11-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 11' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS11-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS11-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.144{{ $noindex }}' + descr: 'BMS 11 Battery Voltage Alarm Status' + index: 'BMS11-BatteryVoltageAlarmStatus' + group: 'BMS 11' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS11-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS12-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.154{{ $noindex }}' + descr: 'BMS 12 Ambient Temperature Alarm Status' + index: 'BMS12-AmbientTempAlarmStatus' + group: 'BMS 12' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS12-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.155{{ $noindex }}' + descr: 'BMS 12 Power Temperature Alarm Status' + index: 'BMS12-PowerTempAlarmStatus' + group: 'BMS 12' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS12-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.156{{ $noindex }}' + descr: 'BMS 12 Charge Discharge Current Alarm Status' + index: 'BMS12-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 12' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS12-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS12-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.157{{ $noindex }}' + descr: 'BMS 12 Battery Voltage Alarm Status' + index: 'BMS12-BatteryVoltageAlarmStatus' + group: 'BMS 12' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS12-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS13-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.167{{ $noindex }}' + descr: 'BMS 13 Ambient Temperature Alarm Status' + index: 'BMS13-AmbientTempAlarmStatus' + group: 'BMS 13' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS13-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.168{{ $noindex }}' + descr: 'BMS 13 Power Temperature Alarm Status' + index: 'BMS13-PowerTempAlarmStatus' + group: 'BMS 13' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS13-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.169{{ $noindex }}' + descr: 'BMS 13 Charge Discharge Current Alarm Status' + index: 'BMS13-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 13' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS13-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS13-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.170{{ $noindex }}' + descr: 'BMS 13 Battery Voltage Alarm Status' + index: 'BMS13-BatteryVoltageAlarmStatus' + group: 'BMS 13' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS13-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS14-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.180{{ $noindex }}' + descr: 'BMS 14 Ambient Temperature Alarm Status' + index: 'BMS14-AmbientTempAlarmStatus' + group: 'BMS 14' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS14-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.181{{ $noindex }}' + descr: 'BMS 14 Power Temperature Alarm Status' + index: 'BMS14-PowerTempAlarmStatus' + group: 'BMS 14' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS14-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.182{{ $noindex }}' + descr: 'BMS 14 Charge Discharge Current Alarm Status' + index: 'BMS14-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 14' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS14-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS14-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.183{{ $noindex }}' + descr: 'BMS 14 Battery Voltage Alarm Status' + index: 'BMS14-BatteryVoltageAlarmStatus' + group: 'BMS 14' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS14-Voltage + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-AmbientTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS15-AmbientTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.193{{ $noindex }}' + descr: 'BMS 15 Ambient Temperature Alarm Status' + index: 'BMS15-AmbientTempAlarmStatus' + group: 'BMS 15' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-AmbientTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-PowerTempAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS15-PowerTempAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.194{{ $noindex }}' + descr: 'BMS 15 Power Temperature Alarm Status' + index: 'BMS15-PowerTempAlarmStatus' + group: 'BMS 15' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-PowerTemperature + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-ChargeDischargeCurrentAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS15-ChargeDischargeCurrentAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.195{{ $noindex }}' + descr: 'BMS 15 Charge Discharge Current Alarm Status' + index: 'BMS15-ChargeDischargeCurrentAlarmStatus' + group: 'BMS 15' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-Current + op: '=' + value: 0 + - + oid: SUPERCAPBATTERY-MIB::BMS15-BatteryVoltageAlarmStatus + value: SUPERCAPBATTERY-MIB::BMS15-BatteryVoltageAlarmStatus + num_oid: '.1.3.6.1.2.1.555.1.1.1.196{{ $noindex }}' + descr: 'BMS 15 Battery Voltage Alarm Status' + index: 'BMS15-BatteryVoltageAlarmStatus' + group: 'BMS 15' + state_name: supercapStatus + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "Warning", graph: 1, generic: 1 } + - { value: 2, descr: "Alarm", graph: 1, generic: 2 } + skip_values: + - + oid: SUPERCAPBATTERY-MIB::BMS15-Voltage + op: '=' + value: 0 \ No newline at end of file diff --git a/priv/profiles/os_discovery/supermicro-bmc.yaml b/priv/profiles/os_discovery/supermicro-bmc.yaml new file mode 100644 index 00000000..e7075adf --- /dev/null +++ b/priv/profiles/os_discovery/supermicro-bmc.yaml @@ -0,0 +1,228 @@ +mib: ATEN-IPMI-MIB +modules: + os: + hardware: ATEN-IPMI-MIB::productPartNumber.0 + version: + - ATEN-IPMI-MIB::bmcMajorVesion.0 + - ATEN-IPMI-MIB::bmcMinorVesion.0 + - ATEN-IPMI-MIB::bmcBuildVesion.0 + version_template: '{{ ATEN-IPMI-MIB::bmcMajorVesion.0 }}.{{ ATEN-IPMI-MIB::bmcMinorVesion.0 }}.{{ ATEN-IPMI-MIB::bmcBuildVesion.0 }}' + features: ATEN-IPMI-MIB::biosVesion.0 + features_template: "Bios {{ ATEN-IPMI-MIB::biosVesion.0 }}" + serial: ATEN-IPMI-MIB::productSerialNumber.0 + sysName: ATEN-IPMI-MIB::hostName.0 + sensors: + temperature: + data: + - + oid: temperature1 + value: temperature1 + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.9.{{ $index }}' + descr: 'PSU {{ $index }} Temperature 1' + index: 'temperature1.{{ $index }}' + skip_values: + - + oid: psuStatus + op: '=' + value: 0 + - + oid: temperature2 + value: temperature2 + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.10.{{ $index }}' + descr: 'PSU {{ $index }} Temperature 2' + index: 'temperature2.{{ $index }}' + skip_values: + - + oid: psuStatus + op: '=' + value: 0 + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: 'sensorReading.{{ $index }}' + skip_values: + - + oid: sensorIDString + op: 'not_contains' + value: "Temp" + - + oid: lcThreshold + op: '=' + value: 0 + low_warn_limit: lcThreshold + warn_limit: ucThreshold + low_limit: lnrThreshold + high_limit: unrThreshold + fanspeed: + data: + - + oid: fanRPM1 + value: fanRPM1 + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.11.{{ $index }}' + descr: 'PSU {{ $index }} Fan 1' + index: 'fanRPM1.{{ $index }}' + skip_values: 0 + - + oid: fanRPM2 + value: fanRPM2 + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.12.{{ $index }}' + descr: 'PSU {{ $index }} Fan 2' + index: 'fanRPM2.{{ $index }}' + skip_values: 0 + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: 'sensorReading.{{ $index }}' + skip_values: + - + oid: sensorIDString + op: 'not_contains' + value: "FAN" + - + oid: lcThreshold + op: '=' + value: 0 + low_warn_limit: lcThreshold + warn_limit: ucThreshold + low_limit: lnrThreshold + high_limit: unrThreshold + voltage: + data: + - + oid: inputVoltage + value: inputVoltage + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.3.{{ $index }}' + descr: 'PSU {{ $index }} Input Voltage' + index: 'inputVoltage.{{ $index }}' + skip_values: + - + oid: psuStatus + op: '=' + value: 0 + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: 'sensorReading.{{ $index }}' + skip_values: + - + oid: sensorIDString + op: 'not_contains' + value: "V" + - + oid: sensorIDString + op: 'contains' + value: "Temp" + - + oid: sensorIDString + op: 'in_array' + value: ['VBAT'] + low_warn_limit: lcThreshold + warn_limit: ucThreshold + low_limit: lnrThreshold + high_limit: unrThreshold + current: + data: + - + oid: inputCurrent + value: inputCurrent + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.4.{{ $index }}' + descr: 'PSU {{ $index }} Input Current' + index: 'inputCurrent.{{ $index }}' + skip_values: + - + oid: psuStatus + op: '=' + value: 0 + power: + data: + - + oid: inputPower + value: inputPower + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.5.{{ $index }}' + descr: 'PSU {{ $index }} Input Power' + index: 'inputPower.{{ $index }}' + skip_values: + - + oid: psuStatus + op: '=' + value: 0 + + state: + data: + - + oid: psuStatus + value: psuStatus + num_oid: '.1.3.6.1.4.1.21317.1.14.2.1.2.{{ $index }}' + descr: 'PSU {{ $index }} Status' + index: 'psuStatus.{{ $index }}' + states: + - { value: 0, descr: "Not Present", graph: 1, generic: 2 } + - { value: 1, descr: "Present: OK" , graph: 1, generic: 0 } + - { value: 3, descr: "Present: Failed" , graph: 1, generic: 2 } + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: 'sensorReading.{{ $index }}' + skip_values: + - + oid: sensorIDString + op: '!=' + value: "Chassis Intru" + state_name: "Chassis Intru" + states: + - { value: 0, descr: "OK", graph: 1, generic: 0 } + - { value: 1, descr: "General Chassis Intrusion." , graph: 1, generic: 2 } + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: 'sensorReading.{{ $index }}' + skip_values: + - + oid: sensorIDString + op: '!=' + value: "VBAT" + state_name: "VBAT" + states: + - { value: 0, descr: "Not Present", graph: 1, generic: 2 } + - { value: 2, descr: "Present: Failed", graph: 1, generic: 2 } + - { value: 4, descr: "Present: OK" , graph: 1, generic: 0 } + - + oid: sensorTable + value: sensorReading + num_oid: '.1.3.6.1.4.1.21317.1.3.1.2.{{ $index }}' + descr: sensorIDString + index: sensorTableSensorNr.{{ $index }} + state_name: smSensorState + skip_values: + - + oid: sensorIDString + op: 'not_contains' + value: 'Status' + - + oid: sensorIDString + op: 'regex' + value: "/^PS. Status/" + states: + - { descr: On, graph: 1, value: 1, generic: 0 } + - { descr: Off, graph: 1, value: 0, generic: 2 } + - + oid: powerStatus + value: powerStatus + num_oid: '.1.3.6.1.4.1.21317.1.4.{{ $index }}' + descr: 'Power Status {{ $index }}' + index: powerStatusSensorNr.{{ $index }} + state_name: smPowerState + states: + - { descr: On, graph: 1, value: 1, generic: 0 } + - { descr: Off, graph: 1, value: 0, generic: 2 } + - { descr: Reset, graph: 1, value: 2, generic: 1 } diff --git a/priv/profiles/os_discovery/supervyse-openbmc.yaml b/priv/profiles/os_discovery/supervyse-openbmc.yaml new file mode 100644 index 00000000..0f7427e6 --- /dev/null +++ b/priv/profiles/os_discovery/supervyse-openbmc.yaml @@ -0,0 +1,19 @@ +modules: + os: + hardware: SNMPv2-MIB::sysDescr.0 + version: INSYDE-IPMI-MIB::bmcFWversion.0 + serial: INSYDE-IPMI-MIB::baseboardSN.0 + sensors: + state: + data: + - + oid: INSYDE-IPMI-MIB::hostPwrStatus + value: INSYDE-IPMI-MIB::hostPwrStatus + num_oid: '.1.3.6.1.4.1.45065.1.1.1.1.{{ $index }}' + descr: 'Host {{ $index }} Status' + index: 'hostPwrStatus.{{ $index }}' + state_name: hostPwrStatus + states: + - { descr: "OFF", graph: 1, value: 0, generic: 2 } + - { descr: "ON", graph: 1, value: 1, generic: 0 } + - { descr: "RESET", graph: 1, value: 2, generic: 1 } diff --git a/priv/profiles/os_discovery/swos.yaml b/priv/profiles/os_discovery/swos.yaml new file mode 100644 index 00000000..125b8df4 --- /dev/null +++ b/priv/profiles/os_discovery/swos.yaml @@ -0,0 +1,321 @@ +modules: + os: + sysDescr_regex: '/(?.*)\sSwOS\s(?.*)/' + serial: MIKROTIK-MIB::mtxrSerialNumber.0 + version: MIKROTIK-MIB::mtxrFirmwareVersion.0 + sensors: + additional_oids: + data: + - + oid: + - MIKROTIK-MIB::mtxrInterfaceStatsName + temperature: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.6.{{ $index }}' + descr: MIKROTIK-MIB::mtxrOpticalName + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'mtxrOpticalTemperature.{{ $index }}' + skip_value_gt: 25000 + skip_values: + - oid: MIKROTIK-MIB::mtxrOpticalName + op: '==' + value: "" + - + oid: MIKROTIK-MIB::mtxrHlSensorTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.3.5.{{ $index }}' + group: System + divisor: 10 + descr: 'Sensor chip' + index: 'mtxrHlSensorTemperature.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlCpuTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.3.6.{{ $index }}' + group: System + divisor: 10 + descr: 'Processor' + index: 'mtxrHlCpuTemperature.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlBoardTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.3.7.{{ $index }}' + group: System + divisor: 10 + descr: 'System board' + index: 'mtxrHlBoardTemperature.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.3.10.{{ $index }}' + group: System + index: 0 + divisor: 10 + descr: 'Temperature {{ $index }}' + low_limit: -40 + low_warn_limit: -35 + warn_limit: 65 + high_limit: 70 + - + oid: MIKROTIK-MIB::mtxrHlProcessorTemperature + num_oid: '.1.3.6.1.4.1.14988.1.1.3.11.{{ $index }}' + group: System + index: 1 + divisor: 10 + descr: 'Processor Temperature {{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.52 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: 'CPU Temperature' + group: System + index: 'mtxrGaugeTemperature.{{ $index }}' + voltage: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalSupplyVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.7.{{ $index }}' + divisor: 1000 + descr: MIKROTIK-MIB::mtxrOpticalName + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'mtxrOpticalSupplyVoltage.{{ $index }}' + skip_values: + - + oid: MIKROTIK-MIB::mtxrOpticalName + op: '==' + value: "" + - + oid: MIKROTIK-MIB::mtxrOpticalSupplyVoltage + op: '==' + value: 0 + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.4.{{ $index }}' + divisor: 10 + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + index: 'mtxrPOEVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.7201 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: 'PSU1 Voltage' + group: System + divisor: 100 + index: 'mtxrGaugeVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.7202 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + descr: 'PSU2 Voltage' + group: System + divisor: 100 + index: 'mtxrGaugeVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlCoreVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.1.{{ $index }}' + group: System + descr: 'Core' + index: 'mtxrHlCoreVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlThreeDotThreeVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.2.{{ $index }}' + descr: '3.3V' + index: 'mtxrHlThreeDotThreeVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlFiveVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.3.{{ $index }}' + descr: '5V' + index: 'mtxrHlFiveVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlTwelveVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.4.{{ $index }}' + descr: '12V' + index: 'mtxrHlTwelveVoltage.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlVoltage + num_oid: '.1.3.6.1.4.1.14988.1.1.3.8.{{ $index }}' + group: System + divisor: 10 + descr: 'Voltage {{ $index }}' + current: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxBiasCurrent + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.8.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx Bias' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalTxBiasCurrent.{{ $index }}' + skip_values: + - + oid: MIKROTIK-MIB::mtxrOpticalName + op: '==' + value: "" + - + oid: MIKROTIK-MIB::mtxrOpticalTxBiasCurrent + op: '==' + value: 0 + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOECurrent + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.5.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + divisor: 1000 + index: 'mtxrPOECurrent.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.7301 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + group: System + divisor: 1000 + descr: 'PSU1 Current' + index: 'mtxrGaugeCurrent.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.7302 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + group: System + divisor: 1000 + descr: 'PSU2 Current' + index: 'mtxrGaugeCurrent.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlCurrent + num_oid: '.1.3.6.1.4.1.14988.1.1.3.13.{{ $index }}' + divisor: 1000 + descr: 'Current' + index: '0' + dbm: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxPower + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.9.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalTxPower.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalRxPower + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.10.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + divisor: 1000 + index: 'mtxrOpticalRxPower.{{ $index }}' + state: + data: + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalRxLoss + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.3.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Rx' + group: Ports + index: 'mtxrOpticalRxLoss.{{ $index }}' + state_name: mtxrOpticalRxLoss + states: + - { descr: no, graph: 1, value: 0, generic: 0 } + - { descr: yes, graph: 1, value: 1, generic: 2 } + - { descr: 'null', graph: 1, value: 2, generic: 3 } + - + oid: MIKROTIK-MIB::mtxrOpticalTable + value: MIKROTIK-MIB::mtxrOpticalTxFault + num_oid: '.1.3.6.1.4.1.14988.1.1.19.1.1.4.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrOpticalName }} Tx' + group: Ports + index: 'mtxrOpticalTxFault.{{ $index }}' + state_name: mtxrOpticalTxFault + states: + - { descr: no, graph: 1, value: 0, generic: 0 } + - { descr: yes, graph: 1, value: 1, generic: 2 } + - { descr: 'null', graph: 1, value: 2, generic: 3 } + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEStatus + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.3.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + index: 'mtxrPOEStatus.{{ $index }}' + state_name: mtxrPOEStatus + states: + - { descr: 'disabled', graph: 1, value: 1, generic: 3 } + - { descr: 'waitingForLoad', graph: 1, value: 2, generic: 3 } + - { descr: 'poweredOn', graph: 1, value: 3, generic: 0 } + - { descr: 'overload', graph: 1, value: 4, generic: 2 } + - { descr: 'shortCircuit', graph: 1, value: 5, generic: 3 } + - { descr: 'voltageTooLow', graph: 1, value: 6, generic: 2 } + - { descr: 'currentTooLow', graph: 1, value: 7, generic: 2 } + - { descr: 'powerReset', graph: 1, value: 8, generic: 1 } + - { descr: 'voltageTooHigh', graph: 1, value: 9, generic: 2 } + - { descr: 'controllerError', graph: 1, value: 10, generic: 2 } + - { descr: 'noValidPsu', graph: 1, value: 13, generic: 2 } + - { descr: 'controllerInit', graph: 1, value: 14, generic: 1 } + - { descr: 'lowVoltageTooLow', graph: 1, value: 15, generic: 2 } + - + oid: MIKROTIK-MIB::mtxrHlPowerSupplyState + num_oid: '.1.3.6.1.4.1.14988.1.1.3.15.{{ $index }}' + descr: Primary PSU + index: 'mtxrHlPowerSupplyState.{{ $index }}' + state_name: mtxrHlPowerSupplyState + states: + - { value: 0, generic: 2, graph: 1, descr: 'false' } + - { value: 1, generic: 0, graph: 1, descr: 'true' } + - + oid: MIKROTIK-MIB::mtxrHlBackupPowerSupplyState + num_oid: '.1.3.6.1.4.1.14988.1.1.3.16.{{ $index }}' + descr: Backup PSU + index: 'mtxrHlBackupPowerSupplyState.{{ $index }}' + state_name: mtxrHlBackupPowerSupplyState + states: + - { value: 0, generic: 2, graph: 1, descr: 'false' } + - { value: 1, generic: 0, graph: 1, descr: 'true' } + power: + data: + - + oid: MIKROTIK-MIB::mtxrPOETable + value: MIKROTIK-MIB::mtxrPOEPower + num_oid: '.1.3.6.1.4.1.14988.1.1.15.1.1.6.{{ $index }}' + descr: '{{ MIKROTIK-MIB::mtxrPOEName }} POE' + group: Ports + divisor: 10 + index: 'mtxrPOEPower.{{ $index }}' + - + oid: MIKROTIK-MIB::mtxrHlPower + num_oid: '.1.3.6.1.4.1.14988.1.1.3.12.{{ $index }}' + group: System + divisor: 10 + descr: 'Power Consuption' + index: '1' + - + oid: MIKROTIK-MIB::mtxrGaugeTable.1.3.16 + value: MIKROTIK-MIB::mtxrGaugeValue + num_oid: '.1.3.6.1.4.1.14988.1.1.3.100.1.3.{{ $index }}' + group: System + divisor: 10 + descr: 'Power Consumption' + index: 'mtxrGaugePower.{{ $index }}' + fanspeed: + data: + - + oid: MIKROTIK-MIB::mtxrHlFanSpeed1 + num_oid: '.1.3.6.1.4.1.14988.1.1.3.17.{{ $index }}' + descr: 'Fan #1' + index: '0' + - + oid: MIKROTIK-MIB::mtxrHlFanSpeed2 + num_oid: '.1.3.6.1.4.1.14988.1.1.3.18.{{ $index }}' + descr: 'Fan #2' + index: '1' diff --git a/priv/profiles/os_discovery/symbol.yaml b/priv/profiles/os_discovery/symbol.yaml new file mode 100644 index 00000000..efb78f25 --- /dev/null +++ b/priv/profiles/os_discovery/symbol.yaml @@ -0,0 +1,5 @@ +modules: + os: + version: .1.3.6.1.4.1.388.11.2.2.1.3.2.0 + serial: .1.3.6.1.4.1.388.11.2.2.1.1.0 + sysDescr_regex: '/^(Symbol )?(?\w*).*(, Version |SW=|S\/W rev: )(?\S+)/' diff --git a/priv/profiles/os_discovery/tachyon.yaml b/priv/profiles/os_discovery/tachyon.yaml new file mode 100644 index 00000000..6618149c --- /dev/null +++ b/priv/profiles/os_discovery/tachyon.yaml @@ -0,0 +1,167 @@ +mib: TACHYON-MIB + +modules: + + os: + version: TACHYON-MIB::firmwareVersion.0 + serial: TACHYON-MIB::deviceSerialNo.0 + hardware: TACHYON-MIB::deviceModel.0 + + mempools: + data: + - + percent_used: TACHYON-MIB::memoryUsagePercent + processors: + data: + - + oid: cpuUsagePercent + num_oid: '.1.3.6.1.4.1.57344.1.3.6.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - wirelessPeerMac + - wirelessPeerName + + temperature: + data: + - + oid: cpuTemperature + num_oid: ".1.3.6.1.4.1.57344.1.3.3.{{ $index }}" + descr: CPU temperature + index: "cpuTemperature.{{ $index }}" + low_limit: -40 + high_limit: 75 + - + oid: wirelessRadioTemperature + num_oid: ".1.3.6.1.4.1.57344.1.2.2.1.11.{{ $index }}" + descr: Radio temperature + index: "wirelessRadioTemperature.{{ $index }}" + low_limit: -40 + high_limit: 75 + - + oid: wirelessRadioModemTemperature + num_oid: ".1.3.6.1.4.1.57344.1.2.2.1.10.{{ $index }}" + descr: Radio Modem temperature + index: "wirelessRadioModemTemperature.{{ $index }}" + low_limit: -40 + high_limit: 75 + + frequency: + data: + - + oid: wirelessRadioFrequency + num_oid: ".1.3.6.1.4.1.57344.1.2.2.1.5.{{ $index }}" + descr: Frequency + index: "wirelessRadioFrequency.{{ $index }}" + multiplier: 1000000 + + - + oid: wirelessRadioChannelWidth + num_oid: ".1.3.6.1.4.1.57344.1.2.2.1.6.{{ $index }}" + descr: Channel widht + index: "wirelessRadioChannelWidth.{{ $index }}" + multiplier: 1000000 + + + count: + data: + - + oid: wirelessPeersCount + num_oid: ".1.3.6.1.4.1.57344.1.2.5.{{ $index }}" + descr: Station + index: "wirelessPeersCount.{{ $index }}" + + runtime: + data: + - + oid: wirelessPeerLinkUptime + num_oid: ".1.3.6.1.4.1.57344.1.2.6.1.12.{{ $index }}" + descr: 'Link up ({{ $wirelessPeerMac }})' + index: "wirelessPeerLinkUptime.{{ $index }}" + divisor: 60 + + state: + data: + - + oid: wirelessVapOperationMode + num_oid: '.1.3.6.1.4.1.57344.1.2.4.1.5.{{ $index }}' + descr: Mode + index: 'wirelessVapOperationMode.{{ $index }}' + group: Wireless + state_name: wirelessVapOperationMode + states: + - { descr: master, graph: 1, value: 0, generic: 0 } + - { descr: no-connection, graph: 1, value: 1, generic: 2 } + - { descr: stations, graph: 1, value: 2, generic: 0 } + + - + oid: wirelessVapSecurity + num_oid: '.1.3.6.1.4.1.57344.1.2.4.1.8.{{ $index }}' + descr: Security mode + index: 'wirelessVapSecurity.{{ $index }}' + group: Wireless + state_name: wirelessVapSecurity + states: + - { descr: Open, graph: 1, value: 0, generic: 0 } + - { descr: WPA2-PSK (GCMP), graph: 1, value: 1, generic: 0 } + + - + oid: wirelessPeerAntennaKit + num_oid: '.1.3.6.1.4.1.57344.1.2.2.1.8.{{ $index }}' + descr: '{{ $wirelessPeerMac }}' + group: 'Antenna kit' + index: 'wirelessPeerAntennaKit.{{ $index }}' + state_name: wirelessPeerAntennaKit + states: + - { descr: none, graph: 1, value: 0, generic: 0 } + - { descr: ak-100, graph: 1, value: 1, generic: 0 } + - { descr: ak-150, graph: 1, value: 2, generic: 0 } + - { descr: ak-300, graph: 1, value: 3, generic: 0 } + - { descr: ak-s-45, graph: 1, value: 4, generic: 0 } + - { descr: ak-s-90, graph: 1, value: 4, generic: 0 } + + - + oid: wirelessPeerTxMcs + num_oid: '.1.3.6.1.4.1.57344.1.2.6.1.10.{{ $index }}' + descr: 'MCS TX ({{ $wirelessPeerMac }})' + group: 'MCS {{ $wirelessPeerMac }}' + index: wirelessPeerTxMcs.{{ $index }} + states: + - { value: 0, descr: mcs0, graph: 1, generic: 1 } + - { value: 1, descr: mcs1, graph: 1, generic: 1 } + - { value: 2, descr: mcs2, graph: 1, generic: 1 } + - { value: 3, descr: mcs3, graph: 1, generic: 1 } + - { value: 4, descr: mcs4, graph: 1, generic: 2 } + - { value: 5, descr: mcs5, graph: 1, generic: 2 } + - { value: 6, descr: mcs6, graph: 1, generic: 2 } + - { value: 7, descr: mcs7, graph: 1, generic: 2 } + - { value: 8, descr: mcs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10, graph: 1, generic: 0 } + - { value: 11, descr: mcs11, graph: 1, generic: 0 } + - { value: 12, descr: mcs12, graph: 1, generic: 0 } + - { value: 13, descr: mcs13, graph: 1, generic: 0 } + + - + oid: wirelessPeerRxMcs + num_oid: '.1.3.6.1.4.1.57344.1.2.6.1.11.{{ $index }}' + descr: 'MCS RX ({{ $wirelessPeerMac }})' + group: 'MCS {{ $wirelessPeerMac }}' + index: wirelessPeerRxMcs.{{ $index }} + states: + - { value: 0, descr: mcs0, graph: 1, generic: 1 } + - { value: 1, descr: mcs1, graph: 1, generic: 1 } + - { value: 2, descr: mcs2, graph: 1, generic: 1 } + - { value: 3, descr: mcs3, graph: 1, generic: 1 } + - { value: 4, descr: mcs4, graph: 1, generic: 2 } + - { value: 5, descr: mcs5, graph: 1, generic: 2 } + - { value: 6, descr: mcs6, graph: 1, generic: 2 } + - { value: 7, descr: mcs7, graph: 1, generic: 2 } + - { value: 8, descr: mcs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10, graph: 1, generic: 0 } + - { value: 11, descr: mcs11, graph: 1, generic: 0 } + - { value: 12, descr: mcs12, graph: 1, generic: 0 } + - { value: 13, descr: mcs13, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/tailyn.yaml b/priv/profiles/os_discovery/tailyn.yaml new file mode 100644 index 00000000..d8b39b46 --- /dev/null +++ b/priv/profiles/os_discovery/tailyn.yaml @@ -0,0 +1,109 @@ +modules: + os: + hardware: ENTITY-MIB::entPhysicalModelName.1 + version: IMP-HF528-MIB::iswSdpSwVersion.0 + features: IMP-HF528-MIB::iswSdpProductModel.0 + processors: + data: + - + oid: IMP-HF528-MIB::iswCPULoading + num_oid: '.1.3.6.1.4.1.5833.2017.3.15.1.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - IMP-HF528-MIB::iswUpShiftThreshold + - IMP-HF528-MIB::iswDownShiftThreshold + temperature: + data: + - + oid: IMP-HF528-MIB::iswDDMITable + value: IMP-HF528-MIB::iswDDMIA2CurrentTemperature + num_oid: '.1.3.6.1.4.1.5833.2017.4.12.2.1.9.{{ $index }}' + descr: 'GE-{{ $index }} Temperature' + index: 'iswDDMIA2CurrentTemperature.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDDMIA2TemperatureLowAlarmThreshold + low_warn_limit: IMP-HF528-MIB::iswDDMIA2TemperatureLowWarnThreshold + warn_limit: IMP-HF528-MIB::iswDDMIA2TemperatureHighWarnThreshold + high_limit: IMP-HF528-MIB::iswDDMIA2TemperatureHighAlarmThreshold + skip_values: + - + oid: IMP-HF528-MIB::iswDDMISfpDetected + op: '==' + value: 2 + - + oid: IMP-HF528-MIB::iswCurrentCpuTemperature + value: IMP-HF528-MIB::iswCurrentCpuTemperature + num_oid: '.1.3.6.1.4.1.5833.2017.4.11.1.{{ $index }}' + descr: 'Processor {{ $index }} Temperature' + index: 'iswCurrentCpuTemperature.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDownShiftThreshold + high_limit: IMP-HF528-MIB::iswUpShiftThreshold + voltage: + data: + - + oid: IMP-HF528-MIB::iswDDMITable + value: IMP-HF528-MIB::iswDDMIA2CurrentVoltage + num_oid: '.1.3.6.1.4.1.5833.2017.4.12.2.1.14.{{ $index }}' + descr: 'GE-{{ $index }} Voltage' + index: 'iswDDMIA2CurrentVoltage.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDDMIA2VoltageLowAlarmThreshold + low_warn_limit: IMP-HF528-MIB::iswDDMIA2VoltageLowWarnThreshold + warn_limit: IMP-HF528-MIB::iswDDMIA2VoltageHighWarnThreshold + high_limit: IMP-HF528-MIB::iswDDMIA2VoltageHighAlarmThreshold + skip_values: + - + oid: IMP-HF528-MIB::iswDDMISfpDetected + op: '==' + value: 2 + current: + data: + - + oid: IMP-HF528-MIB::iswDDMITable + value: IMP-HF528-MIB::iswDDMIA2CurrentTxBias + num_oid: '.1.3.6.1.4.1.5833.2017.4.12.2.1.19.{{ $index }}' + descr: 'GE-{{ $index }} Tx Bias' + divisor: 1000 + index: 'iswDDMIA2CurrentTxBias.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDDMIA2TxBiasLowAlarmThreshold + low_warn_limit: IMP-HF528-MIB::iswDDMIA2TxBiasLowWarnThreshold + warn_limit: IMP-HF528-MIB::iswDDMIA2TxBiasHighWarnThreshold + high_limit: IMP-HF528-MIB::iswDDMIA2TxBiasHighAlarmThreshold + skip_values: + - + oid: IMP-HF528-MIB::iswDDMISfpDetected + op: '==' + value: 2 + dbm: + data: + - + oid: IMP-HF528-MIB::iswDDMITable + value: IMP-HF528-MIB::iswDDMIA2CurrentTxPower + num_oid: '.1.3.6.1.4.1.5833.2017.4.12.2.1.24.{{ $index }}' + descr: 'GE-{{ $index }} Tx Power' + index: 'iswDDMIA2CurrentTxPower.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDDMIA2TxPowerLowAlarmThreshold + low_warn_limit: IMP-HF528-MIB::iswDDMIA2TxPowerLowWarnThreshold + high_limit: IMP-HF528-MIB::iswDDMIA2TxPowerHighAlarmThreshold + warn_limit: IMP-HF528-MIB::iswDDMIA2TxPowerHighWarnThreshold + skip_values: + - + oid: IMP-HF528-MIB::iswDDMISfpDetected + op: '==' + value: 2 + - + oid: IMP-HF528-MIB::iswDDMITable + value: IMP-HF528-MIB::iswDDMIA2CurrentRxPower + num_oid: '.1.3.6.1.4.1.5833.2017.4.12.2.1.29.{{ $index }}' + descr: 'GE-{{ $index }} Rx Power' + index: 'iswDDMIA2CurrentRxPower.{{ $index }}' + low_limit: IMP-HF528-MIB::iswDDMIA2RxPowerLowAlarmThreshold + low_warn_limit: IMP-HF528-MIB::iswDDMIA2RxPowerLowWarnThreshold + high_limit: IMP-HF528-MIB::iswDDMIA2RxPowerHighAlarmThreshold + warn_limit: IMP-HF528-MIB::iswDDMIA2RxPowerHighWarnThreshold + skip_values: + - + oid: IMP-HF528-MIB::iswDDMISfpDetected + op: '==' + value: 2 diff --git a/priv/profiles/os_discovery/tait-infra93.yaml b/priv/profiles/os_discovery/tait-infra93.yaml new file mode 100644 index 00000000..4039a4fa --- /dev/null +++ b/priv/profiles/os_discovery/tait-infra93.yaml @@ -0,0 +1,1135 @@ +mib: TAIT-INFRA93SERIES-MIB +modules: + os: + sysDescr_regex: '/Tait Communications, (?[^,]+),/' + version: TAIT-INFRA93SERIES-MIB::rctInfoFirmwareVersion.0 + serial: TAIT-INFRA93SERIES-MIB::rctInfoSerialNumber.0 + sensors: + state: + data: + - + oid: infoGroup + value: infoTransmitterStatus + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.1.1.1.1.{{ $index }}' + descr: 'Transmitter Status' + group: Transmitter + index: 'infoTransmitterStatus.{{ $index }}' + state_name: infoTransmitterStatus + states: + - { descr: unknown, graph: 1, value: 0, generic: 3 } + - { descr: unconfigured, graph: 1, value: 1, generic: 3 } + - { descr: untuned, graph: 1, value: 2, generic: 1 } + - { descr: idle, graph: 1, value: 3, generic: 3 } + - { descr: transmitting, graph: 1, value: 4, generic: 0 } + - { descr: calibrating, graph: 1, value: 5, generic: 3 } + - { descr: fault, graph: 1, value: 6, generic: 2 } + - + oid: health + value: healthRunMode + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.1.1.2.2.{{ $index }}' + descr: 'DMR BS Health Status' + group: DMRHealth + index: 'healthRunMode.{{ $index }}' + state_name: healthRunMode + states: + - { descr: offline, graph: 1, value: 0, generic: 3 } + - { descr: online, graph: 1, value: 1, generic: 0 } + - { descr: unknown, graph: 1, value: 2, generic: 1 } + - + oid: health + value: healthNetworkConnLogChan1State + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.1.1.2.3.{{ $index }}' + descr: 'State of Logical Ch 1' + group: DMRHealth + index: 'healthNetworkConnLogChan1State.{{ $index }}' + state_name: healthNetworkConnLogChan1State + states: + - { descr: inactive, graph: 1, value: 0, generic: 3 } + - { descr: idle, graph: 1, value: 1, generic: 3 } + - { descr: traffic, graph: 1, value: 2, generic: 0 } + - { descr: control, graph: 1, value: 3, generic: 0 } + - { descr: test, graph: 1, value: 4, generic: 3 } + - { descr: poll, graph: 1, value: 5, generic: 3 } + - { descr: invalid, graph: 1, value: 255, generic: 2 } + - + oid: health + value: healthNetworkConnLogChan2State + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.1.1.2.4.{{ $index }}' + descr: 'State of Logical Ch 2' + group: DMRHealth + index: 'healthNetworkConnLogChan2State.{{ $index }}' + state_name: healthNetworkConnLogChan2State + states: + - { descr: inactive, graph: 1, value: 0, generic: 3 } + - { descr: idle, graph: 1, value: 1, generic: 3 } + - { descr: traffic, graph: 1, value: 2, generic: 0 } + - { descr: control, graph: 1, value: 3, generic: 0 } + - { descr: test, graph: 1, value: 4, generic: 3 } + - { descr: poll, graph: 1, value: 5, generic: 3 } + - { descr: invalid, graph: 1, value: 255, generic: 2 } + - + oid: pmuState + value: pmuStateMainsInState + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.1.{{ $index }}' + descr: 'PMU AC power input state' + group: PMUState + index: 'pmuStateMainsInState.{{ $index }}' + state_name: pmuStateMainsInState + states: + - { descr: bad, graph: 1, value: 0, generic: 1 } + - { descr: good, graph: 1, value: 1, generic: 0 } + - { descr: not fitted, graph: 1, value: 2, generic: 3 } + - + oid: pmuState + value: pmuStateOutStatus + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.6.{{ $index }}' + descr: 'PMU power supply to the PA state' + group: PMUState + index: 'pmuStateOutStatus.{{ $index }}' + state_name: pmuStateOutStatus + states: + - { descr: bad, graph: 1, value: 0, generic: 1 } + - { descr: good, graph: 1, value: 1, generic: 0 } + - { descr: not fitted, graph: 1, value: 2, generic: 3 } + - + oid: pmuState + value: pmuStateAuxOutState + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.7.{{ $index }}' + descr: 'Auxiliary power output state' + group: PMUState + index: 'pmuStateAuxOutState.{{ $index }}' + state_name: pmuStateAuxOutState + states: + - { descr: bad, graph: 1, value: 0, generic: 1 } + - { descr: good, graph: 1, value: 1, generic: 0 } + - { descr: not fitted, graph: 1, value: 2, generic: 3 } + - + oid: pmuState + value: pmuStateBatteryInState + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.2.{{ $index }}' + descr: 'PMU DC power input state' + group: PMUState + index: 'pmuStateBatteryInState.{{ $index }}' + state_name: pmuStateBatteryInState + states: + - { descr: bad, graph: 1, value: 0, generic: 1 } + - { descr: good, graph: 1, value: 1, generic: 0 } + - { descr: not fitted, graph: 1, value: 2, generic: 3 } + skip_values: + - + oid: pmuStateBusConnect + op: '=' + value: '2' + - + oid: pmuState + value: pmuStateBusConnect + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.9.{{ $index }}' + descr: 'DC supply to the PMU state' + group: PMUState + index: 'pmuStateBusConnect.{{ $index }}' + state_name: pmuStateBusConnect + states: + - { descr: connected, graph: 1, value: 1, generic: 0 } + - { descr: not connected, graph: 1, value: 2, generic: 3 } + - + oid: linkInfo + value: linkInfoCtrlProtocolStatus + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.4.1.1.1.{{ $index }}' + descr: 'Status of the BS' + group: LinkInfo + index: 'linkInfoCtrlProtocolStatus.{{ $index }}' + state_name: linkInfoCtrlProtocolStatus + states: + - { descr: unconnected, graph: 1, value: 0, generic: 1 } + - { descr: deprecatedUnconnected, graph: 1, value: 1, generic: 1 } + - { descr: standby, graph: 1, value: 2, generic: 3 } + - { descr: dmr-aligned, graph: 1, value: 3, generic: 0 } + - { descr: dmr-offset, graph: 1, value: 4, generic: 3 } + - { descr: dmr-two-slot-data, graph: 1, value: 5, generic: 0 } + - { descr: dmr-hibernate, graph: 1, value: 6, generic: 3 } + - { descr: analogue, graph: 1, value: 7, generic: 3 } + - { descr: test-mode, graph: 1, value: 8, generic: 3 } + - { descr: dmr-tier2-aligned, graph: 1, value: 9, generic: 0 } + - + oid: alarmSummary + value: alarmSummaryBaseStation + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.1.{{ $index }}' + descr: 'BS Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryBaseStation.{{ $index }}' + state_name: alarmSummaryBaseStation + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryReciter + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.2.{{ $index }}' + descr: 'Reciter Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryReciter.{{ $index }}' + state_name: alarmSummaryReciter + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryPowerAmplifier + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.3.{{ $index }}' + descr: 'Power Amplifier (PA) Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryPowerAmplifier.{{ $index }}' + state_name: alarmSummaryPowerAmplifier + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryPowerManagementUnit + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.4.{{ $index }}' + descr: 'Power Management Unit (PMU) Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryPowerManagementUnit.{{ $index }}' + state_name: alarmSummaryPowerManagementUnit + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryCustomAlarms + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.5.{{ $index }}' + descr: 'Custom Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryCustomAlarms.{{ $index }}' + state_name: alarmSummaryCustomAlarms + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryFrontPanel + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.6.{{ $index }}' + descr: 'Front Pannel Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryFrontPanel.{{ $index }}' + state_name: alarmSummaryFrontPanel + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummarySystem + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.7.{{ $index }}' + descr: 'System Summary Alarm' + group: AlarmSummary + index: 'alarmSummarySystem.{{ $index }}' + state_name: alarmSummarySystem + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryMinor + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.8.{{ $index }}' + descr: 'Minor Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryMinor.{{ $index }}' + state_name: alarmSummaryMinor + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: alarmSummary + value: alarmSummaryMajor + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.1.9.{{ $index }}' + descr: 'Major Summary Alarm' + group: AlarmSummary + index: 'alarmSummaryMajor.{{ $index }}' + state_name: alarmSummaryMajor + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmRxSynthOutOfLock + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.2.{{ $index }}' + descr: 'Receiver synthesizer alarm' + group: ReciterAlarms + index: 'rctAlarmRxSynthOutOfLock.{{ $index }}' + state_name: rctAlarmRxSynthOutOfLock + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmInvalidChannelSelected + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.3.{{ $index }}' + descr: 'Channel invalid alarm' + group: ReciterAlarms + index: 'rctAlarmInvalidChannelSelected.{{ $index }}' + state_name: rctAlarmInvalidChannelSelected + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmOverTemperature + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.10.{{ $index }}' + descr: 'Temperature high alarm' + group: ReciterAlarms + index: 'rctAlarmOverTemperature.{{ $index }}' + state_name: rctAlarmOverTemperature + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmTxCalibrationInvalid + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.13.{{ $index }}' + descr: 'Transmitter calibration invalid alarm' + group: ReciterAlarms + index: 'rctAlarmTxCalibrationInvalid.{{ $index }}' + state_name: rctAlarmTxCalibrationInvalid + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmRxCalibrationInvalid + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.14.{{ $index }}' + descr: 'Reciter receiver calibration invalid alarm' + group: ReciterAlarms + index: 'rctAlarmRxCalibrationInvalid.{{ $index }}' + state_name: rctAlarmRxCalibrationInvalid + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmInvalidConfiguration + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.15.{{ $index }}' + descr: 'Reciter hardware configuration invalid alarm' + group: ReciterAlarms + index: 'rctAlarmInvalidConfiguration.{{ $index }}' + state_name: rctAlarmInvalidConfiguration + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarm25MHzSynthOutOfLock + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.16.{{ $index }}' + descr: 'Synthesizer 25 MHz out of lock alarm' + group: ReciterAlarms + index: 'rctAlarm25MHzSynthOutOfLock.{{ $index }}' + state_name: rctAlarm25MHzSynthOutOfLock + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarm6144MHzSynthOutOfLock + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.17.{{ $index }}' + descr: 'Synthesizer 61.44 MHz out of lock alarm' + group: ReciterAlarms + index: 'rctAlarm6144MHzSynthOutOfLock.{{ $index }}' + state_name: rctAlarm6144MHzSynthOutOfLock + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmTxFSynthOutOfLock + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.18.{{ $index }}' + descr: 'TxF synthesizer unable to lock to freq conf' + group: ReciterAlarms + index: 'rctAlarmTxFSynthOutOfLock.{{ $index }}' + state_name: rctAlarmTxFSynthOutOfLock + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmSimulcastSynch + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.19.{{ $index }}' + descr: 'Synch to common time ref for simulcast' + group: ReciterAlarms + index: 'rctAlarmSimulcastSynch.{{ $index }}' + state_name: rctAlarmSimulcastSynch + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmReceiverSynch + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.20.{{ $index }}' + descr: 'Receiver unsynchronized alarm' + group: ReciterAlarms + index: 'rctAlarmReceiverSynch.{{ $index }}' + state_name: rctAlarmReceiverSynch + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: reciterAlarms + value: rctAlarmTxRSynthOutOfLock + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.3.21.{{ $index }}' + descr: 'TxR synthesizer unable to lock on to the freq' + group: ReciterAlarms + index: 'rctAlarmTxRSynthOutOfLock.{{ $index }}' + state_name: rctAlarmTxRSynthOutOfLock + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmNoPADetected + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.1.{{ $index }}' + descr: 'PA not detected by Reciter' + group: PAAlarms + index: 'paAlarmNoPADetected.{{ $index }}' + state_name: paAlarmNoPADetected + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmInvalidFirmware + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.2.{{ $index }}' + descr: 'PA firmware invalid alarm' + group: PAAlarms + index: 'paAlarmInvalidFirmware.{{ $index }}' + state_name: paAlarmInvalidFirmware + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmInvalidCalibration + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.3.{{ $index }}' + descr: 'Invalid PA calibration alarm' + group: PAAlarms + index: 'paAlarmInvalidCalibration.{{ $index }}' + state_name: paAlarmInvalidCalibration + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmForwardPowerLow + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.5.{{ $index }}' + descr: 'PA Forward power low alarm' + group: PAAlarms + index: 'paAlarmForwardPowerLow.{{ $index }}' + state_name: paAlarmForwardPowerLow + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmPowerFoldback + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.7.{{ $index }}' + descr: 'PA Power foldback alarm' + group: PAAlarms + index: 'paAlarmPowerFoldback.{{ $index }}' + state_name: paAlarmPowerFoldback + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmReversePowerHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.8.{{ $index }}' + descr: 'PA Reverse power high alarm' + group: PAAlarms + index: 'paAlarmReversePowerHigh.{{ $index }}' + state_name: paAlarmReversePowerHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmShutdownImminent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.9.{{ $index }}' + descr: 'PA Shutdown alarm' + group: PAAlarms + index: 'paAlarmShutdownImminent.{{ $index }}' + state_name: paAlarmShutdownImminent + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmVSWRFault + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.10.{{ $index }}' + descr: 'PA VSWR alarm' + group: PAAlarms + index: 'paAlarmVSWRFault.{{ $index }}' + state_name: paAlarmVSWRFault + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmDriverCurrentHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.11.{{ $index }}' + descr: 'PA Driver current high alarm' + group: PAAlarms + index: 'paAlarmDriverCurrentHigh.{{ $index }}' + state_name: paAlarmDriverCurrentHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmFinal1CurrentHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.12.{{ $index }}' + descr: 'PA Final 1 current high alarm' + group: PAAlarms + index: 'paAlarmFinal1CurrentHigh.{{ $index }}' + state_name: paAlarmFinal1CurrentHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmFinal2CurrentHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.13.{{ $index }}' + descr: 'PA Final 2 current high alarm' + group: PAAlarms + index: 'paAlarmFinal2CurrentHigh.{{ $index }}' + state_name: paAlarmFinal2CurrentHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmCurrentImbalance + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.14.{{ $index }}' + descr: 'PA Current imbalance alarm' + group: PAAlarms + index: 'paAlarmCurrentImbalance.{{ $index }}' + state_name: paAlarmCurrentImbalance + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmSupplyVoltageLow + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.15.{{ $index }}' + descr: 'PA Supply voltage low alarm' + group: PAAlarms + index: 'paAlarmSupplyVoltageLow.{{ $index }}' + state_name: paAlarmSupplyVoltageLow + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmSupplyVoltageHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.16.{{ $index }}' + descr: 'PA Supply voltage low alarm' + group: PAAlarms + index: 'paAlarmSupplyVoltageHigh.{{ $index }}' + state_name: paAlarmSupplyVoltageHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmDriverTemperatureHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.17.{{ $index }}' + descr: 'PA Driver temp high alarm' + group: PAAlarms + index: 'paAlarmDriverTemperatureHigh.{{ $index }}' + state_name: paAlarmDriverTemperatureHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmFinal1TemperatureHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.18.{{ $index }}' + descr: 'PA Final1 Temp high alarm' + group: PAAlarms + index: 'paAlarmFinal1TemperatureHigh.{{ $index }}' + state_name: paAlarmFinal1TemperatureHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: paAlarms + value: paAlarmFinal2TemperatureHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.4.19.{{ $index }}' + descr: 'PA Final2 Temp high alarm' + group: PAAlarms + index: 'paAlarmFinal2TemperatureHigh.{{ $index }}' + state_name: paAlarmFinal2TemperatureHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmNoPMUDetected + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.1.{{ $index }}' + descr: 'PMU not detected alarm' + group: PMUAlarms + index: 'pmuAlarmNoPMUDetected.{{ $index }}' + state_name: pmuAlarmNoPMUDetected + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmInvalidFirmware + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.2.{{ $index }}' + descr: 'PMU firmware invalid alarm' + group: PMUAlarms + index: 'pmuAlarmInvalidFirmware.{{ $index }}' + state_name: pmuAlarmInvalidFirmware + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmMainsFailure + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.4.{{ $index }}' + descr: 'PMU Mains supply alarm' + group: PMUAlarms + index: 'pmuAlarmMainsFailure.{{ $index }}' + state_name: pmuAlarmMainsFailure + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmMainsFailure + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.4.{{ $index }}' + descr: 'PMU Mains supply alarm' + group: PMUAlarms + index: 'pmuAlarmMainsFailure.{{ $index }}' + state_name: pmuAlarmMainsFailure + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmSelfTestFailure + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.5.{{ $index }}' + descr: 'PMU Mains supply alarm' + group: PMUAlarms + index: 'pmuAlarmSelfTestFailure.{{ $index }}' + state_name: pmuAlarmSelfTestFailure + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmShutdownImminent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.6.{{ $index }}' + descr: 'PMU shutdown imminent alarm' + group: PMUAlarms + index: 'pmuAlarmShutdownImminent.{{ $index }}' + state_name: pmuAlarmShutdownImminent + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmTemperatureHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.7.{{ $index }}' + descr: 'PMU high temp alarm' + group: PMUAlarms + index: 'pmuAlarmTemperatureHigh.{{ $index }}' + state_name: pmuAlarmTemperatureHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmBatteryProtect + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.8.{{ $index }}' + descr: 'PMU battery protect alarm' + group: PMUAlarms + index: 'pmuAlarmBatteryProtect.{{ $index }}' + state_name: pmuAlarmBatteryProtect + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmBatteryVoltageLow + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.9.{{ $index }}' + descr: 'PMU Low Battery voltage alarm' + group: PMUAlarms + index: 'pmuAlarmBatteryVoltageLow.{{ $index }}' + state_name: pmuAlarmBatteryVoltageLow + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmBatteryVoltageHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.10.{{ $index }}' + descr: 'PMU High Battery voltage alarm' + group: PMUAlarms + index: 'pmuAlarmBatteryVoltageHigh.{{ $index }}' + state_name: pmuAlarmBatteryVoltageHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmCurrentOutHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.11.{{ $index }}' + descr: 'PMU high current alarm' + group: PMUAlarms + index: 'pmuAlarmCurrentOutHigh.{{ $index }}' + state_name: pmuAlarmCurrentOutHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmVoltageOutLow + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.12.{{ $index }}' + descr: 'PMU Output voltage low alarm' + group: PMUAlarms + index: 'pmuAlarmVoltageOutLow.{{ $index }}' + state_name: pmuAlarmVoltageOutLow + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: pmuAlarms + value: pmuAlarmVoltageOutHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.5.13.{{ $index }}' + descr: 'PMU Output high voltage alarm' + group: PMUAlarms + index: 'pmuAlarmVoltageOutHigh.{{ $index }}' + state_name: pmuAlarmVoltageOutHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmAmbientTempLow + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.1.{{ $index }}' + descr: 'Ambient temperature low alarm' + group: SystemAlarms + index: 'systemAlarmAmbientTempLow.{{ $index }}' + state_name: systemAlarmAmbientTempLow + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmAmbientTempHigh + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.2.{{ $index }}' + descr: 'Ambient temperature high alarm' + group: SystemAlarms + index: 'systemAlarmAmbientTempHigh.{{ $index }}' + state_name: systemAlarmAmbientTempHigh + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmExternalRefAbsent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.3.{{ $index }}' + descr: 'External freq ref absent alarm' + group: SystemAlarms + index: 'systemAlarmExternalRefAbsent.{{ $index }}' + state_name: systemAlarmExternalRefAbsent + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmQoSJitter + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.4.{{ $index }}' + descr: 'QoS jitter alarm' + group: SystemAlarms + index: 'systemAlarmQoSJitter.{{ $index }}' + state_name: systemAlarmQoSJitter + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmQoSLostPackets + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.5.{{ $index }}' + descr: 'QoS lost packets alarm' + group: SystemAlarms + index: 'systemAlarmQoSLostPackets.{{ $index }}' + state_name: systemAlarmQoSLostPackets + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmFallbackControlled + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.6.{{ $index }}' + descr: 'BS controlled by Embedded Node fallback mode' + group: SystemAlarms + index: 'systemAlarmFallbackControlled.{{ $index }}' + state_name: systemAlarmFallbackControlled + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmDuplicateNodePriority + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.7.{{ $index }}' + descr: 'BS Duplicate node priority' + group: SystemAlarms + index: 'systemAlarmDuplicateNodePriority.{{ $index }}' + state_name: systemAlarmDuplicateNodePriority + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmNTPSynchronisation + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.8.{{ $index }}' + descr: 'BS NTP unsynchronized' + group: SystemAlarms + index: 'systemAlarmNTPSynchronisation.{{ $index }}' + state_name: systemAlarmNTPSynchronisation + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarm1PPSAbsent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.9.{{ $index }}' + descr: 'PPS Absent' + group: SystemAlarms + index: 'systemAlarm1PPSAbsent.{{ $index }}' + state_name: systemAlarm1PPSAbsent + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmQoSTransmitBuffer + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.10.{{ $index }}' + descr: 'QoS Transmit Buffer alarm' + group: SystemAlarms + index: 'systemAlarmQoSTransmitBuffer.{{ $index }}' + state_name: systemAlarmQoSTransmitBuffer + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 1 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmCartesianLoopUnstable + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.11.{{ $index }}' + descr: 'PA cartesiaon loop alarm' + group: SystemAlarms + index: 'systemAlarmCartesianLoopUnstable.{{ $index }}' + state_name: systemAlarmCartesianLoopUnstable + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: systemAlarms + value: systemAlarmTxRCableAbsent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.8.12.{{ $index }}' + descr: 'PA feedback cable to reciter TxR alarm' + group: SystemAlarms + index: 'systemAlarmTxRCableAbsent.{{ $index }}' + state_name: systemAlarmTxRCableAbsent + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: fpAlarms + value: fpAlarmFan1 + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.7.1.{{ $index }}' + descr: 'Fan1 alarm' + group: FrontPanelAlarms + index: 'fpAlarmFan1.{{ $index }}' + state_name: fpAlarmFan1 + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: fpAlarms + value: fpAlarmFan2 + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.7.2.{{ $index }}' + descr: 'Fan2 alarm' + group: FrontPanelAlarms + index: 'fpAlarmFan2.{{ $index }}' + state_name: fpAlarmFan2 + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: fpAlarms + value: fpAlarmFan3 + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.7.3.{{ $index }}' + descr: 'Fan3 alarm' + group: FrontPanelAlarms + index: 'fpAlarmFan3.{{ $index }}' + state_name: fpAlarmFan3 + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: fpAlarms + value: fpAlarmNoFPDetected + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.7.4.{{ $index }}' + descr: 'No FrontPanel Detected alarm' + group: FrontPanelAlarms + index: 'fpAlarmNoFPDetected.{{ $index }}' + state_name: fpAlarmNoFPDetected + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + - + oid: fpAlarms + value: fpAlarmInvalidFirmware + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.3.7.5.{{ $index }}' + descr: 'FP Invalid Firmware' + group: FrontPanelAlarms + index: 'fpAlarmInvalidFirmware.{{ $index }}' + state_name: fpAlarmInvalidFirmware + states: + - { descr: unavailable, graph: 1, value: 0, generic: 3 } + - { descr: cleared, graph: 1, value: 1, generic: 0 } + - { descr: raised, graph: 1, value: 2, generic: 2 } + - { descr: disabled, graph: 1, value: 3, generic: 3 } + frequency: + data: + - + oid: rctSelectedChannel + value: rctSelectedChannelTxFreq + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.2.6.{{ $index }}' + descr: 'Transmit Frequency (Hz)' + index: 'rctSelectedChannelTxFreq.{{ $index }}' + group: Transmitter + - + oid: rctSelectedChannel + value: rctSelectedChannelRxFreq + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.2.7.{{ $index }}' + descr: 'Receive Frequency (Hz)' + index: 'rctSelectedChannelRxFreq.{{ $index }}' + group: Receiver + dbm: + data: + - + oid: rctRfReceiver + value: rctRfReceiverRSSI + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.4.1.{{ $index }}' + descr: 'RSSI (dBm)' + index: 'rctRfReceiverRSSI.{{ $index }}' + divisor: 100 + group: Receiver + - + oid: rctRfReceiver + value: rctRfReceiverLC1RSSI + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.4.2.{{ $index }}' + descr: 'RSSI logical ch 1 (dBm)' + index: 'rctRfReceiverLC1RSSI.{{ $index }}' + divisor: 100 + group: Receiver + - + oid: rctRfReceiver + value: rctRfReceiverLC2RSSI + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.4.3.{{ $index }}' + descr: 'RSSI logical ch 2 (dBm)' + index: 'rctRfReceiverLC2RSSI.{{ $index }}' + divisor: 100 + group: Receiver + power: + data: + - + oid: paTxOutput + value: paTxOutputForwardPower + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.3.2.1.{{ $index }}' + descr: 'PA output (W)' + entPhysicalIndex: '1300' + index: 'paTxOutputForwardPower.{{ $index }}' + group: Power Amplifier + count: + data: + - + oid: paTxOutput + value: paTxOutputVSWR + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.3.2.2.{{ $index }}' + descr: 'PA Tx Voltage Standing Wave Ratio (VSWR)' + index: 'paTxOutputVSWR.{{ $index }}' + divisor: 10 + group: Power Amplifier + current: + data: + - + oid: pmuState + value: pmuStateOutCurrent + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.4.{{ $index }}' + descr: 'Output current that PMU is supplying to the subrack' + index: 'pmuStateOutCurrent.{{ $index }}' + divisor: 1000 + group: PMUState + voltage: + data: + - + oid: pmuState + value: pmuStateOutVoltage + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.5.{{ $index }}' + descr: 'Current voltage of the PMU output(s) to subrack (nominal 28V)' + index: 'pmuStateOutVoltage.{{ $index }}' + divisor: 100 + group: PMUState + - + oid: pmuState + value: pmuStateBatteryInVoltage + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.4.2.3.{{ $index }}' + descr: 'Voltage of the DC (battery) PS to the PMU' + index: 'pmuStateBatteryInVoltage.{{ $index }}' + group: PMUState + temperature: + data: + - + oid: rctTemperature + value: rctTemperatureBoard + num_oid: '.1.3.6.1.4.1.3570.2.2.2.1.2.2.6.1.{{ $index }}' + descr: 'Reciter Temperature (C)' + entPhysicalIndex: '1200' + index: 'rctTemperatureBoard.{{ $index }}' + group: Reciter diff --git a/priv/profiles/os_discovery/tait-tnadmin.yaml b/priv/profiles/os_discovery/tait-tnadmin.yaml new file mode 100644 index 00000000..7bf5699d --- /dev/null +++ b/priv/profiles/os_discovery/tait-tnadmin.yaml @@ -0,0 +1,420 @@ +mib: TAIT-TNADMIN-MIB:TAIT-TN9300-MIB +modules: + os: + sysDescr_regex: '/Tait Communications, Core Network, (?[^,]+),/' + version: tnAdminTaitServiceVersion.1443 + processors: + data: + - + oid: TAIT-TNADMIN-MIB::tnAdminTaitServiceTable + num_oid: '.1.3.6.1.4.1.3570.3.15.2.1.1.1.6.{{ $index }}' + value: TAIT-TNADMIN-MIB::tnAdminTaitServiceCpu + descr: '{{ $TAIT-TNADMIN-MIB::tnAdminTaitServiceName }} CPU pct' + index: 'tnServiceCpu.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - TAIT-TNADMIN-MIB::tnAdminTaitServiceVersion + - TAIT-TNADMIN-MIB::tnAdminTaitServiceName + - TAIT-TN9300-MIB::tn9300RemoteNodeName + - TAIT-TN9300-MIB::tn9300DipLineName + - TAIT-TN9300-MIB::tn9300DipLineAddress + - TAIT-TN9300-MIB::tn9300SiteName + state: + data: + - + oid: TAIT-TNADMIN-MIB::tnAdminTaitServiceTable + num_oid: '.1.3.6.1.4.1.3570.3.15.2.1.1.1.8.{{ $index }}' + value: TAIT-TNADMIN-MIB::tnAdminTaitServiceState + descr: '{{ $TAIT-TNADMIN-MIB::tnAdminTaitServiceName }} {{ $TAIT-TNADMIN-MIB::tnAdminTaitServiceVersion }}' + index: 'tnServiceState.{{ $index }}' + group: TnAdmin + state_name: tnAdminTaitServiceState + states: + - { descr: Running, graph: 1, value: 0, generic: 0 } + - { descr: Watchdog Stopped, graph: 1, value: 1, generic: 1 } + - { descr: Application Stopped, graph: 1, value: 2, generic: 3 } + - { descr: Stopped, graph: 1, value: 3, generic: 1 } + - { descr: Not Installed, graph: 1, value: 4, generic: 3 } + - + oid: TAIT-TN9300-MIB::tn9300RemoteNodeTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.7.1.1.6.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300RemoteNodeState + descr: '{{ $TAIT-TN9300-MIB::tn9300RemoteNodeName }} Remote Node State' + index: 'tnRemoteNodeState.{{ $index }}' + group: Tn9300RemoteNode + state_name: tn9300RemoteNodeState + states: + - { descr: Unknown, graph: 1, value: 0, generic: 3 } + - { descr: Offline, graph: 1, value: 1, generic: 3 } + - { descr: Program, graph: 1, value: 2, generic: 3 } + - { descr: Switching, graph: 1, value: 3, generic: 0 } + - { descr: Control, graph: 1, value: 4, generic: 0 } + - { descr: Failed, graph: 1, value: 5, generic: 1 } + - { descr: Graceful Shutdown, graph: 1, value: 6, generic: 3 } + - + oid: TAIT-TN9300-MIB::tn9300RemoteNodeTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.7.1.1.9.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300RemoteNodeSynced + descr: '{{ $TAIT-TN9300-MIB::tn9300RemoteNodeName }} Remote Node Sync State' + index: 'tnRemoteNodeSync.{{ $index }}' + group: Tn9300RemoteNode + state_name: tn9300RemoteNodeSynced + states: + - { descr: OK, graph: 1, value: 0, generic: 0 } + - { descr: Failed, graph: 1, value: 1, generic: 1 } + - { descr: Unknown, graph: 1, value: 2, generic: 3 } + - { descr: None, graph: 1, value: 3, generic: 3 } + - + oid: TAIT-TN9300-MIB::tn9300NodeObjs + num_oid: '.1.3.6.1.4.1.3570.3.6.2.1.17.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DiskSpaceOk + descr: 'Disk Space OK' + index: 'tn9300DiskSpaceOk.{{ $index }}' + group: Alarms Local Node + state_name: tn9300DiskSpaceOk + states: + - { descr: OK, graph: 1, value: 1, generic: 0 } + - { descr: NOK, graph: 1, value: 2, generic: 1 } + - + oid: TAIT-TN9300-MIB::tn9300NodeObjs + num_oid: '.1.3.6.1.4.1.3570.3.6.2.1.18.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300LicenseValidity + descr: 'Local Node Licence' + index: 'tn9300LicenseValidity.{{ $index }}' + group: Alarms Local Node + state_name: tn9300LicenseValidity + states: + - { descr: Valid, graph: 1, value: 0, generic: 0 } + - { descr: File Not Found, graph: 1, value: 1, generic: 1 } + - { descr: Invalid host ID, graph: 1, value: 2, generic: 1 } + - { descr: Invalid product code, graph: 1, value: 3, generic: 1 } + - { descr: Invalid version, graph: 1, value: 4, generic: 1 } + - { descr: Invalid expiry date, graph: 1, value: 5, generic: 1 } + - { descr: Expired, graph: 1, value: 6, generic: 1 } + - { descr: Corrupt signature, graph: 1, value: 7, generic: 1 } + - { descr: Conflicting features, graph: 1, value: 8, generic: 1 } + - { descr: Invalid tier mode, graph: 1, value: 9, generic: 1 } + - { descr: Invalid license format, graph: 1, value: 10, generic: 1 } + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.8.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineState + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Dip Line State' + index: 'TAIT-TN9300-MIB::tn9300DipLineState.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + state_name: tn9300DipLineState + states: + - { descr: Unknown, graph: 1, value: 0, generic: 3 } + - { descr: Unconfigured, graph: 1, value: 1, generic: 3 } + - { descr: Idle, graph: 1, value: 2, generic: 3 } + - { descr: Active, graph: 1, value: 3, generic: 0 } + - { descr: Failed, graph: 1, value: 4, generic: 1 } + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.9.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineNgwLinkState + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Dip Line to NetGW State' + index: 'TAIT-TN9300-MIB::tn9300DipLineNgwLinkState.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + state_name: tn9300DipLineNgwLinkState + states: + - { descr: Unknown, graph: 1, value: 0, generic: 3 } + - { descr: OK, graph: 1, value: 1, generic: 0 } + - { descr: Failed, graph: 1, value: 2, generic: 1 } + - + oid: TAIT-TN9300-MIB::tn9300SiteTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.4.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteEnabled + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Site Enabled State' + index: 'TAIT-TN9300-MIB::tn9300SiteEnabled.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + state_name: tn9300SiteEnabled + states: + - { descr: Disabled, graph: 1, value: 0, generic: 1 } + - { descr: Enabled, graph: 1, value: 1, generic: 0 } + - + oid: TAIT-TN9300-MIB::tn9300SiteTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.5.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteOk + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Site State' + index: 'TAIT-TN9300-MIB::tn9300SiteOk.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + state_name: tn9300SiteOk + states: + - { descr: Not OK, graph: 1, value: 0, generic: 1 } + - { descr: OK, graph: 1, value: 1, generic: 0 } + - + oid: TAIT-TN9300-MIB::tn9300SiteTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.42.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteControlChCountOk + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ctrl Nb Ch Match Required' + index: 'TAIT-TN9300-MIB::tn9300SiteControlChCountOk.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + state_name: tn9300SiteControlChCountOk + states: + - { descr: Not OK, graph: 1, value: 0, generic: 1 } + - { descr: OK, graph: 1, value: 1, generic: 0 } + count: + data: + - + oid: TAIT-TN9300-MIB::tn9300RemoteNodeTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.7.1.1.5.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300RemoteNodePriority + descr: '{{ $TAIT-TN9300-MIB::tn9300RemoteNodeName }} Remote Node Prio' + index: 'tn9300RemotePrio.{{ $index }}' + group: Tn9300RemoteNode + - + oid: TAIT-TN9300-MIB::tn9300RemoteNodeCallSw + num_oid: '.1.3.6.1.4.1.3570.3.6.2.7.1.1.7.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300RemoteNodeCallSw + descr: '{{ $TAIT-TN9300-MIB::tn9300RemoteNodeName }} Nb Calls switched on remote node' + index: 'tn9300RemoteNodeCallSw.{{ $index }}' + group: Tn9300RemoteNode + - + oid: TAIT-TN9300-MIB::tn9300RemoteNodeTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.7.1.1.8.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300RemoteNodeConnectSw + descr: '{{ $TAIT-TN9300-MIB::tn9300RemoteNodeName }} Nb Connections switched on remote node' + index: 'tn9300RemoteNodeConnectSw.{{ $index }}' + group: Tn9300RemoteNode + - + oid: TAIT-TN9300-MIB::tn9300NodeObjs + num_oid: '.1.3.6.1.4.1.3570.3.6.2.1.3.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300Priority + descr: 'Priority of the local node' + index: 'tn9300Priority.{{ $index }}' + group: Tn9300LocalNode + - + oid: TAIT-TN9300-MIB::tn9300NodeObjs + num_oid: '.1.3.6.1.4.1.3570.3.6.2.1.13.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300CallsSwitching + descr: 'Nb Calls Switching' + index: 'tn9300CallsSwitching.{{ $index }}' + group: Tn9300LocalNode + - + oid: TAIT-TN9300-MIB::tn9300NodeObjs + num_oid: '.1.3.6.1.4.1.3570.3.6.2.1.14.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300ConnectionsSwitching + descr: 'Nb Connections Switching' + index: 'tn9300ConnectionsSwitching.{{ $index }}' + group: Tn9300LocalNode + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.15.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineClientConnects + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb Client Connect on DIP Line' + index: 'TAIT-TN9300-MIB::tn9300DipLineClientConnects.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.16.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineNgpRxPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb NGP pkts Rx on DIP from NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineNgpRxPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.17.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineNgpTxPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb NGP pkts Tx on DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineNgpTxPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.18.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineNgpLostPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb NGP pkts Lost from DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineNgpLostPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.19.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineRtpRxPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb RTP pkts Rx on DIP from NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineRtpRxPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.20.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineRtpTxPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb RTP pkts Tx from DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineRtpTxPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.21.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineRtpLostPackets + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} Nb RTP pkts Lost Tx from DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineRtpLostPackets.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.22.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineRtpRtt + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} RTT from DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineRtpRtt.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300DipLineEntry + num_oid: '.1.3.6.1.4.1.3570.3.6.2.4.1.1.23.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300DipLineRtpJitter + descr: '{{ TAIT-TN9300-MIB::tn9300DipLineName }} RTT jitter from DIP to NetGW' + index: 'TAIT-TN9300-MIB::tn9300DipLineRtpJitter.{{ $index }}' + group: 'TN9300 DipConnections {{ TAIT-TN9300-MIB::tn9300DipLineName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteTable + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.7.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteQueueDepth + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Calls Queue' + index: 'TAIT-TN9300-MIB::tn9300SiteQueueDepth.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNChannels + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.21.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNChannels + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb ch installed' + index: 'TAIT-TN9300-MIB::tn9300SiteNChannels.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNTrafficChannels + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.23.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNTrafficChannels + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Traffic Ch' + index: 'TAIT-TN9300-MIB::tn9300SiteNTrafficChannels.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNIdleChannels + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.24.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNIdleChannels + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Idle Ch' + index: 'TAIT-TN9300-MIB::tn9300SiteNIdleChannels.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNFailedChannels + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.26.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNFailedChannels + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Failed Ch' + index: 'TAIT-TN9300-MIB::tn9300SiteNFailedChannels.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNOnAirCalls + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.27.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNOnAirCalls + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Calls on air' + index: 'TAIT-TN9300-MIB::tn9300SiteNOnAirCalls.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNRingingCalls + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.28.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNRingingCalls + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Calls waiting' + index: 'TAIT-TN9300-MIB::tn9300SiteNRingingCalls.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNQueuedCalls + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.29.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNQueuedCalls + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Calls queued' + index: 'TAIT-TN9300-MIB::tn9300SiteNQueuedCalls.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteTotalCalls + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.30.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteTotalCalls + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Total Calls since start' + index: 'TAIT-TN9300-MIB::tn9300SiteTotalCalls.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteTotalChannelCalls + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.31.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteTotalChannelCalls + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb Total Calls wth traffic ch' + index: 'TAIT-TN9300-MIB::tn9300SiteTotalChannelCalls.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteTotalQueueTime + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.32.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteTotalQueueTime + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Queue Secs since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteTotalQueueTime.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeFailed + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.33.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeFailed + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time Failed (sec) since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeFailed.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeControl + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.34.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeControl + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time Traffic Ch (sec) since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeControl.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeControl + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.35.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeControl + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time Control (sec) since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeControl.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.36.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time Idle (sec) since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.36.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time Idle (sec) since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeIdle.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteCallsQueuedUnder5 + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.37.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteCallsQueuedUnder5 + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb calls queued under 5 sec since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteCallsQueuedUnder5.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteCallsQueued5To10 + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.38.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteCallsQueued5To10 + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb calls queued 5 to 10 sec since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteCallsQueued5To10.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteCallsQueued10To20 + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.39.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteCallsQueued10To20 + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb calls queued 10 to 20 sec since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteCallsQueued10To20.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteCallsQueuedOver20 + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.40.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteCallsQueuedOver20 + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb calls queued above 20 sec since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteCallsQueuedOver20.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteNAlternateChannels + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.43.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteNAlternateChannels + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Nb alternate ch' + index: 'TAIT-TN9300-MIB::tn9300SiteNAlternateChannels.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' + - + oid: TAIT-TN9300-MIB::tn9300SiteChannelTimeAlternate + num_oid: '.1.3.6.1.4.1.3570.3.6.2.2.1.1.44.{{ $index }}' + value: TAIT-TN9300-MIB::tn9300SiteChannelTimeAlternate + descr: '{{ TAIT-TN9300-MIB::tn9300SiteName }} Ch time as alternate ch since node start' + index: 'TAIT-TN9300-MIB::tn9300SiteChannelTimeAlternate.{{ $index }}' + group: 'Site {{ TAIT-TN9300-MIB::tn9300SiteName }}' diff --git a/priv/profiles/os_discovery/teldat.yaml b/priv/profiles/os_discovery/teldat.yaml new file mode 100644 index 00000000..d68853d9 --- /dev/null +++ b/priv/profiles/os_discovery/teldat.yaml @@ -0,0 +1,48 @@ +modules: + os: + hardware: + - TELDAT-MIB::telAdminStatusSystemBoardType.0 + - TELDAT-MIB::telAdminStatusSystemBoardRevision.0 + hardware_template: '{{ TELDAT-MIB::telAdminStatusSystemBoardType.0 }} (rev {{ TELDAT-MIB::telAdminStatusSystemBoardRevision.0 }})' + #serial: TELDAT-MIB::telAdminStatusSystemNumSerie.0 + version: TELDAT-MIB::telAdminStatusSystemAppVersion.0 + sysDescr_regex: '/S\/N: (?\S+)/' + mempools: + data: + #- + # total: TELDAT-MON-CommonInfo-MIB::telProdNpMonSistemMemTotal + # class: system + # descr: 'Total System Memory' + # index: 0 + - + total: TELDAT-MON-CommonInfo-MIB::telProdNpMonSistemMemTotalnoncache + free: TELDAT-MON-CommonInfo-MIB::telProdNpMonSistemMemFreenoncache + class: shared + descr: 'NonCache Memory' + index: 1 + - + total: TELDAT-MON-CommonInfo-MIB::telProdNpMonSistemMemTotalcache + free: TELDAT-MON-CommonInfo-MIB::telProdNpMonSistemMemFreecache + descr: 'Cache Memory' + class: cached + index: 2 + processors: + data: + - + oid: TELDAT-MON-CPU-MIB::teldatCPUBusyGroup + value: teldatCPUBusy5sec + num_oid: '.1.3.6.1.4.1.2007.4.1.2.1.2.1.1.1.{{ $index }}' + descr: 'CPU Utilization 5sec' + index: cpu5.{{ $index }} + - + oid: TELDAT-MON-CPU-MIB::teldatCPUBusyGroup + value: teldatCPUBusy1min + num_oid: '.1.3.6.1.4.1.2007.4.1.2.1.2.1.1.2.{{ $index }}' + descr: 'CPU Utilization 1min' + index: cpu60.{{ $index }} + - + oid: TELDAT-MON-CPU-MIB::teldatCPUBusyGroup + value: teldatCPUBusy5min + num_oid: '.1.3.6.1.4.1.2007.4.1.2.1.2.1.1.3.{{ $index }}' + descr: 'CPU Utilization 5min' + index: cpu300.{{ $index }} diff --git a/priv/profiles/os_discovery/televes-fs.yaml b/priv/profiles/os_discovery/televes-fs.yaml new file mode 100644 index 00000000..a27f6017 --- /dev/null +++ b/priv/profiles/os_discovery/televes-fs.yaml @@ -0,0 +1,69 @@ +modules: + os: + hardware: SNMPv2-MIB::sysDescr.0 + serial: TREDESS-FS-MIB::serialNumber.0 + version: + - TREDESS-FS-MIB::softwareVersion.0 + - TREDESS-FS-MIB::softwareId.0 + version_template: '{{ TREDESS-FS-MIB::softwareVersion.0 }} ({{ TREDESS-FS-MIB::softwareId.0 }})' + sensors: + bitrate: + data: + - oid: TREDESS-FS-MIB::socket1InputBitrate + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.1.1.13.{{ $index }}' + index: 'socket1InputBitrate.{{ $index }}' + descr: 'IP Socket 1 input bitrate (bps)' + count: + data: + - oid: TREDESS-FS-MIB::outputChannel + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.2.15.10.1.{{ $index }}' + index: 'outputChannel.{{ $index }}' + descr: 'Output Channel' + - oid: TREDESS-FS-MIB::modMer + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.2.10.20.6.6.{{ $index }}' + index: 'modMer.{{ $index }}' + descr: 'Modulator MER (dB)' + power: + data: + - oid: TREDESS-FS-MIB::forwardPower + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.4.3.{{ $index }}' + index: 'forwardPower.{{ $index }}' + descr: 'Forward power (W)' + - oid: TREDESS-FS-MIB::reversePower + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.4.4.{{ $index }}' + index: 'reversePower.{{ $index }}' + descr: 'Reverse power (W)' + temperature: + data: + - oid: TREDESS-FS-MIB::amplifierStageTemperature + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.4.8.{{ $index }}' + index: 'amplifierStageTemperature.{{ $index }}' + descr: 'Amplifier stage temperature (°C)' + + state: + data: + - oid: TREDESS-FS-MIB::faultSummationStatus + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.3.1.{{ $index }}' + descr: 'Fault Summation Status' + states: + - { value: 0, generic: 0, graph: 0, descr: 'deactivatedAlarm' } + - { value: 1, generic: 1, graph: 0, descr: 'activatedAlarm' } + - { value: 2, generic: 1, graph: 0, descr: 'disabledAlarm' } + - { value: 3, generic: 1, graph: 0, descr: 'noApplyAlarm' } + - { value: 6, generic: 3, graph: 0, descr: 'uninitiatedAlarm' } + - oid: TREDESS-FS-MIB::warningSummationStatus + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.3.2.{{ $index }}' + descr: 'Warning Summation Status' + states: + - { value: 0, generic: 0, graph: 0, descr: 'deactivatedAlarm' } + - { value: 1, generic: 1, graph: 0, descr: 'activatedAlarm' } + - { value: 2, generic: 1, graph: 0, descr: 'disabledAlarm' } + - { value: 3, generic: 1, graph: 0, descr: 'noApplyAlarm' } + - { value: 6, generic: 3, graph: 0, descr: 'uninitiatedAlarm' } + - oid: TREDESS-FS-MIB::rNp1Mode + num_oid: '.1.3.6.1.4.1.23180.2.1.1.2.2.5.5.5.5.30.{{ $index }}' + descr: 'Redundancy N+1 Mode' + states: + - { value: 0, generic: 2, graph: 0, descr: 'manual' } + - { value: 1, generic: 0, graph: 0, descr: 'automatic' } + - { value: 2, generic: 1, graph: 0, descr: 'maintenance' } diff --git a/priv/profiles/os_discovery/teracom.yaml b/priv/profiles/os_discovery/teracom.yaml new file mode 100644 index 00000000..691a89e7 --- /dev/null +++ b/priv/profiles/os_discovery/teracom.yaml @@ -0,0 +1,531 @@ +mib: TERACOM-TCW210-TH-MIB:TERACOM-TCW220-MIB:TERACOM-TCW241-MIB:TERACOM-TCW242-MIB:TERACOM-TCW260-MIB +modules: + os: + version: + - TERACOM-TCW210-TH-MIB::version.0 + - TERACOM-TCW220-MIB::version.0 + - TERACOM-TCW241-MIB::version.0 + - TERACOM-TCW242-MIB::version.0 + - TERACOM-TCW260-MIB::version.0 + version_regex: '/(.*)?-(?.+)?/' + hardware: + - TERACOM-TCW210-TH-MIB::version.0 + - TERACOM-TCW220-MIB::version.0 + - TERACOM-TCW241-MIB::version.0 + - TERACOM-TCW242-MIB::version.0 + - TERACOM-TCW260-MIB::version.0 + hardware_regex: '/(?.+)-(.*)?/' + sensors: + additional_oids: + data: + - + oid: + - voltage1description + - voltage1max + - voltage1min + - voltage2description + - voltage2max + - voltage2min + - voltage3description + - voltage3max + - voltage3min + - voltage4description + - voltage4max + - voltage4min + - digitalInput1description + - digitalInput2description + - digitalInput3description + - digitalInput4description + - relay1description + - relay2description + - relay3description + - relay4description + - voltage1Int + - voltage2Int + - voltage3Int + - voltage4Int + - s1description + - s2description + - s3description + - s4description + - s5description + - s6description + - s7description + - s8description + - s11Int + - s12Int + - s21Int + - s22Int + - s31Int + - s32Int + - s41Int + - s42Int + - s51Int + - s52Int + - s61Int + - s62Int + - s71Int + - s72Int + - s81Int + - s82Int + state: + data: + - + oid: hardwareErr + value: hardwareErr + num_oid: '.1.3.6.1.4.1.38783.3.3.8.{{ $index }}' + descr: 'Hardware Error' + index: '.hardwareErr0' + state_name: hardwareErr + states: + - { value: 0, generic: 0, graph: 0, descr: noErr } + - { value: 1, generic: 1, graph: 0, descr: owErr } + - { value: 2, generic: 2, graph: 0, descr: hwErr } + - + oid: s11Al + value: s11Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.1.4.1.{{ $index }}' + descr: s1description + group: 'Sensor Inputs' + index: 's11Al.0' + state_name: s11Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s11Int + op: '<' + value: 0 + - + oid: s12Al + value: s12Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.1.4.2.{{ $index }}' + descr: s1description + group: 'Sensor Inputs' + index: 's12Al.0' + state_name: s12Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s12Int + op: '<' + value: 0 + - + oid: s21Al + value: s21Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.2.4.1.{{ $index }}' + descr: s2description + group: 'Sensor Inputs' + index: 's21Al.0' + state_name: s21Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s21Int + op: '<' + value: 0 + - + oid: s22Al + value: s22Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.2.4.2.{{ $index }}' + descr: s2description + group: 'Sensor Inputs' + index: 's22Al.0' + state_name: s22Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s22Int + op: '<' + value: 0 + - + oid: s31Al + value: s31Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.3.4.1.{{ $index }}' + descr: s3description + group: 'Sensor Inputs' + index: 's31Al.0' + state_name: s31Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s31Int + op: '<' + value: 0 + - + oid: s32Al + value: s32Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.3.4.2.{{ $index }}' + descr: s3description + group: 'Sensor Inputs' + index: 's32Al.0' + state_name: s32Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s32Int + op: '<' + value: 0 + - + oid: s41Al + value: s41Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.4.4.1.{{ $index }}' + descr: s4description + group: 'Sensor Inputs' + index: 's41Al.0' + state_name: s41Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s41Int + op: '<' + value: 0 + - + oid: s42Al + value: s42Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.4.4.2.{{ $index }}' + descr: s4description + group: 'Sensor Inputs' + index: 's42Al.0' + state_name: s42Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s42Int + op: '<' + value: 0 + - + oid: s51Al + value: s51Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.5.4.1.{{ $index }}' + descr: s5description + group: 'Sensor Inputs' + index: 's51Al.0' + state_name: s51Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s51Int + op: '<' + value: 0 + - + oid: s52Al + value: s52Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.5.4.2.{{ $index }}' + descr: s5description + group: 'Sensor Inputs' + index: 's52Al.0' + state_name: s52Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s52Int + op: '<' + value: 0 + - + oid: s61Al + value: s61Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.6.4.1.{{ $index }}' + descr: s6description + group: 'Sensor Inputs' + index: 's61Al.0' + state_name: s61Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s61Int + op: '<' + value: 0 + - + oid: s62Al + value: s62Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.6.4.2.{{ $index }}' + descr: s6description + group: 'Sensor Inputs' + index: 's62Al.0' + state_name: s62Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s62Int + op: '<' + value: 0 + - + oid: s71Al + value: s71Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.7.4.1.{{ $index }}' + descr: s7description + group: 'Sensor Inputs' + index: 's71Al.0' + state_name: s71Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s71Int + op: '<' + value: 0 + - + oid: s72Al + value: s72Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.7.4.2.{{ $index }}' + descr: s7description + group: 'Sensor Inputs' + index: 's72Al.0' + state_name: s72Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s72Int + op: '<' + value: 0 + - + oid: s81Al + value: s81Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.8.4.1.{{ $index }}' + descr: s8description + group: 'Sensor Inputs' + index: 's81Al.0' + state_name: s81Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s81Int + op: '<' + value: 0 + - + oid: s82Al + value: s82Al + num_oid: '.1.3.6.1.4.1.38783.3.3.1.8.4.2.{{ $index }}' + descr: s8description + group: 'Sensor Inputs' + index: 's82Al.0' + state_name: s82Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: s82Int + op: '<' + value: 0 + - + oid: volt1Al + value: volt1Al + num_oid: '.1.3.6.1.4.1.38783.3.3.2.5.1.{{ $index }}' + descr: voltage1description + group: 'Analog Inputs' + index: 'volt1Al.0' + state_name: volt1Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: voltage1Int + op: '<=' + value: '100' + - + oid: volt2Al + value: volt2Al + num_oid: '.1.3.6.1.4.1.38783.3.3.2.5.2.{{ $index }}' + descr: voltage2description + group: 'Analog Inputs' + index: 'volt2Al.0' + state_name: volt2Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: voltage2Int + op: '<=' + value: '100' + - + oid: volt3Al + value: volt3Al + num_oid: '.1.3.6.1.4.1.38783.3.3.2.5.3.{{ $index }}' + descr: voltage3description + group: 'Analog Inputs' + index: 'volt3Al.0' + state_name: volt3Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: voltage3Int + op: '<=' + value: '100' + - + oid: volt4Al + value: volt4Al + num_oid: '.1.3.6.1.4.1.38783.3.3.2.5.4.{{ $index }}' + descr: voltage4description + group: 'Analog Inputs' + index: 'volt4Al.0' + state_name: volt4Al + states: + - { value: 0, generic: 0, graph: 0, descr: normal } + - { value: 1, generic: 2, graph: 0, descr: alarm } + skip_values: + - + oid: voltage4Int + op: '<=' + value: '100' + - + oid: digitalInput1State + value: digitalInput1State + num_oid: '.1.3.6.1.4.1.38783.3.3.3.1.{{ $index }}' + descr: digitalInput1description + group: 'Digital Inputs' + index: 'digitalInput1State.0' + state_name: digitalInput1State + states: + - { value: 0, generic: 1, graph: 0, descr: closed } + - { value: 1, generic: 0, graph: 0, descr: open } + - + oid: digitalInput2State + value: digitalInput2State + num_oid: '.1.3.6.1.4.1.38783.3.3.3.2.{{ $index }}' + descr: digitalInput2description + group: 'Digital Inputs' + index: 'digitalInput2State.0' + state_name: digitalInput2State + states: + - { value: 0, generic: 1, graph: 0, descr: closed } + - { value: 1, generic: 0, graph: 0, descr: open } + - + oid: digitalInput3State + value: digitalInput3State + num_oid: '.1.3.6.1.4.1.38783.3.3.3.3.{{ $index }}' + descr: digitalInput3description + group: 'Digital Inputs' + index: 'digitalInput3State.0' + state_name: digitalInput3State + states: + - { value: 0, generic: 1, graph: 0, descr: closed } + - { value: 1, generic: 0, graph: 0, descr: open } + - + oid: digitalInput4State + value: digitalInput4State + num_oid: '.1.3.6.1.4.1.38783.3.3.3.4.{{ $index }}' + descr: digitalInput4description + group: 'Digital Inputs' + index: 'digitalInput4State.0' + state_name: digitalInput4State + states: + - { value: 0, generic: 1, graph: 0, descr: closed } + - { value: 1, generic: 0, graph: 0, descr: open } + - + oid: relay1State + value: relay1State + num_oid: '.1.3.6.1.4.1.38783.3.3.4.1.1.{{ $index }}' + descr: relay1description + group: 'Relays' + index: 'relay1State.0' + state_name: relay1State + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 0, graph: 0, descr: on } + - + oid: relay2State + value: relay2State + num_oid: '.1.3.6.1.4.1.38783.3.3.4.2.1.{{ $index }}' + descr: relay2description + group: 'Relays' + index: 'relay2State.0' + state_name: relay2State + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 0, graph: 0, descr: on } + - + oid: relay3State + value: relay3State + num_oid: '.1.3.6.1.4.1.38783.3.3.4.3.1.{{ $index }}' + descr: relay3description + group: 'Relays' + index: 'relay3State.0' + state_name: relay3State + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 0, graph: 0, descr: on } + - + oid: relay4State + value: relay4State + num_oid: '.1.3.6.1.4.1.38783.3.3.4.4.1.{{ $index }}' + descr: relay4description + group: 'Relays' + index: 'relay4State.0' + state_name: relay4State + states: + - { value: 0, generic: 0, graph: 0, descr: off } + - { value: 1, generic: 0, graph: 0, descr: on } + voltage: + options: + skip_value_lt: 100 + data: + - + oid: voltage1Int + value: voltage1Int + num_oid: '.1.3.6.1.4.1.38783.3.3.2.1.{{ $index }}' + divisor: 1000 + descr: voltage1description + index: 'voltage1Int.0' + high_limit: voltage1max + low_limit: voltage1min + - + oid: voltage2Int + value: voltage2Int + num_oid: '.1.3.6.1.4.1.38783.3.3.2.2.{{ $index }}' + divisor: 1000 + descr: voltage2description + index: 'voltage2Int.0' + high_limit: voltage2max + low_limit: voltage2min + - + oid: voltage3Int + value: voltage3Int + num_oid: '.1.3.6.1.4.1.38783.3.3.2.3.{{ $index }}' + divisor: 1000 + descr: voltage3description + index: 'voltage3Int.0' + high_limit: voltage3max + low_limit: voltage3min + - + oid: voltage4Int + value: voltage4Int + num_oid: '.1.3.6.1.4.1.38783.3.3.2.4.{{ $index }}' + divisor: 1000 + descr: voltage4description + index: 'voltage4Int.0' + high_limit: voltage4max + low_limit: voltage4min diff --git a/priv/profiles/os_discovery/teradici-pcoip.yaml b/priv/profiles/os_discovery/teradici-pcoip.yaml new file mode 100644 index 00000000..9c8d9eb2 --- /dev/null +++ b/priv/profiles/os_discovery/teradici-pcoip.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: .1.3.6.1.4.1.25071.1.2.6.1.1.5.1 + version: .1.3.6.1.4.1.25071.1.2.6.1.1.9.1 + serial: .1.3.6.1.4.1.25071.1.2.6.1.1.7.1 diff --git a/priv/profiles/os_discovery/terra-sdi410c.yaml b/priv/profiles/os_discovery/terra-sdi410c.yaml new file mode 100644 index 00000000..6170453f --- /dev/null +++ b/priv/profiles/os_discovery/terra-sdi410c.yaml @@ -0,0 +1,99 @@ +mib: TERRA-sdi410C-MIB +modules: + os: + version: TERRA-sdi410C-MIB::infVersion.0 + serial: TERRA-sdi410C-MIB::infSerNum.0 + + processors: + data: + - + oid: TERRA-sdi410C-MIB::load + num_oid: '.1.3.6.1.4.1.30631.1.8.1.1.3.{{ $index }}' + descr: 'Chassis CPU load' + index: 0 + + sensors: + additional_oids: + data: + - + oid: + - TERRA-sdi410C-MIB::mainStatus + - TERRA-sdi410C-MIB::inputStatus + bitrate: + data: + - + oid: TERRA-sdi410C-MIB::mainStatus + value: TERRA-sdi410C-MIB::inBR + num_oid: '.1.3.6.1.4.1.30631.1.8.1.1.1.{{ $index }}' + descr: 'Input' + index: 0 + group: Total + multiplier: 1000 + - + oid: TERRA-sdi410C-MIB::mainStatus + value: TERRA-sdi410C-MIB::outBR + num_oid: '.1.3.6.1.4.1.30631.1.8.1.1.2.{{ $index }}' + descr: 'Output' + index: 1 + group: Total + multiplier: 1000 + temperature: + data: + - + oid: TERRA-sdi410C-MIB::mainStatus + value: TERRA-sdi410C-MIB::temp + num_oid: '.1.3.6.1.4.1.30631.1.8.1.1.4.{{ $index }}' + descr: 'Chassis Temp (C)' + index: 0 + voltage: + data: + - + oid: TERRA-sdi410C-MIB::mainStatus + value: TERRA-sdi410C-MIB::suply + num_oid: '.1.3.6.1.4.1.30631.1.8.1.1.5.{{ $index }}' + descr: 'Supply Voltage' + index: 0 + percent: + data: + - + oid: TERRA-sdi410C-MIB::inputStatus + value: TERRA-sdi410C-MIB::level + num_oid: '.1.3.6.1.4.1.30631.1.8.1.27.3.{{ $index }}' + descr: 'Input Signal Level' + index: 0 + low_limit: 50 + low_warn_limit: 60 + snr: + data: + - + oid: TERRA-sdi410C-MIB::inputStatus + value: TERRA-sdi410C-MIB::snr + num_oid: '.1.3.6.1.4.1.30631.1.8.1.27.8.{{ $index }}' + descr: 'Input SNR' + index: 0 + divisor: 10 + low_limit: 13 + low_warn_limit: 15 + high_limit: 30 + count: + data: + - + oid: TERRA-sdi410C-MIB::inputStatus + value: TERRA-sdi410C-MIB::inCCerr + num_oid: '.1.3.6.1.4.1.30631.1.8.1.27.11.{{ $index }}' + descr: 'CC Errors' + index: 0 + warn_limit: 50 + high_limit: 100 + state: + data: + - + oid: TERRA-sdi410C-MIB::sdi410calarms + value: TERRA-sdi410C-MIB::alarmInpsig + num_oid: '.1.3.6.1.4.1.30631.1.8.1.27.1.{{ $index }}' + descr: 'Input Signal' + index: 0 + state_name: TERRA-sdi410C-MIB::alarmInpsig + states: + - { value: 0, generic: 0, graph: 1, descr: OK } + - { value: 1, generic: 3, graph: 1, descr: Error } diff --git a/priv/profiles/os_discovery/terra-sdi480.yaml b/priv/profiles/os_discovery/terra-sdi480.yaml new file mode 100644 index 00000000..77b2fb19 --- /dev/null +++ b/priv/profiles/os_discovery/terra-sdi480.yaml @@ -0,0 +1,98 @@ +mib: TERRA-sdi480-MIB +modules: + os: + version: TERRA-sdi480-MIB::infVersion.0 + serial: TERRA-sdi480-MIB::infSerNum.0 + + processors: + data: + - + oid: TERRA-sdi480-MIB::cpuLoad + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.3.{{ $index }}' + descr: 'Chassis CPU load' + index: 0 + + sensors: + bitrate: + data: + - + oid: TERRA-sdi480-MIB::commStatus + value: TERRA-sdi480-MIB::inTotbr + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.1.{{ $index }}' + descr: 'Input' + index: 0 + group: Total + multiplier: 100000 + - + oid: TERRA-sdi480-MIB::commStatus + value: TERRA-sdi480-MIB::outTotbr + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.2.{{ $index }}' + descr: 'Output' + index: 1 + group: Total + multiplier: 100000 + temperature: + data: + - + oid: TERRA-sdi480-MIB::commStatus + value: TERRA-sdi480-MIB::intTemp + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.4.{{ $index }}' + descr: 'Chassis Temp (C)' + index: 0 + - + oid: TERRA-sdi480-MIB::commStatus + value: TERRA-sdi480-MIB::demodTemp + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.5.{{ $index }}' + descr: 'Demodulator Temp (C)' + index: 1 + voltage: + data: + - + oid: TERRA-sdi480-MIB::commStatus + value: TERRA-sdi480-MIB::volt + num_oid: '.1.3.6.1.4.1.30631.1.17.1.586.6.{{ $index }}' + descr: 'Supply Voltage' + index: 0 + divisor: 10 + state: + data: + - + oid: TERRA-sdi480-MIB::sdi480alarms + value: TERRA-sdi480-MIB::alarmLnb1 + num_oid: '.1.3.6.1.4.1.30631.1.17.2.1.{{ $index }}' + descr: 'LNB# 01' + index: 0 + state_name: TERRA-sdi480-MIB::alarmLnb1 + states: + - { value: 0, generic: 0, graph: 1, descr: OK } + - { value: 1, generic: 3, graph: 1, descr: Error } + - + oid: TERRA-sdi480-MIB::sdi480alarms + value: TERRA-sdi480-MIB::alarmLnb2 + num_oid: '.1.3.6.1.4.1.30631.1.17.2.2.{{ $index }}' + descr: 'LNB# 02' + index: 1 + state_name: TERRA-sdi480-MIB::alarmLnb2 + states: + - { value: 0, generic: 0, graph: 1, descr: OK } + - { value: 1, generic: 3, graph: 1, descr: Error } + - + oid: TERRA-sdi480-MIB::sdi480alarms + value: TERRA-sdi480-MIB::alarmLnb3 + num_oid: '.1.3.6.1.4.1.30631.1.17.2.3.{{ $index }}' + descr: 'LNB# 03' + index: 2 + state_name: TERRA-sdi480-MIB::alarmLnb3 + states: + - { value: 0, generic: 0, graph: 1, descr: OK } + - { value: 1, generic: 3, graph: 1, descr: Error } + - + oid: TERRA-sdi480-MIB::sdi480alarms + value: TERRA-sdi480-MIB::alarmLnb4 + num_oid: '.1.3.6.1.4.1.30631.1.17.2.4.{{ $index }}' + descr: 'LNB# 04' + index: 3 + state_name: TERRA-sdi480-MIB::alarmLnb4 + states: + - { value: 0, generic: 0, graph: 1, descr: OK } + - { value: 1, generic: 3, graph: 1, descr: Error } diff --git a/priv/profiles/os_discovery/tgos.yaml b/priv/profiles/os_discovery/tgos.yaml new file mode 100644 index 00000000..806b522f --- /dev/null +++ b/priv/profiles/os_discovery/tgos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/thomson-cm.yaml b/priv/profiles/os_discovery/thomson-cm.yaml new file mode 100644 index 00000000..457e83fa --- /dev/null +++ b/priv/profiles/os_discovery/thomson-cm.yaml @@ -0,0 +1,30 @@ +mib: DOCS-IF-MIB +modules: + os: + sysDescr_regex: '/Thomson DOCSIS Cable Modem .* SW_REV: (?.*); MODEL: (?.*)>>/' + sensors: + tv_signal: + data: + - + oid: docsIfDownstreamChannelTable + value: docsIfDownChannelPower + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.1.1.1.6.{{ $index }}' + descr: RX Power + index: 1 + - + oid: docsIfCmStatusTable + value: docsIfCmStatusTxPower + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.2.2.1.3.{{ $index }}' + descr: TX Power + index: 2 + snr: + data: + - + oid: docsIfSignalQualityTable + value: docsIfSigQSignalNoise + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.1.4.1.5.{{ $index }}' + descr: SNR + index: 1 diff --git a/priv/profiles/os_discovery/timos.yaml b/priv/profiles/os_discovery/timos.yaml new file mode 100644 index 00000000..e5b336c4 --- /dev/null +++ b/priv/profiles/os_discovery/timos.yaml @@ -0,0 +1,918 @@ +mib: TIMETRA-SYSTEM-MIB:TIMETRA-CHASSIS-MIB:TIMETRA-SUBSCRIBER-MGMT-MIB:TIMETRA-CELLULAR-MIB:IF-MIB:ALU-MICROWAVE-MIB +modules: + mempools: + data: + - + used: TIMETRA-SYSTEM-MIB::sgiKbMemoryPoolAllocated + free: TIMETRA-SYSTEM-MIB::sgiKbMemoryAvailable + precision: 1000 + os: + version: + - TIMETRA-SYSTEM-MIB::sgiSwMajorVersion.0 + - TIMETRA-SYSTEM-MIB::sgiSwMinorVersion.0 + - TIMETRA-SYSTEM-MIB::sgiSwVersionModifier.0 + version_template: '{{ TIMETRA-SYSTEM-MIB::sgiSwMajorVersion.0 }}.{{ TIMETRA-SYSTEM-MIB::sgiSwMinorVersion.0 }}.{{ TIMETRA-SYSTEM-MIB::sgiSwVersionModifier.0 }}' + processors: + data: + - + oid: sgiCpuUsage + num_oid: '.1.3.6.1.4.1.6527.3.1.2.1.1.1.{{ $index }}' + + sensors: + additional_oids: + data: + - + oid: + - ifName + - tmnxCellPdnApn + - tmnxPortAdminStatus + - tmnxPortSFPNumLanes + state: + data: + - + oid: tmnxHwTable + value: tmnxHwAlarmState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.8.1.24.{{ $index }}' + descr: '{{ $tmnxHwName }} {{ $tmnxHwSerialNumber }} {{ $tmnxHwFailureReason }}' + index: 'tmnxHwID.{{ $index }}' + state_name: tmnxHwAlarmState + states: + - { value: 0, generic: 3, graph: 0, descr: unknown } + - { value: 1, generic: 2, graph: 0, descr: alarmActive } + - { value: 2, generic: 0, graph: 0, descr: alarmCleared } + - + oid: tmnxChassisTable + value: tmnxChassisCriticalLEDState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.3.1.12.{{ $index }}' + descr: 'Critical LED' + state_name: tmnxChassisCriticalLEDState + index: 'tmnxChassisCriticalLEDState.1' + states: + - { value: 0, generic: 3, graph: 0, descr: NotApplicable } + - { value: 1, generic: 0, graph: 0, descr: Off } + - { value: 2, generic: 2, graph: 0, descr: Red } + - { value: 3, generic: 1, graph: 0, descr: Amber } + - { value: 4, generic: 1, graph: 0, descr: Yellow } + - { value: 5, generic: 0, graph: 0, descr: Green } + - { value: 6, generic: 1, graph: 0, descr: AmberBlink } + - { value: 7, generic: 1, graph: 0, descr: YellowBlink } + - { value: 8, generic: 0, graph: 0, descr: GreenBlink } + - { value: 9, generic: 2, graph: 0, descr: RedBlink } + - + oid: tmnxChassisTable + value: tmnxChassisMajorLEDState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.3.1.13.{{ $index }}' + descr: 'Major LED' + state_name: tmnxChassisMajorLEDState + index: 'tmnxChassisMajorLEDState.1' + states: + - { value: 0, generic: 3, graph: 0, descr: NotApplicable } + - { value: 1, generic: 0, graph: 0, descr: Off } + - { value: 2, generic: 2, graph: 0, descr: Red } + - { value: 3, generic: 1, graph: 0, descr: Amber } + - { value: 4, generic: 1, graph: 0, descr: Yellow } + - { value: 5, generic: 0, graph: 0, descr: Green } + - { value: 6, generic: 1, graph: 0, descr: AmberBlink } + - { value: 7, generic: 1, graph: 0, descr: YellowBlink } + - { value: 8, generic: 0, graph: 0, descr: GreenBlink } + - { value: 9, generic: 2, graph: 0, descr: RedBlink } + - + oid: tmnxChassisTable + value: tmnxChassisMinorLEDState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.3.1.14.{{ $index }}' + state_name: tmnxChassisMinorLEDState + descr: 'Minor LED' + index: 'tmnxChassisMinorLEDState.1' + states: + - { value: 0, generic: 3, graph: 0, descr: NotApplicable } + - { value: 1, generic: 0, graph: 0, descr: Off } + - { value: 2, generic: 2, graph: 0, descr: Red } + - { value: 3, generic: 1, graph: 0, descr: Amber } + - { value: 4, generic: 1, graph: 0, descr: Yellow } + - { value: 5, generic: 0, graph: 0, descr: Green } + - { value: 6, generic: 1, graph: 0, descr: AmberBlink } + - { value: 7, generic: 1, graph: 0, descr: YellowBlink } + - { value: 8, generic: 0, graph: 0, descr: GreenBlink } + - { value: 9, generic: 2, graph: 0, descr: RedBlink } + - + oid: tmnxChassisTable + value: tmnxChassisOverTempState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.3.1.24.{{ $index }}' + descr: 'Chassis Over Temp' + index: 'tmnxChassisOverTempState.1' + state_name: tmnxChassisOverTempState + states: + - { value: 1, generic: 0, graph: 0, descr: Ok } + - { value: 2, generic: 2, graph: 0, descr: OverTemp } + - + oid: tmnxCellPortRegistrationStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.1.1.2.{{ $index }}' + descr: 'Registration state {{ ifName }}' + index: 'tmnxCellPortRegistrationStatus.{{ $index }}' + state_name: tmnxCellPortRegistrationStatus + states: + - { value: 0, generic: 0, graph: 0, descr: Not-registered } + - { value: 1, generic: 0, graph: 0, descr: Registered-home } + - { value: 2, generic: 0, graph: 0, descr: Searching } + - { value: 3, generic: 0, graph: 0, descr: Denied } + - { value: 4, generic: 0, graph: 0, descr: No-network } + - { value: 5, generic: 0, graph: 0, descr: Registered-roaming } + - { value: 6, generic: 0, graph: 0, descr: Sms-only-home } + - { value: 7, generic: 0, graph: 0, descr: Sms-only-roaming } + - { value: 8, generic: 0, graph: 0, descr: Emergency-only } + - { value: 9, generic: 0, graph: 0, descr: Csfb-not-preferred-home } + - { value: 10, generic: 0, graph: 0, descr: Csfb-not-preferred-roaming } + group: 'Cellular status' + - + oid: tmnxCellPortWirelessTechnology + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.1.1.3.{{ $index }}' + descr: 'Wireless technology {{ ifName }}' + index: 'tmnxCellPortWirelessTechnology.{{ $index }}' + state_name: tmnxCellPortWirelessTechnology + states: + - { value: 0, generic: 0, graph: 0, descr: None } + - { value: 1, generic: 0, graph: 0, descr: Lte } + - { value: 2, generic: 0, graph: 0, descr: Wcdma } + - { value: 3, generic: 0, graph: 0, descr: Gsm } + group: 'Cellular status' + - + oid: tmnxCellSimCardEquipped + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.3.1.1.{{ $index }}' + descr: 'Simcard {{ ifName:0 }}' + index: 'tmnxCellSimCardEquipped.{{ $index }}' + state_name: tmnxCellSimCardEquipped + states: + - { value: 1, generic: 0, graph: 0, descr: Installed } + - { value: 2, generic: 0, graph: 0, descr: Not installed } + group: 'Cellular status' + - + + oid: tmnxCellPdnConnectionState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.4.1.1.{{ $index }}' + descr: 'Pdn state {{ ifName:0 }} {{ $tmnxCellPdnApn }}' + index: 'tmnxCellPdnConnectionState.{{ $index }}' + state_name: tmnxCellPdnConnectionState + states: + - { value: 0, generic: 0, graph: 0, descr: Not connected } + - { value: 1, generic: 0, graph: 0, descr: Connected } + group: 'Cellular status' + - + oid: tmnxPhysChassisFanEntry + value: tmnxPhysChassisFanOperStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.24.1.1.2.{{ $index }}' + descr: 'Fan {{ $subindex2 }}' + index: 'tmnxPhysChassisFanOperStatus.{{ $index }}' + state_name: tmnxPhysChassisFanOperStatus + group: 'Fan State' + states: + - { value: 1, generic: 3, graph: 0, descr: Unknown } + - { value: 2, generic: 3, graph: 0, descr: NotEquipped } + - { value: 3, generic: 0, graph: 0, descr: OK } + - { value: 4, generic: 2, graph: 0, descr: Failed } + - { value: 5, generic: 1, graph: 0, descr: OOS } + - { value: 6, generic: 1, graph: 0, descr: NotProvisioned } + - { value: 7, generic: 3, graph: 0, descr: NotApplicable } + - + oid: aluMwRadioTable + value: aluMwRadioAlarmState + num_oid: '.1.3.6.1.4.1.6527.6.1.2.2.7.1.2.1.12.{{ $index }}' + descr: 'Current Alarm Severity {{ $aluMwRadioName }}' + index: 'aluMwRadioPortID.{{ $index }}' + state_name: 'aluMwRadioAlarmState' + states: + - { value: 0, generic: 0, graph: 0, descr: alarmCleared } + - { value: 1, generic: 2, graph: 0, descr: Critical } + - { value: 2, generic: 2, graph: 0, descr: Major } + - { value: 3, generic: 1, graph: 0, descr: Minor } + - { value: 4, generic: 1, graph: 0, descr: Warning } + - { value: 5, generic: 3, graph: 0, descr: Indeterminate } + - { value: 6, generic: 0, graph: 0, descr: Unsupported } + - { value: 7, generic: 3, graph: 0, descr: Unknown } + - + oid: aluMwRadioTable + value: aluMwRadioTxMuted + num_oid: '.1.3.6.1.4.1.6527.6.1.2.2.7.1.2.1.20.{{ $index }}' + descr: 'Tx Mute {{ $aluMwRadioName }}' + index: 'aluMwRadioPortID.{{ $index }}' + state_name: 'aluMwRadioTxMuted' + states: + - { value: 0, generic: 3, graph: 0, descr: Unknown } + - { value: 1, generic: 0, graph: 0, descr: None } + - { value: 2, generic: 1, graph: 0, descr: Manual } + - { value: 3, generic: 0, graph: 0, descr: Auto } + # ESA (Extended Services Appliance) Sensors + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsOperState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.1.{{ $index }}' + descr: 'ESA {{ $index }} Oper State' + index: 'tmnxEsaStatsOperState.{{ $index }}' + state_name: tmnxEsaStatsOperState + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: inService } + - { value: 3, generic: 1, graph: 0, descr: outOfService } + - { value: 4, generic: 1, graph: 0, descr: booting } + - { value: 5, generic: 2, graph: 0, descr: failed } + - { value: 6, generic: 1, graph: 0, descr: provisioned } + - { value: 7, generic: 1, graph: 0, descr: unprovisioned } + - { value: 8, generic: 1, graph: 0, descr: upgrade } + - { value: 9, generic: 1, graph: 0, descr: fwUpgrade } + - { value: 10, generic: 1, graph: 0, descr: fwUpgradeNic } + - { value: 11, generic: 1, graph: 0, descr: fwUpgradeSps } + - { value: 12, generic: 1, graph: 0, descr: fwUpgradeSystemRom } + - { value: 13, generic: 1, graph: 0, descr: fwUpgradeSetting } + - { value: 14, generic: 1, graph: 0, descr: fwUpgradeBmc } + - { value: 15, generic: 1, graph: 0, descr: fwUpgradeBmcSetting } + - { value: 16, generic: 1, graph: 0, descr: fwUpgradeIe } + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsHardwareStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.14.{{ $index }}' + descr: 'ESA {{ $index }} Hardware Status' + index: 'tmnxEsaStatsHardwareStatus.{{ $index }}' + state_name: tmnxEsaStatsHardwareStatus + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: critical } + - { value: 5, generic: 3, graph: 0, descr: unsupported } + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsPowerSupply1Status + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.15.{{ $index }}' + descr: 'ESA {{ $index }} Power Supply 1' + index: 'tmnxEsaStatsPowerSupply1Status.{{ $index }}' + state_name: tmnxEsaDeviceState + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: failed } + - { value: 5, generic: 3, graph: 0, descr: unsupported } + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsPowerSupply2Status + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.16.{{ $index }}' + descr: 'ESA {{ $index }} Power Supply 2' + index: 'tmnxEsaStatsPowerSupply2Status.{{ $index }}' + state_name: tmnxEsaDeviceState + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: failed } + - { value: 5, generic: 3, graph: 0, descr: unsupported } + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsFanStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.20.{{ $index }}' + descr: 'ESA {{ $index }} Fan Status' + index: 'tmnxEsaStatsFanStatus.{{ $index }}' + state_name: tmnxEsaDeviceState + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: failed } + - { value: 5, generic: 3, graph: 0, descr: unsupported } + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTemperatureStatus + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.23.{{ $index }}' + descr: 'ESA {{ $index }} Temperature Status' + index: 'tmnxEsaStatsTemperatureStatus.{{ $index }}' + state_name: tmnxEsaDeviceState + group: 'ESA Status' + states: + - { value: 1, generic: 3, graph: 0, descr: unknown } + - { value: 2, generic: 0, graph: 0, descr: ok } + - { value: 3, generic: 1, graph: 0, descr: degraded } + - { value: 4, generic: 2, graph: 0, descr: failed } + - { value: 5, generic: 3, graph: 0, descr: unsupported } + # NAT ISA Member State Sensors + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberMdaState + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.2.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} State' + index: 'tmnxNatIsaMemberMdaState.{{ $index }}' + state_name: tmnxNatIsaMemberMdaState + group: 'NAT ISA Status' + states: + - { value: 1, generic: 1, graph: 0, descr: inactive } + - { value: 2, generic: 0, graph: 0, descr: active } + - { value: 3, generic: 1, graph: 0, descr: needsReset } + - { value: 4, generic: 1, graph: 0, descr: resetting } + - { value: 5, generic: 1, graph: 0, descr: needsReconcile } + - { value: 6, generic: 1, graph: 0, descr: reconciling } + - { value: 7, generic: 1, graph: 0, descr: needsAudit } + - { value: 8, generic: 1, graph: 0, descr: auditing } + - { value: 9, generic: 2, graph: 0, descr: failedBypass } + - { value: 10, generic: 1, graph: 0, descr: activeBypass } + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberSessionUsageHi + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.9.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} Session High' + index: 'tmnxNatIsaMemberSessionUsageHi.{{ $index }}' + state_name: tmnxNatIsaMemberSessionUsageHi + group: 'NAT ISA Status' + states: + - { value: 1, generic: 1, graph: 0, descr: 'true' } + - { value: 2, generic: 0, graph: 0, descr: 'false' } + temperature: + data: + - + oid: tmnxHwTable + value: tmnxHwTemperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.8.1.18.{{ $index }}' + descr: '{{ $tmnxHwName }}' + index: 'tmnxHwID.{{ $index }}' + high_limit: tmnxHwTempThreshold + skip_values: + - + oid: tmnxHwTempSensor + op: '=' + value: 2 + - + oid: tmnxDigitalDiagMonitorTable + value: tmnxDDMTemperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.31.1.1.{{ $index }}' + descr: '{{ ifName:1 }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: '{{ $index }}' + high_limit: tmnxDDMTempHiAlarm + warn_limit: tmnxDDMTempHiWarning + low_limit: tmnxDDMTempLowAlarm + low_warn_limit: tmnxDDMTempLowWarning + divisor: 256 + group: 'transceiver' + - + oid: aluMwRadioInfoTable + value: aluMwRadioTemperature + num_oid: '.1.3.6.1.4.1.6527.6.1.2.2.7.1.6.1.12.{{ $index }}' + descr: 'RFU Temp {{ $aluMwRadioSerialNumber }}' + index: 'aluMwRadioPortID.{{ $index }}' + high_limit: '50' + low_limit: '-20' + - + oid: tmnxDDMLaneTable + value: tmnxDDMLaneTemperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.66.1.2.{{ $index }}' + descr: '{{ ifName:1 }} Lane {{ $subindex2 }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMLaneTemperature.{{ $index }}' + high_limit: tmnxDDMLaneTempHiAlarm + warn_limit: tmnxDDMLaneTempHiWarn + low_limit: tmnxDDMLaneTempLowAlarm + low_warn_limit: tmnxDDMLaneTempLowWarn + divisor: 256 + group: 'transceiver' + skip_values: + - + oid: tmnxDDMLaneTemperature + op: '=' + value: 0 + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + # ESA Temperature Sensors + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsCpu1Temperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.24.{{ $index }}' + descr: 'ESA {{ $index }} CPU 1' + index: 'tmnxEsaStatsCpu1Temperature.{{ $index }}' + high_limit: tmnxEsaStatsCpu1TempThreshold + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsCpu1Temperature + op: '=' + value: 0 + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsCpu2Temperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.25.{{ $index }}' + descr: 'ESA {{ $index }} CPU 2' + index: 'tmnxEsaStatsCpu2Temperature.{{ $index }}' + high_limit: tmnxEsaStatsCpu2TempThreshold + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsCpu2Temperature + op: '=' + value: 0 + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsNic1Temperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.35.{{ $index }}' + descr: 'ESA {{ $index }} NIC 1' + index: 'tmnxEsaStatsNic1Temperature.{{ $index }}' + high_limit: tmnxEsaStatsNic1TempThreshold + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsNic1Temperature + op: '=' + value: 0 + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsNic2Temperature + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.36.{{ $index }}' + descr: 'ESA {{ $index }} NIC 2' + index: 'tmnxEsaStatsNic2Temperature.{{ $index }}' + high_limit: tmnxEsaStatsNic2TempThreshold + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsNic2Temperature + op: '=' + value: 0 + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsPowerSupply1Temp + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.17.{{ $index }}' + descr: 'ESA {{ $index }} Power Supply 1' + index: 'tmnxEsaStatsPowerSupply1Temp.{{ $index }}' + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsPowerSupply1Temp + op: '=' + value: 0 + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsPowerSupply2Temp + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.18.{{ $index }}' + descr: 'ESA {{ $index }} Power Supply 2' + index: 'tmnxEsaStatsPowerSupply2Temp.{{ $index }}' + group: 'ESA Temperature' + skip_values: + - + oid: tmnxEsaStatsPowerSupply2Temp + op: '=' + value: 0 + + current: + data: + - + oid: tmnxDigitalDiagMonitorTable + value: tmnxDDMTxBiasCurrent + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.31.1.11.{{ $index }}' + descr: '{{ ifName:1 }} Tx Bias' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMTxBiasCurrent.{{ $index }}' + divisor: 500000 + high_limit: tmnxDDMTxBiasCurrentHiAlarm + warn_limit: tmnxDDMTxBiasCurrentHiWarning + low_limit: tmnxDDMTxBiasCurrentLowAlarm + low_warn_limit: tmnxDDMTxBiasCurrentLowWarning + group: 'transceiver' + skip_values: + - + oid: tmnxDDMRxOpticalPower + op: '<=' + value: 0 + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + - + oid: tmnxDDMLaneTable + value: tmnxDDMLaneTxBiasCurrent + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.66.1.7.{{ $index }}' + descr: '{{ ifName:1 }} Lane {{ $subindex2 }} Tx Bias' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMLaneTxBiasCurrent.{{ $index }}' + divisor: 500000 + high_limit: tmnxDDMLaneTxBiasCurrentHiAlarm + warn_limit: tmnxDDMLaneTxBiasCurrentHiWarning + low_limit: tmnxDDMLaneTxBiasCurrentLowAlarm + low_warn_limit: tmnxDDMLaneTxBiasCurrentLowWarning + group: 'transceiver' + skip_values: + - + oid: tmnxDDMLaneTxBiasCurrent + op: '<=' + value: 0 + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + dbm: + data: + - + oid: tmnxDigitalDiagMonitorTable + value: tmnxDDMRxOpticalPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.31.1.21.{{ $index }}' + descr: '{{ ifName:1 }} Rx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMRxOpticalPower.{{ $index }}' + divisor: 10 + high_limit: tmnxDDMRxOpticalPowerHiAlarm + warn_limit: tmnxDDMRxOpticalPowerHiWarning + low_limit: tmnxDDMRxOpticalPowerLowAlarm + low_warn_limit: tmnxDDMRxOpticalPowerLowWarning + user_func: 'uw_to_dbm' + group: 'transceiver' + skip_values: + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + - + oid: tmnxPortSFPNumLanes + op: '>' + value: 0 + - + oid: tmnxDigitalDiagMonitorTable + value: tmnxDDMTxOutputPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.31.1.16.{{ $index }}' + descr: '{{ ifName:1 }} Tx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMTxOutputPower.{{ $index }}' + divisor: 10 + high_limit: tmnxDDMTxOutputPowerHiAlarm + warn_limit: tmnxDDMTxOutputPowerHiWarning + low_limit: tmnxDDMTxOutputPowerLowAlarm + low_warn_limit: tmnxDDMTxOutputPowerLowWarning + user_func: 'uw_to_dbm' + group: 'transceiver' + skip_values: + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + - + oid: tmnxPortSFPNumLanes + op: '>' + value: 0 + - + oid: tmnxDDMLaneTable + value: tmnxDDMLaneRxOpticalPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.66.1.17.{{ $index }}' + descr: '{{ ifName:1 }} Lane {{ $subindex2 }} Rx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMLaneRxOpticalPower.{{ $index }}' + user_func: 'uw_to_dbm' + divisor: 10 + group: 'transceiver' + high_limit: tmnxDDMLaneRxOpticalPwrHiAlarm + warn_limit: tmnxDDMLaneRxOpticalPwrHiWarn + low_limit: tmnxDDMLaneRxOpticalPwrLowAlarm + low_warn_limit: tmnxDDMLaneRxOpticalPwrLowWarn + skip_values: + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + - + oid: tmnxDDMLaneTable + value: tmnxDDMLaneTxOutputPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.66.1.12.{{ $index }}' + descr: '{{ ifName:1 }} Lane {{ $subindex2 }} Tx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMLaneTxOutputPower.{{ $index }}' + user_func: 'uw_to_dbm' + divisor: 10 + group: 'transceiver' + high_limit: tmnxDDMLaneTxOutputPowerHiAlarm + warn_limit: tmnxDDMLaneTxOutputPowerHiWarn + low_limit: tmnxDDMLaneTxOutputPowerLowAlarm + low_warn_limit: tmnxDDMLaneTxOutputPowerLowWarn + skip_values: + - + oid: tmnxPortAdminStatus + op: '=' + value: 3 + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.26.{{ $index }}' + descr: '{{ ifName:1 }} Rx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxCohOptPortRxPower.{{ $index }}' + divisor: 100 + group: 'transceiver' + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortTxPower + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.30.{{ $index }}' + descr: '{{ ifName:1 }} Tx' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxCohOptPortTxPower.{{ $index }}' + divisor: 100 + group: 'transceiver' + voltage: + data: + - + oid: tmnxDigitalDiagMonitorTable + value: tmnxDDMSupplyVoltage + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.31.1.6.{{ $index }}' + descr: '{{ ifName:1 }}' + entPhysicalIndex: '{{ $subindex1 }}' + entPhysicalIndex_measured: ports + index: 'tmnxDDMSupplyVoltage.{{ $index }}' + high_limit: tmnxDDMSupplyVoltageHiAlarm + warn_limit: tmnxDDMSupplyVoltageHiWarning + low_limit: tmnxDDMSupplyVoltageLowAlarm + low_warn_limit: tmnxDDMSupplyVoltageLowWarning + divisor: 10000 + group: 'transceiver' + + percent: + data: + - + oid: tmnxPhysChassisFanTable + value: tmnxPhysChassisFanSpeedPercent + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.1.24.1.1.5.{{ $index }}' + descr: 'Fan {{ $subindex2 }}' + group: 'Chassis {{ $subindex0 }}-{{ $subindex1 }}' + warn_limit: 90 + high_limit: 95 + low_limit: 0 + index: 'tmnxPhysChassisFanSpeedPercent.{{ $index }}' + # NAT ISA Session Usage + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberSessionUsage + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.8.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} Session Usage' + index: 'tmnxNatIsaMemberSessionUsage.{{ $index }}' + group: 'NAT ISA Usage' + high_limit: 95 + warn_limit: 80 + count: + data: + - + oid: tmnxSubMgmtSystStatsTable + value: tmnxSubMgmtSystSSubscribers + num_oid: '.1.3.6.1.4.1.6527.3.1.2.33.1.107.1.65.{{ $index }}' + descr: 'Active subscribers on this system' + index: 'tmnxSubMgmtSystSSubscribers.{{ $index }}' + group: 'Subscribers' + - + oid: tmnxSubMgmtSystStatsTable + value: tmnxSubMgmtSystSV4 + num_oid: '.1.3.6.1.4.1.6527.3.1.2.33.1.107.1.25.{{ $index }}' + descr: 'V4 hosts on this system' + index: 'tmnxSubMgmtSystSV4.{{ $index }}' + group: 'Subscribers' + - + oid: tmnxSubMgmtSystStatsTable + value: tmnxSubMgmtSystSV6 + num_oid: '.1.3.6.1.4.1.6527.3.1.2.33.1.107.1.27.{{ $index }}' + descr: 'V6 hosts on this system' + index: 'tmnxSubMgmtSystSV6.{{ $index }}' + group: 'Subscribers' + - + oid: tmnxSubMgmtSystStatsTable + value: tmnxSubMgmtSystSTotal + num_oid: '.1.3.6.1.4.1.6527.3.1.2.33.1.107.1.33.{{ $index }}' + descr: 'Total hosts on this system' + index: 'tmnxSubMgmtSystSTotal.{{ $index }}' + group: 'Subscribers' + - + oid: tFPResTable + value: tFPResEgrUserQueueAlloc + index: 'tFPResEgrUserQueueAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.105.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} Egress User Queues' + - + oid: tFPResTable + value: tFPResSapIngQosPolAlloc + index: 'tFPResSapIngQosPolAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.2.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} Ingress QoS Policies' + - + oid: tFPResTable + value: tFPResIngQueueAlloc + index: 'tFPResIngQueueAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.8.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} Ingress Queues' + - + oid: tFPResTable + value: tFPResMacFdbRecAlloc + index: 'tFPResMacFdbRecAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.70.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} FDB Records' + - + oid: tFPResTable + value: tFPResSapInstanceAlloc + index: 'tFPResSapInstanceAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.90.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} SAP Instances' + - + oid: tFPResTable + value: tFPResPortForwardingIdAlloc + index: 'tFPResPortForwardingIdAlloc.{{ $index }}' + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.46.1.185.{{ $index }}' + group: 'Resource Usage' + descr: 'Card {{ $subindex1 }} Port Forwarding IDs' + skip_values: + - + oid: tFPResPortForwardingIdTotal + op: '=' + value: 0 + - + oid: tmnxCellPortFrequencyBand + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.1.1.4.{{ $index }}' + descr: 'Interface {{ ifName }}' + index: 'tmnxCellPortFrequencyBand.{{ $index }}' + group: 'Frequency band' + - + oid: tmnxCellularPortBearerTable + value: tmnxCellPortBearerQci + num_oid: '.1.3.6.1.4.1.6527.3.1.2.109.3.1.5.1.3.{{ $index }}' + descr: 'Interface {{ ifName:0 }}' + index: 'tmnxCellularPortBearerTable.{{ $index }}' + group: 'QoS Class Identifier' + # ESA Resource Counts + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsCoresAvailable + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.2.{{ $index }}' + descr: 'ESA {{ $index }} Cores Available' + index: 'tmnxEsaStatsCoresAvailable.{{ $index }}' + group: 'ESA Resources' + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsCoresAllocated + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.3.{{ $index }}' + descr: 'ESA {{ $index }} Cores Allocated' + index: 'tmnxEsaStatsCoresAllocated.{{ $index }}' + group: 'ESA Resources' + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsMemoryAvailable + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.4.{{ $index }}' + descr: 'ESA {{ $index }} Memory Available (GB)' + index: 'tmnxEsaStatsMemoryAvailable.{{ $index }}' + group: 'ESA Resources' + - + oid: TIMETRA-CHASSIS-MIB::tmnxEsaStatsTable + value: TIMETRA-CHASSIS-MIB::tmnxEsaStatsMemoryAllocated + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.3.74.1.5.{{ $index }}' + descr: 'ESA {{ $index }} Memory Allocated (GB)' + index: 'tmnxEsaStatsMemoryAllocated.{{ $index }}' + group: 'ESA Resources' + # NAT ISA Member Counts + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberIpAddrReserved + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.6.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} IP Addresses Reserved' + index: 'tmnxNatIsaMemberIpAddrReserved.{{ $index }}' + group: 'NAT ISA Resources' + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberBlocksReserved + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.7.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} Port Blocks Reserved' + index: 'tmnxNatIsaMemberBlocksReserved.{{ $index }}' + group: 'NAT ISA Resources' + - + oid: TIMETRA-NAT-MIB::tmnxNatIsaMemberTable + value: TIMETRA-NAT-MIB::tmnxNatIsaMemberSessionsPrio + num_oid: '.1.3.6.1.4.1.6527.3.1.2.65.1.1.3.2.1.10.{{ $index }}' + descr: 'NAT ISA Member {{ $index }} Prioritized Sessions' + index: 'tmnxNatIsaMemberSessionsPrio.{{ $index }}' + group: 'NAT ISA Resources' + frequency: + data: + - + oid: aluMwRadioTable + value: aluMwRadioFrequency + num_oid: '.1.3.6.1.4.1.6527.6.1.2.2.7.1.2.1.11.{{ $index }}' + descr: 'RFU Frequency Band {{ $aluMwRadioName }}' + multiplier: 1000000 + index: 'aluMwRadioPortID.{{ $index }}' + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxFreqOffset + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.18.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Frequency Offset' + multiplier: 1000000 + index: 'tmnxCohOptPortRxFreqOffset.{{ $index }}' + ber: + data: + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxBER + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.2.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Pre-FEC Bit Error Rate' + index: 'tmnxCohOptPortRxBER.{{ $index }}' + user_func: 'ieee754_to_decimal' + snr: + data: + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxSNR + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.6.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxSNR.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxOSNR + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.34.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Optical Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxOSNR.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortOperTable + value: tmnxCohOptPortRxSNRXPolar + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.73.1.7.{{ $index }}' + descr: '{{ ifName:1 }} X-Polarization' + group: 'Rx Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxSNRXPolar.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortOperTable + value: tmnxCohOptPortRxSNRYPolar + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.73.1.8.{{ $index }}' + descr: '{{ ifName:1 }} Y-Polarization' + group: 'Rx Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxSNRYPolar.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortOperTable + value: tmnxCohOptPortRxOSNRXPolar + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.73.1.10.{{ $index }}' + descr: '{{ ifName:1 }} X-Polarization' + group: 'Rx Optical Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxOSNRXPolar.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortOperTable + value: tmnxCohOptPortRxOSNRYPolar + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.73.1.11.{{ $index }}' + descr: '{{ ifName:1 }} Y-Polarization' + group: 'Rx Optical Signal-to-Noise Ratio' + index: 'tmnxCohOptPortRxOSNRYPolar.{{ $index }}' + divisor: 10 + chromatic_dispersion: + data: + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxChromaticDisp + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.10.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Chromatic Dispersion' + index: 'tmnxCohOptPortRxChromaticDisp.{{ $index }}' + delay: + data: + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxDiffGrpDly + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.14.{{ $index }}' + descr: 'Interface {{ ifName:1 }}' + group: 'Rx Differential Group Delay' + index: 'tmnxCohOptPortRxDiffGrpDly.{{ $index }}' + divisor: 1000000000000 + quality_factor: + data: + - + oid: tmnxCohOptPortStatsTable + value: tmnxCohOptPortRxQ + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.12.8.1.22.{{ $index }}' + descr: 'Interface {{ ifName:1 }} Q-Factor' + group: 'Rx Quality Factor' + index: 'tmnxCohOptPortRxQ.{{ $index }}' + divisor: 10 + - + oid: tmnxCohOptPortOperTable + value: tmnxCohOptPortRxQMargin + num_oid: '.1.3.6.1.4.1.6527.3.1.2.2.4.73.1.9.{{ $index }}' + descr: 'Interface {{ ifName:1 }} Q-Margin' + group: 'Rx Quality Margin' + index: 'tmnxCohOptPortRxQMargin.{{ $index }}' + divisor: 10 diff --git a/priv/profiles/os_discovery/tomato.yaml b/priv/profiles/os_discovery/tomato.yaml new file mode 100644 index 00000000..200f3258 --- /dev/null +++ b/priv/profiles/os_discovery/tomato.yaml @@ -0,0 +1,4 @@ +modules: + os: + version: .1.3.6.1.4.1.2021.7890.1.101.1 + version_regex: '/ (?.*)/' diff --git a/priv/profiles/os_discovery/topvision.yaml b/priv/profiles/os_discovery/topvision.yaml new file mode 100644 index 00000000..da928c8b --- /dev/null +++ b/priv/profiles/os_discovery/topvision.yaml @@ -0,0 +1,28 @@ +mib: DOCS-IF-MIB +modules: + os: + sysDescr_regex: '/hardware version:V(?[^;]+);software version:V(?[^;]+);/' + sensors: + additional_oids: + data: + - + oid: + - docsIfUpChannelId + frequency: + data: + - + oid: docsIfUpstreamChannelTable + value: docsIfUpChannelFrequency + num_oid: '.1.3.6.1.2.1.10.127.1.1.2.1.2.{{ $index }}' + descr: Upstream Channel {{ $docsIfUpChannelId }} + snr: + data: + - + oid: docsIfSignalQualityTable + value: docsIfSigQSignalNoise + divisor: 10 + num_oid: '.1.3.6.1.2.1.10.127.1.1.4.1.5.{{ $index }}' + descr: Upstream Channel {{ $docsIfUpChannelId }} + skip_value_lt: 1 + low_limit: 24 + high_limit: 45 diff --git a/priv/profiles/os_discovery/tpdin.yaml b/priv/profiles/os_discovery/tpdin.yaml new file mode 100644 index 00000000..1741b910 --- /dev/null +++ b/priv/profiles/os_discovery/tpdin.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: TPDIN2-MIB::name.0 + version: TPDIN2-MIB::version.0 diff --git a/priv/profiles/os_discovery/tpdin3.yaml b/priv/profiles/os_discovery/tpdin3.yaml new file mode 100644 index 00000000..680e88a6 --- /dev/null +++ b/priv/profiles/os_discovery/tpdin3.yaml @@ -0,0 +1,82 @@ +mib: TPDIN3-MIB +modules: + os: + hardware: TPDIN3-MIB::model.0 + version: TPDIN3-MIB::firmwareVersion.0 + sensors: + voltage: + data: + - + oid: v1int.0 + value: v1int + num_oid: '.1.3.6.1.4.1.45621.3.3.15.{{ $index }}' + descr: 'Voltage 1' + divisor: 10 + index: 'v1int.{{ $index }}' + - + oid: v2int.0 + value: v2int + num_oid: '.1.3.6.1.4.1.45621.3.3.16.{{ $index }}' + descr: 'Voltage 2' + divisor: 10 + index: 'v2int.{{ $index }}' + - + oid: v3int.0 + value: v3int + num_oid: '.1.3.6.1.4.1.45621.3.3.17.{{ $index }}' + descr: 'Voltage 3' + divisor: 10 + index: 'v3int.{{ $index }}' + - + oid: v4int.0 + value: v4int + num_oid: '.1.3.6.1.4.1.45621.3.3.18.{{ $index }}' + descr: 'Voltage 4' + divisor: 10 + index: 'v4int.{{ $index }}' + temperature: + data: + - + oid: t1int.0 + value: t1int + num_oid: '.1.3.6.1.4.1.45621.3.3.23.{{ $index }}' + descr: 'External Temperature' + divisor: 10 + index: 't1int.{{ $index }}' + - + oid: t2int.0 + value: t2int + num_oid: '.1.3.6.1.4.1.45621.3.3.24.{{ $index }}' + descr: 'Internal Temperature' + divisor: 10 + index: 't2int.{{ $index }}' + current: + data: + - + oid: i1int.0 + value: i1int + num_oid: '.1.3.6.1.4.1.45621.3.3.19.{{ $index }}' + descr: 'Current 1' + divisor: 10 + index: 'i1int.{{ $index }}' + - + oid: i2int.0 + value: i2int + num_oid: '.1.3.6.1.4.1.45621.3.3.20.{{ $index }}' + descr: 'Current 2' + divisor: 10 + index: 'i2int.{{ $index }}' + - + oid: i3int.0 + value: i3int + num_oid: '.1.3.6.1.4.1.45621.3.3.21.{{ $index }}' + descr: 'Current 3' + divisor: 10 + index: 'i3int.{{ $index }}' + - + oid: i4int.0 + value: i4int + num_oid: '.1.3.6.1.4.1.45621.3.3.22.{{ $index }}' + descr: 'Current 4' + divisor: 10 + index: 'i4int.{{ $index }}' diff --git a/priv/profiles/os_discovery/tplink.yaml b/priv/profiles/os_discovery/tplink.yaml new file mode 100644 index 00000000..874a2ca9 --- /dev/null +++ b/priv/profiles/os_discovery/tplink.yaml @@ -0,0 +1,4 @@ +modules: + os: + hardware: RMON-MIB::rmon.19.3.0 + version: RMON-MIB::rmon.19.2.0 diff --git a/priv/profiles/os_discovery/transition.yaml b/priv/profiles/os_discovery/transition.yaml new file mode 100644 index 00000000..0c84cd60 --- /dev/null +++ b/priv/profiles/os_discovery/transition.yaml @@ -0,0 +1,3 @@ +modules: + os: + hardware: LLDP-MIB::lldpLocSysName.0 diff --git a/priv/profiles/os_discovery/tranzeo.yaml b/priv/profiles/os_discovery/tranzeo.yaml new file mode 100644 index 00000000..2d0e87ed --- /dev/null +++ b/priv/profiles/os_discovery/tranzeo.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Tranzeo (?.*), OS (?[\d.]+)[()\d]*, (?.*)/' diff --git a/priv/profiles/os_discovery/trendnet.yaml b/priv/profiles/os_discovery/trendnet.yaml new file mode 100644 index 00000000..70deaae9 --- /dev/null +++ b/priv/profiles/os_discovery/trendnet.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' diff --git a/priv/profiles/os_discovery/trippliteconsole.yaml b/priv/profiles/os_discovery/trippliteconsole.yaml new file mode 100644 index 00000000..61c98d4e --- /dev/null +++ b/priv/profiles/os_discovery/trippliteconsole.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/^TrippLite (?[^ ,]+), .* Version (?[^ ]+) .*/' diff --git a/priv/profiles/os_discovery/truenas-scale.yaml b/priv/profiles/os_discovery/truenas-scale.yaml new file mode 100644 index 00000000..17406cef --- /dev/null +++ b/priv/profiles/os_discovery/truenas-scale.yaml @@ -0,0 +1,151 @@ +mib: TRUENAS-MIB # Used for TrueNAS-SCALE only +modules: + os: + sysDescr_regex: '/(?:TrueNAS-SCALE-)(?\S*).*\. Hardware: (?.*).*\. Software.*/' + storage: + data: + - + oid: TRUENAS-MIB::zvolTable + poller_type: truenas-scale-zv + type: zvol + descr: TRUENAS-MIB::zvolDescr + free: TRUENAS-MIB::zvolAvailableBytes + free_num_oid: '.1.3.6.1.4.1.50536.1.2.1.1.4.{{ $index }}' + used: TRUENAS-MIB::zvolUsedBytes + used_num_oid: '.1.3.6.1.4.1.50536.1.2.1.1.3.{{ $index }}' + sensors: + count: + data: + - + oid: zfsArcSize + value: zfsArcSize + num_oid: .1.3.6.1.4.1.50536.1.3.1.{{ $index }} + descr: 'ARC Size' + index: zfsArcSize.{{ $index }} + - + oid: zfsArcMeta + value: zfsArcMeta + num_oid: .1.3.6.1.4.1.50536.1.3.2.{{ $index }} + descr: 'ARC Metadata' + index: zfsArcMeta.{{ $index }} + - + oid: zfsArcData + value: zfsArcData + num_oid: .1.3.6.1.4.1.50536.1.3.3.{{ $index }} + descr: 'ARC Data' + index: zfsArcData.{{ $index }} + - + oid: zfsArcHits + value: zfsArcHits + num_oid: .1.3.6.1.4.1.50536.1.3.4.{{ $index }} + descr: 'ARC Hits' + index: zfsArcHits_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsArcMisses + value: zfsArcMisses + num_oid: .1.3.6.1.4.1.50536.1.3.5.{{ $index }} + descr: 'ARC Misses' + index: zfsArcMisses_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsArcC + value: zfsArcC + num_oid: .1.3.6.1.4.1.50536.1.3.6.{{ $index }} + descr: 'ARC Target Size (C)' + index: zfsArcC.{{ $index }} + - + oid: zfsArcMissPercent + value: zfsArcMissPercent + num_oid: .1.3.6.1.4.1.50536.1.3.8.{{ $index }} + descr: 'ARC Miss Percent' + index: zfsArcMissPercent.{{ $index }} + - + oid: zfsArcCacheHitRatio + value: zfsArcCacheHitRatio + num_oid: .1.3.6.1.4.1.50536.1.3.9.{{ $index }} + descr: 'Arc Cache Hit Ratio Percentage' + index: zfsArcHitRatio.{{ $index }} + - + oid: zfsArcCacheMissRatio + value: zfsArcCacheMissRatio + num_oid: .1.3.6.1.4.1.50536.1.3.10.{{ $index }} + descr: 'Arc Cache Miss Ratio Percentage' + index: zfsArcMissRatio.{{ $index }} + - + oid: zfsL2ArcHits + value: zfsL2ArcHits + num_oid: .1.3.6.1.4.1.50536.1.4.1.{{ $index }} + descr: 'L2ARC Hits' + index: zfsL2ArcHits_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcMisses + value: zfsL2ArcMisses + num_oid: .1.3.6.1.4.1.50536.1.4.2.{{ $index }} + descr: 'L2ARC Misses' + index: zfsL2ArcMisses_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcRead + value: zfsL2ArcRead + num_oid: .1.3.6.1.4.1.50536.1.4.3.{{ $index }} + descr: 'L2ARC Reads' + index: zfsL2ArcRead_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcWrite + value: zfsL2ArcWrite + num_oid: .1.3.6.1.4.1.50536.1.4.4.{{ $index }} + descr: 'L2ARC Writes' + index: zfsL2ArcWrite_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcSize + value: zfsL2ArcSize + num_oid: .1.3.6.1.4.1.50536.1.4.5.{{ $index }} + descr: 'L2ARC Size' + index: zfsL2ArcSize.{{ $index }} + - + oid: zfsZilstatOps1sec + value: zfsZilstatOps1sec + num_oid: .1.3.6.1.4.1.50536.1.5.1.{{ $index }} + descr: 'ZIL Operations last second' + index: zfsZilstatOps1sec.{{ $index }} + - + oid: zfsZilstatOps5sec + value: zfsZilstatOps5sec + num_oid: .1.3.6.1.4.1.50536.1.5.2.{{ $index }} + descr: 'ZIL Operations last 5 seconds' + index: zfsZilstatOps5sec.{{ $index }} + - + oid: zfsZilstatOps10sec + value: zfsZilstatOps10sec + num_oid: .1.3.6.1.4.1.50536.1.5.3.{{ $index }} + descr: 'ZIL Operations last 10 seconds' + index: zfsZilstatOps10sec.{{ $index }} + temperature: + data: + - + oid: hddTempTable + value: hddTempValue + num_oid: .1.3.6.1.4.1.50536.3.1.3.{{ $index }} + divisor: 1000 + descr: '{{ $hddTempDevice }}' + index: hddTempValue.'{{ $index }}' + group: 'hdd temperature' + state: + data: + - + oid: zpoolTable + value: zpoolHealth + num_oid: .1.3.6.1.4.1.50536.1.1.1.1.3.{{ $index }} + descr: 'ZPool: {{ $zpoolName }}' + index: zpoolHealth.{{ $index }} + states: + - { value: 0, descr: ONLINE, graph: 1, generic: 0 } + - { value: 1, descr: DEGRADED, graph: 1, generic: 1 } + - { value: 2, descr: FAULTED, graph: 1, generic: 2 } + - { value: 3, descr: OFFLINE, graph: 1, generic: 2 } + - { value: 4, descr: UNAVAIL, graph: 1, generic: 2 } + - { value: 5, descr: REMOVED, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/truenas.yaml b/priv/profiles/os_discovery/truenas.yaml new file mode 100644 index 00000000..bce5ebac --- /dev/null +++ b/priv/profiles/os_discovery/truenas.yaml @@ -0,0 +1,156 @@ +mib: FREENAS-MIB # Used for FreeNAS and TrueNAS-CORE +modules: + os: + sysDescr_regex: '/(?:TrueNAS-|FreeNAS-)(?\S*).*\. Hardware: (?.*).*\. Software.*/' + storage: + data: + - + oid: FREENAS-MIB::zpoolTable + poller_type: freenas-zpool + type: zpool + descr: FREENAS-MIB::zpoolDescr + units: FREENAS-MIB::zpoolAllocationUnits + size: FREENAS-MIB::zpoolSize + used: FREENAS-MIB::zpoolUsed + used_num_oid: '.1.3.6.1.4.1.50536.1.1.1.1.5.{{ $index }}' + - + oid: FREENAS-MIB::datasetTable + poller_type: freenas-dataset + type: dataset + descr: FREENAS-MIB::datasetDescr + units: FREENAS-MIB::datasetAllocationUnits + size: FREENAS-MIB::datasetSize + free: FREENAS-MIB::datasetAvailable + free_num_oid: '.1.3.6.1.4.1.50536.1.2.1.1.6.{{ $index }}' + sensors: + count: + data: + - + oid: zfsArcSize + value: zfsArcSize + num_oid: .1.3.6.1.4.1.50536.1.4.1.{{ $index }} + descr: 'ARC Size' + index: zfsArcSize.{{ $index }} + - + oid: zfsArcMeta + value: zfsArcMeta + num_oid: .1.3.6.1.4.1.50536.1.4.2.{{ $index }} + descr: 'ARC Metadata' + index: zfsArcMeta.{{ $index }} + - + oid: zfsArcData + value: zfsArcData + num_oid: .1.3.6.1.4.1.50536.1.4.3.{{ $index }} + descr: 'ARC Data' + index: zfsArcData.{{ $index }} + - + oid: zfsArcHits + value: zfsArcHits + num_oid: .1.3.6.1.4.1.50536.1.4.4.{{ $index }} + descr: 'ARC Hits' + index: zfsArcHits_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsArcMisses + value: zfsArcMisses + num_oid: .1.3.6.1.4.1.50536.1.4.5.{{ $index }} + descr: 'ARC Misses' + index: zfsArcMisses_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsArcC + value: zfsArcC + num_oid: .1.3.6.1.4.1.50536.1.4.6.{{ $index }} + descr: 'ARC Target Size (C)' + index: zfsArcC.{{ $index }} + - + oid: zfsArcP + value: zfsArcP + num_oid: .1.3.6.1.4.1.50536.1.4.7.{{ $index }} + descr: 'ARC MRU Target Size (P)' + index: zfsArcP.{{ $index }} + - + oid: zfsArcMissPercent + value: zfsArcMissPercent + num_oid: .1.3.6.1.4.1.50536.1.4.8.{{ $index }} + descr: 'ARC Miss Percent' + index: zfsArcMissPercent.{{ $index }} + - + oid: zfsArcCacheHitRatio + value: zfsArcCacheHitRatio + num_oid: .1.3.6.1.4.1.50536.1.4.9.{{ $index }} + descr: 'ARC Hit Ratio' + index: zfsArcCacheHitRatio.{{ $index }} + - + oid: zfsArcMissRatio + value: zfsArcMissRatio + num_oid: .1.3.6.1.4.1.50536.1.4.10.{{ $index }} + descr: 'ARC Miss Ratio' + index: zfsArcMissRatio.{{ $index }} + - + oid: zfsL2ArcHits + value: zfsL2ArcHits + num_oid: .1.3.6.1.4.1.50536.1.5.1.{{ $index }} + descr: 'L2ARC Hits' + index: zfsL2ArcHits_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcMisses + value: zfsL2ArcMisses + num_oid: .1.3.6.1.4.1.50536.1.5.2.{{ $index }} + descr: 'L2ARC Misses' + index: zfsL2ArcMisses_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcRead + value: zfsL2ArcRead + num_oid: .1.3.6.1.4.1.50536.1.5.3.{{ $index }} + descr: 'L2ARC Reads' + index: zfsL2ArcRead_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcWrite + value: zfsL2ArcWrite + num_oid: .1.3.6.1.4.1.50536.1.5.4.{{ $index }} + descr: 'L2ARC Writes' + index: zfsL2ArcWrite_rate.{{ $index }} + rrd_type: COUNTER + - + oid: zfsL2ArcSize + value: zfsL2ArcSize + num_oid: .1.3.6.1.4.1.50536.1.5.5.{{ $index }} + descr: 'L2ARC Size' + index: zfsL2ArcSize.{{ $index }} + - + oid: zfsZilstatOps1sec + value: zfsZilstatOps1sec + num_oid: .1.3.6.1.4.1.50536.1.6.1.{{ $index }} + descr: 'ZIL Operations last second' + index: zfsZilstatOps1sec.{{ $index }} + - + oid: zfsZilstatOps5sec + value: zfsZilstatOps5sec + num_oid: .1.3.6.1.4.1.50536.1.6.2.{{ $index }} + descr: 'ZIL Operations last 5 seconds' + index: zfsZilstatOps5sec.{{ $index }} + - + oid: zfsZilstatOps10sec + value: zfsZilstatOps10sec + num_oid: .1.3.6.1.4.1.50536.1.6.3.{{ $index }} + descr: 'ZIL Operations last 10 seconds' + index: zfsZilstatOps10sec.{{ $index }} + state: + data: + - + oid: zpoolTable + value: zpoolHealth + num_oid: .1.3.6.1.4.1.50536.1.1.1.1.7.{{ $index }} + descr: 'ZPool: {{ $zpoolDescr }}' + index: zpoolHealth.{{ $index }} + states: + - { value: 0, descr: online, graph: 1, generic: 0 } + - { value: 1, descr: degraded, graph: 1, generic: 1 } + - { value: 2, descr: faulted, graph: 1, generic: 2 } + - { value: 3, descr: offline, graph: 1, generic: 2 } + - { value: 4, descr: unavail, graph: 1, generic: 2 } + - { value: 5, descr: removed, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/ts-bspdu.yaml b/priv/profiles/os_discovery/ts-bspdu.yaml new file mode 100644 index 00000000..bae4b297 --- /dev/null +++ b/priv/profiles/os_discovery/ts-bspdu.yaml @@ -0,0 +1,37 @@ +mib: SPSv1-MIB +modules: + sensors: + power: + data: + - + oid: pduPwrMonitoringInletStatusTable + value: inletPowerPhase1 + num_oid: '.1.3.6.1.4.1.42610.1.4.4.1.6.1.2.1.15.{{ $index }}' + descr: 'Inlet Power S{{ $index }}' + divisor: 10 + group: 'Inlets' + current: + data: + - + oid: pduPwrMonitoringInletStatusTable + value: inletCurrPhase1 + num_oid: '.1.3.6.1.4.1.42610.1.4.4.1.6.1.2.1.6.{{ $index }}' + descr: 'Inlet Current S{{ $index }}' + divisor: 100 + group: 'Inlets' + power_consumed: + data: + - + oid: pduPwrMonitoringInletStatusTable + value: inletEnergy + num_oid: '.1.3.6.1.4.1.42610.1.4.4.1.6.1.2.1.4.{{ $index }}' + descr: 'Inlet Total Energy S{{ $index }}' + group: 'Inlets' + voltage: + data: + - + oid: pduPwrMonitoringInletStatusTable + value: inletVoltPhase1 + num_oid: '.1.3.6.1.4.1.42610.1.4.4.1.6.1.2.1.9.{{ $index }}' + descr: 'Inlet Voltage S{{ $index }}' + group: 'Inlets' diff --git a/priv/profiles/os_discovery/ubiquoss-pon.yaml b/priv/profiles/os_discovery/ubiquoss-pon.yaml new file mode 100644 index 00000000..1f8b368b --- /dev/null +++ b/priv/profiles/os_discovery/ubiquoss-pon.yaml @@ -0,0 +1,4 @@ +modules: + os: + sysDescr_regex: '/(?.*)/' + serial: ENTITY-MIB::entPhysicalSerialNum.1 diff --git a/priv/profiles/os_discovery/ucopia.yaml b/priv/profiles/os_discovery/ucopia.yaml new file mode 100644 index 00000000..c0bec2a7 --- /dev/null +++ b/priv/profiles/os_discovery/ucopia.yaml @@ -0,0 +1,291 @@ +mib: CONTROLLER-MIB +modules: + sensors: + additional_oids: + data: + - + oid: + - licenseUsers + + state: + data: + - + oid: highAvailabilityStatus + value: highAvailabilityStatus + num_oid: '.1.3.6.1.4.1.31218.3.7.{{ $index }}' + descr: 'High Availability Status' + index: 'highAvailabilityStatus.{{ $index }}' + state_name: highAvailabilityStatus + states: + - { descr: Standalone, graph: 1, value: 0, generic: 0 } + - { descr: Master, graph: 1, value: 1, generic: 0 } + - { descr: Active, graph: 1, value: 2, generic: 0 } + - { descr: Passive, graph: 1, value: 3, generic: 0 } + - { descr: Fault, graph: 1, value: 4, generic: 2 } + - + oid: debugValue + value: debugValue + num_oid: '.1.3.6.1.4.1.31218.3.2.{{ $index }}' + descr: 'Debug Value' + index: 'debugValue.{{ $index }}' + state_name: debugValue + states: + - { descr: Emergency, graph: 1, value: 0, generic: 2 } + - { descr: Alert, graph: 1, value: 1, generic: 2 } + - { descr: Critical, graph: 1, value: 2, generic: 2 } + - { descr: Error, graph: 1, value: 3, generic: 2 } + - { descr: Warning, graph: 1, value: 4, generic: 1 } + - { descr: Notice, graph: 1, value: 5, generic: 0 } + - { descr: Informational, graph: 1, value: 6, generic: 0 } + - { descr: Debug, graph: 1, value: 7, generic: 0 } + - + oid: webServerService + value: webServerService + num_oid: '.1.3.6.1.4.1.31218.4.1.{{ $index }}' + descr: 'Web Server Status' + index: 'webServerService.{{ $index }}' + state_name: webServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: sqlServerService + value: sqlServerService + num_oid: '.1.3.6.1.4.1.31218.4.2.{{ $index }}' + descr: 'SQL Server Status' + index: 'sqlServerService.{{ $index }}' + state_name: sqlServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: urlSnifferService + value: urlSnifferService + num_oid: '.1.3.6.1.4.1.31218.4.3.{{ $index }}' + descr: 'URL Sniffer Status' + index: 'urlSnifferService.{{ $index }}' + state_name: urlSnifferService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: portalService + value: portalService + num_oid: '.1.3.6.1.4.1.31218.4.4.{{ $index }}' + descr: 'Portal Status' + index: 'portalService.{{ $index }}' + state_name: portalService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: webProxyService + value: webProxyService + num_oid: '.1.3.6.1.4.1.31218.4.5.{{ $index }}' + descr: 'Web Proxy Status' + index: 'webProxyService.{{ $index }}' + state_name: webProxyService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: autodisconnectService + value: autodisconnectService + num_oid: '.1.3.6.1.4.1.31218.4.6.{{ $index }}' + descr: 'Auto Disconnect Status' + index: 'autodisconnectService.{{ $index }}' + state_name: autodisconnectService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: printingServerService + value: printingServerService + num_oid: '.1.3.6.1.4.1.31218.4.7.{{ $index }}' + descr: 'Printing Server Status' + index: 'printingServerService.{{ $index }}' + state_name: printingServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: dhcpServerService + value: dhcpServerService + num_oid: '.1.3.6.1.4.1.31218.4.8.{{ $index }}' + descr: 'DHCP Server Status' + index: 'dhcpServerService.{{ $index }}' + state_name: dhcpServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: dnsServerService + value: dnsServerService + num_oid: '.1.3.6.1.4.1.31218.4.9.{{ $index }}' + descr: 'DNS Server Status' + index: 'dnsServerService.{{ $index }}' + state_name: dnsServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: staticIpManagerService + value: staticIpManagerService + num_oid: '.1.3.6.1.4.1.31218.4.10.{{ $index }}' + descr: 'Static IP Manager Status' + index: 'staticIpManagerService.{{ $index }}' + state_name: staticIpManagerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: highAvailabilityService + value: highAvailabilityService + num_oid: '.1.3.6.1.4.1.31218.4.11.{{ $index }}' + descr: 'High Availability Service Status' + index: 'highAvailabilityService.{{ $index }}' + state_name: highAvailabilityService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: ldapDirectoryService + value: ldapDirectoryService + num_oid: '.1.3.6.1.4.1.31218.4.12.{{ $index }}' + descr: 'LDAP Directory Status' + index: 'ldapDirectoryService.{{ $index }}' + state_name: ldapDirectoryService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: ldapReplicationManagerService + value: ldapReplicationManagerService + num_oid: '.1.3.6.1.4.1.31218.4.13.{{ $index }}' + descr: 'LDAP Replication Manager Status' + index: 'ldapReplicationManagerService.{{ $index }}' + state_name: ldapReplicationManagerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: timeServerService + value: timeServerService + num_oid: '.1.3.6.1.4.1.31218.4.14.{{ $index }}' + descr: 'NTP Status' + index: 'timeServerService.{{ $index }}' + state_name: timeServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: radiusServerService + value: radiusServerService + num_oid: '.1.3.6.1.4.1.31218.4.15.{{ $index }}' + descr: 'RADIUS Status' + index: 'radiusServerService.{{ $index }}' + state_name: radiusServerService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: sambaService + value: sambaService + num_oid: '.1.3.6.1.4.1.31218.4.16.{{ $index }}' + descr: 'SAMBA Status' + index: 'sambaService.{{ $index }}' + state_name: sambaService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: sshService + value: sshService + num_oid: '.1.3.6.1.4.1.31218.4.17.{{ $index }}' + descr: 'SSH Status' + index: 'sshService.{{ $index }}' + state_name: sshService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: syslogService + value: syslogService + num_oid: '.1.3.6.1.4.1.31218.4.18.{{ $index }}' + descr: 'Syslog Status' + index: 'syslogService.{{ $index }}' + state_name: syslogService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: syslogService + value: usersLogService + num_oid: '.1.3.6.1.4.1.31218.4.19.{{ $index }}' + descr: 'Users Log Status' + index: 'usersLogService.{{ $index }}' + state_name: usersLogService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + - + oid: pmsClientService + value: pmsClientService + num_oid: '.1.3.6.1.4.1.31218.4.20.{{ $index }}' + descr: 'PMSClient Status' + index: 'pmsClientService.{{ $index }}' + state_name: pmsClientService + states: + - { descr: Running, graph: 1, value: 1, generic: 0 } + - { descr: Stopped, graph: 1, value: 2, generic: 2 } + - { descr: Disabled, graph: 1, value: 3, generic: 0 } + count: + data: + - + oid: totalConnectedUsers + num_oid: '.1.3.6.1.4.1.31218.3.1.{{ $index }}' + index: 'totalConnectedUsers.{{ $index }}' + descr: Connected Users + high_limit: licenseUsers + + temperature: + data: + - + oid: cpuTemperature + num_oid: '.1.3.6.1.4.1.31218.3.3.{{ $index }}' + index: 'cpuTemperature.{{ $index }}' + descr: CPU Temperature + skip_values: + - + oid: cpuTemperature + op: '=' + value: '' + - + oid: diskTemperature + num_oid: '.1.3.6.1.4.1.31218.3.4.{{ $index }}' + index: 'diskTemperature.{{ $index }}' + descr: Disk Temperature + skip_values: + - + oid: diskTemperature + op: '=' + value: '' diff --git a/priv/profiles/os_discovery/ucos.yaml b/priv/profiles/os_discovery/ucos.yaml new file mode 100644 index 00000000..ccaeb81c --- /dev/null +++ b/priv/profiles/os_discovery/ucos.yaml @@ -0,0 +1,92 @@ +mib: CISCO-UNIFIED-COMPUTING-EQUIPMENT-MIB +modules: + os: + hardware_mib: CISCO-PRODUCTS-MIB + version: SYSAPPL-MIB::sysApplInstallPkgVersion.1 + sensors: + additional_oids: + data: + - + oid: + - cucsEquipmentChassisDn + - cucsEquipmentFanModuleDn + - cucsEquipmentPsuDn + state: + data: + - + oid: cucsEquipmentChassisOperState + value: cucsEquipmentChassisOperState + num_oid: '.1.3.6.1.4.1.9.9.719.1.15.7.1.27.{{ $index }}' + descr: 'Chassis - {{ $cucsEquipmentChassisDn }}' + index: '{{ $index }}' + group: Chassis + states: + - { value: 0, descr: unknown, graph: 1, generic: 3 } + - { value: 1, descr: operable, graph: 1, generic: 0 } + - { value: 2, descr: inoperable, graph: 1, generic: 2 } + - { value: 3, descr: degraded, graph: 1, generic: 2 } + - { value: 4, descr: powered off, graph: 1, generic: 3 } + - { value: 5, descr: power problem, graph: 1, generic: 2 } + - { value: 6, descr: removed, graph: 1, generic: 3 } + - { value: 7, descr: voltage problem, graph: 1, generic: 2 } + - { value: 8, descr: thermal problem, graph: 1, generic: 2 } + - { value: 9, descr: performance problem, graph: 1, generic: 2 } + - { value: 10, descr: accessibility problem, graph: 1, generic: 2 } + - { value: 11, descr: identity unestablishable, graph: 1, generic: 2 } + - { value: 12, descr: BIOS POST timeout, graph: 1, generic: 2 } + - { value: 13, descr: disabled, graph: 1, generic: 3 } + - { value: 14, descr: malformed FRU, graph: 1, generic: 1 } + - { value: 51, descr: fabric connectivity problem, graph: 1, generic: 2 } + - { value: 52, descr: fabric unsupported connection, graph: 1, generic: 2 } + - { value: 81, descr: config, graph: 1, generic: 1 } + - { value: 82, descr: equipment problem, graph: 1, generic: 2 } + - { value: 83, descr: decomissioning, graph: 1, generic: 1 } + - { value: 84, descr: chassis limit exceeded, graph: 1, generic: 1 } + - { value: 100, descr: not supported, graph: 1, generic: 1 } + - { value: 101, descr: discovery, graph: 1, generic: 3 } + - { value: 102, descr: discovery failed, graph: 1, generic: 1 } + - { value: 103, descr: identify, graph: 1, generic: 3 } + - { value: 104, descr: post failure, graph: 1, generic: 2 } + - { value: 105, descr: upgrade problem, graph: 1, generic: 2 } + - { value: 106, descr: peer communication problem, graph: 1, generic: 2 } + - { value: 107, descr: auto upgrade, graph: 1, generic: 3 } + + - + oid: cucsEquipmentFanModuleOperState + value: cucsEquipmentFanModuleOperState + num_oid: '.1.3.6.1.4.1.9.9.719.1.15.13.1.7.{{ $index }}' + descr: 'Fan Module - {{ $cucsEquipmentFanModuleDn }}' + index: '{{ $index }}' + group: Fans + states: + - { value: 0, descr: unknown, graph: 1, generic: 3 } + - { value: 1, descr: ok, graph: 1, generic: 0 } + - { value: 2, descr: upper non-recoverable, graph: 1, generic: 2 } + - { value: 3, descr: upper critical, graph: 1, generic: 2 } + - { value: 4, descr: upper non-critical, graph: 1, generic: 1 } + - { value: 5, descr: lower non-critical, graph: 1, generic: 1 } + - { value: 6, descr: lower critical, graph: 1, generic: 2 } + - { value: 7, descr: lower non-recoverable, graph: 1, generic: 2 } + - { value: 100, descr: not supported, graph: 1, generic: 3 } + + - + oid: cucsEquipmentPsuPower + value: cucsEquipmentPsuPower + num_oid: '.1.3.6.1.4.1.9.9.719.1.15.56.1.10.{{ $index }}' + descr: 'PSU - {{ $cucsEquipmentPsuDn }}' + index: '{{ $index }}' + group: PSU + states: + - { value: 0, descr: unknown, graph: 1, generic: 3 } + - { value: 1, descr: on, graph: 1, generic: 0 } + - { value: 2, descr: test, graph: 1, generic: 3 } + - { value: 3, descr: off, graph: 1, generic: 0 } + - { value: 4, descr: online, graph: 1, generic: 0 } + - { value: 5, descr: offline, graph: 1, generic: 3 } + - { value: 6, descr: off duty, graph: 1, generic: 3 } + - { value: 7, descr: degraded, graph: 1, generic: 2 } + - { value: 8, descr: power save, graph: 1, generic: 0 } + - { value: 9, descr: error, graph: 1, generic: 2 } + - { value: 10, descr: ok, graph: 1, generic: 0 } + - { value: 11, descr: failed, graph: 1, generic: 2 } + - { value: 100, descr: not supported, graph: 1, generic: 3 } diff --git a/priv/profiles/os_discovery/uhp.yaml b/priv/profiles/os_discovery/uhp.yaml new file mode 100644 index 00000000..386cd118 --- /dev/null +++ b/priv/profiles/os_discovery/uhp.yaml @@ -0,0 +1,717 @@ +mib: UHP-MIB +modules: + os: + version: UHP-MIB::swVersion.0 + serial: UHP-MIB::serialNumber.0 + processors: + data: + - + oid: cpuLoad + num_oid: .1.3.6.1.4.1.8000.22.8.2.{{ $index }} + type: uhp + sensors: + temperature: + data: + - + oid: temperature + value: temperature + num_oid: .1.3.6.1.4.1.8000.22.2.1.{{ $index }} + index: 'temperature.{{ $index }}' + descr: 'Temperature' + user_func: fahrenheit_to_celsius + snr: + data: + - + oid: lbandSNR1 + value: lbandSNR1 + num_oid: .1.3.6.1.4.1.8000.22.2.1.{{ $index }} + index: 'lbandSNR1.{{ $index }}' + descr: 'Ratio at L-band' + group: 'Demodulator 1' + divisor: 10 + - + oid: lbandSNR2 + value: lbandSNR2 + num_oid: .1.3.6.1.4.1.8000.22.3.1.{{ $index }} + index: 'lbandSNR2.{{ $index }}' + descr: 'Ratio at L-band' + group: 'Demodulator 2' + divisor: 10 + frequency: + data: + - + oid: lbandOffset1 + value: lbandOffset1 + num_oid: .1.3.6.1.4.1.8000.22.2.2.{{ $index }} + index: 'lbandOffset1.{{ $index }}' + descr: 'PLL and carrier offset' + group: 'Demodulator 1' + multiplier: 1000 + - + oid: lbandOffset2 + value: lbandOffset2 + num_oid: .1.3.6.1.4.1.8000.22.3.2.{{ $index }} + index: 'lbandOffset2.{{ $index }}' + descr: 'PLL and carrier offset' + group: 'Demodulator 2' + multiplier: 1000 + - + oid: tdelta + value: tdelta + num_oid: .1.3.6.1.4.1.8000.22.5.1.{{ $index }} + index: 'tdelta.{{ $index }}' + descr: 'Delta between station and hub' + group: 'TTS' + - + oid: hubTTS + value: hubTTS + num_oid: .1.3.6.1.4.1.8000.22.5.1.5.{{ $index }} + index: 'hubTTS.{{ $index }}' + descr: 'HUB TTS' + group: 'TTS' + - + oid: remoteTTS + value: remoteTTS + num_oid: .1.3.6.1.4.1.8000.22.5.1.7.{{ $index }} + index: 'remoteTTS.{{ $index }}' + descr: 'Remote TTS' + group: 'TTS' + - + oid: frqOffset + value: frqOffset + num_oid: .1.3.6.1.4.1.8000.22.5.5.7.{{ $index }} + index: 'frqOffset.{{ $index }}' + descr: 'Frequency offset' + - + oid: frqAdjust + value: frqAdjust + num_oid: .1.3.6.1.4.1.8000.22.5.5.7.{{ $index }} + index: 'frqAdjust.{{ $index }}' + descr: 'TX frequency adjustment' + bitrate: + data: + - + oid: prioAll + value: outBytesA + num_oid: .1.3.6.1.4.1.8000.22.4.1.1.{{ $index }} + index: 'outBytesA.{{ $index }}' + descr: 'Traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP1 + value: outBytesP1 + num_oid: .1.3.6.1.4.1.8000.22.4.2.1.{{ $index }} + index: 'outBytesP1.{{ $index }}' + descr: 'P1(low) priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP2 + value: outBytesP2 + num_oid: .1.3.6.1.4.1.8000.22.4.7.1.{{ $index }} + index: 'outBytesP2.{{ $index }}' + descr: 'P2 priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP3 + value: outBytesP3 + num_oid: .1.3.6.1.4.1.8000.22.4.8.1.{{ $index }} + index: 'outBytesP3.{{ $index }}' + descr: 'P3 priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP4 + value: outBytesP4 + num_oid: .1.3.6.1.4.1.8000.22.4.3.1.{{ $index }} + index: 'outBytesP4.{{ $index }}' + descr: 'P4(med) priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP5 + value: outBytesP5 + num_oid: .1.3.6.1.4.1.8000.22.4.9.1.{{ $index }} + index: 'outBytesP5.{{ $index }}' + descr: 'P5 priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP6 + value: outBytesP6 + num_oid: .1.3.6.1.4.1.8000.22.4.10.1.{{ $index }} + index: 'outBytesP6.{{ $index }}' + descr: 'P6 priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesP7 + value: outBytesP7 + num_oid: .1.3.6.1.4.1.8000.22.4.4.1.{{ $index }} + index: 'outBytesP7.{{ $index }}' + descr: 'P7(high) priority traffic' + group: 'Modulator' + divisor: 8 + - + oid: outBytesC + value: outBytesC + num_oid: .1.3.6.1.4.1.8000.22.4.5.1.{{ $index }} + index: 'outBytesC.{{ $index }}' + descr: 'Control traffic' + group: 'Modulator' + divisor: 8 + - + oid: prioAll + value: queueLenBA + num_oid: .1.3.6.1.4.1.8000.22.4.1.4.{{ $index }} + index: 'queueLenBA.{{ $index }}' + descr: 'Queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP1 + value: queueLenBP1 + num_oid: .1.3.6.1.4.1.8000.22.4.2.4.{{ $index }} + index: 'queueLenBP1.{{ $index }}' + descr: 'P1(low) queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP2 + value: queueLenBP2 + num_oid: .1.3.6.1.4.1.8000.22.4.7.4.{{ $index }} + index: 'queueLenBP2.{{ $index }}' + descr: 'P2 queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP3 + value: queueLenBP3 + num_oid: .1.3.6.1.4.1.8000.22.4.8.4.{{ $index }} + index: 'queueLenBP3.{{ $index }}' + descr: 'P3 queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP4 + value: queueLenBP4 + num_oid: .1.3.6.1.4.1.8000.22.4.3.4.{{ $index }} + index: 'queueLenBP4.{{ $index }}' + descr: 'P4(med) queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP5 + value: queueLenBP5 + num_oid: .1.3.6.1.4.1.8000.22.4.9.4.{{ $index }} + index: 'queueLenBP5.{{ $index }}' + descr: 'P5 queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP6 + value: queueLenBP6 + num_oid: .1.3.6.1.4.1.8000.22.4.10.4.{{ $index }} + index: 'queueLenBP6.{{ $index }}' + descr: 'P6 queue length' + divisor: 8 + group: 'Modulator' + - + oid: queueLenBP7 + value: queueLenBP7 + num_oid: .1.3.6.1.4.1.8000.22.4.4.4.{{ $index }} + index: 'queueLenBP7.{{ $index }}' + descr: 'P7(high) queue length' + divisor: 8 + group: 'Modulator' + - + oid: sectionBW + num_oid: .1.3.6.1.4.1.8000.22.5.2.3.{{ $index }} + index: 'sectionBW.{{ $index }}' + descr: 'Bandwidth of single slot in frame' + divisor: 8 + - + oid: inBytes1 + num_oid: .1.3.6.1.4.1.8000.22.2.4.{{ $index }} + index: 'inBytes1.{{ $index }}' + descr: 'Traffic' + group: 'Demodulator 1' + divisor: 8 + - + oid: inBytes2 + num_oid: .1.3.6.1.4.1.8000.22.3.4.{{ $index }} + index: 'inBytes2.{{ $index }}' + descr: 'Traffic' + group: 'Demodulator 2' + divisor: 8 + - + oid: sectionBW + num_oid: .1.3.6.1.4.1.8000.22.5.2.3.{{ $index }} + index: 'sectionBW.{{ $index }}' + descr: 'Bandwidth of single slot in frame' + divisor: 8 + count: + data: + - + oid: prioAll + value: outPktsA + num_oid: .1.3.6.1.4.1.8000.22.4.1.2.{{ $index }} + index: 'outPktsA.{{ $index }}' + descr: 'Traffic in packets' + group: 'Modulator' + - + oid: outPktsC + value: outPktsC + num_oid: .1.3.6.1.4.1.8000.22.4.5.2.{{ $index }} + index: 'outPktsC.{{ $index }}' + descr: 'Control traffic in packets' + group: 'Modulator' + - + oid: outPktsP1 + value: outPktsP1 + num_oid: .1.3.6.1.4.1.8000.22.4.2.2.{{ $index }} + index: 'outPktsP1.{{ $index }}' + descr: 'P1(low) priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP2 + value: outPktsP2 + num_oid: .1.3.6.1.4.1.8000.22.4.7.2.{{ $index }} + index: 'outPktsP2.{{ $index }}' + descr: 'P2 priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP3 + value: outPktsP3 + num_oid: .1.3.6.1.4.1.8000.22.4.8.2.{{ $index }} + index: 'outPktsP3.{{ $index }}' + descr: 'P3 priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP4 + value: outPktsP4 + num_oid: .1.3.6.1.4.1.8000.22.4.3.2.{{ $index }} + index: 'outPktsP4.{{ $index }}' + descr: 'P4(med) priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP5 + value: outPktsP5 + num_oid: .1.3.6.1.4.1.8000.22.4.9.2.{{ $index }} + index: 'outPktsP5.{{ $index }}' + descr: 'P5 priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP6 + value: outPktsP6 + num_oid: .1.3.6.1.4.1.8000.22.4.10.2.{{ $index }} + index: 'outPktsP6.{{ $index }}' + descr: 'P6 priority traffic in packets' + group: 'Modulator' + - + oid: outPktsP7 + value: outPktsP7 + num_oid: .1.3.6.1.4.1.8000.22.4.4.2.{{ $index }} + index: 'outPktsP7.{{ $index }}' + descr: 'P7(high) priority traffic in packets' + group: 'Modulator' + - + oid: prioAll + value: dropsA + num_oid: .1.3.6.1.4.1.8000.22.4.1.3.{{ $index }} + index: 'dropsA.{{ $index }}' + descr: 'Dropped packets' + group: 'Modulator' + - oid: dropsP1 + value: dropsP1 + num_oid: .1.3.6.1.4.1.8000.22.4.2.3.{{ $index }} + index: 'dropsP1.{{ $index }}' + descr: 'P1(low) dropped packets' + group: 'Modulator' + - oid: dropsP2 + value: dropsP2 + num_oid: .1.3.6.1.4.1.8000.22.4.7.3.{{ $index }} + index: 'dropsP2.{{ $index }}' + descr: 'P2 dropped packets' + group: 'Modulator' + - oid: dropsP3 + value: dropsP3 + num_oid: .1.3.6.1.4.1.8000.22.4.8.3.{{ $index }} + index: 'dropsP3.{{ $index }}' + descr: 'P3 dropped packets' + group: 'Modulator' + - oid: dropsP4 + value: dropsP4 + num_oid: .1.3.6.1.4.1.8000.22.4.3.3.{{ $index }} + index: 'dropsP4.{{ $index }}' + descr: 'P4(med) dropped packets' + group: 'Modulator' + - oid: dropsP5 + value: dropsP5 + num_oid: .1.3.6.1.4.1.8000.22.4.9.3.{{ $index }} + index: 'dropsP5.{{ $index }}' + descr: 'P5 dropped packets' + group: 'Modulator' + - oid: dropsP6 + value: dropsP6 + num_oid: .1.3.6.1.4.1.8000.22.4.10.3.{{ $index }} + index: 'dropsP6.{{ $index }}' + descr: 'P6 dropped packets' + group: 'Modulator' + - oid: dropsP7 + value: dropsP7 + num_oid: .1.3.6.1.4.1.8000.22.4.4.3.{{ $index }} + index: 'dropsP7.{{ $index }}' + descr: 'P7(high) dropped packets' + group: 'Modulator' + - + oid: prioAll + value: queueLenPA + num_oid: .1.3.6.1.4.1.8000.22.4.2.5.{{ $index }} + index: 'queueLenPA.{{ $index }}' + descr: 'Queue length in packets' + group: 'Modulator' + - + oid: queueLenPP1 + value: queueLenPP1 + num_oid: .1.3.6.1.4.1.8000.22.4.2.5.{{ $index }} + index: 'queueLenPP1.{{ $index }}' + descr: 'P1(low) queue length in packets' + group: 'Modulator' + - + oid: queueLenPP2 + value: queueLenPP2 + num_oid: .1.3.6.1.4.1.8000.22.4.7.5.{{ $index }} + index: 'queueLenPP2.{{ $index }}' + descr: 'P2 queue length in packets' + group: 'Modulator' + - + oid: queueLenPP3 + value: queueLenPP3 + num_oid: .1.3.6.1.4.1.8000.22.4.8.5.{{ $index }} + index: 'queueLenPP3.{{ $index }}' + descr: 'P3 queue length in packets' + group: 'Modulator' + - + oid: queueLenPP4 + value: queueLenPP4 + num_oid: .1.3.6.1.4.1.8000.22.4.3.5.{{ $index }} + index: 'queueLenPP4.{{ $index }}' + descr: 'P4(med) queue length in packets' + group: 'Modulator' + - + oid: queueLenPP5 + value: queueLenPP5 + num_oid: .1.3.6.1.4.1.8000.22.4.9.5.{{ $index }} + index: 'queueLenPP5.{{ $index }}' + descr: 'P5 queue length in packets' + group: 'Modulator' + - + oid: queueLenPP6 + value: queueLenPP6 + num_oid: .1.3.6.1.4.1.8000.22.4.10.5.{{ $index }} + index: 'queueLenPP6.{{ $index }}' + descr: 'P6 queue length in packets' + group: 'Modulator' + - + oid: queueLenPP7 + value: queueLenPP7 + num_oid: .1.3.6.1.4.1.8000.22.4.4.5.{{ $index }} + index: 'queueLenPP7.{{ $index }}' + descr: 'P7(high) queue length in packets' + group: 'Modulator' + - + oid: prioAll + value: numStations + num_oid: .1.3.6.1.4.1.8000.22.4.1.6.{{ $index }} + index: 'numStations.{{ $index }}' + descr: 'Stations per ACM channel' + group: 'Modulator' + - + oid: unroutedPkts + num_oid: .1.3.6.1.4.1.8000.22.6.1.{{ $index }} + index: 'unroutedPkts.{{ $index }}' + descr: 'Unroutable packets' + - + oid: frameDelay + num_oid: .1.3.6.1.4.1.8000.22.5.2.2.{{ $index }} + index: 'frameDelay.{{ $index }}' + descr: 'TX-RX processing delay' + - + oid: netRequest + num_oid: .1.3.6.1.4.1.8000.22.5.2.4.{{ $index }} + index: 'netRequest.{{ $index }}' + descr: 'Requests of all stations' + - + oid: freeSlots + num_oid: .1.3.6.1.4.1.8000.22.5.2.5.{{ $index }} + index: 'freeSlots.{{ $index }}' + descr: 'Free-allocated slots in current frame' + - + oid: frameDuration + num_oid: .1.3.6.1.4.1.8000.22.5.3.2.{{ $index }} + index: 'frameDuration.{{ $index }}' + descr: 'Frame duration' + - + oid: outVlanBytes + num_oid: .1.3.6.1.4.1.8000.22.6.4.{{ $index }} + index: 'outVlanBytes.{{ $index }}' + descr: 'Bytes transmitted via VLAN {{ $index }}' + group: 'VLAN {{ $index }}' + - + oid: inVlanBytes + num_oid: .1.3.6.1.4.1.8000.22.6.5.{{ $index }} + index: 'inVlanBytes.{{ $index }}' + descr: 'Bytes received via VLAN {{ $index }}' + group: 'VLAN {{ $index }}' + - + oid: outSvlanBytes + num_oid: .1.3.6.1.4.1.8000.22.6.5.{{ $index }} + index: 'outSvlanBytes.{{ $index }}' + descr: 'Bytes tranmitted via SVLAN {{ $index }}' + group: 'VLAN {{ $index }}' + - + oid: inSvlanBytes + num_oid: .1.3.6.1.4.1.8000.22.6.7.{{ $index }} + index: 'inSvlanBytes.{{ $index }}' + descr: 'Bytes received via SVLAN {{ $index }}' + group: 'VLAN {{ $index }}' + - + oid: inSvlanPackets + num_oid: .1.3.6.1.4.1.8000.22.6.8.{{ $index }} + index: 'inSvlanBytes.{{ $index }}' + descr: 'Packets received via SVLAN {{ $index }}' + group: 'VLAN {{ $index }}' + - + oid: tdtConfidence + num_oid: .1.3.6.1.4.1.8000.22.5.1.2.{{ $index }} + index: 'tdtConfidence.{{ $index }}' + descr: 'Tdelta confidence 0-64' + group: 'TTS' + - + oid: softErrors + num_oid: .1.3.6.1.4.1.8000.22.5.1.3.{{ $index }} + index: 'softErrors.{{ $index }}' + descr: 'Soft errors of TTS/Tdelta' + group: 'TTS' + - + oid: hardErrors + num_oid: .1.3.6.1.4.1.8000.22.5.1.4.{{ $index }} + index: 'hardErrors.{{ $index }}' + descr: 'Hard errors of TTS/Tdelta' + group: 'TTS' + - + oid: hubTTSconfidence + num_oid: .1.3.6.1.4.1.8000.22.5.1.6.{{ $index }} + index: 'hubTTSconfidence.{{ $index }}' + descr: 'HUB TTS confidence 0-64' + group: 'TTS' + - + oid: remnrtRequest + num_oid: .1.3.6.1.4.1.8000.22.5.5.2.{{ $index }} + index: 'remnrtRequest.{{ $index }}' + descr: 'Request for non-real-time bandwidth' + - + oid: remrtRequest + num_oid: .1.3.6.1.4.1.8000.22.5.5.3.{{ $index }} + index: 'remrtRequest.{{ $index }}' + descr: 'Request for real-time bandwidth' + - + oid: fpLost + num_oid: .1.3.6.1.4.1.8000.22.5.5.4.{{ $index }} + index: 'fpLost.{{ $index }}' + descr: 'Lost frame plans' + - + oid: lvlOffset + num_oid: .1.3.6.1.4.1.8000.22.5.5.5.{{ $index }} + index: 'lvlOffset.{{ $index }}' + descr: 'Reference level C/N level offset' + - + oid: timeOffset + num_oid: .1.3.6.1.4.1.8000.22.5.5.9.{{ $index }} + index: 'timeOffset.{{ $index }}' + descr: 'Timing offset' + divisor: 100000000 + - + oid: timeAdjust + num_oid: .1.3.6.1.4.1.8000.22.5.5.10.{{ $index }} + index: 'timeAdjust.{{ $index }}' + descr: 'TX timing adjustment' + divisor: 100000000 + dbm: + data: + - + oid: txLevel + num_oid: .1.3.6.1.4.1.8000.22.4.6.1.{{ $index }} + index: txLevel.{{ $index }} + descr: 'TX level' + group: 'Modulator' + divisor: 10 + - + oid: txLevelDelta + num_oid: .1.3.6.1.4.1.8000.22.4.6.2.{{ $index }} + index: txLevelDelta.{{ $index }} + descr: 'TX level delta' + group: 'Modulator' + divisor: 10 + - + oid: txMaxLevel + num_oid: .1.3.6.1.4.1.8000.22.4.6.3.{{ $index }} + index: txMaxLevel.{{ $index }} + descr: 'Max TLC level' + group: 'Modulator' + divisor: 10 + - + oid: inLvl1 + num_oid: .1.3.6.1.4.1.8000.22.2.3.{{ $index }} + index: inLvl1.{{ $index }} + descr: 'Input level' + group: 'Demodulator 1' + divisor: 10 + - + oid: inLvl2 + num_oid: .1.3.6.1.4.1.8000.22.3.3.{{ $index }} + index: inLvl2.{{ $index }} + descr: 'Input level' + group: 'Demodulator 2' + divisor: 10 + - + oid: lvlAdjust + num_oid: .1.3.6.1.4.1.8000.22.5.5.6.{{ $index }} + index: lvlAdjust.{{ $index }} + descr: 'TX power level adjustment' + divisor: 10 + - + oid: inputLevel + num_oid: .1.3.6.1.4.1.8000.22.9.3.0.{{ $index }} + index: inputLevel.{{ $index }} + descr: 'Input baseband RF' + divisor: 10 + state: + data: + - + oid: netState + num_oid: '.1.3.6.1.4.1.8000.22.5.2.1.{{ $index }}' + descr: 'Operation status' + index: 'netState.{{ $index }}' + state_name: Operation sequence level + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'init' } + - { value: 2, generic: 0, graph: 0, descr: 'noConfig' } + - { value: 3, generic: 0, graph: 0, descr: 'useConfig' } + - { value: 4, generic: 0, graph: 0, descr: 'redundant' } + - { value: 5, generic: 0, graph: 0, descr: 'startRX' } + - { value: 6, generic: 0, graph: 0, descr: 'cotmPointing' } + - { value: 7, generic: 0, graph: 0, descr: 'startHubTX' } + - { value: 8, generic: 0, graph: 0, descr: 'noRX' } + - { value: 9, generic: 0, graph: 0, descr: 'identify' } + - { value: 10, generic: 0, graph: 0, descr: 'getNetConfig' } + - { value: 11, generic: 0, graph: 0, descr: 'calcDelays' } + - { value: 12, generic: 0, graph: 0, descr: 'startTDMA' } + - { value: 13, generic: 0, graph: 0, descr: 'startTX' } + - { value: 14, generic: 0, graph: 0, descr: 'acquisition' } + - { value: 15, generic: 0, graph: 0, descr: 'adjustment' } + - { value: 16, generic: 0, graph: 0, descr: 'noStations' } + - { value: 17, generic: 0, graph: 0, descr: 'operation' } + - + oid: serverStatus + num_oid: '.1.3.6.1.4.1.8000.22.5.3.1.{{ $index }}' + descr: 'Server reply status' + index: 'serverStatus.{{ $index }}' + state_name: Server reply status + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'init' } + - { value: 2, generic: 0, graph: 0, descr: 'noConfig' } + - { value: 3, generic: 0, graph: 0, descr: 'useConfig' } + - { value: 4, generic: 0, graph: 0, descr: 'redundant' } + - { value: 5, generic: 0, graph: 0, descr: 'startRX' } + - { value: 6, generic: 0, graph: 0, descr: 'cotmPointing' } + - { value: 7, generic: 0, graph: 0, descr: 'startHubTX' } + - { value: 8, generic: 0, graph: 0, descr: 'noRX' } + - { value: 9, generic: 0, graph: 0, descr: 'identify' } + - { value: 10, generic: 0, graph: 0, descr: 'getNetConfig' } + - { value: 11, generic: 0, graph: 0, descr: 'calcDelays' } + - { value: 12, generic: 0, graph: 0, descr: 'startTDMA' } + - { value: 13, generic: 0, graph: 0, descr: 'startTX' } + - { value: 14, generic: 0, graph: 0, descr: 'acquisition' } + - { value: 15, generic: 0, graph: 0, descr: 'adjustment' } + - { value: 16, generic: 0, graph: 0, descr: 'noStations' } + - { value: 17, generic: 0, graph: 0, descr: 'operation' } + - + oid: stationState + num_oid: '.1.3.6.1.4.1.8000.22.5.5.1.{{ $index }}' + descr: 'Remote status' + index: 'stationState.{{ $index }}' + state_name: Remote initialization sequence level + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'init' } + - { value: 2, generic: 0, graph: 0, descr: 'noConfig' } + - { value: 3, generic: 0, graph: 0, descr: 'useConfig' } + - { value: 4, generic: 0, graph: 0, descr: 'redundant' } + - { value: 5, generic: 0, graph: 0, descr: 'startRX' } + - { value: 6, generic: 0, graph: 0, descr: 'cotmPointing' } + - { value: 7, generic: 0, graph: 0, descr: 'startHubTX' } + - { value: 8, generic: 0, graph: 0, descr: 'noRX' } + - { value: 9, generic: 0, graph: 0, descr: 'identify' } + - { value: 10, generic: 0, graph: 0, descr: 'getNetConfig' } + - { value: 11, generic: 0, graph: 0, descr: 'calcDelays' } + - { value: 12, generic: 0, graph: 0, descr: 'startTDMA' } + - { value: 13, generic: 0, graph: 0, descr: 'startTX' } + - { value: 14, generic: 0, graph: 0, descr: 'acquisition' } + - { value: 15, generic: 0, graph: 0, descr: 'adjustment' } + - { value: 16, generic: 0, graph: 0, descr: 'noStations' } + - { value: 17, generic: 0, graph: 0, descr: 'operation' } + - + oid: redundancy + num_oid: '.1.3.6.1.4.1.8000.22.8.4.{{ $index }}' + descr: 'Redundancy status' + index: 'redundancy.{{ $index }}' + state_name: Current redundancy state + states: + - { value: 0, generic: 0, graph: 0, descr: 'idle' } + - { value: 1, generic: 0, graph: 0, descr: 'backup' } + - { value: 2, generic: 0, graph: 0, descr: 'faults' } + - { value: 3, generic: 0, graph: 0, descr: 'trying' } + - { value: 4, generic: 0, graph: 0, descr: 'active' } + - { value: 5, generic: 0, graph: 0, descr: 'off' } + - + oid: rxState + num_oid: '.1.3.6.1.4.1.8000.22.9.4.{{ $index }}' + descr: 'RX status' + index: 'rxState.{{ $index }}' + state_name: Current redundancy state + states: + - { value: 0, generic: 0, graph: 0, descr: 'no RX lock' } + - { value: 1, generic: 0, graph: 0, descr: 'absence of coordinates' } + - { value: 2, generic: 0, graph: 0, descr: 'absence of TX status' } + - + oid: txControl + num_oid: '.1.3.6.1.4.1.8000.22.9.6.{{ $index }}' + descr: 'TX status' + index: 'txControl.{{ $index }}' + state_name: Current TX status + states: + - { value: 0, generic: 0, graph: 0, descr: 'off' } + - { value: 1, generic: 0, graph: 0, descr: 'on' } + percent: + data: + - + oid: netLoad + num_oid: .1.3.6.1.4.1.8000.22.5.2.6.{{ $index }} + index: 'netLoad.{{ $index }}' + descr: 'Network load' + - + oid: buffers + num_oid: .1.3.6.1.4.1.8000.22.8.3.{{ $index }} + index: 'buffers.{{ $index }}' + descr: 'Buffer usage' + - + oid: searchState + num_oid: .1.3.6.1.4.1.8000.22.9.5.{{ $index }} + index: 'searchState.{{ $index }}' + descr: 'Search state' diff --git a/priv/profiles/os_discovery/ulaf.yaml b/priv/profiles/os_discovery/ulaf.yaml new file mode 100644 index 00000000..b8e9ea40 --- /dev/null +++ b/priv/profiles/os_discovery/ulaf.yaml @@ -0,0 +1,21 @@ +mib: ULAF2-MIB +modules: + os: + version: .1.3.6.1.4.1.1887.1.1.1.2.1.1.0 + sensors: + state: + data: + - + oid: deviceLinkEntry + value: deviceLinkAlarm + num_oid: '.1.3.6.1.4.1.1887.1.1.3.2.2.1.1.4.{{ $index }}' + descr: 'Module {{ $index }} State - {{ $deviceLinkName }}' + state_name: deviceLinkAlarm + states: + - { value: 0, generic: 0, graph: 0, descr: 'no Alarm' } + - { value: 1, generic: 2, graph: 0, descr: 'UA' } + - { value: 2, generic: 1, graph: 0, descr: 'NUA' } + - { value: 3, generic: 1, graph: 0, descr: 'AIS' } + - { value: 4, generic: 3, graph: 0, descr: 'unknown' } + - { value: 5, generic: 3, graph: 0, descr: 'unknown' } + group: 'Modules' \ No newline at end of file diff --git a/priv/profiles/os_discovery/unifi-usp.yaml b/priv/profiles/os_discovery/unifi-usp.yaml new file mode 100644 index 00000000..0cf9da46 --- /dev/null +++ b/priv/profiles/os_discovery/unifi-usp.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: SNMPv2-MIB::sysDescr.0 diff --git a/priv/profiles/os_discovery/unifi.yaml b/priv/profiles/os_discovery/unifi.yaml new file mode 100644 index 00000000..0e8c7014 --- /dev/null +++ b/priv/profiles/os_discovery/unifi.yaml @@ -0,0 +1,7 @@ +modules: + mempools: + data: + - + total: FROGFOOT-RESOURCES-MIB::memTotal + free: FROGFOOT-RESOURCES-MIB::memFree + precision: 1024 diff --git a/priv/profiles/os_discovery/uniping.yaml b/priv/profiles/os_discovery/uniping.yaml new file mode 100644 index 00000000..ba8c3e2c --- /dev/null +++ b/priv/profiles/os_discovery/uniping.yaml @@ -0,0 +1,108 @@ +mib: DKSF-70-6-X-X-1 +modules: + sensors: + humidity: + data: + - + oid: npRelHumTable + value: npRelHumValue + num_oid: '.1.3.6.1.4.1.25728.8400.1.1.2.{{ $index }}' + low_limit: npRelHumSafeRangeLow + high_limit: npRelHumSafeRangeHigh + skip_values: 0 + descr: 'Relative Humidity {{ $index }}' + state: + data: + - + oid: npSmokeTable + value: npSmokeStatus + num_oid: '.1.3.6.1.4.1.25728.8200.1.1.2.{{ $index }}' + descr: 'Smoke {{ $index }}' + skip_values: 5 + index: 'npSmokeStatus.{{ $index }}' + state_name: npSmokeStatus + states: + - { descr: ok, graph: 0, value: 0, generic: 0 } + - { descr: alarm, graph: 0, value: 1, generic: 2 } + - { descr: off, graph: 0, value: 4, generic: 1 } + - { descr: failed, graph: 0, value: 5, generic: 2 } + - + oid: npCurLoopTable + value: npCurLoopStatus + num_oid: '.1.3.6.1.4.1.25728.8300.1.1.2.{{ $index }}' + descr: 'Loop {{ $index }}' + index: 'npCurLoopStatus.{{ $index }}' + state_name: npCurLoopStatus + states: + - { descr: ok, graph: 0, value: 0, generic: 0 } + - { descr: alert, graph: 0, value: 1, generic: 2 } + - { descr: cut, graph: 0, value: 2, generic: 2 } + - { descr: short, graph: 0, value: 3, generic: 1 } + - { descr: notPowered, graph: 0, value: 4, generic: 3 } + - + oid: npRelayTable + value: npRelayState + num_oid: '.1.3.6.1.4.1.25728.5500.5.1.15.{{ $index }}' + descr: 'Relay {{ $index }}' + index: 'npRelayState.{{ $index }}' + state_name: npRelayState + states: + - { descr: off, graph: 0, value: 0, generic: 2 } + - { descr: on, graph: 0, value: 1, generic: 0 } + - + oid: npThermoTable + value: npThermoStatus + num_oid: '.1.3.6.1.4.1.25728.8800.1.1.3.{{ $index }}' + descr: 'Thermo {{ $index }}' + skip_values: 0 + index: 'npThermoStatus.{{ $index }}' + state_name: npThermoStatus + states: + - { descr: failed, graph: 0, value: 0, generic: 2 } + - { descr: low, graph: 0, value: 1, generic: 1 } + - { descr: norm, graph: 0, value: 2, generic: 0 } + - { descr: high, graph: 0, value: 3, generic: 2 } + - + oid: npRelHumTable + value: npRelHumStatus + num_oid: '.1.3.6.1.4.1.25728.8400.1.1.3.{{ $index }}' + descr: 'Relative Humidity {{ $index }}' + skip_values: 0 + index: 'npRelHumStatus.{{ $index }}' + state_name: npRelHumStatus + states: + - { descr: sensorFailed, graph: 0, value: 0, generic: 2 } + - { descr: belowSafeRange, graph: 0, value: 1, generic: 1 } + - { descr: inSafeRange, graph: 0, value: 2, generic: 0 } + - { descr: aboveSafeRange, graph: 0, value: 3, generic: 2 } + - + oid: npRelHumTable + value: npRelHumTempStatus + num_oid: '.1.3.6.1.4.1.25728.8400.1.1.5.{{ $index }}' + descr: 'Humidity Temp {{ $index }}' + skip_values: 0 + index: 'npRelHumTempStatus.{{ $index }}' + state_name: npRelHumTempStatus + states: + - { descr: sensorFailed, graph: 0, value: 0, generic: 2 } + - { descr: belowSafeRange, graph: 0, value: 1, generic: 1 } + - { descr: inSafeRange, graph: 0, value: 2, generic: 0 } + - { descr: aboveSafeRange, graph: 0, value: 3, generic: 2 } + temperature: + data: + - + oid: npThermoTable + value: npThermoValue + num_oid: '.1.3.6.1.4.1.25728.8800.1.1.2.{{ $index }}' + low_limit: npThermoLow + high_limit: npThermoHigh + skip_values: 0 + descr: 'Thermo {{ $index }}' + - + oid: npRelHumTable + value: npRelHumTempValue + num_oid: '.1.3.6.1.4.1.25728.8400.1.1.4.{{ $index }}' + low_limit: npRelHumTempSafeRangeLow + high_limit: npRelHumTempSafeRangeHigh + skip_values: 0 + descr: 'Humidity Temp {{ $index }}' diff --git a/priv/profiles/os_discovery/utax.yaml b/priv/profiles/os_discovery/utax.yaml new file mode 100644 index 00000000..b33d2f8f --- /dev/null +++ b/priv/profiles/os_discovery/utax.yaml @@ -0,0 +1,6 @@ +modules: + os: + hardware: .1.3.6.1.4.1.1347.43.5.1.1.1.1 + serial: .1.3.6.1.4.1.1347.43.5.1.1.28.1 + version: .1.3.6.1.4.1.1347.43.5.4.1.5.1.1 + version_regex: '/UTAX Printer (?.*?)/' diff --git a/priv/profiles/os_discovery/valere.yaml b/priv/profiles/os_discovery/valere.yaml new file mode 100644 index 00000000..abdc12d5 --- /dev/null +++ b/priv/profiles/os_discovery/valere.yaml @@ -0,0 +1,87 @@ +mib: ELTEK-BC2000-DC-POWER-MIB +modules: + os: + hardware: ELTEK-BC2000-DC-POWER-MIB::vpwrIdentModel.0 + version: ELTEK-BC2000-DC-POWER-MIB::vpwrIdentControllerVersion.0 + sensors: + voltage: + data: + - + oid: vpwrSystemParameterGroup + value: vpwrSystemVoltage + num_oid: '.1.3.6.1.4.1.13858.2.3.2.{{ $index }}' + descr: System Voltage + divisor: 100 + current: + data: + - + oid: vpwrSystemParameterGroup + value: vpwrSystemCurrent + num_oid: '.1.3.6.1.4.1.13858.2.3.3.{{ $index }}' + descr: System Current + - + oid: vpwrSystemIdentTable + value: vpwrModuleCurrent + num_oid: '.1.3.6.1.4.1.13858.2.1.6.1.4.{{ $index }}' + high_limit: vpwrModuleCapacity + divisor: 100 + group: 'Shelf {{ $vpwrBayIndex }}' + descr: 'Module {{ $vpwrModuleIndex }} Current' + skip_values: + - + oid: vpwrModuleOID + op: '=' + value: 'vpwrDcPowerLvd' + temperature: + data: + - + oid: vpwrSystemParameterGroup + value: vpwrSystemInternalTemperature + num_oid: '.1.3.6.1.4.1.13858.2.3.5.{{ $index }}' + descr: Internal Temperature + - + oid: vpwrBatteryTempTable + value: vpwrBatteryTemp + num_oid: '.1.3.6.1.4.1.13858.7.1.1.1.3.{{ $index }}' + descr: vpwrBatteryTempName + index: 'battery{{ $index }}' + group: Batteries + skip_value_lt: -125 + state: + data: + - + oid: vpwrSystemParameterGroup + value: vpwrSystemControllerState + num_oid: '.1.3.6.1.4.1.13858.2.3.4.{{ $index }}' + descr: Controller Status + state_name: vpwrSystemControllerState + states: + - { descr: Unknown, graph: 0, value: 0, generic: 3 } + - { descr: Normal, graph: 0, value: 1, generic: 0 } + - { descr: Change, graph: 0, value: 2, generic: 1 } + - { descr: Alarm, graph: 0, value: 3, generic: 2 } + - { descr: Menu, graph: 0, value: 4, generic: 1 } + - { descr: IrActive, graph: 0, value: 5, generic: 1 } + - + oid: vpwrSystemParameterGroup + value: vpwrSystemTempCompensationState + num_oid: '.1.3.6.1.4.1.13858.2.3.6.{{ $index }}' + descr: Temperature Compensation + state_name: vpwrSystemTempCompensationState + states: + - { descr: Inactive, graph: 0, value: 0, generic: 0 } + - { descr: Active, graph: 0, value: 1, generic: 1 } + - + oid: vpwrSystemIdentTable + value: vpwrModuleOperStatus + num_oid: '.1.3.6.1.4.1.13858.2.1.6.1.5.{{ $index }}' + group: 'Shelf {{ $vpwrBayIndex }}' + descr: 'Module {{ $vpwrModuleIndex }} Status' + state_name: vpwrModuleOperStatus + states: + - { descr: Ok, graph: 0, value: 0, generic: 0 } + - { descr: Alarm, graph: 0, value: 1, generic: 2 } + - { descr: Disabled, graph: 0, value: 2, generic: 3 } + - { descr: RingerAOn, graph: 0, value: 3, generic: 1 } + - { descr: RingerBOn, graph: 0, value: 4, generic: 1 } + - { descr: Unknown, graph: 0, value: 5, generic: 3 } diff --git a/priv/profiles/os_discovery/vccodec.yaml b/priv/profiles/os_discovery/vccodec.yaml new file mode 100644 index 00000000..6139ef8e --- /dev/null +++ b/priv/profiles/os_discovery/vccodec.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/SoftW: (?\S+)\nMCU: (Cisco TelePresence )?(?.*)\nDate: \S+\nS\/N: (?\S+)/' diff --git a/priv/profiles/os_discovery/velocloud.yaml b/priv/profiles/os_discovery/velocloud.yaml new file mode 100644 index 00000000..92f1fee1 --- /dev/null +++ b/priv/profiles/os_discovery/velocloud.yaml @@ -0,0 +1,91 @@ +mib: VELOCLOUD-EDGE-MIB +modules: + os: + sysDescr_regex: '/^VeloCloud (?EDGE.*)/' + sensors: + additional_oids: + data: + - + oid: + - vceLinkItf + - vceLinkName + - vceLinkVlanId + state: + data: + - + oid: vceHaAdminState + num_oid: '.1.3.6.1.4.1.45346.1.1.2.1.2.1.{{ $index }}' + index: 'vceHaAdminState.{{ $index }}' + descr: 'HA configuration' + group: HA + value: vceHaAdminState + states: + - { value: 1, graph: 0, generic: 0, descr: none } + - { value: 2, graph: 0, generic: 0, descr: ActiveStandbyPair } + - { value: 3, graph: 0, generic: 0, descr: Cluster } + - { value: 4, graph: 0, generic: 0, descr: VrrpPair } + - { value: 5, graph: 0, generic: 3, descr: unknown } + - + oid: vceHaPeerState + num_oid: '.1.3.6.1.4.1.45346.1.1.2.1.2.2.{{ $index }}' + index: 'vceHaPeerState.{{ $index }}' + descr: 'HA peer state' + group: HA + value: vceHaPeerState + states: + - { value: 1, graph: 0, generic: 0, descr: initializing } + - { value: 2, graph: 0, generic: 0, descr: active } + - { value: 3, graph: 0, generic: 0, descr: standby } + - { value: 4, graph: 0, generic: 3, descr: unknown } + - + oid: vceLinkVpnState + num_oid: '.1.3.6.1.4.1.45346.1.1.2.3.2.2.1.26.{{ $index }}' + index: 'vceLinkVpnState.{{ $index }}' + descr: '{{ $vceLinkItf }} VLAN{{ $vceLinkVlanId }} , {{ $vceLinkName }} VPN link state' + group: 'VCE Links' + value: vceLinkVpnState + states: + - { value: 1, graph: 1, generic: 1, descr: initial } + - { value: 2, graph: 2, generic: 2, descr: dead } + - { value: 3, graph: 3, generic: 2, descr: unusable } + - { value: 4, graph: 4, generic: 0, descr: quiet } + - { value: 5, graph: 5, generic: 0, descr: standby } + - { value: 6, graph: 6, generic: 2, descr: unstable } + - { value: 7, graph: 7, generic: 0, descr: stable } + - { value: 8, graph: 8, generic: 3, descr: unknown } + - + oid: vceLinkState + num_oid: '.1.3.6.1.4.1.45346.1.1.2.3.2.2.1.34.{{ $index }}' + index: 'vceLinkState.{{ $index }}' + descr: '{{ $vceLinkItf }} VLAN{{ $vceLinkVlanId }} , {{ $vceLinkName }} WAN link state' + group: 'VCE Links' + value: vceLinkState + states: + - { value: 1, graph: 1, generic: 1, descr: initial } + - { value: 2, graph: 2, generic: 2, descr: dead } + - { value: 3, graph: 3, generic: 2, descr: unusable } + - { value: 4, graph: 4, generic: 0, descr: quiet } + - { value: 5, graph: 5, generic: 0, descr: standby } + - { value: 6, graph: 6, generic: 2, descr: unstable } + - { value: 7, graph: 7, generic: 0, descr: stable } + - { value: 8, graph: 8, generic: 3, descr: unknown } + loss: + data: + - + oid: vceLinkTxLostPkt + num_oid: '.1.3.6.1.4.1.45346.1.1.2.3.2.2.1.24.{{ $index }}' + index: 'vceLinkTxLostPkt.{{ $index }}' + descr: '{{ $vceLinkItf }} VLAN{{ $vceLinkVlanId }} , {{ $vceLinkName }} TX packet loss' + group: 'VCE Links' + value: vceLinkTxLostPkt + warn_limit: '1' + high_limit: '5' + - + oid: vceLinkRxLostPkt + num_oid: '.1.3.6.1.4.1.45346.1.1.2.3.2.2.1.25.{{ $index }}' + index: 'vceLinkRxLostPkt.{{ $index }}' + descr: '{{ $vceLinkItf }} VLAN{{ $vceLinkVlanId }} , {{ $vceLinkName }} RX packet loss' + group: 'VCE Links' + value: vceLinkRxLostPkt + warn_limit: '1' + high_limit: '5' diff --git a/priv/profiles/os_discovery/venturi.yaml b/priv/profiles/os_discovery/venturi.yaml new file mode 100644 index 00000000..e4e90285 --- /dev/null +++ b/priv/profiles/os_discovery/venturi.yaml @@ -0,0 +1,82 @@ +mib: VENTURI-SERVER-SYSTEM-MIB:VENTURI-SERVER-STATS-MIB +modules: + os: + version: + - VENTURI-SERVER-SYSTEM-MIB::vServerVersion.0 + - VENTURI-SERVER-SYSTEM-MIB::vServerBuildId.0 + version_template: '{{ VENTURI-SERVER-SYSTEM-MIB::vServerVersion.0 }}.{{ VENTURI-SERVER-SYSTEM-MIB::vServerBuildId.0 }}' + serial: VENTURI-SERVER-SYSTEM-MIB::vServerSerialNumber.0 + hardware: VENTURI-SERVER-SYSTEM-MIB::vServerType.0 + sensors: + bitrate: + data: + - oid: VENTURI-SERVER-SYSTEM-MIB::vServerMaxTcpBandwidth + num_oid: '.1.3.6.1.4.1.3382.12.1.2.1.1.10.{{ $index }}' + descr: 'Max TCP Bandwidth' + index: 10 + group: 'System Capacity' + multiplier: 1000 + count: + data: + - oid: VENTURI-SERVER-SYSTEM-MIB::vServerMaxClients + num_oid: '.1.3.6.1.4.1.3382.12.1.2.1.1.6.{{ $index }}' + descr: 'Max Clients' + index: max_clients + rrd_type: GAUGE + group: 'Client Capacity' + + - oid: VENTURI-SERVER-STATS-MIB::vServerSubscriberUsageTable + value: VENTURI-SERVER-STATS-MIB::vServerSubscriberTotalCount + num_oid: '.1.3.6.1.4.1.3382.12.1.3.4.2.1.1.4.{{ $index }}' + index: 'vServerSubscriberTotalCount{{ $index }}' + descr: 'Total Subscriber Count' + rrd_type: COUNTER + group: 'Subscriber Count' + + - oid: VENTURI-SERVER-STATS-MIB::vServerSubscriberUsageTable + value: VENTURI-SERVER-STATS-MIB::vServerSubscriberCurrCount + num_oid: '.1.3.6.1.4.1.3382.12.1.3.4.2.1.1.5.{{ $index }}' + index: 'vServerSubscriberCurrCount{{ $index }}' + descr: 'Current Subscriber Count' + rrd_type: GAUGE + group: 'Subscriber Count' + + - oid: VENTURI-SERVER-STATS-MIB::vServerSubscriberUsageTable + value: VENTURI-SERVER-STATS-MIB::vServerSubscriberAuthenticationFailures + num_oid: '.1.3.6.1.4.1.3382.12.1.3.4.2.1.1.6.{{ $index }}' + index: 'vServerSubscriberAuthenticationFailures{{ $index }}' + descr: 'Authentication Failures' + rrd_type: COUNTER + group: 'Subscriber Failure' + + - oid: VENTURI-SERVER-STATS-MIB::vServerSubscriberUsageTable + value: VENTURI-SERVER-STATS-MIB::vServerSubscriberReassignmentFailures + num_oid: '.1.3.6.1.4.1.3382.12.1.3.4.2.1.1.8.{{ $index }}' + index: 'vServerSubscriberReassignmentFailures{{ $index }}' + descr: 'Reassignment Failures' + rrd_type: COUNTER + group: 'Subscriber Failure' + + - oid: VENTURI-SERVER-STATS-MIB::vServerTransportTable + value: VENTURI-SERVER-STATS-MIB::vServerTransportPacketsSent + num_oid: '.1.3.6.1.4.1.3382.12.1.3.3.2.1.1.3.{{ $index }}' + index: 'vServerTransportPacketsSent{{ $index }}' + descr: 'Transport Packets Sent' + rrd_type: COUNTER + group: 'Packets' + + - oid: VENTURI-SERVER-STATS-MIB::vServerTransportTable + value: VENTURI-SERVER-STATS-MIB::vServerTransportPacketsRecd + num_oid: '.1.3.6.1.4.1.3382.12.1.3.3.2.1.1.4.{{ $index }}' + index: 'vServerTransportPacketsRecd{{ $index }}' + descr: 'Transport Packets Received' + rrd_type: COUNTER + group: 'Packets' + + - oid: VENTURI-SERVER-STATS-MIB::vServerTransportTable + value: VENTURI-SERVER-STATS-MIB::vServerTransportCurrentConnections + num_oid: '.1.3.6.1.4.1.3382.12.1.3.3.2.1.1.13.{{ $index }}' + index: 'vServerTransportCurrentConnections{{ $index }}' + descr: 'Transport Current Connections' + rrd_type: GAUGE + group: 'Connections' diff --git a/priv/profiles/os_discovery/vertiv-dcs.yaml b/priv/profiles/os_discovery/vertiv-dcs.yaml new file mode 100644 index 00000000..70c01125 --- /dev/null +++ b/priv/profiles/os_discovery/vertiv-dcs.yaml @@ -0,0 +1,1106 @@ +modules: + os: + location: DCS-MIB::systemLoaction.0 + version: SNMPv2-MIB::sysDescr.0 + version_regex: '/\S*\s*\S*\s(?\S*).*/' + sensors: + state: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom2ProductType + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.2.{{ $index }}' + descr: 'PDU {{ $index }} Type' + index: 'mpduMpscom2ProductType.{{ $index }}' + state_name: mpduMpscom2ProductType + states: + - { descr: 'undefined', graph: 1, value: 0, generic: 3 } + - { descr: 'totalcurrentcommeter', graph: 1, value: 1, generic: 0 } + - { descr: 'totalcurrentcomswitch', graph: 1, value: 2, generic: 0 } + - { descr: 'totalcurrentipmeter', graph: 1, value: 3, generic: 0 } + - { descr: 'totalcurrentipswitch', graph: 1, value: 4, generic: 0 } + - { descr: 'bitcurrentcommeter', graph: 1, value: 5, generic: 0 } + - { descr: 'bitcurrentcomswitch', graph: 1, value: 6, generic: 0 } + - { descr: 'bitcurrentipmeter', graph: 1, value: 7, generic: 0 } + - { descr: 'bitcurrentipswitch', graph: 1, value: 1, generic: 0 } + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom51CommunicateStatus + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.51.{{ $index }}' + descr: 'PDU {{ $index }} Status' + index: 'mpduMpscom51CommunicateStatus.{{ $index }}' + state_name: mpduMpscom51CommunicateStatus + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'alarm', graph: 1, value: 1, generic: 2 } + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom52Outlet1Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.52.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 01 Status' + index: 'mpduMpscom52Outlet1Status.{{ $index }}' + state_name: mpduMpscom52Outlet1Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom52Outlet1Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom53Outlet2Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.53.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 02 Status' + index: 'mpduMpscom53Outlet2Status.{{ $index }}' + state_name: mpduMpscom53Outlet2Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom53Outlet2Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom54Outlet3Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.54.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 03 Status' + index: 'mpduMpscom54Outlet3Status.{{ $index }}' + state_name: mpduMpscom54Outlet3Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom54Outlet3Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom55Outlet4Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.55.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 04 Status' + index: 'mpduMpscom55Outlet4Status.{{ $index }}' + state_name: mpduMpscom55Outlet4Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom55Outlet4Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom56Outlet5Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.56.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 05 Status' + index: 'mpduMpscom56Outlet5Status.{{ $index }}' + state_name: mpduMpscom56Outlet5Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom56Outlet5Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom57Outlet6Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.57.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 06 Status' + index: 'mpduMpscom57Outlet6Status.{{ $index }}' + state_name: mpduMpscom57Outlet6Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom57Outlet6Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom58Outlet7Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.58.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 07 Status' + index: 'mpduMpscom58Outlet7Status.{{ $index }}' + state_name: mpduMpscom58Outlet7Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom58Outlet7Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom59Outlet8Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.59.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 08 Status' + index: 'mpduMpscom59Outlet8Status.{{ $index }}' + state_name: mpduMpscom59Outlet8Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom59Outlet8Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom60Outlet9Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.60.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 09 Status' + index: 'mpduMpscom60Outlet9Status.{{ $index }}' + state_name: mpduMpscom60Outlet9Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom60Outlet9Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom61Outlet10Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.61.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 10 Status' + index: 'mpduMpscom61Outlet10Status.{{ $index }}' + state_name: mpduMpscom61Outlet10Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom61Outlet10Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom62Outlet11Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.62.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 11 Status' + index: 'mpduMpscom62Outlet11Status.{{ $index }}' + state_name: mpduMpscom62Outlet11Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom62Outlet11Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom63Outlet12Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.63.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 12 Status' + index: 'mpduMpscom63Outlet12Status.{{ $index }}' + state_name: mpduMpscom63Outlet12Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom63Outlet12Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom64Outlet13Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.64.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 13 Status' + index: 'mpduMpscom64Outlet13Status.{{ $index }}' + state_name: mpduMpscom64Outlet13Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom64Outlet13Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom65Outlet14Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.65.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 14 Status' + index: 'mpduMpscom65Outlet14Status.{{ $index }}' + state_name: mpduMpscom65Outlet14Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom65Outlet14Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom66Outlet15Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.66.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 15 Status' + index: 'mpduMpscom66Outlet15Status.{{ $index }}' + state_name: mpduMpscom66Outlet15Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom66Outlet15Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom67Outlet16Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.67.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 16 Status' + index: 'mpduMpscom67Outlet16Status.{{ $index }}' + state_name: mpduMpscom67Outlet16Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom67Outlet16Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom68Outlet17Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.68.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 17 Status' + index: 'mpduMpscom68Outlet17Status.{{ $index }}' + state_name: mpduMpscom68Outlet17Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom68Outlet17Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom69Outlet18Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.69.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 18 Status' + index: 'mpduMpscom69Outlet18Status.{{ $index }}' + state_name: mpduMpscom69Outlet18Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom69Outlet18Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom70Outlet19Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.70.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 19 Status' + index: 'mpduMpscom70Outlet19Status.{{ $index }}' + state_name: mpduMpscom70Outlet19Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom70Outlet19Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom71Outlet20Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.71.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 20 Status' + index: 'mpduMpscom71Outlet20Status.{{ $index }}' + state_name: mpduMpscom71Outlet20Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom71Outlet20Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom72Outlet21Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.72.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 21 Status' + index: 'mpduMpscom72Outlet21Status.{{ $index }}' + state_name: mpduMpscom72Outlet21Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom72Outlet21Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom73Outlet22Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.73.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 22 Status' + index: 'mpduMpscom73Outlet22Status.{{ $index }}' + state_name: mpduMpscom73Outlet22Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom73Outlet22Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom74Outlet23Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.74.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 23 Status' + index: 'mpduMpscom74Outlet23Status.{{ $index }}' + state_name: mpduMpscom74Outlet23Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom74Outlet23Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom75Outlet24Status + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.75.{{ $index }}' + descr: 'PDU {{ $index }} Outlet 24 Status' + index: 'mpduMpscom75Outlet24Status.{{ $index }}' + state_name: mpduMpscom75Outlet24Status + states: + - { descr: 'poweroff', graph: 1, value: 0, generic: 1 } + - { descr: 'poweron', graph: 1, value: 1, generic: 0 } + skip_values: + - + oid: DCS-MIB::mpduMpscom75Outlet24Status + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu72CommunicateStatus + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.72.{{ $index }}' + descr: 'AC Comm Status' + index: 'acOu72CommunicateStatus.{{ $index }}' + state_name: acOu72CommunicateStatus + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'alarm', graph: 1, value: 1, generic: 2 } + skip_values: + - + oid: DCS-MIB::acOu72CommunicateStatus + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu75Airconditioningrunningstatus + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.75.{{ $index }}' + descr: 'AC Running Status' + index: 'acOu75Airconditioningrunningstatus.{{ $index }}' + state_name: acOu75Airconditioningrunningstatus + states: + - { descr: 'on', graph: 1, value: 0, generic: 0 } + - { descr: 'off', graph: 1, value: 1, generic: 2 } + skip_values: + - + oid: DCS-MIB::acOu75Airconditioningrunningstatus + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu111Filtermaintenance + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.111.{{ $index }}' + descr: 'AC Filter Maintenance' + index: 'acOu111Filtermaintenance.{{ $index }}' + state_name: acOu111Filtermaintenance + states: + - { descr: 'no', graph: 1, value: 0, generic: 0 } + - { descr: 'yes', graph: 1, value: 1, generic: 2 } + skip_values: + - + oid: DCS-MIB::acOu111Filtermaintenance + op: '!=' + value: 1 | 0 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com75PowerSupply + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.75.{{ $index }}' + descr: 'UPS Power Supply Status' + index: 'upsIta2com75PowerSupply.{{ $index }}' + state_name: upsIta2com75PowerSupply + states: + - { descr: 'upsshutdown', graph: 1, value: 0, generic: 1 } + - { descr: 'utilityonline', graph: 1, value: 1, generic: 0 } + - { descr: 'onbypass', graph: 1, value: 2, generic: 1 } + - { descr: 'upsonunionmode', graph: 1, value: 3, generic: 0 } + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com76InputPowerStatus + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.76.{{ $index }}' + descr: 'UPS Input Power Status' + index: 'upsIta2com76InputPowerStatus.{{ $index }}' + state_name: upsIta2com76InputPowerStatus + states: + - { descr: 'utilityonline', graph: 1, value: 0, generic: 0 } + - { descr: 'onbat', graph: 1, value: 1, generic: 1 } + - { descr: 'upsonunionmode', graph: 1, value: 2, generic: 0 } + - { descr: 'upsshutdown', graph: 1, value: 3, generic: 2 } + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com77BatStatus + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.77.{{ $index }}' + descr: 'UPS Battery Status' + index: 'upsIta2com77BatStatus.{{ $index }}' + state_name: upsIta2com77BatStatus + states: + - { descr: 'idle', graph: 1, value: 0, generic: 0 } + - { descr: 'floatcharging', graph: 1, value: 1, generic: 0 } + - { descr: 'equalizationcharging', graph: 1, value: 2, generic: 0 } + - { descr: 'discharging', graph: 1, value: 3, generic: 1 } + - { descr: 'selftesting', graph: 1, value: 4, generic: 0 } + - { descr: 'nobat', graph: 1, value: 5, generic: 2 } + - { descr: 'full', graph: 1, value: 6, generic: 0 } + - { descr: 'precharge', graph: 1, value: 7, generic: 0 } + - { descr: 'fastcharging', graph: 1, value: 8, generic: 0 } + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com79ChargerStatus + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.79.{{ $index }}' + descr: 'UPS Charger Status' + index: 'upsIta2com79ChargerStatus.{{ $index }}' + state_name: upsIta2com79ChargerStatus + states: + - { descr: 'chargeron', graph: 1, value: 0, generic: 0 } + - { descr: 'chargeroff', graph: 1, value: 1, generic: 0 } + - + oid: DCS-MIB::envTdicomEntry + value: DCS-MIB::envTdicom4FrontDoor + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.4.{{ $index }}' + descr: 'ENV Front Door Status' + index: 'envTdicom4FrontDoor.{{ $index }}' + state_name: envTdicom4FrontDoor + states: + - { descr: 'close', graph: 1, value: 0, generic: 0 } + - { descr: 'open', graph: 1, value: 1, generic: 1 } + - { descr: 'uninstalled', graph: 1, value: 2, generic: 1 } + - { descr: 'leave', graph: 1, value: 3, generic: 3 } + - + oid: DCS-MIB::envTdicomEntry + value: DCS-MIB::envTdicom5RearDoor + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.5.{{ $index }}' + descr: 'ENV Rear Door Status' + index: 'envTdicom5RearDoor.{{ $index }}' + state_name: envTdicom5RearDoor + states: + - { descr: 'close', graph: 1, value: 0, generic: 0 } + - { descr: 'open', graph: 1, value: 1, generic: 1 } + - { descr: 'uninstalled', graph: 1, value: 2, generic: 1 } + - { descr: 'leave', graph: 1, value: 3, generic: 3 } + - + oid: DCS-MIB::envTdicomEntry + value: DCS-MIB::envTdicom6Water + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.6.{{ $index }}' + descr: 'ENV Water Status' + index: 'envTdicom6Water.{{ $index }}' + state_name: envTdicom6Water + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'alarm', graph: 1, value: 1, generic: 1 } + - { descr: 'uninstalled', graph: 1, value: 2, generic: 1 } + - { descr: 'leave', graph: 1, value: 3, generic: 3 } + - + oid: DCS-MIB::envFirefightingTable + value: DCS-MIB::envFirefighting2FireAlarmStatus + num_oid: '.1.3.6.1.4.1.13400.3.5.559.1.1.2.{{ $index }}' + descr: 'ENV Fire Alarm Status' + index: 'envFirefighting2FireAlarmStatus.{{ $index }}' + state_name: envFirefighting2FireAlarmStatus + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'alarm', graph: 1, value: 1, generic: 2 } + - { descr: 'uninstalled', graph: 1, value: 2, generic: 2 } + - { descr: 'leave', graph: 1, value: 3, generic: 3 } + - + oid: DCS-MIB::envFirefightingTable + value: DCS-MIB::envFirefighting3FireSensor4DICommStatus + num_oid: '.1.3.6.1.4.1.13400.3.5.559.1.1.2.{{ $index }}' + descr: 'ENV Fire Alarm DI Comm Status' + index: 'envFirefighting3FireSensor4DICommStatus.{{ $index }}' + state_name: envFirefighting3FireSensor4DICommStatus + states: + - { descr: 'normal', graph: 1, value: 0, generic: 0 } + - { descr: 'failure', graph: 1, value: 1, generic: 2 } + voltage: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom3Voltage + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.3.{{ $index }}' + descr: 'PDU {{ $index }} Voltage' + index: 'mpduMpscom3Voltage.{{ $index }}' + low_limit: DCS-MIB::mpduMpscom76LoadVoltageLowLimit + high_limit: DCS-MIB::mpduMpscom77LoadVoltageHighLimit + skip_values: + - + oid: DCS-MIB::mpduMpscom3Voltage + op: '==' + value: -9999 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu64Powervoltage + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.64.{{ $index }}' + descr: 'AC Voltage' + index: 'acOu64Powervoltage.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu64Powervoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com2PhaseAInputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.2.{{ $index }}' + descr: 'UPS Phase A Input Voltage' + index: 'upsIta2com2PhaseAInputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com2PhaseAInputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com3PhaseBInputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.3.{{ $index }}' + descr: 'UPS Phase B Input Voltage' + index: 'upsIta2com3PhaseBInputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com3PhaseBInputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com4PhaseCInputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.4.{{ $index }}' + descr: 'UPS Phase C Input Voltage' + index: 'upsIta2com4PhaseCInputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com4PhaseCInputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com5PhaseAOutputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.5.{{ $index }}' + descr: 'UPS Phase A Output Voltage' + index: 'upsIta2com5PhaseAOutputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com5PhaseAOutputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com6PhaseBOutputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.6.{{ $index }}' + descr: 'UPS Phase B Output Voltage' + index: 'upsIta2com6PhaseBOutputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com6PhaseBOutputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com7PhaseCOutputVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.7.{{ $index }}' + descr: 'UPS Phase C Output Voltage' + index: 'upsIta2com7PhaseCOutputVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com7PhaseCOutputVoltage + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com23BypassAVoltageA + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.23.{{ $index }}' + descr: 'UPS Phase A Bypass Voltage' + index: 'upsIta2com23BypassAVoltageA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com23BypassAVoltageA + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com24BypassBVoltageB + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.24.{{ $index }}' + descr: 'UPS Phase B Bypass Voltage' + index: 'upsIta2com24BypassBVoltageB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com24BypassBVoltageB + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com25BypassCVoltageC + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.25.{{ $index }}' + descr: 'UPS Phase C Bypass Voltage' + index: 'upsIta2com25BypassCVoltageC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com25BypassCVoltageC + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com30BusvoltageP + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.30.{{ $index }}' + descr: 'UPS Bus Voltage Positive' + index: 'upsIta2com30BusvoltageP.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com30BusvoltageP + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com31BusvoltageN + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.31.{{ $index }}' + descr: 'UPS Bus Voltage Negative' + index: 'upsIta2com31BusvoltageN.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com31BusvoltageN + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com59BatVoltage + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.59.{{ $index }}' + descr: 'UPS Battery Voltage' + index: 'upsIta2com59BatVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com59BatVoltage + op: '==' + value: -9999 + current: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom4TotalCurrent + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.4.{{ $index }}' + descr: 'PDU {{ $index }} Total Current' + index: 'mpduMpscom4TotalCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom4TotalCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom5Branch1Current + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.5.{{ $index }}' + descr: 'PDU {{ $index }} Branch 1 Current' + index: 'mpduMpscom5Branch1Current.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom5Branch1Current + op: '==' + value: -9999 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom6Branch2Current + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.6.{{ $index }}' + descr: 'PDU {{ $index }} Branch 2 Current' + index: 'mpduMpscom6Branch2Current.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom6Branch2Current + op: '==' + value: -9999 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom7Branch3Current + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.7.{{ $index }}' + descr: 'PDU {{ $index }} Branch 3 Current' + index: 'mpduMpscom7Branch3Current.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom7Branch3Current + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com8PhaseAOutputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.8.{{ $index }}' + descr: 'UPS Phase A Output Current' + index: 'upsIta2com8PhaseAOutputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com8PhaseAOutputCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com9PhaseBOutputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.9.{{ $index }}' + descr: 'UPS Phase B Output Current' + index: 'upsIta2com9PhaseBOutputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com9PhaseBOutputCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com10PhaseCOutputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.10.{{ $index }}' + descr: 'UPS Phase C Output Current' + index: 'upsIta2com10PhaseCOutputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com10PhaseCOutputCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com16PhaseAInputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.16.{{ $index }}' + descr: 'UPS Phase A Input Current' + index: 'upsIta2com16PhaseAInputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com16PhaseAInputCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com17PhaseBInputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.17.{{ $index }}' + descr: 'UPS Phase B Input Current' + index: 'upsIta2com17PhaseBInputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com17PhaseBInputCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com18PhaseCInputCurrent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.18.{{ $index }}' + descr: 'UPS Phase C Input Current' + index: 'upsIta2com18PhaseCInputCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com18PhaseCInputCurrent + op: '==' + value: -9999 + power: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom8ActivePower + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.8.{{ $index }}' + descr: 'PDU {{ $index }} Active Power' + index: 'mpduMpscom8ActivePower.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom8ActivePower + op: '==' + value: -9999 + frequency: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom11Frequency + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.11.{{ $index }}' + descr: 'PDU {{ $index }} Frequency' + index: 'mpduMpscom11Frequency.{{ $index }}' + divisor: 10 + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::acOu65Powerfrequency + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.65.{{ $index }}' + descr: 'AC Frequency' + index: 'acOu65Powerfrequency.{{ $index }}' + divisor: 10 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com11OutputFrequency + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.11.{{ $index }}' + descr: 'UPS Output Frequency' + index: 'upsIta2com11OutputFrequency.{{ $index }}' + divisor: 10 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com19SystemInputFrequency + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.19.{{ $index }}' + descr: 'UPS Input Frequency' + index: 'upsIta2com19SystemInputFrequency.{{ $index }}' + divisor: 10 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com29BypassFrequency + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.29.{{ $index }}' + descr: 'UPS Bypass Frequency' + index: 'upsIta2com29BypassFrequency.{{ $index }}' + divisor: 10 + load: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom12LoadCurrent + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.12.{{ $index }}' + descr: 'PDU {{ $index }} Load' + index: 'mpduMpscom12LoadCurrent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::mpduMpscom12LoadCurrent + op: '==' + value: -9999 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu76Compressorcapacityactualvalu + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.76.{{ $index }}' + descr: 'AC Compressor Load' + index: 'acOu76Compressorcapacityactualvalu.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu76Compressorcapacityactualvalu + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com45LPhaseAOutputLoadPercent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.45.{{ $index }}' + descr: 'UPS Phase A Load' + index: 'upsIta2com45LPhaseAOutputLoadPercent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com45LPhaseAOutputLoadPercent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com46LPhaseBOutputLoadPercent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.46.{{ $index }}' + descr: 'UPS Phase B Load' + index: 'upsIta2com46LPhaseBOutputLoadPercent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com46LPhaseBOutputLoadPercent + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com47LPhaseCOutputLoadPercent + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.47.{{ $index }}' + descr: 'UPS Phase C Load' + index: 'upsIta2com47LPhaseCOutputLoadPercent.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com47LPhaseCOutputLoadPercent + op: '==' + value: -9999 + power_consumed: + data: + - + oid: DCS-MIB::mpduMpscomTable + value: DCS-MIB::mpduMpscom13PowerConsumption + num_oid: '.1.3.6.1.4.1.13400.3.2.225.1.1.13.{{ $index }}' + descr: 'PDU {{ $index }} Power Consumption' + index: 'mpduMpscom13PowerConsumption.{{ $index }}' + divisor: 1000 + temperature: + data: + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu56Supplyairtemperature + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.56.{{ $index }}' + descr: 'AC Supply Air Temperature' + index: 'acOu56Supplyairtemperature.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu56Supplyairtemperature + op: '==' + value: -9999 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu57Returnairtemperature + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.57.{{ $index }}' + descr: 'AC Return Air Temperature' + index: 'acOu57Returnairtemperature.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu57Returnairtemperature + op: '==' + value: -9999 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu58Outsidetemperature + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.58.{{ $index }}' + descr: 'AC Outside Air Temperature' + index: 'acOu58Outsidetemperature.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu58Outsidetemperature + op: '==' + value: -9999 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu59Exhausttemperature + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.59.{{ $index }}' + descr: 'AC Exhaust Air Temperature' + index: 'acOu59Exhausttemperature.{{ $index }}' + divisor: 100 + skip_values: + - + oid: DCS-MIB::acOu59Exhausttemperature + op: '==' + value: -9999 + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com67Ambienttemp + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.67.{{ $index }}' + descr: 'UPS Ambient Temperature' + index: 'upsIta2com67Ambienttemp.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::upsIta2com67Ambienttemp + op: '==' + value: -9999 + - + oid: DCS-MIB::envTdicomTable + value: DCS-MIB::envTdicom2FrontTemp + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.2.{{ $index }}' + descr: 'ENV Front Temperature' + index: 'envTdicom2FrontTemp.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::envTdicom2FrontTemp + op: '==' + value: -9999 + - + oid: DCS-MIB::envTdicomTable + value: DCS-MIB::envTdicom3RearTemp + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.3.{{ $index }}' + descr: 'ENV Rear Temperature' + index: 'envTdicom3RearTemp.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::envTdicom3RearTemp + op: '==' + value: -9999 + - + oid: DCS-MIB::envTdicomTable + value: DCS-MIB::envTdicom19OutsideCabinetTemp + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.19.{{ $index }}' + descr: 'ENV Outside Cabinet Temperature' + index: 'envTdicom19OutsideCabinetTemp.{{ $index }}' + divisor: 10 + skip_values: + - + oid: DCS-MIB::envTdicom19OutsideCabinetTemp + op: '==' + value: -9999 + humidity: + data: + - + oid: DCS-MIB::envTdicomTable + value: DCS-MIB::envTdicom20OutsideCabinetHum + num_oid: '.1.3.6.1.4.1.13400.3.5.541.1.1.20.{{ $index }}' + descr: 'ENV Outside Cabinet' + index: 'envTdicom20OutsideCabinetHum.{{ $index }}' + divisor: 10 + percent: + data: + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu77Fanspeed + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.77.{{ $index }}' + descr: 'AC Fan Speed' + index: 'acOu77Fanspeed.{{ $index }}' + divisor: 100 + - + oid: DCS-MIB::acOuTable + value: DCS-MIB::acOu78Expansionvalveopening + num_oid: '.1.3.6.1.4.1.13400.3.3.3031.1.1.78.{{ $index }}' + descr: 'AC Expansion Valve Opening' + index: 'acOu78Expansionvalveopening.{{ $index }}' + divisor: 100 + runtime: + data: + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com65BatBackupTime + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.65.{{ $index }}' + descr: 'UPS Runtime' + index: 'upsIta2com65BatBackupTime.{{ $index }}' + divisor: 10 + + charge: + data: + - + oid: DCS-MIB::upsIta2comTable + value: DCS-MIB::upsIta2com68BatCurrentCapacity + num_oid: '.1.3.6.1.4.1.13400.3.4.491.1.1.68.{{ $index }}' + descr: 'UPS Battery Charge' + index: 'upsIta2com68BatCurrentCapacity.{{ $index }}' + divisor: 10 diff --git a/priv/profiles/os_discovery/vertiv-ita2.yaml b/priv/profiles/os_discovery/vertiv-ita2.yaml new file mode 100644 index 00000000..8a858b6f --- /dev/null +++ b/priv/profiles/os_discovery/vertiv-ita2.yaml @@ -0,0 +1,414 @@ +modules: + os: + hardware: VERTIV-ITA2-MIB::identModel.0 + serial: VERTIV-ITA2-MIB::identIndex.0 + sensors: + state: + data: + - + oid: VERTIV-ITA2-MIB::upsOutputSource + value: VERTIV-ITA2-MIB::upsOutputSource + num_oid: '.1.3.6.1.4.1.13400.2.54.2.1.2.{{ $index }}' + descr: 'Output PWR Source {{ $index }}' + index: 'upsOutputSource.{{ $index }}' + state_name: upsOutputSource + states: + - { descr: 'No Output' , graph: 1, value: 0, generic: 2 } + - { descr: 'On Main' , graph: 1, value: 1, generic: 0 } + - { descr: 'On Battery' , graph: 1, value: 2, generic: 1 } + - { descr: 'On Bypass' , graph: 1, value: 3, generic: 1 } + - { descr: 'on Utility and Battery', graph: 1, value: 4, generic: 0 } + - + oid: VERTIV-ITA2-MIB::systemStatus + value: VERTIV-ITA2-MIB::systemStatus + num_oid: '.1.3.6.1.4.1.13400.2.54.2.1.1.{{ $index }}' + descr: 'System Status' + index: 'systemStatus.{{ $index }}' + state_name: systemStatus + states: + - { descr: 'Normal' , graph: 1, value: 0, generic: 0 } + - { descr: 'Warning' , graph: 1, value: 1, generic: 1 } + - { descr: 'Critical' , graph: 1, value: 2, generic: 2 } + voltage: + data: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + value: VERTIV-ITA2-MIB::inputPhaseVoltageA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.1.{{ $index }}' + descr: 'Input Phase A Voltage' + index: 'inputPhaseVoltageA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + value: VERTIV-ITA2-MIB::inputPhaseVoltageB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.2.{{ $index }}' + descr: 'Input Phase B Voltage' + index: 'inputPhaseVoltageB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + value: VERTIV-ITA2-MIB::inputPhaseVoltageC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.3.{{ $index }}' + descr: 'Input Phase C Voltage' + index: 'inputPhaseVoltageC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputPhaseVoltageA + value: VERTIV-ITA2-MIB::outputPhaseVoltageA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.1.{{ $index }}' + descr: 'Output Phase A Voltage' + index: 'outputPhaseVoltageA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputPhaseVoltageB + value: VERTIV-ITA2-MIB::outputPhaseVoltageB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.2.{{ $index }}' + descr: 'Output Phase B Voltage' + index: 'outputPhaseVoltageB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputPhaseVoltageC + value: VERTIV-ITA2-MIB::outputPhaseVoltageC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.3.{{ $index }}' + descr: 'Output Phase C Voltage' + index: 'outputPhaseVoltageC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::bypassPhaseVoltageA + value: VERTIV-ITA2-MIB::bypassPhaseVoltageA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.4.1.{{ $index }}' + descr: 'Bypass Phase A Voltage' + index: 'bypassPhaseVoltageA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::bypassPhaseVoltageB + value: VERTIV-ITA2-MIB::bypassPhaseVoltageB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.4.2.{{ $index }}' + descr: 'Bypass Phase B Voltage' + index: 'bypassPhaseVoltageB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::bypassPhaseVoltageC + value: VERTIV-ITA2-MIB::bypassPhaseVoltageC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.4.3.{{ $index }}' + descr: 'Bypass Phase C Voltage' + index: 'bypassPhaseVoltageC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::positiveBatteryVoltage + value: VERTIV-ITA2-MIB::positiveBatteryVoltage + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.1.{{ $index }}' + descr: 'Positive Battery Voltage' + index: 'positiveBatteryVoltage.{{ $index }}' + divisor: 10 + - + oid: VERTIV-ITA2-MIB::negativeBatteryVoltage + value: VERTIV-ITA2-MIB::negativeBatteryVoltage + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.2.{{ $index }}' + descr: 'Negative Battery Voltage ' + index: 'negativeBatteryVoltage.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::negativeBatteryVoltage + op: '==' + value: 0 + frequency: + data: + - + oid: VERTIV-ITA2-MIB::inputFrequency + value: VERTIV-ITA2-MIB::inputFrequency + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.4.{{ $index }}' + descr: 'Input Frequency' + index: 'inputFrequency.{{ $index }}' + divisor: 100 + - + oid: VERTIV-ITA2-MIB::outputFrequency + value: VERTIV-ITA2-MIB::outputFrequency + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.7.{{ $index }}' + descr: 'Output Frequency' + index: 'outputFrequency.{{ $index }}' + divisor: 100 + - + oid: VERTIV-ITA2-MIB::bypassFrequency + value: VERTIV-ITA2-MIB::bypassFrequency + num_oid: '.1.3.6.1.4.1.13400.2.54.2.4.4.{{ $index }}' + descr: 'Bypass Frequency' + index: 'bypassFrequency.{{ $index }}' + divisor: 100 + current: + data: + - + oid: VERTIV-ITA2-MIB::inputPhaseCurrentA + value: VERTIV-ITA2-MIB::inputPhaseCurrentA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.5.{{ $index }}' + descr: 'Input Phase A Current' + index: 'inputPhaseCurrentA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::inputPhaseCurrentB + value: VERTIV-ITA2-MIB::inputPhaseCurrentB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.6.{{ $index }}' + descr: 'Input Phase B Current' + index: 'inputPhaseCurrentB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::inputPhaseCurrentC + value: VERTIV-ITA2-MIB::inputPhaseCurrentC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.2.7.{{ $index }}' + descr: 'Input Phase C Current' + index: 'inputPhaseCurrentC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputCurrentA + value: VERTIV-ITA2-MIB::outputCurrentA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.4.{{ $index }}' + descr: 'Output Phase A Current' + index: 'outputCurrentA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputCurrentB + value: VERTIV-ITA2-MIB::outputCurrentB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.5.{{ $index }}' + descr: 'Output Phase B Current' + index: 'outputCurrentB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputCurrentC + value: VERTIV-ITA2-MIB::outputCurrentC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.6.{{ $index }}' + descr: 'Output Phase C Current' + index: 'outputCurrentC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::positiveBatteryChargingCurrent + value: VERTIV-ITA2-MIB::positiveBatteryChargingCurrent + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.3.{{ $index }}' + descr: 'Positive Battery Charging Current' + index: 'positiveBatteryChargingCurrent.{{ $index }}' + divisor: 100 + - + oid: VERTIV-ITA2-MIB::positiveBatteryDischargingCurrent + value: VERTIV-ITA2-MIB::positiveBatteryDischargingCurrent + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.4.{{ $index }}' + descr: 'Positive Battery Discharging Current' + index: 'positiveBatteryDischargingCurrent.{{ $index }}' + divisor: 100 + - + oid: VERTIV-ITA2-MIB::negativeBatteryChargingCurrent + value: VERTIV-ITA2-MIB::negativeBatteryChargingCurrent + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.5.{{ $index }}' + descr: 'Negative Battery Charging Current' + index: 'negativeBatteryChargingCurrent.{{ $index }}' + divisor: 100 + - + oid: VERTIV-ITA2-MIB::negativeBatteryDischargingCurrent + value: VERTIV-ITA2-MIB::negativeBatteryDischargingCurrent + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.6.{{ $index }}' + descr: 'Negative Battery Discharging Current' + index: 'negativeBatteryDischargingCurrent.{{ $index }}' + divisor: 100 + power_consumed: + data: + - + oid: VERTIV-ITA2-MIB::outputActivePowerA + value: VERTIV-ITA2-MIB::outputActivePowerA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.8.{{ $index }}' + descr: 'Output Active Power Phase A' + index: 'outputActivePowerA.{{ $index }}' + divisor: 100 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputActivePowerB + value: VERTIV-ITA2-MIB::outputActivePowerB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.9.{{ $index }}' + descr: 'Output Active Power Phase B' + index: 'outputActivePowerB.{{ $index }}' + divisor: 100 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputActivePowerC + value: VERTIV-ITA2-MIB::outputActivePowerC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.10.{{ $index }}' + descr: 'Output Active Power Phase C' + index: 'outputActivePowerC.{{ $index }}' + divisor: 100 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + load: + data: + - + oid: VERTIV-ITA2-MIB::outputLoadA + value: VERTIV-ITA2-MIB::outputLoadA + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.14.{{ $index }}' + descr: 'Output Load Phase A' + index: 'outputLoadA.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageA + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputLoadB + value: VERTIV-ITA2-MIB::outputLoadB + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.15.{{ $index }}' + descr: 'Output Load Phase B' + index: 'outputLoadB.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageB + op: '==' + value: 0 + - + oid: VERTIV-ITA2-MIB::outputLoadC + value: VERTIV-ITA2-MIB::outputLoadC + num_oid: '.1.3.6.1.4.1.13400.2.54.2.3.16.{{ $index }}' + descr: 'Output Load Phase C' + index: 'outputLoadC.{{ $index }}' + divisor: 10 + skip_values: + - + oid: VERTIV-ITA2-MIB::inputPhaseVoltageC + op: '==' + value: 0 + runtime: + data: + - + oid: VERTIV-ITA2-MIB::batteryRemainsTime + value: VERTIV-ITA2-MIB::batteryRemainsTime + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.7.{{ $index }}' + descr: 'Estimated Battery Runtime' + index: 'batteryRemainsTime.{{ $index }}' + temperature: + data: + - + oid: VERTIV-ITA2-MIB::batteryTemperature + value: VERTIV-ITA2-MIB::batteryTemperature + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.8.{{ $index }}' + descr: 'Battery Temperature' + index: 'batteryTemperature.{{ $index }}' + divisor: 1000 + skip_values: + - + oid: VERTIV-ITA2-MIB::batteryTemperature + op: '==' + value: 65535 + - + oid: VERTIV-ITA2-MIB::batteryEnvironmentTemperature + value: VERTIV-ITA2-MIB::batteryEnvironmentTemperature + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.9.{{ $index }}' + descr: 'Battery Environment Temperature' + index: 'batteryEnvironmentTemperature.{{ $index }}' + divisor: 1000 + skip_values: + - + oid: VERTIV-ITA2-MIB::batteryEnvironmentTemperature + op: '==' + value: 65535 + charge: + data: + - + oid: VERTIV-ITA2-MIB::batteryCapacity + value: VERTIV-ITA2-MIB::batteryCapacity + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.10.{{ $index }}' + descr: 'Battery Charge' + index: 'batteryCapacity.{{ $index }}' + low_limit: 20 + low_warn_limit: 40 + high_limit: 105 + count: + data: + - + oid: VERTIV-ITA2-MIB::batteryDischargeTimes + value: VERTIV-ITA2-MIB::batteryDischargeTimes + num_oid: '.1.3.6.1.4.1.13400.2.54.2.5.11.{{ $index }}' + descr: 'Battery Discharge Times' + index: 'batteryDischargeTimes.{{ $index }}' diff --git a/priv/profiles/os_discovery/vertiv-pdu.yaml b/priv/profiles/os_discovery/vertiv-pdu.yaml new file mode 100644 index 00000000..332bb1cd --- /dev/null +++ b/priv/profiles/os_discovery/vertiv-pdu.yaml @@ -0,0 +1,54 @@ +mib: VERTIV-V5-MIB +modules: + os: + hardware: VERTIV-V5-MIB::productModelNumber.0 + serial: VERTIV-V5-MIB::productSerialNumber.0 + version: VERTIV-V5-MIB::productVersion.0 + sensors: + current: + data: + - + oid: pduLineTable + value: pduLineCurrent + num_oid: '.1.3.6.1.4.1.21239.5.2.3.4.1.4.{{ $index }}' + index: 'pduLineCurrent.{{ $index }}' + descr: pduLineName + divisor: 100 + - + oid: pduBreakerTable + value: pduBreakerCurrent + num_oid: '.1.3.6.1.4.1.21239.5.2.3.3.1.4.{{ $index }}' + index: 'pduBreakerCurrent.{{ $index }}' + descr: pduBreakerLabel + divisor: 100 + - + oid: pduPhaseTable + value: pduPhaseCurrent + num_oid: '.1.3.6.1.4.1.21239.5.2.3.2.1.8.{{ $index }}' + index: 'pduPhaseCurrent.{{ $index }}' + descr: pduPhaseName + divisor: 100 + voltage: + data: + - + oid: pduPhaseTable + value: pduPhaseVoltage + num_oid: '.1.3.6.1.4.1.21239.5.2.3.2.1.4.{{ $index }}' + descr: pduPhaseName + divisor: 10 + power: + data: + - + oid: pduTotalRealPower + num_oid: '.1.3.6.1.4.1.21239.5.2.3.1.1.9.{{ $index }}' + index: 'pduTotalRealPower.{{ $index }}' + descr: Total Power + power_consumed: + data: + - + oid: pduTotalEnergy + num_oid: '.1.3.6.1.4.1.21239.5.2.3.1.1.12.{{ $index }}' + index: 'pduTotalEnergy.{{ $index }}' + descr: Total Energy + divisor: 1000 + diff --git a/priv/profiles/os_discovery/vigintos.yaml b/priv/profiles/os_discovery/vigintos.yaml new file mode 100644 index 00000000..6e1c2638 --- /dev/null +++ b/priv/profiles/os_discovery/vigintos.yaml @@ -0,0 +1,79 @@ +mib: VEL-HOST2-MIB +modules: + os: + version: VEL-HOST2-MIB::host2Version.0 + sensors: + additional_oids: + data: + - + oid: + - host2DevIndex + state: + data: + - + oid: host2DevLanState + num_oid: '.1.3.6.1.4.1.27993.5.6.1.4.{{ $index }}' + descr: "Lan {{ $host2DevIndex }} State" + state_name: host2DevLanState + states: + - { value: 0, generic: 2, graph: 1, descr: 'disconnected' } + - { value: 1, generic: 0, graph: 1, descr: 'connected' } + temperature: + data: + - + oid: host2DevParTable + value: host2DevParValue + num_oid: '.1.3.6.1.4.1.27993.5.9.1.3.{{ $index }}' + descr: host2DevParName + skip_values: + - + oid: host2DevParName + op: '!=' + value: Temperature + voltage: + data: + - + oid: host2DevParTable + value: host2DevParValue + num_oid: '.1.3.6.1.4.1.27993.5.9.1.3.{{ $index }}' + descr: host2DevParName + skip_values: + - + oid: host2DevParName + op: '!=' + value: Voltage + current: + data: + - + oid: host2DevParTable + value: host2DevParValue + num_oid: '.1.3.6.1.4.1.27993.5.9.1.3.{{ $index }}' + descr: host2DevParName + skip_values: + - + oid: host2DevParUnit + op: '!=' + value: A + power: + data: + - + oid: host2DevParTable + value: host2DevParValue + num_oid: '.1.3.6.1.4.1.27993.5.9.1.3.{{ $index }}' + descr: host2DevParName + skip_values: + - + oid: host2DevParUnit + op: '!=' + value: W + - + oid: host2DevParTable + value: host2DevParValue + num_oid: '.1.3.6.1.4.1.27993.5.9.1.3.{{ $index }}' + descr: host2DevParName + divisor: 1000 + skip_values: + - + oid: host2DevParUnit + op: '!=' + value: mW diff --git a/priv/profiles/os_discovery/viprinux.yaml b/priv/profiles/os_discovery/viprinux.yaml new file mode 100644 index 00000000..97dd7640 --- /dev/null +++ b/priv/profiles/os_discovery/viprinux.yaml @@ -0,0 +1,12 @@ +mib: VIPRINET-MIB +modules: + os: + version: VIPRINET-MIB::vpnRouterFirmware.0 + hardware: VIPRINET-MIB::vpnRouterModel.0 + serial: VIPRINET-MIB::vpnRouterSerial.0 + processors: + data: + - + oid: vpnRouterCPULoad + num_oid: '.1.3.6.1.4.1.35424.1.2.1.{{ $index }}' + type: viprinet-cpu diff --git a/priv/profiles/os_discovery/viptela.yaml b/priv/profiles/os_discovery/viptela.yaml new file mode 100644 index 00000000..27e7d62a --- /dev/null +++ b/priv/profiles/os_discovery/viptela.yaml @@ -0,0 +1,14 @@ +mib: VIPTELA-OPER-SYSTEM:VIPTELA-HARDWARE +modules: + os: + serial: VIPTELA-HARDWARE::hardwareInventorySerialNumber.chassis.0 + version: VIPTELA-OPER-SYSTEM::systemStatusVersion.0 + hardware: VIPTELA-OPER-SYSTEM::systemStatusModel.0 + mempools: + data: + - + total: VIPTELA-OPER-SYSTEM::systemStatusMemTotal + used: VIPTELA-OPER-SYSTEM::systemStatusMemUsed + free: VIPTELA-OPER-SYSTEM::systemStatusMemFree + precision: 1024 + diff --git a/priv/profiles/os_discovery/vmware-esxi.yaml b/priv/profiles/os_discovery/vmware-esxi.yaml new file mode 100644 index 00000000..a2b89cdd --- /dev/null +++ b/priv/profiles/os_discovery/vmware-esxi.yaml @@ -0,0 +1,7 @@ +modules: + os: + serial: ENTITY-MIB::entPhysicalSerialNum.1 + hardware: ENTITY-MIB::entPhysicalDescr.1 + version: VMWARE-SYSTEM-MIB::vmwProdVersion.0 + features: VMWARE-SYSTEM-MIB::vmwProdBuild.0 + features_template: 'build {{ VMWARE-SYSTEM-MIB::vmwProdBuild.0 }}' diff --git a/priv/profiles/os_discovery/vmware-vcsa.yaml b/priv/profiles/os_discovery/vmware-vcsa.yaml new file mode 100644 index 00000000..116c06e1 --- /dev/null +++ b/priv/profiles/os_discovery/vmware-vcsa.yaml @@ -0,0 +1,5 @@ +modules: + os: + version: VMWARE-SYSTEM-MIB::vmwProdVersion.0 + features: VMWARE-SYSTEM-MIB::vmwProdBuild.0 + features_template: 'build {{ VMWARE-SYSTEM-MIB::vmwProdBuild.0 }}' diff --git a/priv/profiles/os_discovery/volius.yaml b/priv/profiles/os_discovery/volius.yaml new file mode 100644 index 00000000..3ab2c85e --- /dev/null +++ b/priv/profiles/os_discovery/volius.yaml @@ -0,0 +1,151 @@ +mib: VOLIUS-OR-MIB:VOLIUS-OS-MIB:VOLIUS-OA-MIB +modules: + os: + hardware: VOLIUS-OR-MIB::vlsModelName.0 + version: VOLIUS-OR-MIB::vlsFirmwareVersion.0 + serial: VOLIUS-OR-MIB::vlsSerialNumber.0 + sensors: + additional_oids: + data: + - + oid: + - vlsNumOpticalInputs + temperature: + options: + skip_value_lt: 1 + divisor: 10 + data: + - + oid: vlsCaseTemperature + num_oid: '.1.3.6.1.4.1.34652.2.10.6.{{ $index }}' + descr: 'Temperature device' + high_limit: 55 + warn_limit: 45 + low_limit: 0 + voltage: + options: + skip_value_lt: 1 + divisor: 1000 + data: + - + oid: vlsSupplyVoltageTable + value: vlsSupplyVoltageActual + num_oid: '.1.3.6.1.4.1.34652.2.10.7.1.3.{{ $index }}' + descr: 'Voltage Sensor {{ $index }}' + dbm: + options: + divisor: 10 + data: + - + oid: vlsReceiverInputTable + value: vlsReceiverInputPower + num_oid: '.1.3.6.1.4.1.34652.6.1.1.2.{{ $index }}' + descr: 'Optical power input {{ $index }}' + low_warn_limit: -6 + low_limit: -10 + warn_limit: 2 + high_limit: 5 + - + oid: vlsSwitchInputTable + value: vlsSwitchInputPower + num_oid: '.1.3.6.1.4.1.34652.4.1.1.2.{{ $index }}' + descr: 'Optical power input {{ $index }}' + low_limit: -10 + low_warn_limit: -5 + warn_limit: 8 + high_limit: 10 + - + oid: vlsEdfaInputTable + value: vlsEdfaInputPower + num_oid: '.1.3.6.1.4.1.34652.3.7.1.2.{{ $index }}' + descr: 'Optical power input {{ $index }}' + low_limit: -10 + low_warn_limit: -5 + warn_limit: 8 + high_limit: 10 + - + oid: vlsEdfaOutputPowerTotal + num_oid: '.1.3.6.1.4.1.34652.3.8.{{ $index }}' + descr: 'Output Power Total' + state: + data: + - + oid: vlsReceiverSwitchMode + num_oid: '.1.3.6.1.4.1.34652.6.4.{{ $index }}' + descr: 'SwitchMode' + state_name: vlsReceiverSwitchMode + states: + - { value: 1, generic: 1, graph: 0, descr: 'vlsForce1' } + - { value: 2, generic: 1, graph: 0, descr: 'vlsForce2' } + - { value: 3, generic: 0, graph: 0, descr: 'vlsPrefer1'} + - { value: 4, generic: 0, graph: 0, descr: 'vlsPrefer2' } + - { value: 5, generic: 0, graph: 0, descr: 'vlsAutoLatching' } + skip_values: + - + oid: vlsNumOpticalInputs.0 + op: '=' + value: '1' + - + oid: vlsSwitchMode + num_oid: '.1.3.6.1.4.1.34652.4.2.{{ $index }}' + descr: 'SwitchMode' + state_name: vlsSwitchMode + states: + - { value: 1, generic: 1, graph: 0, descr: 'vlsForcePathA' } + - { value: 2, generic: 1, graph: 0, descr: 'vlsForcePathB' } + - { value: 3, generic: 0, graph: 0, descr: 'vlsPreferPathA'} + - { value: 4, generic: 0, graph: 0, descr: 'vlsPreferPathB' } + - { value: 5, generic: 0, graph: 0, descr: 'vlsAutoLatching' } + - { value: 6, generic: 0, graph: 0, descr: 'vlsScript'} + - + oid: vlsEdfaSwitchMode + num_oid: '.1.3.6.1.4.1.34652.3.15.{{ $index }}' + descr: 'SwitchMode' + state_name: vlsEdfaSwitchMode + states: + - { value: 1, generic: 1, graph: 0, descr: 'vlsSwitchForceA' } + - { value: 2, generic: 1, graph: 0, descr: 'vlsSwitchForceB' } + - { value: 3, generic: 0, graph: 0, descr: 'vlsSwitchPreferA'} + - { value: 4, generic: 0, graph: 0, descr: 'vlsSwitchPreferB' } + - { value: 5, generic: 0, graph: 0, descr: 'vlsSwitchPreferALatch' } + - { value: 6, generic: 0, graph: 0, descr: 'vlsSwitchPreferBLatch'} + count: + data: + - + oid: vlsReceiverSelectedInput + num_oid: '.1.3.6.1.4.1.34652.6.2.{{ $index }}' + descr: 'Current selected opt input' + skip_values: + - + oid: vlsNumOpticalInputs.0 + op: '=' + value: '1' + - + oid: vlsSwitchState + num_oid: '.1.3.6.1.4.1.34652.4.3.{{ $index }}' + descr: 'Current selected opt input' + - + oid: vlsEdfaSwitchState + num_oid: '.1.3.6.1.4.1.34652.3.16.{{ $index }}' + descr: 'Current selected opt input' + tv_signal: + data: + - + oid: vlsReceiverRfOutputPower + num_oid: '.1.3.6.1.4.1.34652.6.3.{{ $index }}' + descr: 'Output TV Signal' + low_warn_limit: 113 + low_limit: 105 + divisor: 10 + fanspeed: + data: + - + oid: vlsRfFwVer + num_oid: '.1.3.6.1.4.1.34652.2.10.11.{{ $index }}' + descr: 'Fan speed' + low_limit: 500 + skip_values: + - + oid: vlsRfFwVer.0 + op: '<=' + value: -1 diff --git a/priv/profiles/os_discovery/voss.yaml b/priv/profiles/os_discovery/voss.yaml new file mode 100644 index 00000000..49b56f43 --- /dev/null +++ b/priv/profiles/os_discovery/voss.yaml @@ -0,0 +1,47 @@ +mib: RAPID-CITY +modules: + mempools: + data: + - + used: RAPID-CITY::rcKhiSlotMemUsed + free: RAPID-CITY::rcKhiSlotMemFree +# percent_used: RAPID-CITY::rcKhiSlotMemUtil + type: avaya-vsp + descr: 'VOSS Memory' + precision: 1024 + index: 0 + os: + sysDescr_regex: '/(?\S+) \((?[^)]+)\)/' + version: RAPID-CITY::rcSysVersion.0 + version_regex: '/(?\d+\.\d+\S+)/' + serial: RAPID-CITY::rcChasSerialNumber.0 + processors: + data: + - + oid: rcKhiSlotCpu5MinAve + num_oid: '.1.3.6.1.4.1.2272.1.85.10.1.1.3.{{ $index }}' + descr: VOSS Processor + sensors: + temperature: + data: + - + oid: rcVossSystemTemperatureTable + value: rcVossSystemTemperatureTemperature + num_oid: '.1.3.6.1.4.1.2272.1.101.1.1.2.1.3.{{ $index }}' + descr: rcVossSystemTemperatureSensorDescription + index: 'rcVossSystemTemperatureTemperature.{{ $index }}' + high_limit: rcVossSystemTemperatureCriticalThreshold + warn_limit: rcVossSystemTemperatureWarningThreshold + state: + data: + - + oid: rcVossSystemTemperatureTable + value: rcVossSystemTemperatureStatus + num_oid: '.1.3.6.1.4.1.2272.1.101.1.1.2.1.6.{{ $index }}' + descr: rcVossSystemTemperatureSensorDescription + index: 'rcVossSystemTemperatureStatus.{{ $index }}' + state_name: rcVossSystemTemperatureStatus + states: + - { descr: normal, graph: 1, value: 1, generic: 0 } + - { descr: highWarning, graph: 1, value: 2, generic: 1 } + - { descr: highCritical, graph: 1, value: 3, generic: 2 } diff --git a/priv/profiles/os_discovery/voswall.yaml b/priv/profiles/os_discovery/voswall.yaml new file mode 100644 index 00000000..d2c4ee82 --- /dev/null +++ b/priv/profiles/os_discovery/voswall.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/ (?[\d.-]+\S*) (?.+) (?\S+)$/' diff --git a/priv/profiles/os_discovery/vrp.yaml b/priv/profiles/os_discovery/vrp.yaml new file mode 100644 index 00000000..74696ebe --- /dev/null +++ b/priv/profiles/os_discovery/vrp.yaml @@ -0,0 +1,730 @@ +mib: HUAWEI-WLAN-CONFIGURATION-MIB:HUAWEI-WAN-MIB:HUAWEI-ENTITY-EXTENT-MIB:HUAWEI-ENERGYMNGT-MIB:HUAWEI-STACK-MIB +modules: + os: + sysDescr_regex: '/\((?[^)]+) (?V[0-9]{3}R[0-9]{3}[0-9A-Z]+)/' + hardware: + - HUAWEI-ENTITY-EXTENT-MIB::hwEntityExtentMIB.6.5.0 + - HUAWEI-DEVICE-EXT-MIB::hwProductName.0 + - HUAWEI-MIB::hwDatacomm.183.1.25.1.5.1 + - HUAWEI-MIB::mlsr.20.1.1.1.3.0 + - HUAWEI-ENTITY-EXTENT-MIB::hwEntityBoardName.9 + serial: + - HUAWEI-DEVICE-EXT-MIB::hwDeviceEsn.0 + - ENTITY-MIB::entPhysicalSerialNum.9 + processors: + data: + - + oid: hwEntityStateEntry + value: hwEntityCpuUsage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.{{ $index }}' + descr: '{{ $entPhysicalName }} Processor' + skip_values: + - + oid: hwEntityOperStatus + op: '!=' + value: 3 + - + oid: hwEntityCpuUsageThreshold + op: '=' + value: 0 + storage: + data: + - + oid: HUAWEI-FLASH-MAN-MIB::hwStorageTable + descr: HUAWEI-FLASH-MAN-MIB::hwStorageName + type: HUAWEI-FLASH-MAN-MIB::hwStorageType + size: HUAWEI-FLASH-MAN-MIB::hwStorageSpace + free: HUAWEI-FLASH-MAN-MIB::hwStorageSpaceFree + free_num_oid: '.1.3.6.1.4.1.2011.6.9.1.4.2.1.4.{{ $index }}' + units: 1024 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - hwEntityStateTable + - hwEntityAdminStatus + - hwPwrStatusTable + - hwStackPortTable + - hw3GTable + temperature: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalTemperature + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.5.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + skip_values: + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalTemperature + op: '<' + value: '-50' + - + oid: hwEntityOpticalTemperature + op: '>=' + value: '2147483646' + - + oid: hwEntityStateTable + value: hwEntityTemperature + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.11.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + skip_values: + - + oid: hwEntityTemperature + op: '=' + value: '0' + - + oid: hwEntityTemperature + op: '>=' + value: '2147483646' + - + oid: hwTemperatureThresholdTable + value: hwEntityTempValue + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.8.1.6.{{ $index }}' + descr: 'TempSensor {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + group: 'Slot-{{ $subindex0 }}' + warn_limit: hwEntityTempMinorAlmThreshold + high_limit: hwEntityTempMajorAlmThreshold + divisor: 1 + count: + data: + - + oid: hw3GTable + value: hw3GBER + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.47.{{ $index }}' + descr: 'Bit Error Rate' + index: '3GBER-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GUpBand + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.30.{{ $index }}' + descr: 'Upstream Bandwidth' + index: '3gup-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GDownBand + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.31.{{ $index }}' + descr: 'Downstream Bandwidth' + index: '3gdown-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GBytesRateSent + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.28.{{ $index }}' + descr: 'Upstream Cur. Speed (bytes/s)' + index: '3gupr-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GBytesRateReceived + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.29.{{ $index }}' + descr: 'Downstream Cur. Speed (bytes/s)' + index: '3gdownr-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + runtime: + data: + - + oid: hw3GTable + value: hw3GUpTime + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.55.{{ $index }}' + descr: 'Uptime' + divisor: 6000 + index: '3guptime-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + dbm: + data: + - + oid: hw3GTable + value: hw3GCurrentRSSI + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.35.{{ $index }}' + descr: 'RSSI' + index: 'rssi-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentLteRSRP + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.38.{{ $index }}' + descr: 'LTE RSRP' + index: 'rsrp-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentLteRSRQ + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.40.{{ $index }}' + descr: 'LTE RSRQ' + index: 'rsrq-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalRxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.8.{{ $index }}' + descr: '{{ $entPhysicalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'rx-{{ $index }}' + user_func: 'uw_to_dbm' + low_limit: hwEntityOpticalRxLowWarnThreshold + high_limit: hwEntityOpticalRxHighWarnThreshold + skip_values: + - + oid: hwEntityOpticalRxPower + op: '<=' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalRxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.8.{{ $index }}' + descr: '{{ $entPhysicalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'rx-{{ $index }}' + divisor: 100 + skip_values: + - + oid: hwEntityOpticalRxPower + op: '>' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwEntityOpticalLaneRxPower + op: 'exists' + value: true + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: 0 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalTxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.9.{{ $index }}' + descr: '{{ $entPhysicalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'tx-{{ $index }}' + user_func: 'uw_to_dbm' + skip_values: + - + oid: hwEntityOpticalTxPower + op: '<=' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalTxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.9.{{ $index }}' + descr: '{{ $entPhysicalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'tx-{{ $index }}' + divisor: 100 + skip_values: + - + oid: hwEntityOpticalTxPower + op: '>' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwEntityOpticalLaneTxPower + op: 'exists' + value: true + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: 0 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalLaneRxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.32.{{ $index }}' + descr: '{{ $entPhysicalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'lane-rx-{{ $index }}' + divisor: 100 + high_limit: hwEntityOpticalRxHighThreshold + low_limit: hwEntityOpticalRxLowThreshold + skip_values: + - + oid: hwEntityOpticalRxPower + op: '>' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalLaneTxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.33.{{ $index }}' + descr: '{{ $entPhysicalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + index: 'lane-tx-{{ $index }}' + high_limit: hwEntityOpticalTxHighThreshold + low_limit: hwEntityOpticalTxLowThreshold + skip_values: + - + oid: hwEntityOpticalTxPower + op: '>' + value: 0 + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + divisor: 100 + voltage: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.6.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + skip_values: + - + oid: hwEntityOpticalVoltage + op: '=' + value: '-1' + - + oid: hwEntityOpticalVoltage + op: '=' + value: '-255' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityStateTable + value: hwEntityVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.13.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwEntityVoltage + op: '=' + value: '0' + - + oid: hwEntityVoltage + op: '>=' + value: '2147483646' + - + oid: hwPwrStatusTable + value: hwEntityPwrVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.8.{{ $index }}' + descr: 'PWR{{ $hwEntityPwrSlot }}' + index: '{{ $index }}' + divisor: 1000 + - + oid: hwVoltageInfoTable + value: hwEntityVolCurValue + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.9.1.7.{{ $index }}' + descr: 'VoltSensor {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + group: 'Slot-{{ $subindex0 }}' + low_limit: hwEntityVolLowAlmFatal + low_warn_limit: hwEntityVolLowAlmMajor + warn_limit: hwEntityVolHighAlmMajor + high_limit: hwEntityVolHighAlmFatal + divisor: 1000 + current: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalBiasCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.7.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + skip_values: + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-1' + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-255' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalBiasCurrent + op: '<' + value: '1000' + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalBiasCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.7.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: 'ports' + group: transceiver + skip_values: + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-1' + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-255' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalBiasCurrent + op: '>=' + value: '1000' + - + oid: hwPwrStatusTable + value: hwEntityPwrCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.7.{{ $index }}' + descr: 'PWR{{ $hwEntityPwrSlot }}' + index: '{{ $index }}' + divisor: 1000 + power: + data: + - + oid: hwAveragePower + num_oid: '.1.3.6.1.4.1.2011.6.157.1.3.{{ $index }}' + descr: 'Average Power Consumption' + index: 0 + divisor: 1000 + - + oid: hwCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.1.6.{{ $index }}' + descr: 'Current Power Consumption' + index: 1 + divisor: 1000 + - + oid: hwBoardPowerMngtTable + value: hwBoardCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.2.1.1.4.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwBoardCurrentPower + op: '=' + value: '-1' + - + oid: entPhysicalName + op: '=' + value: '' + - + oid: hwBoardPowerMngtTable + value: hwBoardCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.2.1.1.4.{{ $index }}' + descr: '{{ $hwBoardType }} {{ $hwBoardName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwBoardCurrentPower + op: '=' + value: '-1' + - + oid: entPhysicalName + op: '!=' + value: '' + percent: + data: + - + oid: hwFanStatusTable + value: hwEntityFanSpeed + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.10.1.5.{{ $index }}' + descr: 'Slot {{ $subindex0 }} Fan {{ $subindex1 }} Speed' + state: + data: + - + oid: hwWlanClusterSynConfig + value: hwWlanClusterSynConfigScheduleEnable + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.5.4.{{ $index }}' + descr: 'Configuration Sync' + group: Redundancy + state_name: hwWlanClusterSynConfigScheduleEnable + states: + - { descr: disable, graph: 1, value: 1, generic: 3 } + - { descr: enable, graph: 1, value: 2, generic: 0 } + - + oid: hwWlanClusterACListInfoTable + value: hwWlanClusterACStatus + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.6.1.7.{{ $index }}' + descr: 'Current Redundancy Status' + group: Redundancy + state_name: hwWlanClusterACStatus + states: + - { descr: down, graph: 1, value: 1, generic: 2 } + - { descr: up, graph: 1, value: 2, generic: 0 } + - { descr: pskmismatch, graph: 1, value: 3, generic: 2 } + - { descr: vermismatch, graph: 1, value: 4, generic: 2 } + - { descr: cfgmismatch, graph: 1, value: 5, generic: 2 } + - { descr: devmismatch, graph: 1, value: 6, generic: 2 } + - { descr: initial, graph: 1, value: 7, generic: 3 } + - + oid: hwWlanClusterACListInfoTable + value: hwWlanClusterACRole + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.6.1.4.{{ $index }}' + descr: 'Peer Redundancy Role' + group: Redundancy + state_name: hwWlanClusterACRole + states: + - { descr: Master, graph: 1, value: 1, generic: 0 } + - { descr: Slave, graph: 1, value: 2, generic: 0 } + - { descr: Backup, graph: 1, value: 3, generic: 0 } + - + oid: hwFanStatusTable + value: hwEntityFanState + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.10.1.7.{{ $index }}' + descr: 'Slot {{ $subindex0 }} Fan {{ $subindex1 }} Status' + group: Fans + state_name: hwEntityFanState + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Abnormal, graph: 1, value: 2, generic: 2 } + - + oid: hwStackMemberInfoTable + value: hwMemberStackRole + num_oid: '.1.3.6.1.4.1.2011.5.25.183.1.20.1.3.{{ $index }}' + descr: 'Unit {{ $index }} {{ $hwMemberStackDeviceType }} Status' + group: Stack + state_name: hwMemberStackRole + states: + - { descr: Master, graph: 1, value: 1, generic: 0 } + - { descr: Standby, graph: 1, value: 2, generic: 0 } + - { descr: Slave, graph: 1, value: 3, generic: 0 } + - + oid: hwStackPortTable + value: hwStackPortStatus + num_oid: '.1.3.6.1.4.1.2011.5.25.183.1.21.1.5.{{ $index }}' + descr: 'Unit {{ $subindex0 }} stack-port {{ $subindex1 }} Status' + group: Stack + state_name: hwStackPortStatus + states: + - { descr: Up, graph: 0, value: 1, generic: 0 } + - { descr: Down, graph: 0, value: 2, generic: 2 } + - + oid: hw3GTable + value: hw3GModemStatus + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.11.{{ $index }}' + descr: 'Current Modem Status' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GModemStatus + states: + - { descr: onLine, graph: 1, value: 1, generic: 0 } + - { descr: offLine, graph: 1, value: 4, generic: 2 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentNetworkConnection + index: 'netConn-{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.34.{{ $index }}' + descr: 'Current Network' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GCurrentNetworkConnection + states: + - { descr: '3G', graph: 1, value: 2, generic: 0 } + - { descr: 'LTE', graph: 1, value: 3, generic: 0 } + - { descr: 'Unknown', graph: 1, value: 7, generic: 3 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GConnectionStatus + index: 'netConnStatus-{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.53.{{ $index }}' + descr: 'Current Network Status' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GConnectionStatus + states: + - { descr: 'noService', graph: 1, value: 0, generic: 2 } + - { descr: 'emergency', graph: 1, value: 1, generic: 2 } + - { descr: 'serviceAvailable', graph: 1, value: 2, generic: 0 } + - { descr: 'regionEmergency', graph: 1, value: 3, generic: 2 } + - { descr: 'savingStatus', graph: 1, value: 4, generic: 3 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hwVoltageInfoTable + value: hwEntityVolStatus + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.9.1.5.{{ $index }}' + group: 'Slot-{{ $subindex0 }}' + descr: 'VoltStatus {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + states: + - { descr: 'Normal', graph: 1, value: 1, generic: 0 } + - { descr: 'Minor', graph: 1, value: 2, generic: 1 } + - { descr: 'Major', graph: 1, value: 3, generic: 2 } + - { descr: 'Fatal', graph: 1, value: 4, generic: 2 } + - + oid: hwTemperatureThresholdTable + value: hwEntityTempStatus + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.8.1.5.{{ $index }}' + group: 'Slot-{{ $subindex0 }}' + descr: 'TempStatus {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + states: + - { descr: 'Normal', graph: 1, value: 1, generic: 0 } + - { descr: 'Minor', graph: 1, value: 2, generic: 1 } + - { descr: 'Major', graph: 1, value: 3, generic: 2 } + - { descr: 'Fatal', graph: 1, value: 4, generic: 2 } + - + oid: hwPwrStatusTable + value: hwEntityPwrState + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.6.{{ $index }}' + group: 'Power Supply' + descr: 'PWR{{ $hwEntityPwrSlot }}' + states: + - { descr: 'Supply', graph: 1, value: 1, generic: 0 } + - { descr: 'Not Supply', graph: 1, value: 2, generic: 2 } + - { descr: 'Sleep', graph: 1, value: 3, generic: 1 } + - { descr: 'Unknown', graph: 1, value: 4, generic: 3 } diff --git a/priv/profiles/os_discovery/vsolution.yaml b/priv/profiles/os_discovery/vsolution.yaml new file mode 100644 index 00000000..08cdf0e7 --- /dev/null +++ b/priv/profiles/os_discovery/vsolution.yaml @@ -0,0 +1,75 @@ +mib: V1600D +modules: + os: + hardware: V1600D::v1600dOltType.5.0 + serial: V1600D::systemInfo.11.0 + version: V1600D::sysFirmVersion.0 + features: V1600D::sysHardVersion.0 + + mempools: + data: + - + percent_used: V1600D::memoryLoad + descr: 'Memory Load' + processors: + data: + - + oid: V1600D::cpuLoad + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.12.3.{{ $index }}' + descr: 'CPU Load' + + sensors: + additional_oids: + data: + - + oid: + - ponPortDescr + - onuAuthInfoDescription2 + temperature: + data: + - + oid: V1600D::ponTransceiverTable + value: V1600D::tempperature + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.13.1.1.2.{{ $index }}' + descr: "{{ $ponPortDescr }} Temperature" + - + oid: V1600D::sysTemperature + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.12.5.9.{{ $index }}' + descr: "System Temperature" + - + oid: V1600D::opmDiagInfoTable + value: V1600D::temperature + num_oid: '.1.3.6.1.4.1.37950.1.1.5.12.2.1.8.1.3.{{ $index }}' + descr: "{{ $onuAuthInfoDescription2 }}" + group: "ONU" + + + voltage: + data: + - + oid: V1600D::ponTransceiverTable + value: V1600D::voltage + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.13.1.1.3.{{ $index }}' + descr: "{{ $ponPortDescr }} Voltage" + current: + data: + - + oid: V1600D::ponTransceiverTable + value: V1600D::biasCurrent + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.13.1.1.4.{{ $index }}' + descr: "{{ $ponPortDescr }} Bias" + divisor: 1000 + dbm: + data: + - + oid: V1600D::ponTransceiverTable + value: V1600D::transmitPower + num_oid: '.1.3.6.1.4.1.37950.1.1.5.10.13.1.1.5.{{ $index }}' + descr: "{{ $ponPortDescr }} TX-Power" + - + oid: V1600D::opmDiagInfoTable + value: V1600D::rxPower + num_oid: '.1.3.6.1.4.1.37950.1.1.5.12.2.1.8.1.7.{{ $index }}' + descr: "{{ $onuAuthInfoDescription2 }}" + group: "ONU" + diff --git a/priv/profiles/os_discovery/vutlan.yaml b/priv/profiles/os_discovery/vutlan.yaml new file mode 100644 index 00000000..5e37efd3 --- /dev/null +++ b/priv/profiles/os_discovery/vutlan.yaml @@ -0,0 +1,47 @@ +mib: VUTLAN-SYSTEM-MIB +modules: + os: + sysDescr_regex: '/Vutlan EMS/' + sensors: + temperature: + data: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementsTable + value: VUTLAN-SYSTEM-MIB::ctlUnitElementValue + descr: '{{ VUTLAN-SYSTEM-MIB::ctlUnitElementName }}' + num_oid: '.1.3.6.1.4.1.39052.1.3.1.9.{{ $index }}' + skip_values: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementType + op: '!=' + value: "temperature" + humidity: + data: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementsTable + value: VUTLAN-SYSTEM-MIB::ctlUnitElementValue + descr: '{{ VUTLAN-SYSTEM-MIB::ctlUnitElementName }}' + num_oid: '.1.3.6.1.4.1.39052.1.3.1.9.{{ $index }}' + skip_values: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementType + op: '!=' + value: "humidity" + + state: + data: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementsTable + value: VUTLAN-SYSTEM-MIB::ctlUnitElementValue + descr: 'Door state' + num_oid: '.1.3.6.1.4.1.39052.1.3.1.9.{{ $index }}' + skip_values: + - + oid: VUTLAN-SYSTEM-MIB::ctlUnitElementType + op: '!=' + value: "door" + states: + - { value: -1, generic: 3, graph: 0, descr: 'null' } + - { value: 0, generic: 0, graph: 0, descr: closed } + - { value: 1, generic: 1, graph: 0, descr: open } + diff --git a/priv/profiles/os_discovery/vxoa.yaml b/priv/profiles/os_discovery/vxoa.yaml new file mode 100644 index 00000000..90c26d22 --- /dev/null +++ b/priv/profiles/os_discovery/vxoa.yaml @@ -0,0 +1,5 @@ +modules: + os: + hardware: SILVERPEAK-MGMT-MIB::spsProductModel.0 + serial: SILVERPEAK-MGMT-MIB::spsSystemSerial.0 + version: SILVERPEAK-MGMT-MIB::spsSystemVersion.0 diff --git a/priv/profiles/os_discovery/vyatta.yaml b/priv/profiles/os_discovery/vyatta.yaml new file mode 100644 index 00000000..2c30568c --- /dev/null +++ b/priv/profiles/os_discovery/vyatta.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Vyatta (?.*)/' diff --git a/priv/profiles/os_discovery/vyos.yaml b/priv/profiles/os_discovery/vyos.yaml new file mode 100644 index 00000000..d3c92f6d --- /dev/null +++ b/priv/profiles/os_discovery/vyos.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/VyOS (?\S+)/' diff --git a/priv/profiles/os_discovery/waas.yaml b/priv/profiles/os_discovery/waas.yaml new file mode 100644 index 00000000..7260783e --- /dev/null +++ b/priv/profiles/os_discovery/waas.yaml @@ -0,0 +1,20 @@ +mib: CISCO-WAN-OPTIMIZATION-MIB +modules: + os: + hardware: ENTITY-MIB::entPhysicalModelName.1 + serial: ENTITY-MIB::entPhysicalSerialNum.1 + version: ENTITY-MIB::entPhysicalSoftwareRev.1 + sensors: + state: + data: + - + oid: cwoTfoStatsLoadStatus + value: cwoTfoStatsLoadStatus + num_oid: '.1.3.6.1.4.1.9.9.762.1.2.1.13.{{ $index }}' + descr: 'TFO Load Status' + index: '{{ $index }}' + states: + - { value: 1, descr: other, graph: 1, generic: 3 } + - { value: 2, descr: unknown, graph: 1, generic: 0 } + - { value: 3, descr: ok, graph: 1, generic: 1 } + - { value: 4, descr: non-critical, graph: 1, generic: 2 } diff --git a/priv/profiles/os_discovery/webmon.yaml b/priv/profiles/os_discovery/webmon.yaml new file mode 100644 index 00000000..4c343004 --- /dev/null +++ b/priv/profiles/os_discovery/webmon.yaml @@ -0,0 +1,3 @@ +modules: + os: + version: WEBMON-EDGE-MATRIX-MIB::systemGeneralVersion.0.0 diff --git a/priv/profiles/os_discovery/webpower-smart2.yaml b/priv/profiles/os_discovery/webpower-smart2.yaml new file mode 100644 index 00000000..c97a7cc0 --- /dev/null +++ b/priv/profiles/os_discovery/webpower-smart2.yaml @@ -0,0 +1,172 @@ +mib: USHA-MIB +modules: + os: + hardware: + - UPS-MIB::upsIdentManufacturer.0 + - UPS-MIB::upsIdentModel.0 + hardware_template: "{{ UPS-MIB::upsIdentManufacturer.0 }} {{ UPS-MIB::upsIdentModel.0 }}" + version: UPS-MIB::upsIdentAgentSoftwareVersion.0 + version_regex: '/v(?[0-9]+.[0-9]+)/' + serial: UPS-MIB::upsIdentAgentSoftwareVersion.0 + serial_regex: '/SN (?[0-9]+)/' + sensors: + additional_oids: + data: + - + oid: + - upsBatteryGroup + - upsInputGroupTable + - upsOutputGroupTable + state: + data: + - + oid: upsTestGroup + value: upsTestBatteryTestResult + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.6.3.{{ $index }}' + descr: 'UPS Test #{{ $index }} Result' + index: 'upsTestBatteryTestResult.{{ $index }}' + state_name: upsBatteryTest + skip_values: + - + oid: upsBatteryTest + op: '!=' + value: 1 + states: + - { value: 1, generic: 0, graph: 1, descr: 'OK' } + - { value: 2, generic: 1, graph: 1, descr: 'Warning' } + - { value: 3, generic: 2, graph: 1, descr: 'Error' } + - { value: 4, generic: 3, graph: 1, descr: 'Aborted' } + - { value: 5, generic: 3, graph: 1, descr: 'inProgress' } + - { value: 6, generic: 3, graph: 1, descr: 'noData' } + - + oid: upsBatteryGroup + value: upsBatteryGroupStatus + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.1.{{ $index }}' + descr: 'UPS Battery #{{ $index }} Status' + index: 'upsBatteryGroupStatus.{{ $index }}' + state_name: upsBatteryGroupStatus + states: + - { value: 1, generic: 3, graph: 1, descr: 'Unknown' } + - { value: 2, generic: 0, graph: 1, descr: 'Normal' } + - { value: 3, generic: 1, graph: 1, descr: 'Low' } + - { value: 4, generic: 2, graph: 1, descr: 'Depleeted' } + - { value: 5, generic: 1, graph: 1, descr: 'Discharging' } + - { value: 6, generic: 2, graph: 1, descr: 'Failure' } + - + oid: upsOutputGroupSource + value: upsOutputGroupSource + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.4.1.{{ $index }}' + descr: 'UPS Output #{{ $index }} Source' + index: 'upsOutputGroupSource.{{ $index }}' + state_name: upsOutputGroupSource + states: + - { value: 1, generic: 3, graph: 1, descr: 'Other' } + - { value: 2, generic: 3, graph: 1, descr: 'None' } + - { value: 3, generic: 0, graph: 1, descr: 'Normal' } + - { value: 4, generic: 1, graph: 1, descr: 'Bypass' } + - { value: 5, generic: 1, graph: 1, descr: 'Battery' } + - { value: 6, generic: 2, graph: 1, descr: 'Booster' } + - { value: 7, generic: 2, graph: 1, descr: 'Reducer' } + voltage: + data: + - + oid: upsInputGroupTable + value: upsInputGroupVoltage + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.3.3.1.3.{{ $index }}' + descr: 'Input #{{ $index }} Voltage' + index: 'upsInputGroupVoltage.{{ $index }}' + divisor: 10 + low_limit: 180 + low_warn_limit: 200 + warn_limit: 235 + high_limit: 240 + - + oid: upsOutputGroupTable + value: upsOutputGroupVoltage + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.4.4.1.2.{{ $index }}' + descr: 'Output #{{ $index }} Voltage' + index: 'upsOutputGroupVoltage.{{ $index }}' + divisor: 10 + low_limit: 200 + low_warn_limit: 210 + warn_limit: 230 + high_limit: 235 + - + oid: upsBatteryGroup + value: upsBatteryGroupVoltage + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.5.{{ $index }}' + descr: 'Battery #{{ $index }} Voltage' + index: 'upsBatteryGroupVoltage.{{ $index }}' + divisor: 10 + current: + data: + - + oid: upsInputGroupTable + value: upsInputGroupCurrent + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.3.3.1.4.{{ $index }}' + descr: 'Input #{{ $index }} Current' + index: 'upsInputGroupCurrent.{{ $index }}' + divisor: 10 + - + oid: upsOutputGroupTable + value: upsOutputGroupCurrent + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.4.4.1.3.{{ $index }}' + descr: 'Output #{{ $index }} Current' + index: 'upsOutputGroupCurrent.{{ $index }}' + divisor: 10 + load: + data: + - + oid: upsOutputGroupTable + value: upsOutputGroupPercentLoad + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.4.4.1.5.{{ $index }}' + descr: 'Output #{{ $index }} Load' + index: 'upsOutputGroupPercentLoad.{{ $index }}' + frequency: + data: + - + oid: upsInputGroupTable + value: upsInputGroupFrequency + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.3.3.1.2.{{ $index }}' + descr: 'Input #{{ $index }} Frequency' + index: 'upsInputGroupFrequency.{{ $index }}' + divisor: 10 + count: + data: + - + oid: upsInputGroupLineBads + value: upsInputGroupLineBads + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.3.1.{{ $index }}' + descr: 'Input #{{ $index }} Out-Of-Tolerance' + index: 'upsInputGroupLineBads.{{ $index }}' + charge: + data: + - + oid: upsBatteryGroup + value: upsBatteryGroupEstimatedChargeRemaining + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.4.{{ $index }}' + descr: 'Battery #{{ $index }} Charge remaining' + index: 'upsBatteryGroupEstimatedChargeRemaining.{{ $index }}' + temperature: + data: + - + oid: upsBatteryGroup + value: upsBatteryGroupTemperature + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.7.{{ $index }}' + descr: 'Battery #{{ $index }} Temperature' + index: 'upsBatteryGroupTemperature.{{ $index }}' + divisor: 10 + runtime: + data: + - + oid: upsBatteryGroup + value: upsBatteryGroupEstimatedMinutesRemaining + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.3.{{ $index }}' + descr: 'Battery #{{ $index }} Minutes remaining' + index: 'upsBatteryGroupEstimatedMinutesRemaining.{{ $index }}' + - + oid: upsBatteryGroup + value: upsBatteryGroupSecondsOnBattery + num_oid: '.1.3.6.1.4.1.2468.1.2.1.1.2.2.{{ $index }}' + descr: 'Runtime on Battery #{{ $index }}' + index: 'upsBatteryGroupSecondsOnBattery.{{ $index }}' diff --git a/priv/profiles/os_discovery/webpower.yaml b/priv/profiles/os_discovery/webpower.yaml new file mode 100644 index 00000000..55a84f01 --- /dev/null +++ b/priv/profiles/os_discovery/webpower.yaml @@ -0,0 +1,8 @@ +modules: + os: + hardware: UPS-MIB::upsIdentAgentSoftwareVersion.0 + hardware_regex: '/(?WebPower .* Card)/' + version: UPS-MIB::upsIdentAgentSoftwareVersion.0 + version_regex: '/v(?[0-9]+.[0-9]+)/' + serial: UPS-MIB::upsIdentAgentSoftwareVersion.0 + serial_regex: '/SN (?[0-9]+)/' diff --git a/priv/profiles/os_discovery/websensor.yaml b/priv/profiles/os_discovery/websensor.yaml new file mode 100644 index 00000000..4be32576 --- /dev/null +++ b/priv/profiles/os_discovery/websensor.yaml @@ -0,0 +1,4 @@ +modules: + os: + serial: T3610-MIB::serialNumber.0 + sysDescr_regex: '/( fw|Version) (?.*)/' diff --git a/priv/profiles/os_discovery/weos.yaml b/priv/profiles/os_discovery/weos.yaml new file mode 100644 index 00000000..bc9d8c49 --- /dev/null +++ b/priv/profiles/os_discovery/weos.yaml @@ -0,0 +1,28 @@ +mib: HDSL2-SHDSL-LINE-MIB:WESTERMO-INTERFACE-MIB:WESTERMO-OID-MIB:WESTERMO-WEOS-MIB +modules: + os: + version: SNMPv2-MIB::sysDescr.0 + hardware: + - .1.3.6.1.2.1.47.1.1.1.1.13.5 # Wolverine, DDW-225 + - .1.3.6.1.2.1.47.1.1.1.1.7.3 # Lynx + serial: + - .1.3.6.1.2.1.47.1.1.1.1.11.5 # Wolverine, DDW-225 + - .1.3.6.1.2.1.47.1.1.1.1.11.3 # Lynx + sensors: + additional_oids: + data: + - + oid: + - ifName + snr: + data: + - + oid: hdsl2ShdslEndpointCurrTable + value: hdsl2ShdslEndpointCurrSnrMgn + num_oid: '.1.3.6.1.2.1.10.48.1.5.1.2.{{ $index }}' + descr: 'DSL {{ $ifName:0 }} SNR' + index: 'snr-{{ $index }}' + low_limit: 6 + low_warn_limit: 10 + warn_limit: 98 + high_limit: 99 diff --git a/priv/profiles/os_discovery/westmountainradio.yaml b/priv/profiles/os_discovery/westmountainradio.yaml new file mode 100644 index 00000000..18bd5813 --- /dev/null +++ b/priv/profiles/os_discovery/westmountainradio.yaml @@ -0,0 +1,84 @@ +mib: RMCU +modules: + os: + hardware: RMCU::version.0 + hardware_regex: '/(?.*) FW Version/' + version: RMCU::version.0 + version_regex: '/FW Version (?.*)/' + sensors: + voltage: + options: + divisor: 1000 + data: + - + oid: RMCU::analog6val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.6.{{ $index }}' + descr: "Input" + low_limit: '8' # exposed in web interface, not MIB + high_limit: '15.5' + current: + options: + divisor: 1000 + data: + - + oid: RMCU::analog1val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.1.{{ $index }}' + index: 1 + descr: "Outlet 1" + - + oid: RMCU::analog2val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.2.{{ $index }}' + index: 2 + descr: "Outlet 2" + - + oid: RMCU::analog3val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.3.{{ $index }}' + index: 3 + descr: "Outlet 3" + - + oid: RMCU::analog4val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.4.{{ $index }}' + index: 4 + descr: "Outlet 4" + - + oid: RMCU::analog5val-int + num_oid: '.1.3.6.1.4.1.15117.1.4.5.{{ $index }}' + index: 5 + descr: "Outlet 5" + state: + data: + - + oid: RMCU::digout1val + num_oid: '.1.3.6.1.4.1.15117.1.2.66.{{ $index }}' + descr: "Outlet 1 State" + states: + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - + oid: RMCU::digout2val + num_oid: '.1.3.6.1.4.1.15117.1.2.68.{{ $index }}' + descr: "Outlet 2 State" + states: + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - + oid: RMCU::digout3val + num_oid: '.1.3.6.1.4.1.15117.1.2.70.{{ $index }}' + descr: "Outlet 3 State" + states: + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - + oid: RMCU::digout4val + num_oid: '.1.3.6.1.4.1.15117.1.2.72.{{ $index }}' + descr: "Outlet 4 State" + states: + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - + oid: RMCU::digout5val + num_oid: '.1.3.6.1.4.1.15117.1.2.74.{{ $index }}' + descr: "Outlet 5 State" + states: + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 1, generic: 0, graph: 0, descr: outletOn } diff --git a/priv/profiles/os_discovery/windows.yaml b/priv/profiles/os_discovery/windows.yaml new file mode 100644 index 00000000..9bd663e9 --- /dev/null +++ b/priv/profiles/os_discovery/windows.yaml @@ -0,0 +1,28 @@ +mib: DHCP-MIB +modules: + os: + sysDescr_regex: '/Hardware: (?[\w /]+) - Software: (?.*)/' + sensors: + count: + data: + - + oid: noAddInUse + value: noAddInUse + num_oid: '.1.3.6.1.4.1.311.1.3.2.1.1.2.{{ $index }}' + index: 'noAddInUse.{{ $index }}' + descr: 'IP Addresses Allocated - {{ $index }}' + group: IP Addresses Allocated + - + oid: noAddFree + value: noAddFree + num_oid: '.1.3.6.1.4.1.311.1.3.2.1.1.3.{{ $index }}' + index: 'noAddFree.{{ $index }}' + descr: 'IP Addresses Free - {{ $index }}' + group: IP Addresses Free + - + oid: noPendingOffers + value: noPendingOffers + num_oid: '.1.3.6.1.4.1.311.1.3.2.1.1.4.{{ $index }}' + index: 'noPendingOffers.{{ $index }}' + descr: 'IP Addresses Pending - {{ $index }}' + group: IP Addresses Pending diff --git a/priv/profiles/os_discovery/wipipe.yaml b/priv/profiles/os_discovery/wipipe.yaml new file mode 100644 index 00000000..ae78a02f --- /dev/null +++ b/priv/profiles/os_discovery/wipipe.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Cradlepoint (?.*), Firmware Version (?.*)/' diff --git a/priv/profiles/os_discovery/wisi-tangram.yaml b/priv/profiles/os_discovery/wisi-tangram.yaml new file mode 100644 index 00000000..051f75ed --- /dev/null +++ b/priv/profiles/os_discovery/wisi-tangram.yaml @@ -0,0 +1,59 @@ +mib: WISI-GTSENSORS-MIB +modules: + os: + hardware: WISI-GTMODULES-MIB::gtModuleName.7 + serial: WISI-GTMODULES-MIB::gtModuleSerNo.7 + version: WISI-GTMODULES-MIB::gtModuleFWID.7 + sensors: + fanspeed: + data: + - + oid: gtFansTable + value: gtFanSpeed + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.4.1.4.{{ $index }}' + descr: '{{ $gtFanName }}' + index: 'gtFanSpeed.{{ $index }}' + temperature: + data: + - + oid: gtTempsTable + value: gtTempValue + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.2.1.3.{{ $index }}' + descr: '{{ $gtTempName }}' + index: 'gtTempValue.{{ $index }}' + group: 'Chassis' + - + oid: gtPSUsTable + value: gtPSUTemperature + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.6.1.8.{{ $index }}' + descr: 'Power Supply ({{ $gtPSUName }})' + index: 'gtPSUTemperature.{{ $index }}' + group: 'Power Supply' + voltage: + data: + - + oid: gtPSUsTable + value: gtPSUVoltageExt + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.6.1.7.{{ $index }}' + descr: 'Power Supply ({{ $gtPSUName }})' + index: 'gtPSUVoltageExt.{{ $index }}' + divisor: 100 + group: 'External Voltage' + - + oid: gtPSUsTable + value: gtPSUVoltageInt + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.6.1.5.{{ $index }}' + descr: 'Power Supply ({{ $gtPSUName }})' + index: 'gtPSUVoltageInt.{{ $index }}' + divisor: 100 + group: 'Internal Voltage' + current: + data: + - + oid: gtPSUsTable + value: gtPSUCurrent + num_oid: '.1.3.6.1.4.1.7465.20.2.9.1.3.1.6.1.4.{{ $index }}' + descr: 'Power Supply ({{ $gtPSUName }})' + index: 'gtTempValue.{{ $index }}' + divisor: 1000 + group: 'Internal Current' diff --git a/priv/profiles/os_discovery/witchos.yaml b/priv/profiles/os_discovery/witchos.yaml new file mode 100644 index 00000000..4d6dd4be --- /dev/null +++ b/priv/profiles/os_discovery/witchos.yaml @@ -0,0 +1,12 @@ +mib: TELTONIKA-MIB +modules: + os: + serial: TELTONIKA-MIB::serial.0 + hardware: TELTONIKA-MIB::productCode.0 + version: TELTONIKA-MIB::fwVersion.0 + processors: + data: + - + oid: TELTONIKA-MIB::cpuUsage + num_oid: '.1.3.6.1.4.1.48690.1.8.{{ $index }}' + index: cpuUsage.{{ $index }} diff --git a/priv/profiles/os_discovery/wti-console.yaml b/priv/profiles/os_discovery/wti-console.yaml new file mode 100644 index 00000000..d21e8271 --- /dev/null +++ b/priv/profiles/os_discovery/wti-console.yaml @@ -0,0 +1,17 @@ +mib: WTI-CONSOLE-MIB +modules: + os: + hardware: + - WTI-CONSOLE-MIB::environmentUnitName.1 + serial: + - WTI-CONSOLE-MIB::environmentSerialNumber.1 + version: + - WTI-CONSOLE-MIB::environmentSoftwareVersion.1 + sensors: + temperature: + data: + - + oid: environmentUnitTemperature + num_oid: '.1.3.6.1.4.1.2634.1.200.10.1.3.{{ $index }}' + index: 'environmentUnitTemperature.{{ $index }}' + descr: 'Unit temperature' diff --git a/priv/profiles/os_discovery/wti-power.yaml b/priv/profiles/os_discovery/wti-power.yaml new file mode 100644 index 00000000..dc96d112 --- /dev/null +++ b/priv/profiles/os_discovery/wti-power.yaml @@ -0,0 +1,189 @@ +mib: WTI-POWER-MIB +modules: + os: + hardware: + - WTI-POWER-MIB::environmentUnitName.1 + sensors: + state: + data: + - + oid: plugTable + value: plugStatus + num_oid: '.1.3.6.1.4.1.2634.3.100.200.1.3.{{ $index }}' + index: 'plugStatus.{{ $index }}' + descr: '{{ $plugName }} State' + states: + - { value: 1, generic: 0, graph: 0, descr: outletOn } + - { value: 0, generic: 3, graph: 0, descr: outletOff } + - { value: 2, generic: 1, graph: 0, descr: outletReboot } + - { value: 4, generic: 2, graph: 0, descr: outletUnknown } + temperature: + data: + - + oid: environmentUnitTemperature + num_oid: '.1.3.6.1.4.1.2634.3.200.10.1.3.{{ $index }}' + index: 'environmentUnitTemperature.{{ $index }}' + descr: 'Unit temperature' + voltage: + data: + - + oid: environmentUnitVoltageA + num_oid: '.1.3.6.1.4.1.2634.3.200.10.1.5.{{ $index }}' + index: 'environmentUnitVoltageA.{{ $index }}' + descr: 'Branch A Voltage' + skip_values: + - + oid: environmentUnitVoltageA.1 + op: '==' + value: "0" + - + oid: environmentUnitVoltageB + num_oid: '.1.3.6.1.4.1.2634.3.200.10.1.8.{{ $index }}' + index: 'environmentUnitVoltageB.{{ $index }}' + descr: 'Branch B Voltage' + skip_values: + - + oid: environmentUnitVoltageB.1 + op: '==' + value: "0" + - + oid: environmentUnitVoltageC + num_oid: '.1.3.6.1.4.1.2634.3.200.10.1.11.{{ $index }}' + index: 'environmentUnitVoltageC.{{ $index }}' + descr: 'Branch C Voltage' + skip_values: + - + oid: environmentUnitVoltageC.1 + op: '==' + value: "0" + - + oid: environmentUnitVoltageD + num_oid: '.1.3.6.1.4.1.2634.3.200.10.1.14.{{ $index }}' + index: 'environmentUnitVoltageD.{{ $index }}' + descr: 'Branch D Voltage' + skip_values: + - + oid: environmentUnitVoltageD.1 + op: '==' + value: "0" + current: + data: + - + oid: plugTable + value: plugCurrent + num_oid: '.1.3.6.1.4.1.2634.3.100.200.1.7.{{ $index }}' + index: 'plugCurrent.{{ $index }}' + descr: '{{ $plugName }} Current' + divisor: 10 + - + oid: environmentTables + value: environmentSystemTotalCurrent + num_oid: '.1.3.6.1.4.1.2634.3.200.60.{{ $index }}' + index: 'environmentSystemTotalCurrent.{{ $index }}' + descr: 'Total Unit Current' + divisor: 10 + - + oid: environmentTables + value: environmentBranchATotalCurrent + num_oid: '.1.3.6.1.4.1.2634.3.200.20.{{ $index }}' + index: 'environmentBranchATotalCurrent.{{ $index }}' + descr: 'Branch A Current' + divisor: 10 + skip_values: + - + oid: environmentUnitVoltageA.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchBTotalCurrent + num_oid: '.1.3.6.1.4.1.2634.3.200.40.{{ $index }}' + index: 'environmentBranchBTotalCurrent.{{ $index }}' + descr: 'Branch B Current' + divisor: 10 + skip_values: + - + oid: environmentUnitVoltageB.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchCTotalCurrent + num_oid: '.1.3.6.1.4.1.2634.3.200.51.{{ $index }}' + index: 'environmentBranchCTotalCurrent.{{ $index }}' + descr: 'Branch C Current' + divisor: 10 + skip_values: + - + oid: environmentUnitVoltageC.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchDTotalCurrent + num_oid: '.1.3.6.1.4.1.2634.3.200.53.{{ $index }}' + index: 'environmentBranchDTotalCurrent.{{ $index }}' + descr: 'Branch D Current' + divisor: 10 + skip_values: + - + oid: environmentUnitVoltageD.1 + op: '==' + value: "0" + power: + data: + - + oid: plugTable + value: plugPower + num_oid: '.1.3.6.1.4.1.2634.3.100.200.1.8.{{ $index }}' + index: 'plugPower.{{ $index }}' + descr: '{{ $plugName }} Power' + - + oid: environmentSystemTotalPower + num_oid: '.1.3.6.1.4.1.2634.3.200.70.{{ $index }}' + index: 'environmentSystemTotalPower.{{ $index }}' + descr: 'Total Unit Power' + - + oid: environmentTables + value: environmentBranchATotalPower + num_oid: '.1.3.6.1.4.1.2634.3.200.30.{{ $index }}' + index: 'environmentBranchATotalPower.{{ $index }}' + descr: 'Branch A Power' + skip_values: + - + oid: environmentUnitVoltageA.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchBTotalPower + num_oid: '.1.3.6.1.4.1.2634.3.200.50.{{ $index }}' + index: 'environmentBranchBTotalPower.{{ $index }}' + descr: 'Branch B Power' + skip_values: + - + oid: environmentUnitVoltageB.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchCTotalPower + num_oid: '.1.3.6.1.4.1.2634.3.200.52.{{ $index }}' + index: 'environmentBranchCTotalPower.{{ $index }}' + descr: 'Branch C Power' + skip_values: + - + oid: environmentUnitVoltageC.1 + op: '==' + value: "0" + - + oid: environmentTables + value: environmentBranchDTotalPower + num_oid: '.1.3.6.1.4.1.2634.3.200.54.{{ $index }}' + index: 'environmentBranchDTotalPower.{{ $index }}' + descr: 'Branch D Power' + skip_values: + - + oid: environmentUnitVoltageD.1 + op: '==' + value: "0" diff --git a/priv/profiles/os_discovery/wut.yaml b/priv/profiles/os_discovery/wut.yaml new file mode 100644 index 00000000..c6e67a86 --- /dev/null +++ b/priv/profiles/os_discovery/wut.yaml @@ -0,0 +1,94 @@ +mib: WebGraph-Thermo-Hygrometer-MIB:WebGraph-Thermo-Hygro-Barometer-MIB:WebGraph-Thermo-Hygrometer-US-MIB:WebGraph-Thermometer-MIB:WebGraph-Thermometer-NTC-MIB:WebGraph-8xThermometer-US-MIB +modules: + os: + hardware: + - WebGraph-Thermometer-MIB::wtWebioAn1GraphMfOrderNo.0 + - WebGraph-Thermometer-NTC-MIB::wtWebioAn1GraphNtcMfDeviceTyp.0 + sensors: + temperature: + options: + divisor: 10 + skip_value_gt: 32760 + data: + - + oid: wtWebioAn1GraphNtc + value: wtWebioAn1GraphNtcBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.18.1.4.1.1.{{ $index }}' + descr: wtWebioAn1GraphNtcPortText + index: wtWebioAn1GraphNtcSensorNo.{{ $index }} + - + oid: wtWebioAn1Graph + value: wtWebioAn1GraphBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.8.1.4.1.1.{{ $index }}' + descr: wtWebioAn1GraphPortText + index: wtWebioAn1GraphSensorNo.{{ $index }} + - + oid: wtWebioAn8Graph + value: wtWebioAn8GraphBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.6.1.4.1.1.{{ $index }}' + descr: wtWebioAn8GraphPortText + index: wtWebioAn8GraphSensorNo.{{ $index }} + - + oid: wtWebGraphThermHygro + value: wtWebGraphThermHygroBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.9.1.4.1.1.{{ $index }}' + descr: 'Environment' + index: wtWebGraphThermHygroSensorNo.{{ $index }} + skip_values: + - + oid: wtWebGraphThermHygroPortName + op: 'not_contains' + value: 'Temp' + - + oid: wtWebGraphThermoHygro + value: wtWebGraphThermoHygroBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.42.1.4.1.1.{{ $index }}' + descr: 'Environment' + index: wtWebGraphThermoHygroSensorNo.{{ $index }} + skip_values: + - + oid: wtWebGraphThermoHygroSensorNo + op: 'not_contains' + value: 1 + humidity: + options: + divisor: 10 + data: + - + oid: wtWebGraphThermHygro + value: wtWebGraphThermHygroBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.9.1.4.1.1.{{ $index }}' + descr: 'Environment' + index: wtWebGraphThermHygroSensorNo.{{ $index }} + skip_values: + - + oid: wtWebGraphThermHygroPortName + op: 'not_contains' + value: 'Feucht' + - + oid: wtWebGraphThermoHygro + value: wtWebGraphThermoHygroBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.42.1.4.1.1.{{ $index }}' + descr: 'Environment' + index: wtWebGraphThermoHygroSensorNo.{{ $index }} + skip_values: + - + oid: wtWebGraphThermoHygroSensorNo + op: 'not_contains' + value: 2 + pressure: + options: + divisor: 100 + data: + - + oid: wtWebGraphThermoBaro + value: wtWebGraphThermoBaroBinaryTempValue + num_oid: '.1.3.6.1.4.1.5040.1.2.16.1.4.1.1.{{ $index }}' + descr: 'Environment' + index: wtWebGraphThermoBaroSensorNo.{{ $index }} + skip_values: + - + oid: wtWebGraphThermoBaroPortName + op: 'not_contains' + value: 'druck' + diff --git a/priv/profiles/os_discovery/xclarity.yaml b/priv/profiles/os_discovery/xclarity.yaml new file mode 100644 index 00000000..cf9ac226 --- /dev/null +++ b/priv/profiles/os_discovery/xclarity.yaml @@ -0,0 +1,93 @@ +mib: LENOVO-XCC-MIB:LENOVO-XCC-ALERT-MIB:LENOVO-SMI-MIB:LENOVO-PRODUCTS-MIB +modules: + os: + hardware: LENOVO-XCC-MIB::machineLevelProductName.0 + serial: LENOVO-XCC-MIB::machineLevelSerialNumber.0 + version: LENOVO-XCC-MIB::xccVpdVersionString.1 + sensors: + temperature: + data: + - + oid: temperature + value: tempReading + num_oid: '.1.3.6.1.4.1.19046.11.1.1.1.2.1.3.{{ $index }}' + index: 'tempReading.{{ $index }}' + descr: tempDescr + high_limit: tempCritLimitHigh + low_limit: tempCritLimitLow + low_warn_limit: tempNonCritLimitLow + warn_limit: tempNonCritLimitHigh + voltage: + data: + - + oid: voltage + value: voltReading + num_oid: '.1.3.6.1.4.1.19046.11.1.1.2.2.1.3.{{ $index }}' + index: 'voltReading.{{ $index }}' + descr: voltDescr + high_limit: voltCritLimitHigh + low_limit: voltCritLimitLow + low_warn_limit: voltNonCritLimitLow + warn_limit: voltNonCritLimitHigh + state: + data: + - + oid: systemHealthStat + num_oid: '.1.3.6.1.4.1.19046.11.1.1.4.1.{{ $index }}' + index: 'systemHealthStat.{{ $index }}' + states: + - { descr: 'completely failed', graph: 1, value: 0, generic: 2 } + - { descr: ok, graph: 1, value: 255, generic: 0 } + - { descr: degraded, graph: 1, value: 4, generic: 1 } + - { descr: failed, graph: 1, value: 2, generic: 2 } + low_warn_limit: 5 + low_limit: 3 + descr: 'Overall System Status' + - + oid: currentSysPowerStatus + num_oid: '.1.3.6.1.4.1.19046.11.1.5.1.1.{{ $index }}' + index: 'currentSysPowerStatus.{{ $index }}' + states: + - { descr: 'powered off', graph: 1, value: 0, generic: 2 } + - { descr: sleep, graph: 1, value: 1, generic: 1 } + - { descr: 'power on', graph: 1, value: 255, generic: 0 } + descr: 'Power status' + percent: + data: + - + oid: fans + value: fanSpeed + num_oid: '.1.3.6.1.4.1.19046.11.1.1.3.2.1.3.{{ $index }}' + index: 'fanSpeed.{{ $index }}' + descr: fanDescr + high_limit: fanCritLimitHigh + low_limit: fanCritLimitLow + low_warn_limit: fanNonCritLimitLow + warn_limit: fanNonCritLimitHigh + power: + data: + - + oid: fuelGaugeInformation + value: fuelGaugeTotalPowerInUse + num_oid: '.1.3.6.1.4.1.19046.11.1.1.10.1.10.{{ $index }}' + index: 'fuelGaugeTotalPowerInUse.{{ $index }}' + descr: 'Total in use' + high_limit: fuelGaugeTotalPowerAvailable + - + oid: fuelGaugeInformation + value: fuelGaugePowerConsumptionCpu + num_oid: '.1.3.6.1.4.1.19046.11.1.1.10.1.11.{{ $index }}' + index: 'fuelGaugePowerConsumptionCpu.{{ $index }}' + descr: 'CPU' + - + oid: fuelGaugeInformation + value: fuelGaugePowerConsumptionMemory + num_oid: '.1.3.6.1.4.1.19046.11.1.1.10.1.12.{{ $index }}' + index: 'fuelGaugePowerConsumptionMemory.{{ $index }}' + descr: 'Memory' + - + oid: fuelGaugeInformation + value: fuelGaugePowerConsumptionOther + num_oid: '.1.3.6.1.4.1.19046.11.1.1.10.1.13.{{ $index }}' + index: 'fuelGaugePowerConsumptionOther.{{ $index }}' + descr: 'Other' diff --git a/priv/profiles/os_discovery/xerox.yaml b/priv/profiles/os_discovery/xerox.yaml new file mode 100644 index 00000000..3a40942d --- /dev/null +++ b/priv/profiles/os_discovery/xerox.yaml @@ -0,0 +1,5 @@ +modules: + os: + sysDescr_regex: '/Xerox (?[^;]+)/' + hardware: .1.3.6.1.4.1.236.11.5.1.1.1.1.0 + version: .1.3.6.1.4.1.236.11.5.1.1.1.2.0 diff --git a/priv/profiles/os_discovery/xirrus_aos.yaml b/priv/profiles/os_discovery/xirrus_aos.yaml new file mode 100644 index 00000000..b17461bb --- /dev/null +++ b/priv/profiles/os_discovery/xirrus_aos.yaml @@ -0,0 +1,10 @@ +mib: XIRRUS-MIB +modules: + sensors: + temperature: + data: + - + oid: systemTempCelsius + num_oid: '.1.3.6.1.4.1.21013.1.2.28.21.1.3.{{ $index }}' + descr: "Temperature(C)" + index: 1 diff --git a/priv/profiles/os_discovery/xos.yaml b/priv/profiles/os_discovery/xos.yaml new file mode 100644 index 00000000..844294b3 --- /dev/null +++ b/priv/profiles/os_discovery/xos.yaml @@ -0,0 +1,48 @@ +mib: EXTREME-SOFTWARE-MONITOR-MIB +modules: + mempools: + data: + - + total: EXTREME-SOFTWARE-MONITOR-MIB::extremeMemoryMonitorSystemTotal + free: EXTREME-SOFTWARE-MONITOR-MIB::extremeMemoryMonitorSystemFree + precision: 1024 + type: extreme-mem + descr: 'Dynamic Memory' + os: + sysDescr_regex: '/(\((?[^)]+)\))? version (?[\d.]+) (?\S+)/' + processors: + data: + - + oid: extremeCpuMonitorTotalUtilization + num_oid: '.1.3.6.1.4.1.1916.1.32.1.2.{{ $index }}' + index: 0 + type: extreme-cpu + sensors: + temperature: + data: + - + oid: EXTREME-SYSTEM-MIB::extremeCurrentTemperature + num_oid: '.1.3.6.1.4.1.1916.1.1.1.8.{{ $index }}' + descr: 'Chassis Temperature' + index: 1 + high_limit: 65 + warn_limit: 55 + low_warn_limit: 15 + low_limit: 5 + power: + data: + - + oid: EXTREME-SYSTEM-MIB::extremeSystemPowerUsageValue + num_oid: '.1.3.6.1.4.1.1916.1.1.1.40.1.{{ $index }}' + descr: 'Power Usage' + index: 1 + divisor: 1000 + fanspeed: + data: + - + oid: EXTREME-SYSTEM-MIB::extremeFanStatusTable + value: EXTREME-SYSTEM-MIB::extremeFanSpeed + num_oid: '.1.3.6.1.4.1.1916.1.1.1.9.1.4.{{ $index }}' + descr: 'Fan Speed {{ $EXTREME-SYSTEM-MIB::extremeFanNumber }}' + index: '{{ $index }}' + divisor: 1 diff --git a/priv/profiles/os_discovery/yunshan.yaml b/priv/profiles/os_discovery/yunshan.yaml new file mode 100644 index 00000000..15c60f9e --- /dev/null +++ b/priv/profiles/os_discovery/yunshan.yaml @@ -0,0 +1,588 @@ +mib: HUAWEI-WLAN-CONFIGURATION-MIB:HUAWEI-WAN-MIB:HUAWEI-ENTITY-EXTENT-MIB:HUAWEI-ENERGYMNGT-MIB:HUAWEI-STACK-MIB:HUAWEI-POE-MIB +modules: + os: + sysDescr_regex: '/\((?[^)]+) (?V[0-9]{3}R[0-9]{3}[0-9A-Z]+)/' + hardware: + - HUAWEI-ENTITY-EXTENT-MIB::hwEntityExtentMIB.6.5.0 + - HUAWEI-DEVICE-EXT-MIB::hwProductName.0 + - HUAWEI-MIB::hwDatacomm.183.1.25.1.5.1 + - HUAWEI-MIB::mlsr.20.1.1.1.3.0 + - HUAWEI-ENTITY-EXTENT-MIB::hwEntityBoardName.9 + serial: + - HUAWEI-DEVICE-EXT-MIB::hwDeviceEsn.0 + - ENTITY-MIB::entPhysicalSerialNum.9 + processors: + data: + - + oid: hwEntityStateEntry + value: hwEntityCpuUsage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5.{{ $index }}' + descr: '{{ $entPhysicalName }} Processor' + skip_values: + - + oid: hwEntityOperStatus + op: '!=' + value: 3 + - + oid: hwEntityCpuUsageThreshold + op: '=' + value: 0 + sensors: + additional_oids: + data: + - + oid: + - entPhysicalName + - hwEntityStateTable + - hwEntityAdminStatus + - hwPwrStatusTable + - hwStackPortTable + - hw3GTable + temperature: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalTemperature + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.5.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + skip_values: + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalTemperature + op: '<' + value: '-50' + - + oid: hwEntityOpticalTemperature + op: '>=' + value: '2147483646' + - + oid: hwEntityStateTable + value: hwEntityTemperature + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.11.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + skip_values: + - + oid: hwEntityTemperature + op: '=' + value: '0' + - + oid: hwEntityTemperature + op: '>=' + value: '2147483646' + - + oid: hwTemperatureThresholdTable + value: hwEntityTempValue + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.8.1.6.{{ $index }}' + descr: 'TempSensor {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + group: 'Slot-{{ $subindex0 }}' + warn_limit: hwEntityTempMinorAlmThreshold + high_limit: hwEntityTempMajorAlmThreshold + divisor: 1 + count: + data: + - + oid: hw3GTable + value: hw3GBER + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.47.{{ $index }}' + descr: 'Bit Error Rate' + index: '3GBER-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GUpBand + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.30.{{ $index }}' + descr: 'Upstream Bandwidth' + index: '3gup-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GDownBand + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.31.{{ $index }}' + descr: 'Downstream Bandwidth' + index: '3gdown-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GBytesRateSent + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.28.{{ $index }}' + descr: 'Upstream Cur. Speed (bytes/s)' + index: '3gupr-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GBytesRateReceived + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.29.{{ $index }}' + descr: 'Downstream Cur. Speed (bytes/s)' + index: '3gdownr-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + runtime: + data: + - + oid: hw3GTable + value: hw3GUpTime + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.55.{{ $index }}' + descr: 'Uptime' + divisor: 6000 + index: '3guptime-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + dbm: + data: + - + oid: hw3GTable + value: hw3GCurrentRSSI + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.35.{{ $index }}' + descr: 'RSSI' + index: 'rssi-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentLteRSRP + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.38.{{ $index }}' + descr: 'LTE RSRP' + index: 'rsrp-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentLteRSRQ + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.40.{{ $index }}' + descr: 'LTE RSRQ' + index: 'rsrq-{{ $index }}' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalRxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.8.{{ $index }}' + descr: '{{ $entPhysicalName }} Rx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'rx-{{ $index }}' + group: '{{ $entPhysicalName }}' + low_limit: hwEntityOpticalRxLowThreshold + low_warn_limit: hwEntityOpticalRxLowWarnThreshold + high_limit: hwEntityOpticalRxHighThreshold + warn_limit: hwEntityOpticalRxHighWarnThreshold + divisor: 100 + skip_values: + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalTxPower + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.9.{{ $index }}' + descr: '{{ $entPhysicalName }} Tx' + entPhysicalIndex: '{{ $index }}' + entPhysicalIndex_measured: ports + index: 'tx-{{ $index }}' + group: '{{ $entPhysicalName }}' + low_limit: hwEntityOpticalTxLowThreshold + low_warn_limit: hwEntityOpticalTxLowWarnThreshold + high_limit: hwEntityOpticalTxHighThreshold + warn_limit: hwEntityOpticalTxHighWarnThreshold + divisor: 100 + skip_values: + - + oid: hwEntityAdminStatus + op: '=' + value: 12 + voltage: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.6.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwEntityOpticalVoltage + op: '=' + value: '-1' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityStateTable + value: hwEntityVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.1.1.13.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwEntityVoltage + op: '=' + value: '0' + - + oid: hwEntityVoltage + op: '>=' + value: '2147483646' + - + oid: hwPwrStatusTable + value: hwEntityPwrVoltage + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.8.{{ $index }}' + descr: 'PWR{{ $index }}' + index: '{{ $index }}' + divisor: 1000 + - + oid: hwVoltageInfoTable + value: hwEntityVolCurValue + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.9.1.7.{{ $index }}' + descr: 'VoltSensor {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + group: 'Slot-{{ $subindex0 }}' + low_limit: hwEntityVolLowAlmFatal + low_warn_limit: hwEntityVolLowAlmMajor + warn_limit: hwEntityVolHighAlmMajor + high_limit: hwEntityVolHighAlmFatal + divisor: 1000 + current: + data: + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalBiasCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.7.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000000 + skip_values: + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-1' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalBiasCurrent + op: '<' + value: '1000' + - + oid: hwOpticalModuleInfoTable + value: hwEntityOpticalBiasCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.3.1.7.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwEntityOpticalBiasCurrent + op: '=' + value: '-1' + - + oid: hwEntityOpticalMode + op: '=' + value: '1' + - + oid: hwEntityOpticalBiasCurrent + op: '>=' + value: '1000' + - + oid: hwPwrStatusTable + value: hwEntityPwrCurrent + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.7.{{ $index }}' + descr: 'PWR{{ $index }}' + index: '{{ $index }}' + divisor: 1000 + power: + data: + - + oid: hwAveragePower + num_oid: '.1.3.6.1.4.1.2011.6.157.1.3.{{ $index }}' + descr: 'Average Power Consumption' + index: 0 + divisor: 1000 + - + oid: hwCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.1.6.{{ $index }}' + descr: 'Current Power Consumption' + index: 1 + divisor: 1000 + - + oid: hwBoardPowerMngtTable + value: hwBoardCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.2.1.1.4.{{ $index }}' + descr: '{{ $entPhysicalName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwBoardCurrentPower + op: '=' + value: '-1' + - + oid: entPhysicalName + op: '=' + value: '' + - + oid: hwBoardPowerMngtTable + value: hwBoardCurrentPower + num_oid: '.1.3.6.1.4.1.2011.6.157.2.1.1.4.{{ $index }}' + descr: '{{ $hwBoardType }} {{ $hwBoardName }}' + index: '{{ $index }}' + divisor: 1000 + skip_values: + - + oid: hwBoardCurrentPower + op: '=' + value: '-1' + - + oid: entPhysicalName + op: '!=' + value: '' + percent: + data: + - + oid: hwFanStatusTable + value: hwEntityFanSpeed + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.10.1.5.{{ $index }}' + descr: 'Slot {{ $subindex0 }} Fan {{ $subindex1 }} Speed' + state: + data: + - + oid: hwWlanClusterSynConfig + value: hwWlanClusterSynConfigScheduleEnable + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.5.4.{{ $index }}' + descr: 'Configuration Sync' + group: Redundancy + state_name: hwWlanClusterSynConfigScheduleEnable + states: + - { descr: disable, graph: 1, value: 1, generic: 3 } + - { descr: enable, graph: 1, value: 2, generic: 0 } + - + oid: hwWlanClusterACListInfoTable + value: hwWlanClusterACStatus + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.6.1.7.{{ $index }}' + descr: 'Current Redundancy Status' + group: Redundancy + state_name: hwWlanClusterACStatus + states: + - { descr: down, graph: 1, value: 1, generic: 2 } + - { descr: up, graph: 1, value: 2, generic: 0 } + - { descr: pskmismatch, graph: 1, value: 3, generic: 2 } + - { descr: vermismatch, graph: 1, value: 4, generic: 2 } + - { descr: cfgmismatch, graph: 1, value: 5, generic: 2 } + - { descr: devmismatch, graph: 1, value: 6, generic: 2 } + - { descr: initial, graph: 1, value: 7, generic: 3 } + - + oid: hwWlanClusterACListInfoTable + value: hwWlanClusterACRole + num_oid: '.1.3.6.1.4.1.2011.6.139.11.1.83.6.1.4.{{ $index }}' + descr: 'Peer Redundancy Role' + group: Redundancy + state_name: hwWlanClusterACRole + states: + - { descr: Master, graph: 1, value: 1, generic: 0 } + - { descr: Slave, graph: 1, value: 2, generic: 0 } + - { descr: Backup, graph: 1, value: 3, generic: 0 } + - + oid: hwFanStatusTable + value: hwEntityFanState + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.10.1.7.{{ $index }}' + descr: 'Slot {{ $subindex0 }} Fan {{ $subindex1 }} Status' + group: Fans + state_name: hwEntityFanState + states: + - { descr: Normal, graph: 1, value: 1, generic: 0 } + - { descr: Abnormal, graph: 1, value: 2, generic: 2 } + - + oid: hwStackMemberInfoTable + value: hwMemberStackRole + num_oid: '.1.3.6.1.4.1.2011.5.25.183.1.20.1.3.{{ $index }}' + descr: 'Unit {{ $index }} {{ $hwMemberStackDeviceType }} Status' + group: Stack + state_name: hwMemberStackRole + states: + - { descr: Master, graph: 1, value: 1, generic: 0 } + - { descr: Standby, graph: 1, value: 2, generic: 0 } + - { descr: Slave, graph: 1, value: 3, generic: 0 } + - + oid: hw3GTable + value: hw3GModemStatus + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.11.{{ $index }}' + descr: 'Current Modem Status' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GModemStatus + states: + - { descr: onLine, graph: 1, value: 1, generic: 0 } + - { descr: offLine, graph: 1, value: 4, generic: 2 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GCurrentNetworkConnection + index: 'netConn-{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.34.{{ $index }}' + descr: 'Current Network' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GCurrentNetworkConnection + states: + - { descr: '3G', graph: 1, value: 2, generic: 0 } + - { descr: 'LTE', graph: 1, value: 3, generic: 0 } + - { descr: 'Unknown', graph: 1, value: 7, generic: 3 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hw3GTable + value: hw3GConnectionStatus + index: 'netConnStatus-{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.241.1.2.1.1.53.{{ $index }}' + descr: 'Current Network Status' + group: 'Modem {{ $hw3GDeviceNumber }}, {{ $hw3GIMEI }}' + state_name: hw3GConnectionStatus + states: + - { descr: 'noService', graph: 1, value: 0, generic: 2 } + - { descr: 'emergency', graph: 1, value: 1, generic: 2 } + - { descr: 'serviceAvailable', graph: 1, value: 2, generic: 0 } + - { descr: 'regionEmergency', graph: 1, value: 3, generic: 2 } + - { descr: 'savingStatus', graph: 1, value: 4, generic: 3 } + skip_values: + - + oid: hw3GDeviceNumber + op: '=' + value: '' + - + oid: hw3GIMEI + op: '=' + value: '' + - + oid: hwVoltageInfoTable + value: hwEntityVolStatus + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.9.1.5.{{ $index }}' + group: 'Slot-{{ $subindex0 }}' + descr: 'VoltStatus {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + states: + - { descr: 'Normal', graph: 1, value: 1, generic: 0 } + - { descr: 'Minor', graph: 1, value: 2, generic: 1 } + - { descr: 'Major', graph: 1, value: 3, generic: 2 } + - { descr: 'Fatal', graph: 1, value: 4, generic: 2 } + - + oid: hwTemperatureThresholdTable + value: hwEntityTempStatus + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.8.1.5.{{ $index }}' + group: 'Slot-{{ $subindex0 }}' + descr: 'TempStatus {{ $subindex0 }}.{{ $subindex1 }}.{{ $subindex2 }}.{{ $subindex3 }}' + states: + - { descr: 'Normal', graph: 1, value: 1, generic: 0 } + - { descr: 'Minor', graph: 1, value: 2, generic: 1 } + - { descr: 'Major', graph: 1, value: 3, generic: 2 } + - { descr: 'Fatal', graph: 1, value: 4, generic: 2 } + - + oid: hwPwrStatusTable + value: hwEntityPwrState + index: '{{ $index }}' + num_oid: '.1.3.6.1.4.1.2011.5.25.31.1.1.18.1.6.{{ $index }}' + group: 'Power Supply' + descr: 'PWR{{ $index }}' + states: + - { descr: 'Supply', graph: 1, value: 1, generic: 0 } + - { descr: 'Not Supply', graph: 1, value: 2, generic: 2 } + - { descr: 'Sleep', graph: 1, value: 3, generic: 1 } + - { descr: 'Unknown', graph: 1, value: 4, generic: 3 } diff --git a/priv/profiles/os_discovery/zebra.yaml b/priv/profiles/os_discovery/zebra.yaml new file mode 100644 index 00000000..ef691ae7 --- /dev/null +++ b/priv/profiles/os_discovery/zebra.yaml @@ -0,0 +1,16 @@ +modules: + os: + hardware: + - ESI-MIB::genProductNumber.0 + - ZEBRA-QL-MIB::zql-device-product-name + serial: ESI-MIB::genSerialNumber.0 + version: ESI-MIB::genVersion.0 + sysDescr_regex: '/(?(wireless|wired))/i' + sensors: + count: + data: + - + oid: ZEBRA-QL-MIB::zql-odometer-total-print-length + num_oid: '.1.3.6.1.4.1.10642.200.17.3.{{ $index }}' + descr: 'Printed Length (life, INCHES)' + index: 'totalPrintLength.{{ $index }}' \ No newline at end of file diff --git a/priv/profiles/os_discovery/zenitel-alphacom.yaml b/priv/profiles/os_discovery/zenitel-alphacom.yaml new file mode 100644 index 00000000..c99f5973 --- /dev/null +++ b/priv/profiles/os_discovery/zenitel-alphacom.yaml @@ -0,0 +1,80 @@ +modules: + os: + hardware: .1.3.6.1.2.1.1.1.0 + hardware_regex: '/(?\w*\s\w*)\s(?\S*)\s.*/' + version: .1.3.6.1.2.1.1.1.0 + version_regex: '/(?\w*\s\w*)\s(?\S*)\s.*/' + sensors: + state: + data: + - + oid: ALPHACOM-MIB::nodeState + value: ALPHACOM-MIB::nodeState + num_oid: '.1.3.6.1.4.1.26122.1.1.1.{{ $index }}' + descr: 'Node State' + index: 'nodeState.{{ $index }}' + states: + - { descr: 'Disabled', graph: 1, value: 0, generic: 2 } + - { descr: 'Enabled', graph: 1, value: 1, generic: 0 } + + runtime: + data: + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpStreamTime + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.4.{{ $index }}' + descr: 'RTP Stream Time' + index: 'rtpStreamTime.{{ $index }}' + divisor: 60 + group: 'RTP Stream {{ $index }}' + count: + data: + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpConnectons + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.5.{{ $index }}' + descr: 'Number of Connections' + index: 'rtpConnectons.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpTxPackets + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.6.{{ $index }}' + descr: 'Tx Packets' + index: 'rtpTxPackets.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpRxPackets + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.7.{{ $index }}' + descr: 'Rx Packets' + index: 'rtpRxPackets.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpRxLate + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.8.{{ $index }}' + descr: 'Rx Late Packets' + index: 'rtpRxLate.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpRxLost + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.9.{{ $index }}' + descr: 'Rx Lost Packets' + index: 'rtpRxLost.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpJitter + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.10.{{ $index }}' + descr: 'Average Jitter in ms' + index: 'rtpJitter.{{ $index }}' + group: 'RTP Stream {{ $index }}' + - + oid: ALPHACOM-MIB::rtpStatisticsTable + value: ALPHACOM-MIB::rtpDelay + num_oid: '.1.3.6.1.4.1.26122.1.2.1.1.11.{{ $index }}' + descr: 'Average Delay in ms' + index: 'rtpDelay.{{ $index }}' + group: 'RTP Stream {{ $index }}' diff --git a/priv/profiles/os_discovery/zenitel-vsdevice.yaml b/priv/profiles/os_discovery/zenitel-vsdevice.yaml new file mode 100644 index 00000000..9c145782 --- /dev/null +++ b/priv/profiles/os_discovery/zenitel-vsdevice.yaml @@ -0,0 +1,251 @@ +modules: + os: + hardware: + - VS-DEVICE-MIB::infoModelType.0 + - VS-DEVICE-MIB::infoModelNumber.0 + hardware_template: '{{ VS-DEVICE-MIB::infoModelType.0 }} ({{ VS-DEVICE-MIB::infoModelNumber.0 }})' + version: VS-DEVICE-MIB::infoKernelVersion.0 + features: VS-DEVICE-MIB::infoPackageVersion.0 + sensors: + temperature: + data: + - + oid: VS-DEVICE-MIB::tempTable + value: VS-DEVICE-MIB::tempCurrentValue + num_oid: '.1.3.6.1.4.1.26122.3.2.2.1.4.{{ $index }}' + descr: '{{VS-DEVICE-MIB::tempSensorName}} {{ $index }}' + index: 'tempCurrentValue.{{ $index }}' + fanspeed: + data: + - + oid: VS-DEVICE-MIB::fanTable + value: VS-DEVICE-MIB::fanValue + num_oid: '.1.3.6.1.4.1.26122.3.3.2.1.3.{{ $index }}' + descr: '{{VS-DEVICE-MIB::fanString}} {{ $index }}' + index: 'fanValue.{{ $index }}' + voltage: + data: + - + oid: VS-DEVICE-MIB::voltageTable + value: VS-DEVICE-MIB::voltageValue + num_oid: '.1.3.6.1.4.1.26122.3.4.2.1.3.{{ $index }}' + descr: '{{VS-DEVICE-MIB::voltageString}} {{ $index }}' + index: 'voltageValue.{{ $index }}' + state: + data: + - + oid: VS-DEVICE-MIB::infoDisablement + value: VS-DEVICE-MIB::infoDisablement + num_oid: '.1.3.6.1.4.1.26122.3.1.7.{{ $index }}' + descr: 'Device Status' + index: 'infoDisablement.{{ $index }}' + states: + - { descr: 'Offline', graph: 1, value: 1, generic: 3 } + - { descr: 'Online' , graph: 1, value: 2, generic: 0 } + - + oid: VS-DEVICE-MIB::powerTable + value: VS-DEVICE-MIB::powerType + num_oid: '.1.3.6.1.4.1.26122.3.5.1.1.2.{{ $index }}' + descr: 'Power Type' + index: 'powerType.{{ $index }}' + group: '{{ VS-DEVICE-MIB::powerString }} {{ $index }}' + state_name: powerType + states: + - { descr: 'Unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'ACPower' , graph: 1, value: 2, generic: 0 } + - { descr: 'DCPower' , graph: 1, value: 3, generic: 0 } + - { descr: 'POEPower' , graph: 1, value: 4, generic: 0 } + - + oid: VS-DEVICE-MIB::powerTable + value: VS-DEVICE-MIB::powerMonitoring + num_oid: '.1.3.6.1.4.1.26122.3.5.1.1.4.{{ $index }}' + descr: 'Power Monitoring' + index: 'powerMonitoring.{{ $index }}' + group: '{{ VS-DEVICE-MIB::powerString }} {{ $index }}' + state_name: powerMonitoring + states: + - { descr: 'Unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'NotMonitored', graph: 1, value: 2, generic: 0 } + - { descr: 'Monitored' , graph: 1, value: 3, generic: 0 } + - + oid: VS-DEVICE-MIB::powerTable + value: VS-DEVICE-MIB::powerStatus + num_oid: '.1.3.6.1.4.1.26122.3.5.1.1.5.{{ $index }}' + descr: 'Power Status' + index: 'powerStatus.{{ $index }}' + group: '{{ VS-DEVICE-MIB::powerString }} {{ $index }}' + state_name: powerStatus + states: + - { descr: 'Unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'NotConnected', graph: 1, value: 2, generic: 0 } + - { descr: 'Connected' , graph: 1, value: 3, generic: 0 } + - + oid: VS-DEVICE-MIB::ethMonitoringTable + value: VS-DEVICE-MIB::ethMonitoringState + num_oid: '.1.3.6.1.4.1.26122.3.11.1.1.3.{{ $index }}' + descr: '{{ VS-DEVICE-MIB::ethMonitoringString }}' + index: 'ethMonitoringState.{{ $index }}' + group: 'Ethernet Monitoring' + state_name: ethMonitoringState + states: + - { descr: 'Unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'NotMonitored', graph: 1, value: 2, generic: 0 } + - { descr: 'Monitored', graph: 1, value: 3, generic: 0 } + - + oid: VS-DEVICE-MIB::lineInTable + value: VS-DEVICE-MIB::lineInStatus + num_oid: '.1.3.6.1.4.1.26122.3.6.1.1.5.{{ $index }}' + descr: 'LineIn Status' + index: 'lineInStatus.{{ $index }}' + group: '{{ VS-DEVICE-MIB::lineInString }} {{ $index }}' + state_name: lineInStatus + states: + - { descr: 'Unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'lineInOk', graph: 1, value: 2, generic: 0 } + - { descr: 'lineInFail', graph: 1, value: 3, generic: 2 } + - { descr: 'microphoneUnknown', graph: 1, value: 4, generic: 3 } + - { descr: 'microphoneConnected', graph: 1, value: 5, generic: 0 } + - { descr: 'microphoneDisconnected', graph: 1, value: 6, generic: 1 } + - { descr: 'microphoneShorted', graph: 1, value: 7, generic: 2 } + - + oid: VS-DEVICE-MIB::lineInTable + value: VS-DEVICE-MIB::lineInMonitoringState + num_oid: '.1.3.6.1.4.1.26122.3.6.1.1.2.{{ $index }}' + descr: 'Monitoring State' + index: 'lineInMonitoringState.{{ $index }}' + group: '{{ VS-DEVICE-MIB::lineInString }} {{ $index }}' + state_name: lineInMonitoringState + states: + - { descr: 'Unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'lineInOk', graph: 1, value: 2, generic: 0 } + - { descr: 'lineInFail', graph: 1, value: 3, generic: 2 } + - { descr: 'microphoneUnknown', graph: 1, value: 4, generic: 3 } + - { descr: 'microphoneConnected', graph: 1, value: 5, generic: 0 } + - { descr: 'microphoneDisconnected', graph: 1, value: 6, generic: 1 } + - { descr: 'microphoneShorted', graph: 1, value: 7, generic: 2 } + - + oid: VS-DEVICE-MIB::ampChannelTable + value: VS-DEVICE-MIB::ampChannelStatus + num_oid: '.1.3.6.1.4.1.26122.3.7.3.1.3.{{ $index }}' + descr: 'Amp Status' + index: 'ampChannelStatus.{{ $index }}' + group: '{{ VS-DEVICE-MIB::ampChannelString }} {{ $index }}' + state_name: ampChannelStatus + states: + - { descr: 'unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'notOperative', graph: 1, value: 2, generic: 0 } + - { descr: 'channelOk', graph: 1, value: 3, generic: 2 } + - { descr: 'channelFail', graph: 1, value: 4, generic: 3 } + - { descr: 'channelShutdown', graph: 1, value: 5, generic: 0 } + - { descr: 'channelGracefulDegradation', graph: 1, value: 6, generic: 1 } + - + oid: VS-DEVICE-MIB::ampChannelTable + value: VS-DEVICE-MIB::ampChannelMonitorStatus + num_oid: '.1.3.6.1.4.1.26122.3.7.3.1.4.{{ $index }}' + descr: 'Monitor Status' + index: 'ampChannelMonitorStatus.{{ $index }}' + group: '{{ VS-DEVICE-MIB::ampChannelString }} {{ $index }}' + state_name: ampChannelMonitorStatus + states: + - { descr: 'unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'channelOk', graph: 1, value: 2, generic: 0 } + - { descr: 'channelShorted', graph: 1, value: 3, generic: 2 } + - { descr: 'channelOpen', graph: 1, value: 4, generic: 2 } + - { descr: 'channelLoadChange', graph: 1, value: 5, generic: 0 } + - { descr: 'channelGroundFault', graph: 1, value: 6, generic: 2 } + - { descr: 'channelRefreshing', graph: 1, value: 7, generic: 0 } + - { descr: 'channelShutdown', graph: 1, value: 8, generic: 2 } + - { descr: 'channelVoltageLow', graph: 1, value: 9, generic: 1 } + - { descr: 'channelIndecisive', graph: 1, value: 10, generic: 1 } + - { descr: 'channelInterrupted', graph: 1, value: 11, generic: 2 } + - { descr: 'channelTimeoutFail', graph: 1, value: 12, generic: 1 } + - { descr: 'channelMonitoringReceiveError', graph: 1, value: 13, generic: 1 } + - { descr: 'channelMonitoringSuspended', graph: 1, value: 14, generic: 1 } + - { descr: 'channelLineFault', graph: 1, value: 15, generic: 3 } + - + oid: VS-DEVICE-MIB::controlInputTable + value: VS-DEVICE-MIB::controlInputStatus + num_oid: '.1.3.6.1.4.1.26122.3.9.2.1.3.{{ $index }}' + descr: 'Input Status' + index: 'controlInputStatus.{{ $index }}' + group: 'Control Input {{ $index }}' + state_name: controlInputStatus + states: + - { descr: 'unknown', graph: 1, value: 1, generic: 3 } + - { descr: 'open', graph: 1, value: 2, generic: 0 } + - { descr: 'closed', graph: 1, value: 3, generic: 0 } + - { descr: 'failShorted', graph: 1, value: 4, generic: 0 } + - { descr: 'failOpen', graph: 1, value: 5, generic: 0 } + - + oid: VS-DEVICE-MIB::controlInputTable + value: VS-DEVICE-MIB::controlInputMonitored + num_oid: '.1.3.6.1.4.1.26122.3.9.2.1.4.{{ $index }}' + descr: 'Input Monitored' + index: 'controlInputMonitored.{{ $index }}' + group: 'Control Input {{ $index }}' + state_name: controlInputMonitored + states: + - { descr: 'notMonitored' , graph: 1, value: 1, generic: 3 } + - { descr: 'monitored' , graph: 1, value: 2, generic: 0 } + - + oid: VS-DEVICE-MIB::controlOutputTable + value: VS-DEVICE-MIB::controlOutputStatus + num_oid: '.1.3.6.1.4.1.26122.3.10.2.1.3.{{ $index }}' + descr: 'Output {{ $index }}' + index: 'controlOutputStatus.{{ $index }}' + group: 'Output Status' + state_name: controlOutputStatus + states: + - { descr: 'unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'notActive' , graph: 1, value: 2, generic: 0 } + - { descr: 'active' , graph: 1, value: 3, generic: 0 } + - { descr: 'failNotActive', graph: 1, value: 4, generic: 0 } + - { descr: 'failActive' , graph: 1, value: 5, generic: 0 } + - + oid: VS-DEVICE-MIB::relayTable + value: VS-DEVICE-MIB::relayState + num_oid: '.1.3.6.1.4.1.26122.3.12.1.1.5.{{ $index }}' + descr: 'State' + index: 'relayState.{{ $index }}' + group: '{{ VS-DEVICE-MIB::relayString }}' + state_name: relayState + states: + - { descr: 'unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'notActive' , graph: 1, value: 2, generic: 0 } + - { descr: 'active' , graph: 1, value: 3, generic: 0 } + - + oid: VS-DEVICE-MIB::relayTable + value: VS-DEVICE-MIB::relayIdleMode + num_oid: '.1.3.6.1.4.1.26122.3.12.1.1.3.{{ $index }}' + descr: 'Idle Mode' + index: 'relayIdleMode.{{ $index }}' + group: '{{ VS-DEVICE-MIB::relayString }}' + state_name: relayIdleMode + states: + - { descr: 'unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'normallyClosed' , graph: 1, value: 2, generic: 0 } + - { descr: 'normallyOpen' , graph: 1, value: 3, generic: 0 } + - + oid: VS-DEVICE-MIB::letChannel1Table + value: VS-DEVICE-MIB::letChannel1OperativeStatus + num_oid: '.1.3.6.1.4.1.26122.3.8.1.2.1.3.{{ $index }}' + descr: 'LetChannel 1 Status {{ $index }}' + index: 'letChannel1OperativeStatus.{{ $index }}' + state_name: letChannel1OperativeStatus + states: + - { descr: 'unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'notEnabled' , graph: 1, value: 2, generic: 1 } + - { descr: 'failed' , graph: 1, value: 3, generic: 2 } + - { descr: 'ok' , graph: 1, value: 4, generic: 0 } + - + oid: VS-DEVICE-MIB::letChannel2Table + value: VS-DEVICE-MIB::letChannel2OperativeStatus + num_oid: '.1.3.6.1.4.1.26122.3.8.2.2.1.3.{{ $index }}' + descr: 'LetChannel 2 Status {{ $index }}' + index: 'letChannel2OperativeStatus.{{ $index }}' + state_name: letChannel2OperativeStatus + states: + - { descr: 'unknown' , graph: 1, value: 1, generic: 3 } + - { descr: 'notEnabled' , graph: 1, value: 2, generic: 1 } + - { descr: 'failed' , graph: 1, value: 3, generic: 2 } + - { descr: 'ok' , graph: 1, value: 4, generic: 0 } diff --git a/priv/profiles/os_discovery/zmtel.yaml b/priv/profiles/os_discovery/zmtel.yaml new file mode 100644 index 00000000..b0c2c625 --- /dev/null +++ b/priv/profiles/os_discovery/zmtel.yaml @@ -0,0 +1,194 @@ +mib: ZMTEL-ODU-MIB +modules: + os: + features: + - ZMTEL-ODU-MIB::eNBID.0 + - ZMTEL-ODU-MIB::pCID.0 + - ZMTEL-ODU-MIB::dlMCS.0 + - ZMTEL-ODU-MIB::ulMCS.0 + - ZMTEL-ODU-MIB::bootROM.0 + - ZMTEL-ODU-MIB::lteBand.0 + features_template: 'eNodeB: {{ ZMTEL-ODU-MIB::eNBID.0 }} Physical Cell: {{ ZMTEL-ODU-MIB::pCID.0 }} DL Modulation: {{ ZMTEL-ODU-MIB::dlMCS.0 }} UL Modulation: {{ ZMTEL-ODU-MIB::ulMCS.0 }} bootROM: {{ ZMTEL-ODU-MIB::bootROM.0 }} LTE Band: {{ ZMTEL-ODU-MIB::lteBand.0 }}' + hardware: + - ZMTEL-ODU-MIB::modelName.0 + - ZMTEL-ODU-MIB::hardwareVersion.0 + hardware_template: '{{ ZMTEL-ODU-MIB::modelName.0 }} {{ ZMTEL-ODU-MIB::hardwareVersion.0 }}' + serial: ZMTEL-ODU-MIB::SN.0 + version: ZMTEL-ODU-MIB::softwareVersion.0 + sensors: + count: + data: + - + oid: pCID + num_oid: '.1.3.6.1.4.1.38595.10.3.19.{{ $index }}' + descr: Physical Cell ID + index: 'pCID.{{ $index }}' + snr: + data: + - + oid: sinr + num_oid: '.1.3.6.1.4.1.38595.10.3.15.{{ $index }}' + descr: Signal to Interference + index: 'sinr.{{ $index }}' + - + oid: cinr0 + num_oid: '.1.3.6.1.4.1.38595.10.3.16.{{ $index }}' + descr: Carrier to Interference 0 + index: 'cinr0.{{ $index }}' + - + oid: cinr1 + num_oid: '.1.3.6.1.4.1.38595.10.3.17.{{ $index }}' + descr: Carrier to Interference 1 + index: 'cinr1.{{ $index }}' + frequency: + data: + - + oid: dlFrequency + num_oid: '.1.3.6.1.4.1.38595.10.3.8.{{ $index }}' + descr: Download + index: 'dlFrequency.{{ $index }}' + - + oid: ulFrequency + num_oid: '.1.3.6.1.4.1.38595.10.3.9.{{ $index }}' + descr: Upload + index: 'ulFrequency.{{ $index }}' + - + oid: bandwidth + num_oid: '.1.3.6.1.4.1.38595.10.3.10.{{ $index }}' + descr: Bandwidth + index: 'bandwidth.{{ $index }}' + dbm: + data: + - + oid: rsrp0 + num_oid: '.1.3.6.1.4.1.38595.10.3.11.{{ $index }}' + descr: RSRP0 + index: 'rsrp0.{{ $index }}' + group: Reference Signal Received Power + - + oid: rsrp1 + num_oid: '.1.3.6.1.4.1.38595.10.3.12.{{ $index }}' + descr: RSRP1 + index: 'rsrp1.{{ $index }}' + group: Reference Signal Received Power + - + oid: rsrq + num_oid: '.1.3.6.1.4.1.38595.10.3.13.{{ $index }}' + descr: Reference Signal Received Quality + index: 'rsrq.{{ $index }}' + - + oid: rssi + num_oid: '.1.3.6.1.4.1.38595.10.3.14.{{ $index }}' + descr: Received Signal Strength Indicator + index: 'rssi.{{ $index }}' + - + oid: txPower + num_oid: '.1.3.6.1.4.1.38595.10.3.18.{{ $index }}' + descr: Tx Power + index: 'txPower.{{ $index }}' + state: + data: + - + oid: wanMode + num_oid: '.1.3.6.1.4.1.38595.10.4.1.{{ $index }}' + index: 'wanMode.{{ $index }}' + descr: WAN Mode + state_name: wanMode + states: + - { value: 0, descr: NAT, graph: 0, generic: 0 } + - { value: 1, descr: Router, graph: 0, generic: 0 } + - { value: 2, descr: Router, graph: 0, generic: 0 } + - + oid: wanType + num_oid: '.1.3.6.1.4.1.38595.10.4.2.{{ $index }}' + index: 'wanType.{{ $index }}' + descr: WAN type + state_name: wanType + states: + - { value: 0, descr: DHCP, graph: 0, generic: 0 } + - { value: 1, descr: Static, graph: 0, generic: 0 } + - + oid: firewall + num_oid: '.1.3.6.1.4.1.38595.10.2.9.{{ $index }}' + index: 'firewall.{{ $index }}' + descr: Firewall Status + state_name: firewall + states: + - { value: 0, descr: disabled, graph: 0, generic: 2 } + - { value: 1, descr: enabled, graph: 0, generic: 0 } + - + oid: dlMCS + num_oid: '.1.3.6.1.4.1.38595.10.3.6.{{ $index }}' + index: 'dlMCS.{{ $index }}' + descr: Download + state_name: dlMCS + group: Modulation Scheme + states: + - { value: 0, descr: mcs0-qpsk-tbs0, graph: 1, generic: 0 } + - { value: 1, descr: mcs1-qpsk-tbs1, graph: 1, generic: 0 } + - { value: 2, descr: mcs2-qpsk-tbs2, graph: 1, generic: 0 } + - { value: 3, descr: mcs3-qpsk-tbs3, graph: 1, generic: 0 } + - { value: 4, descr: mcs4-qpsk-tbs4, graph: 1, generic: 0 } + - { value: 5, descr: mcs5-qpsk-tbs5, graph: 1, generic: 0 } + - { value: 6, descr: mcs6-qpsk-tbs6, graph: 1, generic: 0 } + - { value: 7, descr: mcs7-qpsk-tbs7, graph: 1, generic: 0 } + - { value: 8, descr: mcs8-qpsk-tbs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9-qpsk-tbs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10-16qam-tbs9, graph: 1, generic: 0 } + - { value: 11, descr: mcs11-16qam-tbs10, graph: 1, generic: 0 } + - { value: 12, descr: mcs12-16qam-tbs11, graph: 1, generic: 0 } + - { value: 13, descr: mcs13-16qam-tbs12, graph: 1, generic: 0 } + - { value: 14, descr: mcs14-16qam-tbs13, graph: 1, generic: 0 } + - { value: 15, descr: mcs15-16qam-tbs14, graph: 1, generic: 0 } + - { value: 16, descr: mcs16-16qam-tbs15, graph: 1, generic: 0 } + - { value: 17, descr: mcs17-64qam-tbs15, graph: 1, generic: 0 } + - { value: 19, descr: mcs19-64qam-tbs17, graph: 1, generic: 0 } + - { value: 21, descr: mcs21-64qam-tbs19, graph: 1, generic: 0 } + - { value: 22, descr: mcs22-64qam-tbs20, graph: 1, generic: 0 } + - { value: 23, descr: mcs23-64qam-tbs21, graph: 1, generic: 0 } + - { value: 24, descr: mcs24-64qam-tbs22, graph: 1, generic: 0 } + - { value: 25, descr: mcs25-64qam-tbs23, graph: 1, generic: 0 } + - { value: 26, descr: mcs26-64qam-tbs24, graph: 1, generic: 0 } + - { value: 27, descr: mcs27-64qam-tbs25, graph: 1, generic: 0 } + - { value: 28, descr: mcs28-64qam-tbs26, graph: 1, generic: 0 } + - { value: 29, descr: mcs29-qpsk-reserved, graph: 1, generic: 0 } + - { value: 30, descr: mcs30-16qam-reserved, graph: 1, generic: 0 } + - { value: 31, descr: mcs31-64qam-reserved, graph: 1, generic: 0 } + - + oid: ulMCS + num_oid: '.1.3.6.1.4.1.38595.10.3.7.{{ $index }}' + index: 'ulMCS.{{ $index }}' + descr: Upload + state_name: ulMCS + group: Modulation Scheme + states: + - { value: 0, descr: mcs0-qpsk-tbs0, graph: 1, generic: 0 } + - { value: 1, descr: mcs1-qpsk-tbs1, graph: 1, generic: 0 } + - { value: 2, descr: mcs2-qpsk-tbs2, graph: 1, generic: 0 } + - { value: 3, descr: mcs3-qpsk-tbs3, graph: 1, generic: 0 } + - { value: 4, descr: mcs4-qpsk-tbs4, graph: 1, generic: 0 } + - { value: 5, descr: mcs5-qpsk-tbs5, graph: 1, generic: 0 } + - { value: 6, descr: mcs6-qpsk-tbs6, graph: 1, generic: 0 } + - { value: 7, descr: mcs7-qpsk-tbs7, graph: 1, generic: 0 } + - { value: 8, descr: mcs8-qpsk-tbs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9-qpsk-tbs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10-16qam-tbs9, graph: 1, generic: 0 } + - { value: 11, descr: mcs11-16qam-tbs10, graph: 1, generic: 0 } + - { value: 12, descr: mcs12-16qam-tbs11, graph: 1, generic: 0 } + - { value: 13, descr: mcs13-16qam-tbs12, graph: 1, generic: 0 } + - { value: 14, descr: mcs14-16qam-tbs13, graph: 1, generic: 0 } + - { value: 15, descr: mcs15-16qam-tbs14, graph: 1, generic: 0 } + - { value: 16, descr: mcs16-16qam-tbs15, graph: 1, generic: 0 } + - { value: 17, descr: mcs17-64qam-tbs15, graph: 1, generic: 0 } + - { value: 19, descr: mcs19-64qam-tbs17, graph: 1, generic: 0 } + - { value: 21, descr: mcs21-64qam-tbs19, graph: 1, generic: 0 } + - { value: 22, descr: mcs22-64qam-tbs20, graph: 1, generic: 0 } + - { value: 23, descr: mcs23-64qam-tbs21, graph: 1, generic: 0 } + - { value: 24, descr: mcs24-64qam-tbs22, graph: 1, generic: 0 } + - { value: 25, descr: mcs25-64qam-tbs23, graph: 1, generic: 0 } + - { value: 26, descr: mcs26-64qam-tbs24, graph: 1, generic: 0 } + - { value: 27, descr: mcs27-64qam-tbs25, graph: 1, generic: 0 } + - { value: 28, descr: mcs28-64qam-tbs26, graph: 1, generic: 0 } + - { value: 29, descr: mcs29-qpsk-reserved, graph: 1, generic: 0 } + - { value: 30, descr: mcs30-16qam-reserved, graph: 1, generic: 0 } + - { value: 31, descr: mcs31-64qam-reserved, graph: 1, generic: 0 } diff --git a/priv/profiles/os_discovery/zxa10.yaml b/priv/profiles/os_discovery/zxa10.yaml new file mode 100644 index 00000000..58db0d50 --- /dev/null +++ b/priv/profiles/os_discovery/zxa10.yaml @@ -0,0 +1,119 @@ +mib: ZTE-AN-SMI:ZTE-AN-CHASSIS-MIB:ZTE-AN-ENVMON-MIB:ZTE-AN-OPTICAL-MODULE-MIB +modules: + mempools: + additional_oids: + oids: + - ZTE-AN-CHASSIS-MIB::zxAnCardActualType + data: + - + total: ZTE-AN-CHASSIS-MIB::zxAnCardMemSize + percent_used: ZTE-AN-CHASSIS-MIB::zxAnCardMemUsage + descr: 'Card {{ ZTE-AN-CHASSIS-MIB::zxAnCardActualType }}' + skip_values: + - + oid: ZTE-AN-CHASSIS-MIB::zxAnCardMemUsage + op: '=' + value: 0 + processors: + data: + - + oid: zxAnCardTable + value: zxAnCardCpuLoad + num_oid: '.1.3.6.1.4.1.3902.1082.10.1.2.4.1.9.{{ $index }}' + descr: '{{ $zxAnCardActualType }} Processor' + sensors: + additional_oids: + data: + - + oid: + - zxAnCardActualType + - zxAnEnvRack + - zxAnEnvShelf + - zxAnEnvSlot + temperature: + data: + - + oid: zxAnCardEnvParamTable + value: zxAnCardTemp + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.1.6.1.2.{{ $index }}' + descr: "Temp Card {{ $zxAnCardActualType }}" + fanspeed: + data: + - + oid: zxAnEnvFanTable + value: zxAnEnvFanActualSpeed + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.4.11.1.7.{{ $index }}' + descr: "Fan speed Slot {{ $subindex2 }}" + low_limit: 0 + + voltage: + data: + - + oid: zxAnPowerSupplyTable + value: zxAnPowerSupplyInVoltage + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.3.11.1.2.{{ $index }}' + descr: "DC Input Slot {{ $subindex2 }}" + skip_value_lt: 1 + - + oid: zxAnCardEnvParamTable + value: zxAnCardVoltage + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.1.6.1.4.{{ $index }}' + descr: "Voltage Card {{ $zxAnCardActualType }}" + skip_value_lt: 1 + divisor: 1000 + + power: + data: + - + oid: zxAnCardEnvParamTable + value: zxAnCardPowerConsumption + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.1.6.1.3.{{ $index }}' + descr: "Power Consumption Card {{ $zxAnCardActualType }}" + skip_value_lt: 1 + divisor: 1000 + current: + data: + - + oid: zxAnCardEnvParamTable + value: zxAnCardCurrent + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.1.6.1.5.{{ $index }}' + descr: "Current Card {{ $zxAnCardActualType }}" + skip_value_lt: 1 + divisor: 1000 + + state: + data: + - + oid: zxAnEnvFanTable + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.4.11.1.5.{{ $index }}' + index: 'zxAnEnvFanOperStatus.{{ $index }}' + descr: "Fan speed Slot {{ $index }} Oper Status" + group: Fans + state_name: zxAnEnvFanOperStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'up' } + - { value: 2, generic: 1, graph: 0, descr: 'down' } + - { value: 3, generic: 2, graph: 0, descr: 'unknown' } + - + oid: zxAnEnvFanTable + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.4.11.1.6.{{ $index }}' + index: 'zxAnEnvFanOnlineStatus.{{ $index }}' + descr: "Fan speed Slot {{ $index }} Online Status" + group: Fans + state_name: zxAnEnvFanOnlineStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'online' } + - { value: 2, generic: 1, graph: 0, descr: 'offline' } + - { value: 3, generic: 2, graph: 0, descr: 'unknown' } + - + oid: zxAnPowerSupplyTable + num_oid: '.1.3.6.1.4.1.3902.1082.10.10.2.3.11.1.3.{{ $index }}' + index: 'zxAnPowerSupplyInVoltageStatus.{{ $index }}' + descr: "Power Supply {{ $index }} Status" + group: Power + state_name: zxAnPowerSupplyInVoltageStatus + states: + - { value: 1, generic: 0, graph: 0, descr: 'normal' } + - { value: 2, generic: 1, graph: 0, descr: 'overVoltage' } + - { value: 3, generic: 1, graph: 0, descr: 'underVoltage' } + - { value: 4, generic: 2, graph: 0, descr: 'off' } diff --git a/priv/profiles/os_discovery/zxdsl.yaml b/priv/profiles/os_discovery/zxdsl.yaml new file mode 100644 index 00000000..fe60cdb5 --- /dev/null +++ b/priv/profiles/os_discovery/zxdsl.yaml @@ -0,0 +1,3 @@ +modules: + os: + sysDescr_regex: '/Version V(?\S+) \S+ (?\S+)/' diff --git a/priv/profiles/os_discovery/zxr10.yaml b/priv/profiles/os_discovery/zxr10.yaml new file mode 100644 index 00000000..7c5c5e45 --- /dev/null +++ b/priv/profiles/os_discovery/zxr10.yaml @@ -0,0 +1,17 @@ +mib: ZXR10-MIB +modules: + os: + sysDescr_regex: + - '/ZXR10 (?.*),( ZTE ZXR10 Software)? Version: (?.*)/' + - '/ZXR10 (?.*) Software, 5900 Version: (?.*),/' + - '/ZXR10_(?.*) Software, Version ZXR10 5900 (?\S*) /' + mempools: + data: + - + total: ZXR10-MIB::zxr10SystemMemSize + percent_used: ZXR10-MIB::zxr10SystemMemUsed + processors: + data: + - + oid: zxr10SystemCpuUtility5m + num_oid: '.1.3.6.1.4.1.3902.3.3.1.1.12.{{ $index }}' diff --git a/priv/profiles/os_discovery/zynos.yaml b/priv/profiles/os_discovery/zynos.yaml new file mode 100644 index 00000000..3ccf6bbe --- /dev/null +++ b/priv/profiles/os_discovery/zynos.yaml @@ -0,0 +1,231 @@ +mib: ZYXEL-ES-COMMON:ZYXEL-HW-MONITOR-MIB:ZYXEL-MGS3712-MIB:ZYXEL-TRANSCEIVER-MIB:ZYXEL-STACKING-MIB:POWER-ETHERNET-MIB +modules: + mempools: + data: + - + percent_used: ZYXEL-ES-COMMON::sysMgmtMemUsage + type: zyxel + processors: + data: + - + oid: ZYXEL-GS4012F-MIB::sysMgmtCPUUsage + value: sysMgmtCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.5.8.20.12.7.{{ $index }}' + - + oid: ZYXEL-GS2200-24-MIB::sysMgmtCPUUsage + value: sysMgmtCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.5.8.55.12.7.{{ $index }}' + - + oid: ZYXEL-MGS3712-MIB::sysMgmtCPUUsage + value: sysMgmtCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.11.7.{{ $index }}' + - + oid: sysMgmtCPU5SecUsage + num_oid: '.1.3.6.1.4.1.890.1.15.3.2.7.{{ $index }}' + sensors: + state: + data: + - + oid: zyxelStackingSlotInfoTable + value: zyStackingSlotInfoRole + num_oid: '.1.3.6.1.4.1.890.1.15.3.97.2.1.1.5.{{ $index }}' + descr: 'Switch {{ $index }} Stacking Role' + group: Switch Role + index: 'zyStackingSlotInfoRole.{{ $index }}' + state_name: zyStackingSlotInfoRole + states: + - { value: 1, generic: 0, graph: 0, descr: master } + - { value: 2, generic: 0, graph: 0, descr: backup } + - { value: 3, generic: 0, graph: 0, descr: linecard } + - { value: 0, generic: 3, graph: 0, descr: none } + skip_values: + - + oid: zyStackingSlotInfoStackingStatus + op: '==' + value: '0' + - + oid: zyxelStackingSlotChannelInfoTable + value: zyStackingSlotChannelInfoNeighbor + num_oid: '.1.3.6.1.4.1.890.1.15.3.97.2.2.1.5.{{ $index }}' + descr: 'Switch {{ $subindex0 }} Port {{ $subindex1 }} Neighbor' + group: Stacking Neighbor + index: 'zyStackingSlotChannelInfoNeighbor.{{ $index }}' + state_name: zyStackingSlotChannelInfoNeighbor + states: + - { value: 1, generic: 0, graph: 0, descr: 'Switch 1' } + - { value: 2, generic: 0, graph: 0, descr: 'Switch 2' } + - { value: 3, generic: 0, graph: 0, descr: 'Switch 3' } + - { value: 4, generic: 0, graph: 0, descr: 'Switch 4' } + - { value: 0, generic: 3, graph: 0, descr: none } + - + oid: zyStackingTopology + value: zyStackingTopology + num_oid: '.1.3.6.1.4.1.890.1.15.3.97.2.3.{{ $index }}' + descr: 'Stacking Topology' + group: Stacking Topology + index: 'zyStackingTopology.{{ $index }}' + state_name: zyStackingTopology + states: + - { value: 1, generic: 1, graph: 0, descr: chain } + - { value: 2, generic: 0, graph: 0, descr: ring } + - { value: 0, generic: 3, graph: 0, descr: none } + fanspeed: + options: + skip_value_lt: 0 + data: + - + oid: zyxelHwMonitorFanRpmTable + value: zyHwMonitorFanRpmCurrentValue + num_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.1.1.3.{{ $index }}' + descr: 'Switch {{ $zyHwMonitorFanRpmDescription }}' + index: 'zyHwMonitorFanRpmCurrentValue.{{ $index }}' + high_limit: zyHwMonitorFanRpmMaxValue + low_limit: zyHwMonitorFanRpmMinValue + low_warn_limit: zyHwMonitorFanRpmLowThreshold + - + oid: fanRpmTable + value: fanRpmCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.1.1.2.{{ $index }}' + descr: 'Fan {{ $index }} ({{ $fanRpmDescr }})' + index: 'fanRpmCurValue.{{ $index }}' + low_limit: fanRpmLowThresh + temperature: + data: + - + oid: zyxelHwMonitorTemperatureTable + value: zyHwMonitorTemperatureCurrentValue + num_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.2.1.3.{{ $index }}' + descr: 'Switch {{ $zyHwMonitorTemperatureDescription }}' + index: 'zyHwMonitorTemperatureCurrentValue.{{ $index }}' + high_limit: zyHwMonitorTemperatureMaxValue + low_limit: zyHwMonitorTemperatureMinValue + warn_limit: zyHwMonitorTemperatureHighThreshold + - + oid: tempTable + value: tempCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.2.1.2.{{ $index }}' + descr: 'Temp {{ $index }} ({{ $tempDescr }})' + index: 'tempCurValue.{{ $index }}' + high_limit: tempHighThresh + - + oid: transceiverDdmInfoTable + value: transceiverDdmInfoEntryCurrent + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.2.1.7.{{ $index }}' + descr: 'SFP ifIndex {{ $transceiverDdmInfoEntryPort }} {{ $transceiverDdmInfoEntryDescription }}' + index: 'transceiverDdmInfoEntryCurrent.{{ $index }}' + high_limit: transceiverDdmInfoEntryAlarmMax + low_limit: transceiverDdmInfoEntryAlarmMin + warn_limit: transceiverDdmInfoEntryWarnMax + low_warn_limit: transceiverDdmInfoEntryWarnMin + divisor: 100 + entPhysicalIndex: transceiverDdmInfoEntryPort + entPhysicalIndex_measured: ports + skip_values: + - + oid: transceiverDdmInfoEntryDescription + op: '!=' + value: 'Temperature' + dbm: + options: + divisor: 100 + data: + - + oid: zyxelTransceiverDdmiTable + value: zyTransceiverDdmiCurrent + num_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.2.1.6.{{ $index }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $subindex0 }} Tx Power' + index: 'zyTransceiverDdmiCurrent.{{ $index }}' + high_limit: zyTransceiverDdmiAlarmMax + low_limit: zyTransceiverDdmiAlarmMin + warn_limit: zyTransceiverDdmiWarnMax + low_warn_limit: zyTransceiverDdmiWarnMin + skip_values: + - + oid: zyTransceiverDdmiDescription + op: '!=' + value: 'TxPower' + - + oid: zyTransceiverDdmiCurrent + op: '==' + value: '0' + - + oid: zyxelTransceiverDdmiTable + value: zyTransceiverDdmiCurrent + num_oid: '.1.3.6.1.4.1.890.1.15.3.84.1.2.1.6.{{ $index }}' + entPhysicalIndex: '{{ $subindex0 }}' + entPhysicalIndex_measured: 'ports' + descr: '{{ $subindex0 }} Rx Power' + index: 'zyTransceiverDdmiCurrent.{{ $index }}' + high_limit: zyTransceiverDdmiAlarmMax + low_limit: zyTransceiverDdmiAlarmMin + warn_limit: zyTransceiverDdmiWarnMax + low_warn_limit: zyTransceiverDdmiWarnMin + skip_values: + - + oid: zyTransceiverDdmiDescription + op: '!=' + value: 'RxPower' + - + oid: zyTransceiverDdmiCurrent + op: '==' + value: '0' + voltage: + options: + skip_value_lt: 0 + data: + - + oid: zyxelHwMonitorVoltageTable + value: zyHwMonitorVoltageCurrentValue + num_oid: '.1.3.6.1.4.1.890.1.15.3.26.1.3.1.3.{{ $index }}' + divisor: 1000 + descr: 'Switch {{ $zyHwMonitorVoltageDescription }}' + index: 'zyHwMonitorVoltageCurrentValue.{{ $index }}' + high_limit: zyHwMonitorVoltageMaxValue + low_limit: zyHwMonitorVoltageMinValue + low_warn_limit: zyHwMonitorVoltageLowThreshold + - + oid: voltageTable + value: voltageCurValue + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.8.3.1.2.{{ $index }}' + divisor: 1000 + descr: '{{ $voltageNominalValue }}mV ({{ $voltageDescr }})' + index: 'voltageCurValue.{{ $index }}' + low_limit: voltageLowThresh + - + oid: transceiverDdmInfoTable + value: transceiverDdmInfoEntryCurrent + num_oid: '.1.3.6.1.4.1.890.1.5.8.47.117.2.1.7.{{ $index }}' + descr: 'SFP ifIndex {{ $transceiverDdmInfoEntryPort }} {{ $transceiverDdmInfoEntryDescription }}' + index: 'transceiverDdmInfoEntryCurrent.{{ $index }}' + high_limit: transceiverDdmInfoEntryAlarmMax + low_limit: transceiverDdmInfoEntryAlarmMin + warn_limit: transceiverDdmInfoEntryWarnMax + low_warn_limit: transceiverDdmInfoEntryWarnMin + divisor: 100 + entPhysicalIndex: transceiverDdmInfoEntryPort + entPhysicalIndex_measured: ports + skip_values: + - + oid: transceiverDdmInfoEntryDescription + op: '!=' + value: 'Voltage' + power: + data: + - + oid: pethMainPseTable + value: pethMainPsePower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.2.{{ $index }}' + index: 'pethMainPsePower.{{ $index }}' + group: "PoE" + descr: "PoE Budget Total - ID {{ $index }}" + - + oid: pethMainPseTable + value: pethMainPseConsumptionPower + num_oid: '.1.3.6.1.2.1.105.1.3.1.1.4.{{ $index }}' + index: 'pethMainPseConsumptionPower.{{ $index }}' + high_limit: pethMainPsePower + group: "PoE" + descr: "PoE Budget Consumed - ID {{ $index }}" + diff --git a/priv/profiles/os_discovery/zywall.yaml b/priv/profiles/os_discovery/zywall.yaml new file mode 100644 index 00000000..c04dcdc1 --- /dev/null +++ b/priv/profiles/os_discovery/zywall.yaml @@ -0,0 +1,40 @@ +mib: ZYXEL-ZYWALL-ZLD-COMMON-MIB +modules: + os: + hardware: + - ZYXEL-ES-COMMON::sysProductModel.0 + serial: ZYXEL-ES-COMMON::sysProductSerialNumber.0 + version: ZYXEL-ES-COMMON::sysSwVersionString.0 + mempools: + data: + - + percent_used: ZYXEL-ZYWALL-ZLD-COMMON-MIB::sysRAMUsage + index: 0 + - + percent_used: ZYXEL-ES-COMMON::sysMgmtFlashUsage + descr: Flash + index: 1 + processors: + data: + - + oid: sysCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.6.22.1.1.{{ $index }}' + sensors: + additional_oids: + data: + - + oid: + - vpnConnectionName + state: + data: + - + oid: vpnConnectStatus + value: vpnConnectStatus + num_oid: '.1.3.6.1.4.1.890.1.6.22.2.4.1.6.{{ $index }}' + descr: 'vpn : {{ $vpnConnectionName }}' + index: 'vpnIndex.{{ $index }}' + state_name: vpnConnectStatus + states: + - { descr: Disconnected, graph: 0, value: 0, generic: 2 } + - { descr: Connected, graph: 0, value: 1, generic: 0 } + diff --git a/priv/profiles/os_discovery/zyxelac.yaml b/priv/profiles/os_discovery/zyxelac.yaml new file mode 100644 index 00000000..8b546dc9 --- /dev/null +++ b/priv/profiles/os_discovery/zyxelac.yaml @@ -0,0 +1,7 @@ +mib: ZYXEL-PRESTIGE-MIB +modules: + os: + features: ZYXEL-PRESTIGE-MIB::prestigeXDSL.6.0 + hardware: ZYXEL-PRESTIGE-MIB::sysHWVersion.0 + version: ZYXEL-PRESTIGE-MIB::sysRasFWVersion.0 + serial: .1.3.6.1.4.1.890.1.2.1.1.10.0 diff --git a/priv/profiles/os_discovery/zyxelnwa.yaml b/priv/profiles/os_discovery/zyxelnwa.yaml new file mode 100644 index 00000000..ab721872 --- /dev/null +++ b/priv/profiles/os_discovery/zyxelnwa.yaml @@ -0,0 +1,17 @@ +mib: ZYXEL-ZYWALL-ZLD-COMMON-MIB +modules: + mempools: + data: + - + percent_used: ZYXEL-ZYWALL-ZLD-COMMON-MIB::sysRAMUsage + type: zywall + os: + features: ZYXEL-ES-ZyxelAPMgmt::operationMode.0 + hardware: ZYXEL-ES-COMMON::sysProductModel.0 + version: ZYXEL-ES-COMMON::sysSwVersionString.0 + serial: ZYXEL-ES-COMMON::sysProductSerialNumber.0 + processors: + data: + - + oid: sysCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.6.22.1.1.{{ $index }}' diff --git a/priv/profiles/os_discovery/zyxelusg.yaml b/priv/profiles/os_discovery/zyxelusg.yaml new file mode 100644 index 00000000..cf094e2e --- /dev/null +++ b/priv/profiles/os_discovery/zyxelusg.yaml @@ -0,0 +1,30 @@ +mib: ZYXEL-ES-COMMON +modules: + os: + hardware: ZYXEL-ES-COMMON::sysProductModel.0 + serial: ZYXEL-ES-COMMON::sysProductSerialNumber.0 + version: ZYXEL-ES-COMMON::sysSwVersionString.0 + mempools: + data: + - + percent_used: ZYXEL-ES-COMMON::sysMgmtMemUsage + descr: Memory Usage + index: 0 + - + percent_used: ZYXEL-ES-COMMON::sysMgmtFlashUsage + descr: Flash + index: 1 + processors: + data: + - + oid: ZYXEL-ES-COMMON::sysMgmtCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.15.3.2.4.{{ $index }}' + sensors: + count: + data: + - + oid: ZYXEL-ES-COMMON::sysActiveSessionNum + value: ZYXEL-ES-COMMON::sysActiveSessionNum + num_oid: '.1.3.6.1.4.1.890.1.15.3.1.19.{{ $index }}' + descr: 'Active Sessions' + index: 'sessionNum.{{ $index }}' diff --git a/priv/profiles/os_discovery/zyxelwlc.yaml b/priv/profiles/os_discovery/zyxelwlc.yaml new file mode 100644 index 00000000..c09398d5 --- /dev/null +++ b/priv/profiles/os_discovery/zyxelwlc.yaml @@ -0,0 +1,30 @@ +mib: ZYXEL-ES-COMMON +modules: + os: + hardware: + - ZYXEL-ES-COMMON::sysProductModel.0 + serial: ZYXEL-ES-COMMON::sysProductSerialNumber.0 + version: ZYXEL-ES-COMMON::sysSwVersionString.0 + mempools: + data: + - + percent_used: ZYXEL-ES-COMMON::sysMgmtMemUsage + index: 0 + - + percent_used: ZYXEL-ES-COMMON::sysMgmtFlashUsage + descr: Flash + index: 1 + processors: + data: + - + oid: sysMgmtCPUUsage + num_oid: '.1.3.6.1.4.1.890.1.15.3.2.4.{{ $index }}' + sensors: + count: + data: + - + oid: sysActiveSessionNum + value: sysActiveSessionNum + num_oid: '.1.3.6.1.4.1.890.1.15.3.1.19.{{ $index }}' + descr: 'Active Sessions' + index: 'sessionNum.{{ $index }}' diff --git a/scripts/sync-librenms.sh b/scripts/sync-librenms.sh new file mode 100755 index 00000000..8dff2d47 --- /dev/null +++ b/scripts/sync-librenms.sh @@ -0,0 +1,104 @@ +#!/bin/bash +# Sync MIB files and device profiles from LibreNMS +# Usage: ./scripts/sync-librenms.sh [LIBRENMS_PATH] +# +# This script: +# 1. Syncs MIB files from LibreNMS to priv/mibs/ +# 2. Syncs YAML profile definitions to priv/profiles/ +# +# Prerequisites: +# - LibreNMS repository cloned locally + +set -e + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" +LIBRENMS_PATH="${1:-$HOME/dev/librenms}" + +# Colors for output +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' # No Color + +echo -e "${GREEN}=== LibreNMS Sync Script ===${NC}" +echo "LibreNMS path: $LIBRENMS_PATH" +echo "Project root: $PROJECT_ROOT" +echo "" + +# Verify LibreNMS path exists +if [ ! -d "$LIBRENMS_PATH" ]; then + echo -e "${RED}Error: LibreNMS directory not found at $LIBRENMS_PATH${NC}" + echo "Please provide the path to LibreNMS as the first argument:" + echo " ./scripts/sync-librenms.sh /path/to/librenms" + exit 1 +fi + +# Verify LibreNMS has the expected structure +if [ ! -d "$LIBRENMS_PATH/mibs" ]; then + echo -e "${RED}Error: MIBs directory not found at $LIBRENMS_PATH/mibs${NC}" + exit 1 +fi + +if [ ! -d "$LIBRENMS_PATH/resources/definitions" ]; then + echo -e "${RED}Error: Definitions directory not found at $LIBRENMS_PATH/resources/definitions${NC}" + exit 1 +fi + +# Step 1: Sync MIB files +echo -e "${YELLOW}Step 1: Syncing MIB files...${NC}" +MIB_DEST="$PROJECT_ROOT/priv/mibs" +mkdir -p "$MIB_DEST" + +# Sync vendor-specific MIB directories we care about +VENDOR_MIBS=( + "cambium" + "mikrotik" + "ubnt" + "cisco" +) + +for vendor in "${VENDOR_MIBS[@]}"; do + if [ -d "$LIBRENMS_PATH/mibs/$vendor" ]; then + echo " Syncing $vendor MIBs..." + mkdir -p "$MIB_DEST/$vendor" + rsync -a --delete "$LIBRENMS_PATH/mibs/$vendor/" "$MIB_DEST/$vendor/" + else + echo -e " ${YELLOW}Warning: $vendor MIBs not found, skipping${NC}" + fi +done + +# Count synced MIBs +MIB_COUNT=$(find "$MIB_DEST" -type f 2>/dev/null | wc -l | tr -d ' ') +echo -e "${GREEN} Synced $MIB_COUNT MIB files${NC}" +echo "" + +# Step 2: Sync YAML profile definitions +echo -e "${YELLOW}Step 2: Syncing YAML profile definitions...${NC}" +PROFILE_DEST="$PROJECT_ROOT/priv/profiles" +mkdir -p "$PROFILE_DEST/os_detection" "$PROFILE_DEST/os_discovery" + +# Sync os_detection YAML files +echo " Syncing os_detection definitions..." +rsync -a --delete "$LIBRENMS_PATH/resources/definitions/os_detection/" "$PROFILE_DEST/os_detection/" + +# Sync os_discovery YAML files +echo " Syncing os_discovery definitions..." +rsync -a --delete "$LIBRENMS_PATH/resources/definitions/os_discovery/" "$PROFILE_DEST/os_discovery/" + +# Count synced profiles +DETECTION_COUNT=$(find "$PROFILE_DEST/os_detection" -name "*.yaml" 2>/dev/null | wc -l | tr -d ' ') +DISCOVERY_COUNT=$(find "$PROFILE_DEST/os_discovery" -name "*.yaml" 2>/dev/null | wc -l | tr -d ' ') +echo -e "${GREEN} Synced $DETECTION_COUNT detection profiles, $DISCOVERY_COUNT discovery profiles${NC}" +echo "" + +echo -e "${GREEN}=== Sync Complete ===${NC}" +echo "" +echo "Files synced to:" +echo " - MIBs: priv/mibs/" +echo " - Profiles: priv/profiles/" +echo "" +echo "To import profiles into the database, run:" +echo " mix import_profiles --source-path priv/profiles" +echo "" +echo "Or profiles will be auto-imported on application startup." diff --git a/test/integration/snmp_integration_test.exs b/test/integration/snmp_integration_test.exs index 790ce7de..fa5e9d73 100644 --- a/test/integration/snmp_integration_test.exs +++ b/test/integration/snmp_integration_test.exs @@ -74,25 +74,26 @@ defmodule Towerops.Integration.SnmpIntegrationTest do describe "Discovery against real device" do @tag :full_discovery - test "can discover MikroTik device" do - alias Towerops.Snmp.Profiles.Mikrotik + test "can discover device using Base profile" do + alias Towerops.Snmp.Profiles.Base - # Discover system info - {:ok, system_info} = Mikrotik.discover_system_info(@test_device_opts) - assert system_info.sys_descr =~ "RouterOS" + # Discover system info using Base profile + {:ok, system_info} = Base.discover_system_info(@test_device_opts) + assert is_binary(system_info.sys_descr) + assert is_binary(system_info.sys_name) # Discover interfaces - {:ok, interfaces} = Mikrotik.discover_interfaces(@test_device_opts) + {:ok, interfaces} = Base.discover_interfaces(@test_device_opts) refute Enum.empty?(interfaces) - # Discover sensors - {:ok, sensors} = Mikrotik.discover_sensors(@test_device_opts) - refute Enum.empty?(sensors) + # Discover sensors (may be empty if device doesn't support ENTITY-SENSOR-MIB) + {:ok, sensors} = Base.discover_sensors(@test_device_opts) + assert is_list(sensors) # Identify device - device_info = Mikrotik.identify_device(system_info) - assert device_info.manufacturer == "MikroTik" - assert device_info.model + device_info = Base.identify_device(system_info) + assert is_binary(device_info.manufacturer) + assert is_binary(device_info.model) end end diff --git a/test/towerops/snmp/discovery_test.exs b/test/towerops/snmp/discovery_test.exs index 07f4e7df..0de7b429 100644 --- a/test/towerops/snmp/discovery_test.exs +++ b/test/towerops/snmp/discovery_test.exs @@ -248,8 +248,10 @@ defmodule Towerops.Snmp.DiscoveryTest do assert {:ok, device} = Discovery.discover_device(device) - assert device.manufacturer == "Cisco" - assert device.model == "C2960" + # YAML profile uses "Cisco IOS" as vendor name + assert device.manufacturer == "Cisco IOS" + # Model comes from sysDescr when using YAML profile + assert device.model == "Cisco IOS Software, C2960 Software" assert device.sys_name == "switch1" end @@ -403,8 +405,10 @@ defmodule Towerops.Snmp.DiscoveryTest do # Should be same device, updated assert updated_device.id == initial_device.id + # YAML profile "linux" has vendor "Linux" assert updated_device.manufacturer == "Linux" - assert updated_device.model == "Linux" + # Model comes from sysDescr + assert updated_device.model == "Linux server 5.4.0" assert updated_device.sys_name == "updated-name" end @@ -484,49 +488,38 @@ defmodule Towerops.Snmp.DiscoveryTest do assert initial_reading_count == 3 # Mock SNMP responses for rediscovery + # Use generic sysDescr/sysObjectID to fall back to Base profile (YAML "ios" has no sensors) stub(SnmpMock, :get, fn _, oid, _ -> case oid do "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 54_321}} - "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "Cisco IOS Software, C2960"}} - "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 9, 1, 1208]}} + "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "Generic Switch Device"}} + "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 99_999]}} "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin@example.com"}} "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "test-switch"}} "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "Data Center"}} + # ENTITY-SENSOR-MIB sensor details for index 1001 (Base profile uses these) + "1.3.6.1.2.1.99.1.1.1.1.1001" -> {:ok, {:integer, 8}} + "1.3.6.1.2.1.99.1.1.1.2.1001" -> {:ok, {:integer, 9}} + "1.3.6.1.2.1.99.1.1.1.3.1001" -> {:ok, {:integer, 0}} + "1.3.6.1.2.1.99.1.1.1.4.1001" -> {:ok, {:integer, 47}} + "1.3.6.1.2.1.99.1.1.1.5.1001" -> {:ok, {:integer, 1}} + # ENTITY-MIB descriptions + "1.3.6.1.2.1.47.1.1.1.1.2.1001" -> {:ok, {:octet_string, "CPU Temperature"}} + "1.3.6.1.2.1.47.1.1.1.1.7.1001" -> {:ok, {:octet_string, "TempSensor1"}} _ -> {:error, :no_such_object} end end) stub(SnmpMock, :walk, fn _, oid, _ -> - # CISCO-ENTITY-SENSOR-MIB - sensor type table (ent_sensor_type) - # This is what Cisco profile walks first to find sensors - if oid == "1.3.6.1.4.1.9.9.91.1.1.1.1.1" do - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1001", value: {:integer, 8}}]} + # ENTITY-SENSOR-MIB - sensor type table (entPhySensorType) + # Base profile walks this to find sensors + if oid == "1.3.6.1.2.1.99.1.1.1.1" do + {:ok, [%{oid: "1.3.6.1.2.1.99.1.1.1.1.1001", value: {:integer, 8}}]} else {:ok, []} end end) - # Mock the individual sensor GETs that Cisco profile does after finding sensor indices - stub(SnmpMock, :get, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 54_321}} - "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "Cisco IOS Software, C2960"}} - "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 9, 1, 1208]}} - "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin@example.com"}} - "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "test-switch"}} - "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "Data Center"}} - # Cisco sensor details for index 1001 - "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1001" -> {:ok, {:integer, 8}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.2.1001" -> {:ok, {:integer, 9}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.3.1001" -> {:ok, {:integer, 0}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.4.1001" -> {:ok, {:integer, 47}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.5.1001" -> {:ok, {:integer, 1}} - "1.3.6.1.2.1.47.1.1.1.1.2.1001" -> {:ok, {:octet_string, "CPU Temperature"}} - "1.3.6.1.2.1.47.1.1.1.1.7.1001" -> {:ok, {:octet_string, "TempSensor1"}} - _ -> {:error, :no_such_object} - end - end) - # Run rediscovery assert {:ok, rediscovered_device} = Discovery.discover_device(device) @@ -714,11 +707,11 @@ defmodule Towerops.Snmp.DiscoveryTest do %Sensor{} |> Sensor.changeset(%{ snmp_device_id: snmp_device.id, - sensor_type: "temperature", + sensor_type: "celsius", sensor_index: "1001", - sensor_oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.4.1001", + sensor_oid: "1.3.6.1.2.1.99.1.1.1.4.1001", sensor_descr: "CPU Temperature", - sensor_unit: "celsius", + sensor_unit: "°C", sensor_divisor: 1 }) |> Repo.insert() @@ -727,11 +720,11 @@ defmodule Towerops.Snmp.DiscoveryTest do %Sensor{} |> Sensor.changeset(%{ snmp_device_id: snmp_device.id, - sensor_type: "temperature", + sensor_type: "celsius", sensor_index: "1002", - sensor_oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.4.1002", + sensor_oid: "1.3.6.1.2.1.99.1.1.1.4.1002", sensor_descr: "Chassis Temperature", - sensor_unit: "celsius", + sensor_unit: "°C", sensor_divisor: 1 }) |> Repo.insert() @@ -742,29 +735,29 @@ defmodule Towerops.Snmp.DiscoveryTest do assert initial_sensor_count == 2 - # Mock SNMP responses - only return sensor 1001, not 1002 - stub(SnmpMock, :get, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 54_321}} - "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "Cisco IOS Software, C2960"}} - "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 9, 1, 1208]}} - "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin@example.com"}} - "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "test-switch"}} - "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "Data Center"}} - _ -> {:error, :no_such_object} - end - end) - + # Mock SNMP walk responses - only return sensor 1001 (1002 is "removed") stub(SnmpMock, :walk, fn _, oid, _ -> - # CISCO-ENTITY-SENSOR-MIB - only return sensor 1001 (1002 is "removed") - if oid == "1.3.6.1.4.1.9.9.91.1.1.1.1.1" do - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1001", value: {:integer, 8}}]} - else - {:ok, []} + case oid do + # ENTITY-SENSOR-MIB sensor type - only return sensor 1001 (1002 is "removed") + "1.3.6.1.2.1.99.1.1.1.1" -> + {:ok, [%{oid: "1.3.6.1.2.1.99.1.1.1.1.1001", value: 8}]} + + # ENTITY-MIB descriptions for sensor names + "1.3.6.1.2.1.47.1.1.1.1.2" -> + {:ok, [%{oid: "1.3.6.1.2.1.47.1.1.1.1.2.1001", value: "CPU Temperature"}]} + + "1.3.6.1.2.1.47.1.1.1.1.7" -> + {:ok, [%{oid: "1.3.6.1.2.1.47.1.1.1.1.7.1001", value: "TempSensor1"}]} + + "1.3.6.1.2.1.47.1.1.1.1.5" -> + {:ok, [%{oid: "1.3.6.1.2.1.47.1.1.1.1.5.1001", value: 8}]} + + _ -> + {:ok, []} end end) - # Mock the individual sensor GETs for Cisco profile + # Mock the individual sensor GETs for Base profile (ENTITY-SENSOR-MIB) stub(SnmpMock, :get, fn _, oid, _ -> case oid do "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 54_321}} @@ -773,14 +766,12 @@ defmodule Towerops.Snmp.DiscoveryTest do "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin@example.com"}} "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "test-switch"}} "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "Data Center"}} - # Cisco sensor details for index 1001 only - "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1001" -> {:ok, {:integer, 8}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.2.1001" -> {:ok, {:integer, 9}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.3.1001" -> {:ok, {:integer, 0}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.4.1001" -> {:ok, {:integer, 47}} - "1.3.6.1.4.1.9.9.91.1.1.1.1.5.1001" -> {:ok, {:integer, 1}} - "1.3.6.1.2.1.47.1.1.1.1.2.1001" -> {:ok, {:octet_string, "CPU Temperature"}} - "1.3.6.1.2.1.47.1.1.1.1.7.1001" -> {:ok, {:octet_string, "TempSensor1"}} + # ENTITY-SENSOR-MIB sensor details for index 1001 only + "1.3.6.1.2.1.99.1.1.1.1.1001" -> {:ok, {:integer, 8}} + "1.3.6.1.2.1.99.1.1.1.2.1001" -> {:ok, {:integer, 9}} + "1.3.6.1.2.1.99.1.1.1.3.1001" -> {:ok, {:integer, 0}} + "1.3.6.1.2.1.99.1.1.1.4.1001" -> {:ok, {:integer, 47}} + "1.3.6.1.2.1.99.1.1.1.5.1001" -> {:ok, {:integer, 1}} _ -> {:error, :no_such_object} end end) diff --git a/test/towerops/snmp/profile_behaviour_test.exs b/test/towerops/snmp/profile_behaviour_test.exs deleted file mode 100644 index 108a302a..00000000 --- a/test/towerops/snmp/profile_behaviour_test.exs +++ /dev/null @@ -1,349 +0,0 @@ -defmodule Towerops.Snmp.ProfileBehaviourTest do - @moduledoc """ - Generic tests for SNMP profile behavior. - Tests that all profiles implement the expected contract without testing specific OID values. - - This approach tests BEHAVIOR, not implementation details: - - Does the profile implement the required functions? - - Do they return data in the expected format? - - Do they handle missing data gracefully? - - We don't test specific OID values or vendor-specific MIB details. - """ - - use ExUnit.Case, async: true - - import Mox - - alias Towerops.Snmp.Profiles.Base - alias Towerops.Snmp.Profiles.Cisco - alias Towerops.Snmp.Profiles.Mikrotik - alias Towerops.Snmp.Profiles.NetSnmp - alias Towerops.Snmp.SnmpMock - - # Verify mocks are set correctly - setup :verify_on_exit! - - @test_opts [ - ip: "192.168.1.1", - community: "public", - version: "2c", - port: 161, - timeout: 5000 - ] - - # Test all profile modules - @profiles [Base, Cisco, Mikrotik, NetSnmp] - - describe "profile contract compliance" do - for profile <- @profiles do - @tag profile: profile - test "#{inspect(profile)} implements discover_system_info/1 and returns valid data" do - profile = unquote(profile) - - # Mock successful SNMP responses for system MIB - stub(SnmpMock, :get, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "Test Device"}} - "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, "1.3.6.1.4.1.9.1.1"}} - "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 12_345}} - "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin@example.com"}} - "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "test-host"}} - "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "datacenter"}} - _ -> {:error, :no_such_object} - end - end) - - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - # Suppress "clause will never match" warning - profiles always return {:ok, info} - {:ok, info} = profile.discover_system_info(@test_opts) - assert is_map(info) - # Some profiles return empty map (no additional info beyond Base) - # Others return profile-specific data (e.g., MikroTik, Ubiquiti) - end - - @tag profile: profile - test "#{inspect(profile)} implements discover_interfaces/1 and returns valid structure" do - profile = unquote(profile) - - # Mock IF-MIB interface data - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.2.2.1.1" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.2.2.1.1.1", value: {:integer, 1}}, - %{oid: "1.3.6.1.2.1.2.2.1.1.2", value: {:integer, 2}} - ]} - - "1.3.6.1.2.1.2.2.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.2.2.1.2.1", value: {:octet_string, "eth0"}}, - %{oid: "1.3.6.1.2.1.2.2.1.2.2", value: {:octet_string, "eth1"}} - ]} - - _ -> - {:ok, []} - end - end) - - stub(SnmpMock, :get, fn _, _, _ -> {:error, :no_such_object} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - assert {:ok, interfaces} = profile.discover_interfaces(@test_opts) - assert is_list(interfaces) - - # If interfaces found, they should have required fields - for interface <- interfaces do - assert is_map(interface) - assert Map.has_key?(interface, :if_index) - assert Map.has_key?(interface, :if_descr) - assert is_integer(interface.if_index) - assert is_binary(interface.if_descr) - end - end - - @tag profile: profile - test "#{inspect(profile)} implements discover_sensors/1 and returns valid structure" do - profile = unquote(profile) - - # Mock generic sensor data that might be discovered by any profile - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - stub(SnmpMock, :get, fn _, _, _ -> {:error, :no_such_object} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - assert {:ok, sensors} = profile.discover_sensors(@test_opts) - assert is_list(sensors) - - # If sensors found, they should have required fields - for sensor <- sensors do - assert is_map(sensor) - assert Map.has_key?(sensor, :sensor_type) - assert Map.has_key?(sensor, :sensor_index) - assert Map.has_key?(sensor, :sensor_oid) - assert Map.has_key?(sensor, :sensor_descr) - assert Map.has_key?(sensor, :sensor_unit) - assert Map.has_key?(sensor, :sensor_divisor) - - # Validate field types - assert is_binary(sensor.sensor_type) - assert is_binary(sensor.sensor_index) - assert is_binary(sensor.sensor_oid) - assert is_binary(sensor.sensor_descr) - assert is_binary(sensor.sensor_unit) - assert is_number(sensor.sensor_divisor) - end - end - - @tag profile: profile - test "#{inspect(profile)} implements identify_device/1 and returns device info" do - profile = unquote(profile) - - system_info = %{ - sys_descr: "Test Device Description", - sys_object_id: "1.3.6.1.4.1.9.1.1", - sys_name: "test-device" - } - - result = profile.identify_device(system_info) - - assert is_map(result) - # Should preserve original system info - assert Map.has_key?(result, :sys_descr) - # Should add device identification - assert Map.has_key?(result, :manufacturer) - assert Map.has_key?(result, :model) - assert is_binary(result.manufacturer) - assert is_binary(result.model) - end - end - end - - describe "graceful degradation" do - test "profiles handle missing SNMP data gracefully" do - # All SNMP calls return empty/error - stub(SnmpMock, :get, fn _, _, _ -> {:error, :no_such_object} end) - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - for profile <- @profiles do - # Should not crash - result = profile.discover_interfaces(@test_opts) - assert match?({:ok, _}, result) - - result = profile.discover_sensors(@test_opts) - assert match?({:ok, _}, result) - end - end - end - - describe "device identification" do - test "Base profile identifies generic devices" do - system_info = %{sys_descr: "Unknown Device", sys_object_id: "1.2.3.4"} - result = Base.identify_device(system_info) - - assert result.manufacturer == "Unknown" - assert result.model == "Generic Device" - end - - test "Cisco profile identifies Cisco from sysDescr containing 'Cisco' or 'IOS'" do - system_info = %{sys_descr: "Cisco IOS Software"} - result = Cisco.identify_device(system_info) - - assert result.manufacturer == "Cisco" - assert is_binary(result.model) - end - - test "NetSnmp profile identifies Linux from sysDescr containing 'Linux'" do - system_info = %{sys_descr: "Linux test-host 5.10.0"} - result = NetSnmp.identify_device(system_info) - - assert result.manufacturer == "Linux" - assert is_binary(result.model) - end - - test "Mikrotik profile identifies MikroTik from sysDescr containing 'RouterOS'" do - system_info = %{sys_descr: "RouterOS RB750"} - result = Mikrotik.identify_device(system_info) - - assert result.manufacturer == "MikroTik" - assert is_binary(result.model) - end - end - - describe "interface discovery" do - test "Base profile discovers interfaces from standard IF-MIB" do - # Mock the walk for ifIndex - return list of maps as snmpkit does - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.2.2.1.1" -> - # Return list of maps format that snmpkit returns - {:ok, - [ - %{oid: "1.3.6.1.2.1.2.2.1.1.1", value: {:integer, 1}}, - %{oid: "1.3.6.1.2.1.2.2.1.1.2", value: {:integer, 2}} - ]} - - _ -> - {:ok, []} - end - end) - - # Mock individual get calls for each interface field - stub(SnmpMock, :get, fn _, oid, _ -> - case oid do - # Interface 1 - "1.3.6.1.2.1.2.2.1.2.1" -> {:ok, {:octet_string, "GigabitEthernet0/1"}} - "1.3.6.1.2.1.31.1.1.1.1.1" -> {:ok, {:octet_string, "Gi0/1"}} - "1.3.6.1.2.1.31.1.1.1.18.1" -> {:ok, {:octet_string, "Uplink"}} - "1.3.6.1.2.1.2.2.1.3.1" -> {:ok, {:integer, 6}} - "1.3.6.1.2.1.2.2.1.5.1" -> {:ok, {:gauge32, 1_000_000_000}} - "1.3.6.1.2.1.2.2.1.6.1" -> {:ok, {:octet_string, <<0x00, 0x1A, 0x2B, 0x3C, 0x4D, 0x5E>>}} - "1.3.6.1.2.1.2.2.1.7.1" -> {:ok, {:integer, 1}} - "1.3.6.1.2.1.2.2.1.8.1" -> {:ok, {:integer, 1}} - # Interface 2 - "1.3.6.1.2.1.2.2.1.2.2" -> {:ok, {:octet_string, "GigabitEthernet0/2"}} - "1.3.6.1.2.1.31.1.1.1.1.2" -> {:ok, {:octet_string, "Gi0/2"}} - "1.3.6.1.2.1.31.1.1.1.18.2" -> {:ok, {:octet_string, "Server Port"}} - "1.3.6.1.2.1.2.2.1.3.2" -> {:ok, {:integer, 6}} - "1.3.6.1.2.1.2.2.1.5.2" -> {:ok, {:gauge32, 1_000_000_000}} - "1.3.6.1.2.1.2.2.1.6.2" -> {:ok, {:octet_string, <<0x00, 0x1A, 0x2B, 0x3C, 0x4D, 0x5F>>}} - "1.3.6.1.2.1.2.2.1.7.2" -> {:ok, {:integer, 1}} - "1.3.6.1.2.1.2.2.1.8.2" -> {:ok, {:integer, 1}} - _ -> {:error, :no_such_object} - end - end) - - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - assert {:ok, interfaces} = Base.discover_interfaces(@test_opts) - assert length(interfaces) == 2 - - [iface1, iface2] = Enum.sort_by(interfaces, & &1.if_index) - - assert iface1.if_index == 1 - assert iface1.if_descr == "GigabitEthernet0/1" - - assert iface2.if_index == 2 - assert iface2.if_descr == "GigabitEthernet0/2" - end - - test "profiles return empty list when no interfaces available" do - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - stub(SnmpMock, :get, fn _, _, _ -> {:error, :no_such_object} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - for profile <- @profiles do - assert {:ok, interfaces} = profile.discover_interfaces(@test_opts) - assert interfaces == [] - end - end - end - - describe "sensor discovery" do - test "Base profile discovers ENTITY-SENSOR-MIB sensors when available" do - # Mock walk to find sensor type indices - return list of maps as snmpkit does - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.99.1.1.1.1" -> - # Return sensor type indices - 8 is celsius type - {:ok, - [ - %{oid: "1.3.6.1.2.1.99.1.1.1.1.1", value: {:integer, 8}} - ]} - - _ -> - {:ok, []} - end - end) - - # Mock individual get calls for building sensor data - # Base.build_sensor_from_entity_mib calls Client.get_multiple with [type, scale, precision, value, status] - stub(SnmpMock, :get, fn _, oid, _ -> - case oid do - # Sensor index 1 data - # type = celsius (8) - "1.3.6.1.2.1.99.1.1.1.1.1" -> {:ok, {:integer, 8}} - # scale = units (9) = divisor 1 - "1.3.6.1.2.1.99.1.1.1.2.1" -> {:ok, {:integer, 9}} - # precision = 0 (no decimal places) - "1.3.6.1.2.1.99.1.1.1.3.1" -> {:ok, {:integer, 0}} - # value = 45 - "1.3.6.1.2.1.99.1.1.1.4.1" -> {:ok, {:integer, 45}} - # status = ok (1) - "1.3.6.1.2.1.99.1.1.1.5.1" -> {:ok, {:integer, 1}} - _ -> {:error, :no_such_object} - end - end) - - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - assert {:ok, sensors} = Base.discover_sensors(@test_opts) - - case sensors do - [sensor | _] -> - assert sensor.sensor_type == "celsius" - assert sensor.sensor_descr == "Sensor 1" - assert is_number(sensor.last_value) - assert sensor.last_value == 45.0 - - [] -> - flunk("Expected at least one sensor to be discovered") - end - end - - test "profiles return empty list when no sensors available" do - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - stub(SnmpMock, :get, fn _, _, _ -> {:error, :no_such_object} end) - stub(SnmpMock, :get_bulk, fn _, _, _ -> {:ok, []} end) - - for profile <- @profiles do - assert {:ok, sensors} = profile.discover_sensors(@test_opts) - assert is_list(sensors) - end - end - end -end diff --git a/test/towerops/snmp/profiles/base_test.exs b/test/towerops/snmp/profiles/base_test.exs index f44166cc..257e93a5 100644 --- a/test/towerops/snmp/profiles/base_test.exs +++ b/test/towerops/snmp/profiles/base_test.exs @@ -326,7 +326,8 @@ defmodule Towerops.Snmp.Profiles.BaseTest do device_info = Base.identify_device(system_info) assert device_info.manufacturer == "Linux" - assert device_info.model == "Server" + # Model uses full sysDescr for Linux devices + assert device_info.model == "Linux server 5.4.0-42-generic #46-Ubuntu SMP" end test "identifies Windows server from sysDescr" do @@ -337,7 +338,8 @@ defmodule Towerops.Snmp.Profiles.BaseTest do device_info = Base.identify_device(system_info) assert device_info.manufacturer == "Microsoft" - assert device_info.model == "Windows Server" + # Model uses full sysDescr for Windows devices + assert device_info.model == "Windows Server 2019 Standard" end test "falls back to unknown for unrecognized devices" do @@ -376,6 +378,116 @@ defmodule Towerops.Snmp.Profiles.BaseTest do assert device_info.sys_contact == "admin@example.com" assert device_info.sys_location == "DC1" end + + test "identifies Cambium ePMP from sysDescr" do + system_info = %{ + sys_descr: "Cambium ePMP", + sys_object_id: "1.3.6.1.4.1.17713.21" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Cambium Networks" + assert device_info.model == "ePMP" + end + + test "identifies Cambium ePMP 3000 from sysDescr" do + system_info = %{ + sys_descr: "Cambium ePMP 3000", + sys_object_id: "1.3.6.1.4.1.17713.21" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Cambium Networks" + assert device_info.model == "ePMP 3000" + end + + test "identifies Cambium PMP 450 from sysDescr" do + system_info = %{ + sys_descr: "Cambium PMP 450", + sys_object_id: "1.3.6.1.4.1.17713.1" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Cambium Networks" + assert device_info.model == "PMP 450" + end + + test "identifies Cambium ePMP from sysObjectID only (OEM device)" do + # Verona Networks and other OEMs use Cambium hardware with different sysDescr + # but the sysObjectID still reveals the product line + system_info = %{ + sys_descr: "Verona Networks", + sys_object_id: "1.3.6.1.4.1.17713.21.9.37" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Cambium Networks" + assert device_info.model == "ePMP" + end + + test "identifies Ubiquiti from sysDescr" do + system_info = %{ + sys_descr: "Ubiquiti Networks airOS", + sys_object_id: "" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Ubiquiti" + assert device_info.model == "Wireless" + end + + test "identifies Ubiquiti AirFiber from sysDescr" do + system_info = %{ + sys_descr: "AF-5XHD", + sys_object_id: "1.3.6.1.4.1.41112" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Ubiquiti" + assert device_info.model == "AF-5XHD" + end + + test "identifies Ubiquiti from sysObjectID" do + system_info = %{ + sys_descr: "Linux device", + sys_object_id: "1.3.6.1.4.1.41112.1.2" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "Ubiquiti" + assert device_info.model == "Wireless" + end + + test "identifies MikroTik from sysDescr" do + system_info = %{ + sys_descr: "RouterOS RB5009UG+S+", + sys_object_id: "" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "MikroTik" + assert device_info.model == "RB5009UG" + end + + test "identifies MikroTik from sysObjectID" do + system_info = %{ + sys_descr: "Some Router", + sys_object_id: "1.3.6.1.4.1.14988.1" + } + + device_info = Base.identify_device(system_info) + + assert device_info.manufacturer == "MikroTik" + assert device_info.model == "RouterOS" + end end describe "discover_state_sensors/1" do diff --git a/test/towerops/snmp/profiles/cisco_test.exs b/test/towerops/snmp/profiles/cisco_test.exs deleted file mode 100644 index 4c5b8305..00000000 --- a/test/towerops/snmp/profiles/cisco_test.exs +++ /dev/null @@ -1,578 +0,0 @@ -defmodule Towerops.Snmp.Profiles.CiscoTest do - use ExUnit.Case, async: true - - import Mox - - alias Towerops.Snmp.Profiles.Cisco - alias Towerops.Snmp.SnmpMock - - setup :verify_on_exit! - - @client_opts [ip: "192.168.1.1", community: "public", version: :v2c, port: 161] - - describe "discover_system_info/1" do - test "returns empty map (no additional system info beyond Base)" do - # Cisco profile doesn't query additional system OIDs - # Base profile handles all standard system info discovery - result = Cisco.discover_system_info(@client_opts) - - assert {:ok, system_info} = result - assert system_info == %{} - end - end - - describe "discover_interfaces/1" do - test "delegates to Base profile" do - # Mock SNMP walk for interfaces - return empty list to indicate no interfaces found - # Note: snmp_adapter().walk returns {:ok, [%{oid: ..., value: ...}]} - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - result = Cisco.discover_interfaces(@client_opts) - - # Should delegate to Base and return empty list when no interfaces found - assert {:ok, []} = result - end - end - - describe "discover_sensors/1" do - test "attempts Cisco-specific sensor discovery" do - # Mock walk for Cisco sensors - return empty list to indicate no Cisco sensors - # Note: snmp_adapter().walk returns {:ok, [%{oid: ..., value: ...}]} - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - # Should fall back to Base sensors when Cisco sensors not found - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - result = Cisco.discover_sensors(@client_opts) - - # Should return empty list when no sensors found - assert {:ok, []} = result - end - - test "delegates to Base profile for sensor discovery" do - # When Cisco-specific sensors fail, should delegate to Base - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - # Base profile walk attempt - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - result = Cisco.discover_sensors(@client_opts) - - # Should return empty list when no sensors found - assert {:ok, []} = result - end - end - - describe "identify_device/1" do - test "identifies Catalyst switch model" do - system_info = %{ - sys_descr: "Cisco IOS Software, C2960 Software (C2960-LANBASEK9-M), Version 15.2(4)E7, RELEASE SOFTWARE", - sys_name: "switch1" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - assert device_info.model == "C2960" - assert device_info.firmware_version == "15.2(4)E7" - end - - test "identifies WS-C switch model" do - system_info = %{ - sys_descr: "Cisco IOS Software, WS-C3750X Software...", - sys_name: "switch2" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - assert device_info.model == "WS-C3750X" - end - - test "identifies ISR router model" do - system_info = %{ - sys_descr: "Cisco IOS Software, ISR4451 Software...", - sys_name: "router1" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - assert device_info.model == "ISR4451" - end - - test "identifies numeric router model with C prefix" do - system_info = %{ - sys_descr: "Cisco IOS Software, 1900 Software (C1900-UNIVERSALK9-M)...", - sys_name: "router2" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - # C1900 matches the Catalyst pattern first - assert device_info.model == "C1900" - end - - test "identifies ASR router model" do - system_info = %{ - sys_descr: "Cisco IOS XE Software, ASR1000 Software...", - sys_name: "router3" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - assert device_info.model == "ASR1000" - end - - test "returns unknown model for unrecognized format" do - system_info = %{ - sys_descr: "Some unknown Cisco device", - sys_name: "unknown" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.manufacturer == "Cisco" - assert device_info.model == "Unknown Cisco Model" - end - - test "extracts firmware version" do - system_info = %{ - sys_descr: "Cisco IOS Software, Version 15.2(4)E7, RELEASE SOFTWARE", - sys_name: "switch" - } - - device_info = Cisco.identify_device(system_info) - - assert device_info.firmware_version == "15.2(4)E7" - end - - test "returns nil for firmware when not found" do - system_info = %{ - sys_descr: "Cisco device without version info", - sys_name: "device" - } - - device_info = Cisco.identify_device(system_info) - - assert is_nil(device_info.firmware_version) - end - end - - describe "discover_vlans/1" do - test "discovers VLANs from Cisco VTP MIB" do - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # vtpVlanName - VLAN names - "1.3.6.1.4.1.9.9.46.1.3.1.1.4" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.1", value: "default"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.10", value: "Management"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.100", value: "Production"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.200", value: "Guest"} - ]} - - # vtpVlanState - VLAN status (1=operational, 2=suspended) - "1.3.6.1.4.1.9.9.46.1.3.1.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.1", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.10", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.100", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.200", value: 2} - ]} - - # vtpVlanType - VLAN type (1=ethernet) - "1.3.6.1.4.1.9.9.46.1.3.1.1.3" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.1", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.10", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.100", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.200", value: 1} - ]} - - _ -> - {:ok, []} - end - end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - - assert length(vlans) == 4 - - vlan1 = Enum.find(vlans, &(&1.vlan_id == 1)) - assert vlan1.vlan_name == "default" - assert vlan1.status == "active" - assert vlan1.vlan_type == "ethernet" - - vlan100 = Enum.find(vlans, &(&1.vlan_id == 100)) - assert vlan100.vlan_name == "Production" - assert vlan100.status == "active" - - vlan200 = Enum.find(vlans, &(&1.vlan_id == 200)) - assert vlan200.vlan_name == "Guest" - assert vlan200.status == "suspended" - end - - test "falls back to Q-BRIDGE-MIB when VTP not available" do - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # VTP returns empty - "1.3.6.1.4.1.9.9.46.1.3.1.1.4" -> - {:ok, []} - - # Q-BRIDGE-MIB has VLANs - "1.3.6.1.2.1.17.7.1.4.3.1.1" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.17.7.1.4.3.1.1.1", value: "default"}, - %{oid: "1.3.6.1.2.1.17.7.1.4.3.1.1.10", value: "Management"} - ]} - - "1.3.6.1.2.1.17.7.1.4.3.1.5" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.17.7.1.4.3.1.5.1", value: 1}, - %{oid: "1.3.6.1.2.1.17.7.1.4.3.1.5.10", value: 1} - ]} - - _ -> - {:ok, []} - end - end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - - # Should have found VLANs via Q-BRIDGE fallback - assert length(vlans) == 2 - end - - test "returns empty list when no VLANs found" do - stub(SnmpMock, :walk, fn _, _, _ -> {:ok, []} end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - assert vlans == [] - end - - test "handles VTP walk errors gracefully" do - stub(SnmpMock, :walk, fn _, _, _ -> {:error, :timeout} end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - assert vlans == [] - end - - test "handles various VTP VLAN states" do - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.4.1.9.9.46.1.3.1.1.4" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.1", value: "vlan1"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.2", value: "vlan2"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.3", value: "vlan3"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.4", value: "vlan4"} - ]} - - "1.3.6.1.4.1.9.9.46.1.3.1.1.2" -> - {:ok, - [ - # 1=operational, 2=suspended, 3=mtuTooBigForDevice, 4=mtuTooBigForTrunk - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.1", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.2", value: 2}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.3", value: 3}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.2.1.4", value: 4} - ]} - - "1.3.6.1.4.1.9.9.46.1.3.1.1.3" -> - {:ok, []} - - _ -> - {:ok, []} - end - end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - - vlan1 = Enum.find(vlans, &(&1.vlan_id == 1)) - assert vlan1.status == "active" - - vlan2 = Enum.find(vlans, &(&1.vlan_id == 2)) - assert vlan2.status == "suspended" - - vlan3 = Enum.find(vlans, &(&1.vlan_id == 3)) - assert vlan3.status == "suspended" - - vlan4 = Enum.find(vlans, &(&1.vlan_id == 4)) - assert vlan4.status == "suspended" - end - - test "handles various VTP VLAN types" do - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.4.1.9.9.46.1.3.1.1.4" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.1", value: "vlan1"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.2", value: "vlan2"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.3", value: "vlan3"} - ]} - - "1.3.6.1.4.1.9.9.46.1.3.1.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.9.9.46.1.3.1.1.3" -> - {:ok, - [ - # 1=ethernet, 2=fddi, 3=tokenRing - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.1", value: 1}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.2", value: 2}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.3.1.3", value: 3} - ]} - - _ -> - {:ok, []} - end - end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - - vlan1 = Enum.find(vlans, &(&1.vlan_id == 1)) - assert vlan1.vlan_type == "ethernet" - - vlan2 = Enum.find(vlans, &(&1.vlan_id == 2)) - assert vlan2.vlan_type == "fddi" - - vlan3 = Enum.find(vlans, &(&1.vlan_id == 3)) - assert vlan3.vlan_type == "tokenRing" - end - - test "validates VLAN ID range (1-4094)" do - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.4.1.9.9.46.1.3.1.1.4" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.0", value: "invalid0"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.1", value: "valid1"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.4094", value: "valid4094"}, - %{oid: "1.3.6.1.4.1.9.9.46.1.3.1.1.4.1.4095", value: "invalid4095"} - ]} - - _ -> - {:ok, []} - end - end) - - assert {:ok, vlans} = Cisco.discover_vlans(@client_opts) - - vlan_ids = Enum.map(vlans, & &1.vlan_id) - - assert 1 in vlan_ids - assert 4094 in vlan_ids - refute 0 in vlan_ids - refute 4095 in vlan_ids - end - end - - describe "sensor type parsing" do - test "attempts to discover Cisco-specific sensors" do - # Mock walk to indicate Cisco sensors available - # Note: snmp_adapter().walk returns {:ok, [%{oid: ..., value: ...}]} - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - # Mock individual get calls that get_multiple makes - # For each sensor, we need 7 OID calls (type, scale, precision, value, status, descr, name) - expect(SnmpMock, :get, 7, fn _, _, _ -> - # Return sample values for all 7 OIDs - {:ok, 8} - end) - - result = Cisco.discover_sensors(@client_opts) - - # Should attempt discovery and return sensors - assert {:ok, sensors} = result - assert is_list(sensors) - end - - test "falls back to Base when Cisco sensors fail" do - # Mock walk returning empty list for Cisco-specific - expect(SnmpMock, :walk, 2, fn _, _, _ -> - {:ok, []} - end) - - result = Cisco.discover_sensors(@client_opts) - - # Should fall back to Base profile - assert {:ok, []} = result - end - - test "discovers various sensor types" do - # Test different sensor types to cover more parsing functions - for sensor_type <- [1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14, 99] do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.#{sensor_type}", value: sensor_type}]} - end) - - # Mock get_multiple to return proper sensor data - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, sensor_type} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, -3} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, 1000} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, "Test Sensor"} - true -> {:ok, ""} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, _sensors} = result - end - end - - test "handles different sensor scales" do - for scale <- [-24, -12, -9, -6, -3, 0, 3, 5] do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, 8} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, scale} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, 1000} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, 1} - true -> {:ok, "Test"} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, _sensors} = result - end - end - - test "handles different sensor statuses" do - for status <- [1, 2, 3, 99] do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, 8} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, 0} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, 1000} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, status} - true -> {:ok, "Test"} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, _sensors} = result - end - end - - test "handles sensor with only name (no descr)" do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, 8} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, 0} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, 1000} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, ""} - true -> {:ok, "Sensor Name"} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, _sensors} = result - end - - test "handles sensor get_multiple failure" do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - # Mock get_multiple to fail - expect(SnmpMock, :get, 7, fn _, _, _ -> - {:error, :timeout} - end) - - # Falls back to Base.discover_sensors which calls walk again - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, []} - end) - - result = Cisco.discover_sensors(@client_opts) - - # Should return empty list when sensor building fails - assert {:ok, []} = result - end - - test "handles non-integer scale in calculate_divisor" do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, 8} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, "invalid"} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, 1000} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, 1} - true -> {:ok, "Test"} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, _sensors} = result - end - - test "handles invalid sensor value" do - expect(SnmpMock, :walk, fn _, _, _ -> - {:ok, [%{oid: "1.3.6.1.4.1.9.9.91.1.1.1.1.1.1000", value: 8}]} - end) - - expect(SnmpMock, :get, 7, fn _, oid, _ -> - cond do - String.contains?(oid, ".1.1.1.1.1.") -> {:ok, 8} - String.contains?(oid, ".1.1.1.1.2.") -> {:ok, 0} - String.contains?(oid, ".1.1.1.1.3.") -> {:ok, 1} - String.contains?(oid, ".1.1.1.1.4.") -> {:ok, "invalid"} - String.contains?(oid, ".1.1.1.1.5.") -> {:ok, 1} - true -> {:ok, "Test"} - end - end) - - result = Cisco.discover_sensors(@client_opts) - assert {:ok, sensors} = result - # Should still return sensor but with nil value - assert length(sensors) == 1 - end - end -end diff --git a/test/towerops/snmp/profiles/mikrotik_test.exs b/test/towerops/snmp/profiles/mikrotik_test.exs deleted file mode 100644 index b51b71c8..00000000 --- a/test/towerops/snmp/profiles/mikrotik_test.exs +++ /dev/null @@ -1,583 +0,0 @@ -defmodule Towerops.Snmp.Profiles.MikrotikTest do - use ExUnit.Case, async: true - use ExUnitProperties - - import Mox - - alias Towerops.Snmp.Profiles.Mikrotik - alias Towerops.Snmp.SnmpMock - - setup :verify_on_exit! - - @test_opts [ip: "192.168.1.1", community: "public", version: "2c"] - - describe "discover_system_info/1" do - test "merges base system info with MikroTik-specific info" do - # Mock Base.discover_system_info (via Client.get_multiple for system OIDs) - base_system_oids = [ - "1.3.6.1.2.1.1.1.0", - "1.3.6.1.2.1.1.2.0", - "1.3.6.1.2.1.1.3.0", - "1.3.6.1.2.1.1.4.0", - "1.3.6.1.2.1.1.5.0", - "1.3.6.1.2.1.1.6.0" - ] - - expect(SnmpMock, :get, length(base_system_oids), fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.1.1.0" -> - {:ok, {:octet_string, "RouterOS RB5009UG+S+ (stable) 7.13.2"}} - - "1.3.6.1.2.1.1.2.0" -> - {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 14_988, 1]}} - - "1.3.6.1.2.1.1.3.0" -> - {:ok, {:timeticks, 123_456_789}} - - "1.3.6.1.2.1.1.4.0" -> - {:ok, {:octet_string, "admin@example.com"}} - - "1.3.6.1.2.1.1.5.0" -> - {:ok, {:octet_string, "rb5009-main"}} - - "1.3.6.1.2.1.1.6.0" -> - {:ok, {:octet_string, "Data Center"}} - end - end) - - # Mock MikroTik-specific OIDs - mikrotik_oids = [ - "1.3.6.1.4.1.14988.1.1.7.3.0", - "1.3.6.1.4.1.14988.1.1.7.4.0", - "1.3.6.1.4.1.14988.1.1.7.9.0", - "1.3.6.1.4.1.14988.1.1.7.8.0", - "1.3.6.1.4.1.14988.1.1.7.5.0" - ] - - expect(SnmpMock, :get, length(mikrotik_oids), fn _, oid, _ -> - case oid do - "1.3.6.1.4.1.14988.1.1.7.3.0" -> {:ok, {:octet_string, "ABC123DEF456"}} - "1.3.6.1.4.1.14988.1.1.7.4.0" -> {:ok, {:octet_string, "7.13.2"}} - "1.3.6.1.4.1.14988.1.1.7.9.0" -> {:ok, {:octet_string, "RB5009UG+S+"}} - "1.3.6.1.4.1.14988.1.1.7.8.0" -> {:ok, {:octet_string, "RB5009"}} - "1.3.6.1.4.1.14988.1.1.7.5.0" -> {:ok, {:octet_string, "level6"}} - end - end) - - assert {:ok, info} = Mikrotik.discover_system_info(@test_opts) - - # Check base info - assert info.sys_descr == "RouterOS RB5009UG+S+ (stable) 7.13.2" - assert info.sys_name == "rb5009-main" - assert info.sys_location == "Data Center" - - # Check MikroTik-specific info - assert info.serial_number == "ABC123DEF456" - assert info.firmware_version == "7.13.2" - assert info.board_name == "RB5009UG+S+" - end - - test "handles missing MikroTik-specific OIDs gracefully" do - # Mock Base system info - expect(SnmpMock, :get, 6, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.1.1.0" -> {:ok, {:octet_string, "RouterOS Device"}} - "1.3.6.1.2.1.1.2.0" -> {:ok, {:object_identifier, [1, 3, 6, 1, 4, 1, 14_988]}} - "1.3.6.1.2.1.1.3.0" -> {:ok, {:timeticks, 12_345}} - "1.3.6.1.2.1.1.4.0" -> {:ok, {:octet_string, "admin"}} - "1.3.6.1.2.1.1.5.0" -> {:ok, {:octet_string, "router"}} - "1.3.6.1.2.1.1.6.0" -> {:ok, {:octet_string, "office"}} - end - end) - - # Mock MikroTik OIDs returning error - expect(SnmpMock, :get, 5, fn _, _, _ -> {:error, :no_such_object} end) - assert {:ok, info} = Mikrotik.discover_system_info(@test_opts) - - # Should still have base info - assert info.sys_descr == "RouterOS Device" - assert info.sys_name == "router" - end - end - - describe "discover_interfaces/1" do - test "delegates to Base.discover_interfaces" do - # Mock IF-MIB walk for interface indices - expect(SnmpMock, :walk, fn _, "1.3.6.1.2.1.2.2.1.1", _ -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.2.2.1.1.1", value: 1}, - %{oid: "1.3.6.1.2.1.2.2.1.1.2", value: 2} - ]} - end) - - # Mock interface data for each interface - expect(SnmpMock, :get, 16, fn _, oid, _ -> - cond do - String.ends_with?(oid, ".2.2.1.2.1") -> {:ok, {:octet_string, "ether1"}} - String.ends_with?(oid, ".2.2.1.2.2") -> {:ok, {:octet_string, "ether2"}} - String.ends_with?(oid, ".2.2.1.3.1") -> {:ok, {:integer, 6}} - String.ends_with?(oid, ".2.2.1.3.2") -> {:ok, {:integer, 6}} - String.ends_with?(oid, ".2.2.1.5.1") -> {:ok, {:gauge32, 1_000_000_000}} - String.ends_with?(oid, ".2.2.1.5.2") -> {:ok, {:gauge32, 1_000_000_000}} - String.ends_with?(oid, ".2.2.1.6.1") -> {:ok, {:octet_string, <<0x00, 0x0C, 0x42, 0xAB, 0xCD, 0xEF>>}} - String.ends_with?(oid, ".2.2.1.6.2") -> {:ok, {:octet_string, <<0x00, 0x0C, 0x42, 0x12, 0x34, 0x56>>}} - String.ends_with?(oid, ".2.2.1.7.1") -> {:ok, {:integer, 1}} - String.ends_with?(oid, ".2.2.1.7.2") -> {:ok, {:integer, 1}} - String.ends_with?(oid, ".2.2.1.8.1") -> {:ok, {:integer, 1}} - String.ends_with?(oid, ".2.2.1.8.2") -> {:ok, {:integer, 1}} - String.ends_with?(oid, ".31.1.1.1.1.1") -> {:ok, {:octet_string, "ether1"}} - String.ends_with?(oid, ".31.1.1.1.1.2") -> {:ok, {:octet_string, "ether2"}} - String.ends_with?(oid, ".31.1.1.1.18.1") -> {:ok, {:octet_string, "WAN"}} - String.ends_with?(oid, ".31.1.1.1.18.2") -> {:ok, {:octet_string, "LAN"}} - end - end) - - assert {:ok, interfaces} = Mikrotik.discover_interfaces(@test_opts) - - assert length(interfaces) == 2 - assert Enum.any?(interfaces, &(&1.if_descr == "ether1")) - assert Enum.any?(interfaces, &(&1.if_descr == "ether2")) - end - end - - describe "discover_sensors/1" do - test "discovers health sensors (temperature, voltage, fan)" do - # Mock health sensor OIDs + network sensors (DHCP leases, connection count) - # Health: 15 OIDs, Network: 2 OIDs = 17 total - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Voltages - "1.3.6.1.4.1.14988.1.1.3.1.0" -> {:ok, {:integer, 12}} - "1.3.6.1.4.1.14988.1.1.3.2.0" -> {:ok, {:integer, 33}} - "1.3.6.1.4.1.14988.1.1.3.3.0" -> {:ok, {:integer, 50}} - "1.3.6.1.4.1.14988.1.1.3.4.0" -> {:ok, {:integer, 120}} - "1.3.6.1.4.1.14988.1.1.3.8.0" -> {:ok, {:integer, 240}} - # Temperatures - "1.3.6.1.4.1.14988.1.1.3.5.0" -> {:ok, {:integer, 450}} - "1.3.6.1.4.1.14988.1.1.3.6.0" -> {:ok, {:integer, 550}} - "1.3.6.1.4.1.14988.1.1.3.7.0" -> {:ok, {:integer, 480}} - "1.3.6.1.4.1.14988.1.1.3.10.0" -> {:ok, {:integer, 500}} - "1.3.6.1.4.1.14988.1.1.3.11.0" -> {:ok, {:integer, 520}} - # Power & Current - "1.3.6.1.4.1.14988.1.1.3.13.0" -> {:ok, {:integer, 1500}} - "1.3.6.1.4.1.14988.1.1.3.12.0" -> {:ok, {:integer, 250}} - # Fans - "1.3.6.1.4.1.14988.1.1.3.17.0" -> {:ok, {:integer, 3000}} - "1.3.6.1.4.1.14988.1.1.3.18.0" -> {:ok, {:integer, 0}} - # Processor frequency - "1.3.6.1.4.1.14988.1.1.3.14.0" -> {:ok, {:integer, 1400}} - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 42}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 1500}} - end - end) - - # Mock all walk calls - use stub to allow any number of calls (code may short-circuit) - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # Health sensor table (new dynamic sensor discovery) - # SNMP adapter returns list of %{oid:, value:} maps - "1.3.6.1.4.1.14988.1.1.3.100.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.2.1", value: "CPU Temperature"}, - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.2.2", value: "Board Temperature"} - ]} - - "1.3.6.1.4.1.14988.1.1.3.100.1.3" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.3.1", value: 450}, - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.3.2", value: 480} - ]} - - "1.3.6.1.4.1.14988.1.1.3.100.1.4" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.4.1", value: 1}, - %{oid: "1.3.6.1.4.1.14988.1.1.3.100.1.4.2", value: 1} - ]} - - # CPU sensors - "1.3.6.1.2.1.25.3.3.1.2" -> - {:ok, [%{oid: "1.3.6.1.2.1.25.3.3.1.2.1", value: 45}]} - - # Storage sensors - "1.3.6.1.2.1.25.2.3.1.3" -> - {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.3.1", value: "RAM"}]} - - "1.3.6.1.2.1.25.2.3.1.5" -> - {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.5.1", value: 1000}]} - - "1.3.6.1.2.1.25.2.3.1.6" -> - {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.6.1", value: 750}]} - - # POE sensors (empty) - "1.3.6.1.4.1.14988.1.1.15.1.1.3" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.15.1.1.5" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.15.1.1.6" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.15.1.1.7" -> - {:error, :no_such_object} - - # Optical sensors (empty) - "1.3.6.1.4.1.14988.1.1.16.1.1.2" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.3" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.5" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.7" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.8" -> - {:error, :no_such_object} - - # Entity sensors from Base - "1.3.6.1.2.1.99.1.1.1.1" -> - {:ok, []} - end - end) - - assert {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - # Should have temperature sensors - temp_sensors = Enum.filter(sensors, &String.contains?(&1.sensor_type, "temperature")) - assert temp_sensors != [] - - # Should have voltage sensors - voltage_sensors = Enum.filter(sensors, &String.contains?(&1.sensor_type, "voltage")) - assert voltage_sensors != [] - - # Should have fan sensors - fan_sensors = Enum.filter(sensors, &(&1.sensor_type == "fan1")) - assert fan_sensors != [] - - # Check one sensor in detail - cpu_temp = Enum.find(sensors, &(&1.sensor_type == "cpu_temperature")) - assert cpu_temp - assert cpu_temp.sensor_unit == "°C" - assert cpu_temp.last_value == 55.0 - assert cpu_temp.status == "ok" - end - - test "discovers CPU load sensors" do - # Mock health sensors (15, all return error) + network sensors (2) - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 10}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 500}} - # All health sensors return error - _ -> {:error, :no_such_object} - end - end) - - # Mock all walk calls - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # CPU load per core - "1.3.6.1.2.1.25.3.3.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.25.3.3.1.2.1", value: 25}, - %{oid: "1.3.6.1.2.1.25.3.3.1.2.2", value: 50}, - %{oid: "1.3.6.1.2.1.25.3.3.1.2.3", value: 75}, - %{oid: "1.3.6.1.2.1.25.3.3.1.2.4", value: 95} - ]} - - # Storage, POE, optical, entity as empty - _ -> - {:error, :no_such_object} - end - end) - - assert {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - cpu_sensors = Enum.filter(sensors, &(&1.sensor_type == "cpu_load")) - assert length(cpu_sensors) == 4 - - # Check status determination - cpu1 = Enum.find(sensors, &(&1.sensor_index == "cpu1")) - assert cpu1.status == "ok" - assert cpu1.last_value == 25.0 - - cpu4 = Enum.find(sensors, &(&1.sensor_index == "cpu4")) - assert cpu4.status == "critical" - assert cpu4.last_value == 95.0 - end - - test "discovers storage sensors with proper status" do - # Mock health sensors (15, all return error) + network sensors (2) - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 10}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 500}} - # All health sensors return error - _ -> {:error, :no_such_object} - end - end) - - # Mock all walk calls - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # CPU (empty) - "1.3.6.1.2.1.25.3.3.1.2" -> - {:ok, []} - - # Storage sensors - "1.3.6.1.2.1.25.2.3.1.3" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.25.2.3.1.3.1", value: "Physical memory"}, - %{oid: "1.3.6.1.2.1.25.2.3.1.3.2", value: "/disk1"} - ]} - - "1.3.6.1.2.1.25.2.3.1.5" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.25.2.3.1.5.1", value: 8192}, - %{oid: "1.3.6.1.2.1.25.2.3.1.5.2", value: 10_000} - ]} - - "1.3.6.1.2.1.25.2.3.1.6" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.25.2.3.1.6.1", value: 7168}, - %{oid: "1.3.6.1.2.1.25.2.3.1.6.2", value: 9600} - ]} - - # POE, optical, entity as empty - _ -> - {:error, :no_such_object} - end - end) - - assert {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - memory_sensor = Enum.find(sensors, &(&1.sensor_type == "memory_usage")) - assert memory_sensor - assert memory_sensor.status == "warning" - assert memory_sensor.last_value == 87.5 - - disk_sensor = Enum.find(sensors, &(&1.sensor_type == "disk_usage")) - assert disk_sensor - assert disk_sensor.status == "critical" - assert disk_sensor.last_value == 96.0 - end - - test "discovers POE sensors per port" do - # Mock health sensors (15, all return error) + network sensors (2) - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 10}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 500}} - # All health sensors return error - _ -> {:error, :no_such_object} - end - end) - - # Mock all walk calls - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - # Health sensor table (checked before POE) - "1.3.6.1.4.1.14988.1.1.3.100.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.14988.1.1.3.100.1.3" -> - {:ok, []} - - "1.3.6.1.4.1.14988.1.1.3.100.1.4" -> - {:ok, []} - - # CPU sensors - "1.3.6.1.2.1.25.3.3.1.2" -> - {:ok, []} - - # Storage sensors - "1.3.6.1.2.1.25.2.3.1.3" -> - {:error, :no_such_object} - - "1.3.6.1.2.1.25.2.3.1.5" -> - {:error, :no_such_object} - - "1.3.6.1.2.1.25.2.3.1.6" -> - {:error, :no_such_object} - - # POE sensors - "1.3.6.1.4.1.14988.1.1.15.1.1.3" -> - {:ok, [%{oid: "1.3.6.1.4.1.14988.1.1.15.1.1.3.1", value: "ether1"}]} - - "1.3.6.1.4.1.14988.1.1.15.1.1.5" -> - {:ok, [%{oid: "1.3.6.1.4.1.14988.1.1.15.1.1.5.1", value: 480}]} - - "1.3.6.1.4.1.14988.1.1.15.1.1.6" -> - {:ok, [%{oid: "1.3.6.1.4.1.14988.1.1.15.1.1.6.1", value: 500}]} - - "1.3.6.1.4.1.14988.1.1.15.1.1.7" -> - {:ok, [%{oid: "1.3.6.1.4.1.14988.1.1.15.1.1.7.1", value: 240}]} - - # Optical sensors (empty) - "1.3.6.1.4.1.14988.1.1.16.1.1.2" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.3" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.5" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.7" -> - {:error, :no_such_object} - - "1.3.6.1.4.1.14988.1.1.16.1.1.8" -> - {:error, :no_such_object} - - # Entity sensors from Base - "1.3.6.1.2.1.99.1.1.1.1" -> - {:ok, []} - end - end) - - assert {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - poe_sensors = Enum.filter(sensors, &String.contains?(&1.sensor_type, "poe_")) - assert length(poe_sensors) == 3 - - voltage = Enum.find(sensors, &(&1.sensor_type == "poe_voltage")) - assert voltage.last_value == 48.0 - assert voltage.sensor_unit == "V" - end - end - - describe "identify_device/1" do - test "identifies MikroTik device from sysDescr with model" do - system_info = %{ - sys_descr: "RouterOS RB5009UG+S+ (stable) 7.13.2", - sys_name: "router1", - firmware_version: "7.13.2" - } - - result = Mikrotik.identify_device(system_info) - - assert result.manufacturer == "MikroTik" - assert result.model == "RB5009UG+S+" - assert result.firmware_version == "RouterOS 7.13.2" - end - - test "identifies generic RouterOS device when model not found" do - system_info = %{ - sys_descr: "RouterOS software version 7.12", - sys_name: "router1" - } - - result = Mikrotik.identify_device(system_info) - - assert result.manufacturer == "MikroTik" - assert result.model == "MikroTik RouterOS" - end - - test "extracts firmware from sysDescr when not in system_info" do - system_info = %{ - sys_descr: "RouterOS RB2011 version 6.49.7" - } - - result = Mikrotik.identify_device(system_info) - - assert result.manufacturer == "MikroTik" - assert result.model == "RB2011" - assert result.firmware_version == "6.49.7" - end - - property "always returns manufacturer and model" do - check all(sys_descr <- StreamData.string(:alphanumeric)) do - system_info = %{sys_descr: sys_descr} - - result = Mikrotik.identify_device(system_info) - - assert Map.has_key?(result, :manufacturer) - assert Map.has_key?(result, :model) - end - end - end - - describe "sensor status determination" do - test "CPU status changes with load" do - # Mock health sensors (15, all return error) + network sensors (2) - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 10}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 500}} - # All health sensors return error - _ -> {:error, :no_such_object} - end - end) - - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.25.3.3.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.2.1.25.3.3.1.2.1", value: 60}, - %{oid: "1.3.6.1.2.1.25.3.3.1.2.2", value: 85}, - %{oid: "1.3.6.1.2.1.25.3.3.1.2.3", value: 95} - ]} - - _ -> - {:error, :no_such_object} - end - end) - - {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - cpu1 = Enum.find(sensors, &(&1.sensor_index == "cpu1")) - cpu2 = Enum.find(sensors, &(&1.sensor_index == "cpu2")) - cpu3 = Enum.find(sensors, &(&1.sensor_index == "cpu3")) - - assert cpu1.status == "ok" - assert cpu2.status == "warning" - assert cpu3.status == "critical" - end - - test "memory status changes with usage percentage" do - # Mock health sensors (15, all return error) + network sensors (2) - expect(SnmpMock, :get, 17, fn _, oid, _ -> - case oid do - # Network sensors - "1.3.6.1.4.1.14988.1.1.1.3.0" -> {:ok, {:integer, 10}} - "1.3.6.1.4.1.14988.1.1.13.1.1.1.0" -> {:ok, {:integer, 500}} - # All health sensors return error - _ -> {:error, :no_such_object} - end - end) - - stub(SnmpMock, :walk, fn _, oid, _ -> - case oid do - "1.3.6.1.2.1.25.3.3.1.2" -> {:ok, []} - "1.3.6.1.2.1.25.2.3.1.3" -> {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.3.1", value: "memory"}]} - "1.3.6.1.2.1.25.2.3.1.5" -> {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.5.1", value: 1000}]} - "1.3.6.1.2.1.25.2.3.1.6" -> {:ok, [%{oid: "1.3.6.1.2.1.25.2.3.1.6.1", value: 970}]} - _ -> {:error, :no_such_object} - end - end) - - {:ok, sensors} = Mikrotik.discover_sensors(@test_opts) - - memory = Enum.find(sensors, &(&1.sensor_type == "memory_usage")) - assert memory.status == "critical" - assert memory.last_value == 97.0 - end - end -end diff --git a/test/towerops/snmp/profiles/net_snmp_test.exs b/test/towerops/snmp/profiles/net_snmp_test.exs deleted file mode 100644 index 42a28bcf..00000000 --- a/test/towerops/snmp/profiles/net_snmp_test.exs +++ /dev/null @@ -1,306 +0,0 @@ -defmodule Towerops.Snmp.Profiles.NetSnmpTest do - use ExUnit.Case, async: true - - import Mox - - alias Towerops.Snmp.Profiles.NetSnmp - alias Towerops.Snmp.SnmpMock - - setup :verify_on_exit! - - @client_opts [ip: "192.168.1.100", community: "public", version: :v2c, port: 161] - - describe "discover_system_info/1" do - test "returns empty map (no additional system info beyond Base)" do - # NetSnmp profile doesn't query additional system OIDs - # Base profile handles all standard system info discovery - result = NetSnmp.discover_system_info(@client_opts) - - assert {:ok, system_info} = result - assert system_info == %{} - end - end - - describe "discover_interfaces/1" do - test "delegates to Base profile" do - # Mock SNMP walk for interfaces - expect(SnmpMock, :walk, fn _target, _oid, _opts -> - {:ok, []} - end) - - result = NetSnmp.discover_interfaces(@client_opts) - - assert {:ok, []} = result - end - end - - describe "discover_sensors/1" do - test "discovers LM-SENSORS temperature sensors" do - # Mock walks for LM-SENSORS temperature devices and values - expect(SnmpMock, :walk, 6, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.13.16.2.1.2" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.2021.13.16.2.1.2.1", value: "Core 0"}, - %{oid: "1.3.6.1.4.1.2021.13.16.2.1.2.2", value: "Core 1"} - ]} - - "1.3.6.1.4.1.2021.13.16.2.1.3" -> - {:ok, - [ - %{oid: "1.3.6.1.4.1.2021.13.16.2.1.3.1", value: 45_000}, - %{oid: "1.3.6.1.4.1.2021.13.16.2.1.3.2", value: 46_000} - ]} - - "1.3.6.1.4.1.2021.13.16.3.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.3.1.3" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.4.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.4.1.3" -> - {:ok, []} - - _ -> - {:error, :unknown_oid} - end - end) - - # Mock UCD-SNMP load and memory sensors - expect(SnmpMock, :get, 5, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.10.1.3.1" -> {:ok, 150} - "1.3.6.1.4.1.2021.10.1.3.2" -> {:ok, 200} - "1.3.6.1.4.1.2021.10.1.3.3" -> {:ok, 180} - "1.3.6.1.4.1.2021.4.5.0" -> {:ok, 8_000_000} - "1.3.6.1.4.1.2021.4.6.0" -> {:ok, 2_000_000} - _ -> {:error, :unknown_oid} - end - end) - - result = NetSnmp.discover_sensors(@client_opts) - - assert {:ok, sensors} = result - assert is_list(sensors) - refute Enum.empty?(sensors) - - # Should have temperature sensors - temp_sensors = Enum.filter(sensors, &(&1.sensor_type == "celsius")) - assert length(temp_sensors) == 2 - - # Should have load sensors - load_sensors = Enum.filter(sensors, &(&1.sensor_type == "load")) - assert length(load_sensors) == 3 - - # Should have memory sensor - memory_sensors = Enum.filter(sensors, &(&1.sensor_type == "memory")) - assert length(memory_sensors) == 1 - end - - test "falls back to Base profile when Net-SNMP sensors not available" do - # Mock walks returning empty for LM-SENSORS (6 walks) - # and Base profile fallback (1 walk for ENTITY-SENSOR-MIB) - expect(SnmpMock, :walk, 7, fn _target, _oid, _opts -> - {:ok, []} - end) - - # Mock get calls returning errors for UCD-SNMP - # - 3 calls for load sensors - # - 2 calls for memory sensors - expect(SnmpMock, :get, 5, fn _target, _oid, _opts -> - {:error, :no_such_object} - end) - - result = NetSnmp.discover_sensors(@client_opts) - - # Should fall back to Base profile and return empty list - assert {:ok, []} = result - end - end - - describe "identify_device/1" do - test "identifies Ubuntu from sysDescr" do - system_info = %{ - sys_descr: "Linux ubuntu 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64", - sys_name: "ubuntu-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Ubuntu" - assert is_nil(device_info.firmware_version) - end - - test "identifies Ubuntu with version" do - system_info = %{ - sys_descr: "Linux ubuntu Ubuntu/20.04 5.4.0-42-generic", - sys_name: "ubuntu-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Ubuntu" - assert device_info.firmware_version == "20.04" - end - - test "identifies Debian from sysDescr" do - system_info = %{ - sys_descr: "Linux debian Debian/10.5 4.19.0-10-amd64", - sys_name: "debian-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Debian" - assert device_info.firmware_version == "10.5" - end - - test "identifies CentOS from sysDescr" do - system_info = %{ - sys_descr: "Linux centos CentOS/7.8 3.10.0-1127.el7.x86_64", - sys_name: "centos-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "CentOS" - assert device_info.firmware_version == "7.8" - end - - test "identifies Red Hat from sysDescr" do - system_info = %{ - sys_descr: "Linux rhel Red Hat/8.2 4.18.0-193.el8.x86_64", - sys_name: "rhel-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Red Hat Enterprise Linux" - assert device_info.firmware_version == "8.2" - end - - test "identifies generic Linux from sysDescr" do - system_info = %{ - sys_descr: "Linux server Linux/5.4.0-generic x86_64", - sys_name: "linux-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Linux" - # Regex only matches digits and dots - assert device_info.firmware_version == "5.4.0" - end - - test "identifies Unix for unknown systems" do - system_info = %{ - sys_descr: "FreeBSD server 12.1-RELEASE", - sys_name: "freebsd-server" - } - - device_info = NetSnmp.identify_device(system_info) - - assert device_info.manufacturer == "Linux" - assert device_info.model == "Unix" - assert is_nil(device_info.firmware_version) - end - end - - describe "sensor discovery edge cases" do - test "handles fan sensors" do - # Mock walks for fan sensors - expect(SnmpMock, :walk, 6, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.13.16.2.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.2.1.3" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.3.1.2" -> - {:ok, [%{oid: "1.3.6.1.4.1.2021.13.16.3.1.2.1", value: "System Fan"}]} - - "1.3.6.1.4.1.2021.13.16.3.1.3" -> - {:ok, [%{oid: "1.3.6.1.4.1.2021.13.16.3.1.3.1", value: 2500}]} - - "1.3.6.1.4.1.2021.13.16.4.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.4.1.3" -> - {:ok, []} - end - end) - - # Mock UCD-SNMP sensors - expect(SnmpMock, :get, 5, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.10.1.3.1" -> {:ok, 100} - "1.3.6.1.4.1.2021.10.1.3.2" -> {:ok, 150} - "1.3.6.1.4.1.2021.10.1.3.3" -> {:ok, 120} - "1.3.6.1.4.1.2021.4.5.0" -> {:ok, 16_000_000} - "1.3.6.1.4.1.2021.4.6.0" -> {:ok, 4_000_000} - end - end) - - result = NetSnmp.discover_sensors(@client_opts) - - assert {:ok, sensors} = result - fan_sensors = Enum.filter(sensors, &(&1.sensor_type == "rpm")) - assert length(fan_sensors) == 1 - assert hd(fan_sensors).sensor_descr == "System Fan" - end - - test "handles voltage sensors" do - # Mock walks for voltage sensors - expect(SnmpMock, :walk, 6, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.13.16.2.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.2.1.3" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.3.1.2" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.3.1.3" -> - {:ok, []} - - "1.3.6.1.4.1.2021.13.16.4.1.2" -> - {:ok, [%{oid: "1.3.6.1.4.1.2021.13.16.4.1.2.1", value: "VCore"}]} - - "1.3.6.1.4.1.2021.13.16.4.1.3" -> - {:ok, [%{oid: "1.3.6.1.4.1.2021.13.16.4.1.3.1", value: 1_200}]} - end - end) - - # Mock UCD-SNMP sensors - expect(SnmpMock, :get, 5, fn _target, oid, _opts -> - case oid do - "1.3.6.1.4.1.2021.10.1.3.1" -> {:ok, 80} - "1.3.6.1.4.1.2021.10.1.3.2" -> {:ok, 90} - "1.3.6.1.4.1.2021.10.1.3.3" -> {:ok, 85} - "1.3.6.1.4.1.2021.4.5.0" -> {:ok, 32_000_000} - "1.3.6.1.4.1.2021.4.6.0" -> {:ok, 8_000_000} - end - end) - - result = NetSnmp.discover_sensors(@client_opts) - - assert {:ok, sensors} = result - voltage_sensors = Enum.filter(sensors, &(&1.sensor_type == "volts")) - assert length(voltage_sensors) == 1 - assert hd(voltage_sensors).sensor_descr == "VCore" - end - end -end