Advanced EPL Rule Tab

The Advanced EPL Rule tab enables you to define rule criteria with an Event Processing Language (EPL) query.

What do you want to do?

Role I want to ... Show me how
Content Expert Define an Advanced EPL rule. Add an Advanced EPL Rule
Content Expert Test the Advanced EPL rule logic. Validate an Advanced EPL Rule
Content Expert See examples of an Advanced EPL Rule. Example Advanced EPL Rules
Content Expert See best practices for writing Advanced EPL Rules. ESA Rule Writing Best Practices

Related Topics

Quick Look

To access the Advanced EPL Rule tab:

  1. Go to netwitness_configureicon_24x21.png (Configure) > ESA Rules.

    The Configure view is displayed with the Rules tab open by default.

  2. In the Rule Library toolbar, select netwitness_ic-addlist.png > Advanced EPL.

    The Advanced EPL Rule tab is displayed.

The following figure shows the Advanced EPL Rule tab.

netwitness_121_adveplbldr_1122_768x435.png

The following figure shows the Advanced EPL Rule tab scrolled down with the Test Rule section in view.
netwitness_121_adveplbldrtest_1122_768x435.png

The following table lists the parameters in the Advanced EPL Rule tab.

Parameters Description
Rule Name Purpose of the ESA rule.
Description Summary of what the ESA rule detects.
Trial Rule Deployment mode to see if the rule runs efficiently.
Memory Threshold (This option applies to version 11.5 and later.) The maximum memory usage allowed for this rule in MB. Add Memory Thresholds to ESA rules that use memory. For example, if a rule contains windows or pattern matching, configure a memory threshold for that rule. If the configured memory threshold is exceeded, it gets disabled individually and an error is displayed for that rule on the netwitness_configureicon_24x21.png (Configure) > ESA Rules > Services tab.
New rules default to a 100 MB memory threshold. Rules that existed before version 11.5 do not have a default value and a memory threshold is not set.
Alert (This option applies to version 11.3 and Later.) When selected, the alert is sent to Respond. If the checkbox is cleared, an alert will not be sent to Respond.
To turn alerts on or off for ALL rules, see the ESA Configuration Guide.
Severity Threat level of alert triggered by the rule.
Query EPL query that defines rule criteria.

Notifications Section

In the Notifications section, you can choose how to be notified when ESA generates an alert for the rule.

For more information on the alert notifications, see Add Notification Method to a Rule.

The following figure shows the Notifications section.

netwitness_notificationadded_672x95.png

Parameter Description
netwitness_add.png To add an alert notification type.
netwitness_ic-delete.png To delete the selected alert notification type.
Output Alert notification type. Options are:
  • Email
  • SNMP (This option is not supported in NetWitness version 11.3 and later.)
  • Syslog
  • Script
Notification Name of previously configured output, such as an email distribution list.
Notification Server Name of server that sends the output.
Template Name of template for the alert notification.
Output Suppression of every Option to specify alert frequency.
Minutes Alert frequency in minutes.

Enrichments Section

In the Enrichments section, you can add a data enrichment source to a rule.

For more information on the enrichments, see Add an Enrichment to a Rule.
The following figure shows the Enrichments section.
netwitness_ruleenrsec_672x94.png

Parameter Description

netwitness_add.png

To add an enrichment.

netwitness_ic-delete.png

To delete the selected enrichment.
Output Enrichment source type. Options are:
  • In-Memory Table (Ad hoc only - Recurring In-Memory Tables are no longer supported in version 11.3 and later.)
  • GeoIP

Enrichment Source

Name of previously configured enrichment source, such as a .CSV filename for an In-Memory Table.
ESA Event Stream Meta ESA meta key whose value will be used as one operand of join condition.

Enrichment Source Column Name

Enrichment source column name whose value will be used as the other operand of the join condition.

Test Rule Section

Note: The Test Rule section is available in NetWitness Platform 11.5 and later.

In the Test Rule section, you can validate your ESA rule to determine if the rule logic is working as expected before deploying the rule.

netwitness_advrb_testrulesection_576x474.png

Field Description
ESA Service Select the ESA Correlation service to process the rule.
Input Data Enter the input events to test the rule. You can download the events from the Investigate view in JSON format, copy the events, and paste them in this field.
Output Data After you select an ESA Correlation service, input data, and click the Test Rule button, you can view the output of the rule here and verify that the rule is working according to your requirements. You can view the alerts in the output, but this test does not send any alert notifications. If you want to view all of the debug information for the test, include an @Audit(‘stream’) annotation to your rule query.

The following table describes the test rule output Engine Stats.

Field Description
Engine Version Esper version running on the ESA service
Events Offered Number of events processed by the ESA service since the last service start
Offered Rate The rate that the ESA service processes current events / The maximum rate that the ESA service processed events
Runtime Errors If applicable, this field can contain a link to runtime error messages related to the ESA rule deployment.

The following table describes the test rule output Rule Stats.

Field Description
Deployed A green checkmark indicates that the rule is deployed on the selected ESA service.
Statements Fired The number of statements that fired the alerts
Alerts Fired The number of alerts generated from the test data
Events in Memory The number of events placed in memory by the rule
Memory Usage The total amount of memory used by the rule
CPU % The percentage of the deployment CPU used by the rule. For example, a deployment with 1 rule shows 100% CPU usage for that rule and a deployment with two equally CPU heavy rules show 50% each.
Events Matched The number of events that matched the rule
Alerted Events If applicable, this field can contain a link to events that caused an alert.
Runtime Errors If applicable, this field can contain a link to runtime error messages related to the rule.
Debug Logs This field contains a link to Esper debug (audit) logs.

Syntax

Click Show Syntax to view the EPL syntax of conditions, statements, and debugging parameters. It also provides a warning when the syntax is invalid. For more information, see Rule Syntax Dialog.