public final class EventExpander extends Object implements EventExpander, EventProcessor, org.springframework.beans.factory.InitializingBean
This class is responsible for looking up the matching eventconf entry for an event and loading info from the eventconf match to the event. This class is also responsible for the event parm expansion
Notes on event parm expansion:
The list of elements that can have a %element% or %parms[*]% in their value are : descr, logmsg, operinstr, autoaction, operaction(/menu), tticket
The list of elements that can occur as a %element% are : uei, source, nodeid,
time, host, interface, snmphost, service, snmp, id, idtext, version,
specific, generic, community, severity, operinstr, mouseovertext,
parm[values-all], parm[names-all], parm[all], parm[
Expansions are made so that - %element% is replaced by the value of the element -i.e a 'xxx %uei%' would expand to 'xxx <eventuei>' - %parm[values-all]% is replaced by a space-separated list of all parm values -i.e a 'xxx %parm[values-all]%' would expand to 'xxx parmVal1 parmVal2 ..' - %parm[names-all]% is replaced by a space-separated list of all parm names -i.e a 'xxx %parm[names-all]%' would expand to 'xxx parmName1 parmName2 ..' - %parm[all]% is replaced by a space-separated list of all parmName="parmValue" -i.e a 'xxx %parm[all]%' would expand to 'xxx parmName1="parmVal1" parmName2="parmVal2" ..' - %parm[<name>]% is replaced by the value of the parameter named 'name', if present - %parm[#<num>]% is replaced by the value of the parameter number 'num', if present - %parm[##]% is replaced by the number of parameters
Constructor and Description |
---|
EventExpander(com.codahale.metrics.MetricRegistry registry) |
Modifier and Type | Method and Description |
---|---|
void |
afterPropertiesSet()
afterPropertiesSet
|
void |
expandEvent(Event e)
This method is invoked to check and configure a received event.
|
EventConfDao |
getEventConfDao()
getEventConfDao
|
static Event |
lookup(EventConfDao dao,
Event event)
This method is used to lookup the event configuration object based upon
information in the passed information.
|
void |
process(Log eventLog) |
void |
process(Log eventLog,
boolean synchronous)
Event expansion is always synchronous so this method just
delegates to
process(Log) . |
void |
setEventConfDao(EventConfDao eventConfDao)
setEventConfDao
|
void |
setEventUtil(EventUtil eventUtil) |
public void afterPropertiesSet()
afterPropertiesSet
afterPropertiesSet
in interface org.springframework.beans.factory.InitializingBean
public static Event lookup(EventConfDao dao, Event event)
This method is used to lookup the event configuration object based upon
information in the passed information. The
EventConfDao
instance is
consulted to find a matching configured event. The lookup algorithm
favors SNMP information if available, and then defaults to the event's
Universal Event Identifier.
event
- The event to find a configuration for.NullPointerException
- Thrown if the event parameter that was passed is null.public void expandEvent(Event e)
This method is invoked to check and configure a received event. The event configuration manager is consulted to find the appropriate configuration that is used to expand the event. In addition, the security parameters from the configuration manager is consulted to ensure that secure files are cleared out if necessary.
Any secure fields that exists in the incoming event are cleared during expansion.
expandEvent
in interface EventExpander
e
- The event to expand if necessary.public void process(Log eventLog, boolean synchronous) throws EventProcessorException
process(Log)
.process
in interface EventProcessor
EventProcessorException
public void process(Log eventLog) throws EventProcessorException
process
in interface EventProcessor
EventProcessorException
public EventConfDao getEventConfDao()
getEventConfDao
EventConfDao
object.public void setEventConfDao(EventConfDao eventConfDao)
setEventConfDao
setEventConfDao
in interface EventExpander
eventConfDao
- a EventConfDao
object.public void setEventUtil(EventUtil eventUtil)
Copyright © 2021. All rights reserved.