SNMP Inventory Tool

SNMP Inventory Collection

SNMP inventory collection is the process of using SNMP queries to gather detailed hardware and software information from network devices. By sending SNMP GET requests to specific OIDs, a network management system can automatically retrieve key inventory data such as:

  • Device model and manufacturer

  • Serial number

  • Software and firmware versions

  • Hardware modules, line cards, and transceivers

  • Interface types, speeds, and MAC addresses

  • System uptime and capabilities

This data is usually stored in the SNMP system (sysObjectID, sysDescr) and entity MIBs, which describe the physical and logical components of a device.

Inventory collection allows organizations to:

  • Maintain accurate asset records

  • Track software versions for compliance and security

  • Identify aging or unsupported hardware

  • Support capacity planning and lifecycle management

Because the process is automated through regular SNMP polling, inventory information stays up to date without requiring manual intervention. This makes SNMP a reliable and standardized method for maintaining visibility into the equipment deployed across the network.

Inventory & Profiles

  • Equipment Types: Add/remove vendor/model–tagged equipment types.

  • SNMPv3 Profiles (no EngineID): Per-equipment profiles with security level (noAuthNoPriv/authNoPriv/authPriv), user, auth/priv protocols & keys, port/timeout/retries.

  • Inventory Profiles (formerly Interface Profiles): Define OID sets per equipment type with friendly Header Names (e.g., “Hostname”, “SysUptime”). No interface/description fields.

Devices

  • Device Registry: Create devices with name, IP, equipment type, SNMPv3 profile, and inventory profile.

  • Inline Editing Table: Change a device’s equipment/profile assignments in place; quick remove; click device name to view its collected data.

Data Collection

  • Single-Cycle Run: Press Run to poll all valid devices once; press Stop to cancel mid-cycle.

  • pysnmp Integration + Simulator Fallback: Uses pysnmp when available; otherwise deterministic simulated values for testing.

  • OID Sanitization & Backward Compatibility: Cleans dotted numeric OIDs and supports legacy profile formats.

Live Status & UX

  • Run Indicator + Inline Status Panel: “Running/Stopped” plus a status panel next to it that updates live with:

    • Completed device count (shown in the same green as the running indicator)

    • Failed device count (failed = any device where at least one OID read errored)

  • Completion Prompt: Modal dialog when the cycle finishes.

  • Dark/Light Mode Toggle.

Logging & Monitoring

  • In-App Monitor Tab: Live log stream and historical log from app.log.

  • Structured Logging: OK/FAIL outcomes per OID with device/profile context.

Storage & Reports

  • Local CSV Persistence: Equipment, SNMP profiles, inventory profiles, devices, and collected samples are stored as CSVs.

  • Per-Run Exports (Auto):

    • Per-IP report and Per-Equipment-Type report written to ./reports/ (e.g., oid_results_ip_10.0.0.1_YYYYMMDD_HHMMSS.csv).

  • Correct App Paths: Paths resolve to the app’s directory (not temp), including when packaged (e.g., PyInstaller).

Data Viewer

  • Per-Device Data Window: Shows all samples for a device with columns:

    • Timestamp (UTC), IP, Profile, OID, Header Name, Value.

Safety & Validation

  • Form Validation: Required fields enforced (e.g., device name/IP, profile names, at least one OID).

  • Graceful Errors: User messages for invalid operations; robust exception logging.

SNMP OID Equipment Type Tab - Used for creating equipment types

Screenshot of SNMP Inventory & Collector software displaying equipment details, with status indicators at the top showing completed, stopped, and failed counts.

SNMP OID SNMP Profile Tab - Used to create SNMP profiles for each equipment type

Screenshot of SNMP Inventory & Collector software showing a profile named 'Generic', equipment type 'Generic (ID 1)', security level 'authPriv', username, MD5 authentication protocol, DES privacy protocol, port 161, timeout 2 seconds, and 1 retry. The profile details are listed in a table.

SNMP Inventory OID Profile Tab - Used to create Inventory profiles using a collection of OID’s

Screenshot of SNMP Inventory & Collector software interface displaying inventory profiles with one profile named 'Generic' containing equipment and OID details.

SNMP Inventory Device Tab - Used to add new devices to the system

Screenshot of SNMP Inventory & Collector software interface displaying device data. The interface shows multiple network devices with details like IDs, names, IP addresses, equipment types, profiles, and options to save or remove each device.

SNMP Inventory Monitor Tab - Used to monitor system and collection updates

Screenshot of SNMP Inventory & Collector software showing log details and status messages.