use of org.opennms.netmgt.xml.eventconf.Mask in project opennms by OpenNMS.
the class SpectrumTrapImporter method makeEventMask.
public Mask makeEventMask(AlertMapping mapping) {
Mask mask = new Mask();
// Trap-OID
Maskelement me = new Maskelement();
me.setMename("id");
me.setMevalue(new String[] { mapping.getTrapOid() });
mask.addMaskelement(me);
// Generic-type
me = new Maskelement();
me.setMename("generic");
me.setMevalue(new String[] { mapping.getTrapGenericType() });
mask.addMaskelement(me);
// Specific-type
me = new Maskelement();
me.setMename("specific");
me.setMevalue(new String[] { mapping.getTrapSpecificType() });
mask.addMaskelement(me);
return mask;
}
use of org.opennms.netmgt.xml.eventconf.Mask in project opennms by OpenNMS.
the class JsmiMibParser method getTrapEvent.
/**
* Gets the trap event.
*
* @param trap the trap object
* @param ueibase the UEI base
* @return the trap event
*/
protected Event getTrapEvent(Notification trap, String ueibase) {
// Build default severity
String severity = OnmsSeverity.INDETERMINATE.toString();
severity = severity.substring(0, 1).toUpperCase() + severity.substring(1).toLowerCase();
// Set the event's UEI, event-label, logmsg, severity, and descr
Event evt = new Event();
evt.setUei(getTrapEventUEI(trap, ueibase));
evt.setEventLabel(getTrapEventLabel(trap));
evt.setLogmsg(getTrapEventLogmsg(trap));
evt.setSeverity(severity);
evt.setDescr(getTrapEventDescr(trap));
List<Varbindsdecode> decode = getTrapVarbindsDecode(trap);
if (!decode.isEmpty()) {
evt.setVarbindsdecodes(decode);
}
evt.setMask(new Mask());
// The "ID" mask element (trap enterprise)
addMaskElement(evt, "id", getTrapEnterprise(trap));
// The "generic" mask element: hard-wired to enterprise-specific(6)
addMaskElement(evt, "generic", "6");
// The "specific" mask element (trap specific-type)
addMaskElement(evt, "specific", getTrapSpecificType(trap));
return evt;
}
use of org.opennms.netmgt.xml.eventconf.Mask in project opennms by OpenNMS.
the class EventForm method createBasicEvent.
/**
* Creates the OpenNMS event.
*
* @return the basic example OpenNMS event
*/
public org.opennms.netmgt.xml.eventconf.Event createBasicEvent() {
org.opennms.netmgt.xml.eventconf.Event e = new org.opennms.netmgt.xml.eventconf.Event();
e.setUei("uei.opennms.org/newEvent");
e.setEventLabel("New Event");
e.setDescr("New Event Description");
e.setLogmsg(new Logmsg());
e.getLogmsg().setContent("New Event Log Message");
e.getLogmsg().setDest(LogDestType.LOGNDISPLAY);
e.setSeverity("Indeterminate");
e.setMask(new Mask());
e.setAlarmData(new AlarmData());
return e;
}
use of org.opennms.netmgt.xml.eventconf.Mask in project opennms by OpenNMS.
the class EventPanel method saveFile.
/**
* Save file.
*
* @param file the file
* @param logger the logger
*/
private void saveFile(final File file, final Logger logger) {
try {
// Updating the base events object with the new events set.
baseEventsObject.setEvents(eventTable.getOnmsEvents());
// TODO Are other normalizations required ?
for (org.opennms.netmgt.xml.eventconf.Event event : baseEventsObject.getEvents()) {
logger.debug("Normalizing event " + event.getUei());
final AlarmData ad = event.getAlarmData();
if (ad != null && (ad.getReductionKey() == null || ad.getReductionKey().trim().isEmpty())) {
event.setAlarmData(null);
}
final Mask m = event.getMask();
if (m != null && m.getMaskelements().isEmpty()) {
event.setMask(null);
}
}
// Save the XML of the new events
saveEvents(baseEventsObject, file, logger);
// Add a reference to the new file into eventconf.xml if there are events
String fileName = file.getAbsolutePath().replaceFirst(".*\\" + File.separatorChar + "events\\" + File.separatorChar + "(.*)", "events" + File.separatorChar + "$1");
final Events rootEvents = eventConfDao.getRootEvents();
final File rootFile = ConfigFileConstants.getFile(ConfigFileConstants.EVENT_CONF_FILE_NAME);
if (baseEventsObject.getEvents().size() > 0) {
if (!rootEvents.getEventFiles().contains(fileName)) {
logger.info("Adding a reference to " + fileName + " inside eventconf.xml.");
rootEvents.getEventFiles().add(0, fileName);
saveEvents(rootEvents, rootFile, logger);
}
} else {
// If a reference to an empty events file exist, it should be removed.
if (rootEvents.getEventFiles().contains(fileName)) {
logger.info("Removing a reference to " + fileName + " inside eventconf.xml because there are no events.");
rootEvents.getEventFiles().remove(fileName);
saveEvents(rootEvents, rootFile, logger);
}
}
EventBuilder eb = new EventBuilder(EventConstants.EVENTSCONFIG_CHANGED_EVENT_UEI, "WebUI");
eventProxy.send(eb.getEvent());
logger.info("The event's configuration reload operation is being performed.");
success();
} catch (Exception e) {
logger.error(e.getClass() + ": " + (e.getMessage() == null ? "[No Details]" : e.getMessage()));
if (e.getMessage() == null) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
logger.error(sw.toString());
}
failure(e.getMessage());
}
}
use of org.opennms.netmgt.xml.eventconf.Mask in project opennms by OpenNMS.
the class Mib2Events method getTrapEvent.
public Event getTrapEvent(MibValueSymbol trapValueSymbol, String ueibase) {
Event evt = new Event();
// Set the event's UEI, event-label, logmsg, severity, and descr
evt.setUei(getTrapEventUEI(trapValueSymbol, ueibase));
evt.setEventLabel(getTrapEventLabel(trapValueSymbol));
evt.setLogmsg(getTrapEventLogmsg(trapValueSymbol));
evt.setSeverity("Indeterminate");
evt.setDescr(getTrapEventDescr(trapValueSymbol));
if (!m_compat) {
//evt.setAlarmData(getTrapEventAlarmData());
}
if (!m_compat) {
List<Varbindsdecode> decode = getTrapVarbindsDecode(trapValueSymbol);
if (!decode.isEmpty()) {
evt.setVarbindsdecode(decode);
}
}
evt.setMask(new Mask());
// The "ID" mask element (trap enterprise)
addMaskElement(evt, "id", getTrapEnterprise(trapValueSymbol));
// The "generic" mask element: hard-wired to enterprise-specific(6)
addMaskElement(evt, "generic", "6");
// The "specific" mask element (trap specific-type)
addMaskElement(evt, "specific", getTrapSpecificType(trapValueSymbol));
return evt;
}
Aggregations