Search in sources :

Example 1 with SnmpParameters

use of com.sun.jmx.snmp.SnmpParameters in project jdk8u_jdk by JetBrains.

the class JVM_MANAGEMENT_MIB_IMPL method sendTrap.

private synchronized void sendTrap(SnmpOid trap, SnmpVarBindList list) {
    final Iterator<NotificationTarget> iterator = notificationTargets.iterator();
    final SnmpAdaptorServer adaptor = (SnmpAdaptorServer) getSnmpAdaptor();
    if (adaptor == null) {
        log.error("sendTrap", "Cannot send trap: adaptor is null.");
        return;
    }
    if (!adaptor.isActive()) {
        log.config("sendTrap", "Adaptor is not active: trap not sent.");
        return;
    }
    while (iterator.hasNext()) {
        NotificationTarget target = null;
        try {
            target = iterator.next();
            SnmpPeer peer = new SnmpPeer(target.getAddress(), target.getPort());
            SnmpParameters p = new SnmpParameters();
            p.setRdCommunity(target.getCommunity());
            peer.setParams(p);
            log.debug("handleNotification", "Sending trap to " + target.getAddress() + ":" + target.getPort());
            adaptor.snmpV2Trap(peer, trap, list, null);
        } catch (Exception e) {
            log.error("sendTrap", "Exception occurred while sending trap to [" + target + "]. Exception : " + e);
            log.debug("sendTrap", e);
        }
    }
}
Also used : SnmpAdaptorServer(com.sun.jmx.snmp.daemon.SnmpAdaptorServer) SnmpParameters(com.sun.jmx.snmp.SnmpParameters) InstanceAlreadyExistsException(javax.management.InstanceAlreadyExistsException) ListenerNotFoundException(javax.management.ListenerNotFoundException) SnmpPeer(com.sun.jmx.snmp.SnmpPeer)

Example 2 with SnmpParameters

use of com.sun.jmx.snmp.SnmpParameters in project jdk8u_jdk by JetBrains.

the class SnmpAdaptorServer method snmpV2Trap.

/**
     * Sends a trap using SNMP V2 trap format.
     * <BR>The trap is sent to the specified <CODE>SnmpPeer</CODE> destination.
     * <BR>The community string used is the one located in the
     * <CODE>SnmpPeer</CODE> parameters
     * (<CODE>SnmpParameters.getRdCommunity() </CODE>).
     * <BR>The variable list included in the outgoing trap is composed of
     * the following items:
     * <UL>
     * <LI><CODE>sysUpTime.0</CODE> with the value specified by
     *     <CODE>time</CODE></LI>
     * <LI><CODE>snmpTrapOid.0</CODE> with the value specified by
     *     <CODE>trapOid</CODE></LI>
     * <LI><CODE>all the (oid,values)</CODE> from the specified
     *     <CODE>varBindList</CODE></LI>
     * </UL>
     *
     * @param peer The <CODE>SnmpPeer</CODE> destination of the trap.
     * @param trapOid The OID identifying the trap.
     * @param varBindList A list of <CODE>SnmpVarBind</CODE> instances or null.
     * @param time The time stamp (overwrite the current time).
     *
     * @exception IOException An I/O error occurred while sending the trap.
     * @exception SnmpStatusException If the trap exceeds the limit
     * defined by <CODE>bufferSize</CODE>.
     *
     * @since 1.5
     */
@Override
public void snmpV2Trap(SnmpPeer peer, SnmpOid trapOid, SnmpVarBindList varBindList, SnmpTimeticks time) throws IOException, SnmpStatusException {
    SnmpParameters p = (SnmpParameters) peer.getParams();
    snmpV2Trap(peer.getDestAddr(), peer.getDestPort(), p.getRdCommunity(), trapOid, varBindList, time);
}
Also used : SnmpParameters(com.sun.jmx.snmp.SnmpParameters)

Example 3 with SnmpParameters

use of com.sun.jmx.snmp.SnmpParameters in project jdk8u_jdk by JetBrains.

the class SnmpAdaptorServer method snmpV1Trap.

/**
     * Sends a trap using SNMP V1 trap format.
     * <BR>The trap is sent to the specified <CODE>SnmpPeer</CODE> destination.
     * The community string used is the one located in the
     * <CODE>SnmpPeer</CODE> parameters
     * (<CODE>SnmpParameters.getRdCommunity() </CODE>).
     *
     * @param peer The <CODE>SnmpPeer</CODE> destination of the trap.
     * @param agentAddr The agent address to be used for the trap.
     * @param enterpOid The enterprise OID to be used for the trap.
     * @param generic The generic number of the trap.
     * @param specific The specific number of the trap.
     * @param varBindList A list of <CODE>SnmpVarBind</CODE> instances or null.
     * @param time The time stamp (overwrite the current time).
     *
     * @exception IOException An I/O error occurred while sending the trap.
     * @exception SnmpStatusException If the trap exceeds the limit
     * defined by <CODE>bufferSize</CODE>.
     *
     * @since 1.5
     */
@Override
public void snmpV1Trap(SnmpPeer peer, SnmpIpAddress agentAddr, SnmpOid enterpOid, int generic, int specific, SnmpVarBindList varBindList, SnmpTimeticks time) throws IOException, SnmpStatusException {
    SnmpParameters p = (SnmpParameters) peer.getParams();
    snmpV1Trap(peer.getDestAddr(), peer.getDestPort(), agentAddr, p.getRdCommunity(), enterpOid, generic, specific, varBindList, time);
}
Also used : SnmpParameters(com.sun.jmx.snmp.SnmpParameters)

Aggregations

SnmpParameters (com.sun.jmx.snmp.SnmpParameters)3 SnmpPeer (com.sun.jmx.snmp.SnmpPeer)1 SnmpAdaptorServer (com.sun.jmx.snmp.daemon.SnmpAdaptorServer)1 InstanceAlreadyExistsException (javax.management.InstanceAlreadyExistsException)1 ListenerNotFoundException (javax.management.ListenerNotFoundException)1