evmwatch(1)evmwatch(1)NAMEevmwatch - Monitors EVM events
SYNOPSISevmwatch [-A] [-f filter_expr] [-h hostname[:port_no]]...
[-t show_template] [-w timeout] [-i | -x] [-R reconnect-timeout]
OPTIONS
Automatically starts evmshow to produce a formatted display of the
received events. Subscribes for notification of events matching fil‐
ter_expr. See EvmFilter(5) for the syntax of filter_expr. By default,
the evmwatch command subscribes for all events. Attempts to connect to
the EVM daemon on the host hostname, rather than to the local daemon.
If a cluster alias is specified for hostname, attempts to connect to
the EVM daemon on that cluster. If specified, the port number must be
the same as the portnum specified in the EVM daemon configuration file,
evmdaemon.conf(4). In most cases, the default should be used.
If connecting to a cluster alias, evmwatch monitors events that
are posted on all members of the cluster.
If :port_no is specified, port_no is used for TCP communication
with remote clients; otherwise, the evm port number found in
/etc/services is used. If no entry is found in /etc/services,
the reserved default value of 619 is used. Template string to
be passed to evmshow if the -A option is also specified. If the
-A option is not specified, this argument is ignored. See
evmshow(1) for a description of the template string. Terminates
if no event is processed in the time specified by timeout. The
format of timeout is [[[days:]hours:]minutes:]seconds, where
days, hours and minutes can be any integer up to 9999, and sec‐
onds can be any integer up to 9999999. Omitted values are
interpreted as zero. If the converted value exceeds 100,000,000
seconds, it is automatically reduced to that value with no error
being reported. The timer is restarted each time an event is
received. Retrieves copies of all of the registered event tem‐
plates from the EVM daemon that match the supplied filter string
and for which the user has access authorization. It writes the
templates to stdout as EVM events and terminates. Terminates
with a zero exit value as soon as the first event matching fil‐
ter_expr is processed. Specifies the period for which evmwatch
should continue to attempt to reconnect if the connection to the
EVM daemon is lost. The format of reconnect-timeout is
[[[days:]hours:]minutes:]seconds, where days, hours and minutes
can be any integer up to 9999, and seconds can be any integer up
to 9999999. Omitted values are interpreted as zero. If the con‐
verted value exceeds 100,000,000 seconds, it is automatically
reduced to that value with no error being reported.
If reconnect-timeout is zero, evmwatch terminates immediately if
a disconnection occurs. If this option is not specified, the
reconnection timeout is set to five minutes for a local connec‐
tion and 60 minutes for a remote connection.
OPERANDS
None
DESCRIPTION
The evmwatch command subscribes to the events specified by the fil‐
ter_expr and passes all events to its stdout stream as they arrive.
Output is in the form of raw EVM events.
If the -A option is specified, evmwatch automatically starts evmshow
and pipes the event stream into it, producing a formatted display of
events. If a show_template argument is supplied, the specified template
string is passed to evmshow through its own -t option. See evmshow(1)
for more information.
If evmwatch cannot connect to the EVM daemon, it terminates immediately
with an error message. If it succeeds in connecting but subsequently
loses the connection, it attempts to reconnect periodically until the
reconnect-timeout period expires. The retry period is one second for
the first minute, and five seconds thereafter.
RESTRICTIONS
The evmwatch command rejects attempts to output raw events to a termi‐
nal device.
The evmwatch command receives events only for which the user has access
authorization. See evm.auth(4) for details of access authorization.
EXIT STATUS
The following exit values are returned: Successful completion An error
occurred, including timeout
EXAMPLES
The following ksh example watches for all events with a priority of at
least 200 and displays them on stdout. Events are piped automatically
through evmshow to produce a formatted event display. export
EVM_SHOW_TEMPLATE="@timestamp [@priority] @@" evmwatch-A -f "[pri >=
200]" The following example waits until some other process posts a par‐
ticular event and then continues. Redirection of output to /dev/null
implies that the content of the event is of no concern. evmwatch-f
"[name myco.ops.backup.done]" -x >/dev/null The following script builds
on the prior example. It waits for five minutes (300 seconds) for the
event to occur or exits as soon as the event happens. #! /bin/ksh
evmwatch-f "[name myco.ops.backup.*]" -x -w 300 >/dev/null if [ $? -eq
0 ] then
echo Backup completed! else
echo Backup timed out! fi The following shell script waits for up
to five minutes (300 seconds) for a pulse event to be received. Each
time the pulse arrives, the timer is reset and evmwatch waits for the
next pulse. If the timer expires, evmwatch terminates with an error
code, a warning is displayed, a high priority event is posted, and the
script exits. #! /bin/ksh evmwatch-f "[name myco.myapp.remote.pulse]"
-w 300 >/dev/null if [ $? -ne 0 ] then
echo `date` Pulse monitor: No pulse from remote system
evmpost <<END
event { name myco.myapp.pulsemon.no_pulse
priority 650 } END fi The following example monitors all
events occurring on a remote host. If the connection to the remote host
is lost, evmwatch attempts to re-establish the connection for up to
three days before terminating. evmwatch-A -h yoursys -R 3:0:0:0 The
following example lists the names of all registered events that the
user is authorized to access. evmwatch-i | evmshow -t "@name" | more
FILES
Definition of the sockets and protocols used for Internet services.
SEE ALSO
Commands: evmget(1), evmpost(1), evmshow(1), evmsort(1), esmd(8)
Files: evmfilterfile(4), services(4)
Event Management: EVM(5)
EVM Events: EvmEvent(5)
Event Filter: EvmFilter(5)
System Administration
evmwatch(1)