EMS Manual

Event Routing
EMS Manual426909-005
16-3
User Interfaces
User Interfaces
This subsection describes the use of multiple filters and the filter PASS statement.
Startup of Multiple Filters
A routing distributor is started as a printing distributor:
RUN EMSDIST TYPE P[rinting], FILTER f1 | (f1, f2, f3, ..fn),
....
The filters can contain destination profiles to direct events to selected destinations. If
the startup line contains a TEXTOUT parameter, specifying a filter with destination
profiles results in an error. If multiple filters are used with no destination profiles, the
distributor does not process any subsequent filters after encountering a filter with a
PASS condition.
You can use consumer and forwarding distributors with multiple filters, but not with
destination profiles.
Filter PASS and DESTINATION Statements
The filter PASS statement allows an optional list of routing IDs, in addition to the value
that can currently be returned. A routing distributor also returns the PASS value itself to
the destination if the event is unformatted. This was previously done for consumer
distributors only. In the case of multiple filters, each filter can send a different PASS
value to its destinations.
The PASS statement has been modified to accommodate routing IDs:
PASS n, m | PASS n, (m1, m2, ... mN)
where n is the PASS value as currently defined, and
m, m1...mN are routing IDs as defined in the DESTINATION statements.
The destination statement is part of the filter source and used to describe a distributor's
routing configuration. Filters with destination statements can be used only in printing
distributors; multiple statements per filter are allowed. For details about the
DESTINATION statement, see The Filter Language on page 5-7.
Selection of Collectors for Internal Events
Distributor generated events (such as ZEMS-EVT-STARTUP-FAILED) can be
forwarded to up to two user selectable collectors. You can choose $0, alternate
collectors, or $ZLOG (TMDS). To make the selection, use the ADD DEFINE statement
with identifier _ems_system_log or identifier _ems_alternate_log. For example, this
statement selects the TMDS collector $ZLOG:
<ADD DEFINE =_ems_system_log, file $ZLOG>