Events are special records the system uses to log when certain conditions occur and to
take some kind of action in response to the conditions.
The system uses business rules to monitor for system conditions and to generate event records
in the Event [sysevent] table, which is also known as the event log or event queue.
Event-generating business rules typically use this script logic:
If [some condition is true for the current record], then [add a specific event to the
queue].
For example, here are some of the conditions in the
incident event
business rule:
- If a user adds a comment to an incident record, add an
incident.commented event.
- If a user adds an incident record, add an incident.inserted event.
- If a user updates an incident record, add an incident.updated
event.
Event-generating business rules use the GlideSystem
eventQueue method to
insert event records, which typically contain this information:
Table 1. Event fields
Field |
Description |
Name |
Unique name of event. Baseline event names include the record affected and the
triggering action, such as incident.commented. |
Parm1 |
Event-specific parameter the system uses to pass record information to other parts of
the system, such as a record Sys ID or a field value. |
Parm2 |
Event-specific parameter the system uses to pass record information to other parts of
the system, such as a record Sys ID or a field value. |
Table |
Table to which the event applies. This is the same table on which the business rule
ran. |
Instance |
Sys ID of the record to which this event applies. |
Scheduled jobs periodically read the event queue and forward them to the appropriate handler
for processing. The handler uses information from event records to take some kind of action such
as:
- Run a script action
- Schedule a job
- Send a notification
- Trigger a workflow activity
- Trigger an inactivity monitor
By default, the system provides events covering a broad view of application activity. If
existing events do not meet your needs, you can create your own events to watch for specific
changes to records.
For developer training, see Scheduled Script Executions and Events Objectives on the
ServiceNow®
Developer Site.