How to print unhandled SNMPv3 traps

Hi All,

I have configured a SNMPv3 Trap Receiver with some predefined USMUsers, but how can I print v3 traps for any undefined USMUser, basically which are getting discarded.

You need to register a TransportListener before you add the transport to the Snmp instance.
Even easier, you can implement your own MessageDispatcher and override the following method as shown below:

@Override
public void processMessage(TransportMapping sourceTransport,
                           Address incomingAddress, ByteBuffer wholeMessage,
                           TransportStateReference tsr) {
    logger.processMessage(sourceTransport, incomingAddress, wholeMessage, tsr);
    super.processMessage(sourceTransport, incomingAddress, wholeMessage, tsr);
}
...
class Logger implements TransportListener {
  public void processMessage(TransportMapping sourceTransport,
                             Address incomingAddress,
                             ByteBuffer wholeMessage,
                             TransportStateReference tsr) {
      if (enabled) {
          byte[] msg = new byte[wholeMessage.remaining()];
          wholeMessage.get(msg);
          wholeMessage.rewind();
          addEntry(incomingAddress, sourceTransport.getListenAddress(), msg);
      }
      ...
   }
}
1 Like

@AGENTPP Many Thanks! :bowing_man: :pray: