SnmpKit.SnmpSim.ProfileLoader (snmpkit v0.6.4)
Flexible profile loading supporting multiple sources and progressive enhancement. Start with simple walk files, upgrade to MIB-based simulation when ready.
Summary
Functions
Find the next OID after the given OID for GETNEXT operations.
Get the value for a specific OID from a loaded profile.
Get all OIDs in lexicographic order for GETNEXT operations.
Load a device profile from various source types.
Functions
Find the next OID after the given OID for GETNEXT operations.
Get the value for a specific OID from a loaded profile.
Examples
value = SnmpKit.SnmpSim.ProfileLoader.get_oid_value(profile, "1.3.6.1.2.1.1.1.0")
Get all OIDs in lexicographic order for GETNEXT operations.
Load a device profile from various source types.
Supported source types:
{:walk_file, path}
- SNMP walk files (both named and numeric formats){:oid_walk, path}
- Raw OID dumps (numeric OIDs only){:json_profile, path}
- Structured JSON profiles{:manual, oid_map}
- Manual OID definitions (for testing){:compiled_mib, mib_files}
- Advanced MIB compilation (future)
Examples
# Load from SNMP walk file
profile = SnmpKit.SnmpSim.ProfileLoader.load_profile(
:cable_modem,
{:walk_file, "priv/walks/cable_modem.walk"}
)
# Load with behaviors
profile = SnmpKit.SnmpSim.ProfileLoader.load_profile(
:cable_modem,
{:walk_file, "priv/walks/cable_modem.walk"},
behaviors: [
{:increment_counters, rate: 1000},
{:vary_gauges, variance: 0.1}
]
)