我目前有一个应用程序,当我的程序无法访问外部 API 时会引发 SNMP 警报。当我成功地从 API 获得响应时,我会清除警报。
下面是相同的代码。
// Call Webservice to check the external API is up or not
logger.debug("Sending trap data Clear Alarm {}" , trapData);
AlarmTrap.INTERFACE_SMSC_STATUS.clear(trapData);
}
catch(CustomException e)
{
AlarmTrap.INTERFACE_SMSC_STATUS.raise(trapData);
logger.error("Error " + e);
throw e;
}
正如您所看到的,对于每个成功的响应,我都在清除警报。虽然对当前执行没有影响,因为 SNMP 服务器丢弃了相同类型的警报。我想知道这是否是好的做法。以及 SNMP 协议本身是否处理重复警报并且不发送到网络。