# plugins/snmp/plugin.yaml name: snmp version: "1.0.0" description: "SNMP polling for network devices — switches, routers, printers, UPSes, etc." author: "Steward" license: "MIT" min_app_version: "0.1.0" repository_url: "https://git.fabledsword.com/bvandeusen/Steward-plugins" homepage: "https://git.fabledsword.com/bvandeusen/Steward-plugins/src/branch/main/snmp" tags: - snmp - network - monitoring config: poll_interval_seconds: 60 # Each device is polled independently. OIDs must resolve to numeric values. # # `host` is the SNMP poll target (IP/hostname we query). A device also shows # up on a Steward Host's detail page when it maps to that host. By default # that mapping is implicit: `host` is matched against the Host's address or # name. To bind explicitly instead — e.g. when you poll by IP but the Host is # recorded by DNS name, or for an SNMP-only switch/PDU/UPS — add ONE of: # host_id: "" # exact Host.id match # steward_host: "switch01" # Host name OR address (case-insensitive) # An explicit binding is exclusive: the device then maps ONLY to that host, # never implicitly to another by a coincidental address string. devices: - name: "core-switch" host: "192.168.1.1" port: 161 community: "public" version: "2c" # "1", "2c", or "3" oids: - oid: "1.3.6.1.2.1.1.3.0" label: "uptime_centisecs" - oid: "1.3.6.1.2.1.2.2.1.10.1" label: "if1_in_octets" - oid: "1.3.6.1.2.1.2.2.1.16.1" label: "if1_out_octets" # Example: network UPS with SNMP management card (RFC 1628 UPS-MIB). # upsBatteryStatus values: 1=unknown, 2=batteryNormal, 3=batteryLow, 4=batteryDepleted. # Uncomment and point at your UPS to enable. # - name: "ups" # host: "192.168.1.10" # port: 161 # community: "public" # version: "2c" # oids: # - oid: "1.3.6.1.2.1.33.1.2.1.0" # label: "battery_status" # - oid: "1.3.6.1.2.1.33.1.2.2.0" # label: "seconds_on_battery" # - oid: "1.3.6.1.2.1.33.1.2.3.0" # label: "runtime_minutes_remaining" # - oid: "1.3.6.1.2.1.33.1.2.4.0" # label: "battery_charge_pct" # - oid: "1.3.6.1.2.1.33.1.3.3.1.3.1" # label: "input_voltage_dV"