docs/npm/snmp-traps/README.md
Netdata listens for SNMP Trap and INFORM notifications from your network devices, decodes them into named, categorized, structured log entries, summarizes receiver activity as metrics, and can forward the same events to a SIEM or log system.
This section is for NetOps, NOC, SRE, SecOps, and MSP operators who need to know which network events a device reported, whether the receiver is healthy, and when trap data should be queried or forwarded.
Decoded trap and INFORM events in the Netdata Logs tab — named, categorized, and searchable, with severity and source.
An SNMP trap is an asynchronous event notification. A device sends one when it decides something happened — an interface changed state, an authentication failed, a configuration changed, a sensor crossed a threshold. It is one telemetry leg among several: traps and streaming telemetry carry events, polling confirms current state, syslog carries narrative, flow carries traffic. Traps are indispensable because every device supports them and they catch transient transitions that polling would miss between intervals.
Three facts decide how you read every trap, and they are how trap monitoring works everywhere — not Netdata specifics:
If those are your questions, use traps together with polling, device configuration, and receiver health.
These two truths prevent the most common first-week mistakes.
Netdata does not create listener jobs or configure devices for you. You create a listener job, then point devices at it. Until you have confirmed the first trap arrived — and you are watching receiver metrics — a quiet receiver tells you nothing: it could be a quiet network, an unconfigured device, a blocked port, wrong credentials, or a broken receiver. Confirm first receipt before you trust silence.
A count tells you the receiver saw activity, not whether it matters. Use the resolved trap name, category, severity, source, and varbinds to understand meaning, then check dedup, drops, decode errors, and export errors to confirm the receiver handled the traffic cleanly.
journalctl.state_change, config_change, security, auth, license, mobility, diagnostic, unknown) and 8 severities (emerg … debug), so categories and severities mean the same thing across every device.Trap data can carry sensitive operational values (hostnames, locations, usernames, vendor text); treat it as sensitive when querying and forwarding.
Pick the page that matches your situation: