Events
Every change in the trace is recorded as an event, which is then sent to all clients that subscribe to them.
vtk_event_control START
vtk_event_get $timeout eventDesc
# Example to show which fields are available
parray eventDesc
eventDesc(auxid) = 1094842
eventDesc(auxstatus) = 0
eventDesc(description) =
eventDesc(id) = 473865
eventDesc(priority) = 0
eventDesc(subject) = NODE
eventDesc(verb) = CONNECT
eventDesc(x) = 1094842
eventDesc(y) = 0
Each event is characterized primarily by a 'subject' and a 'verb'.
vtk_eventfilter_append $subjectList $verbList
vtk_eventfilter_append "JOB" "START"
To keep the GUI up to date, all events are streamed asynchronously from the VOV server to the GUI. It is possible for a GUI to be slow with respect to the stream of events, causing some internal buffers to overflow. In such case, the VOV server generates an overflow event and stops sending events to the slow client until the client has caught up.
For more information on handling the events, please refer to the documentation for the vtk_event* procedures.
Monitor Events with voveventmon
voveventmon: Usage Message
DESCRIPTION:
voveventmon -- A utility to show the event stream
Feel free to look at the source to
learn how you can yourself tap into
the event stream.
This utility is also used in vovresourced to allow
asynchronous update of the resourcemap information
as soon as LicenseMonitor has new information.
USAGE:
% voveventmon [OPTIONS]
OPTIONS:
-h This help
-f <subjects> <verbs>
-filter <subjects> <verbs>
Define a filter for events.
For definitions of <subjects> and <verbs>
please refer to on-line documentation.
-m <N>
-maxevents <N> Max number of events to show
Default is 1000.
For unlimited events, set <N> to 0.
-n <N> Same as -m
-s <bool> If set, show event statistics
-t <S>
-timeout <S> Default is 10.
-host <HOST> Host name override.
-port <PORT> Port name override.
-project <PROJECT> Project name override.
FOR TESTING ONLY:
-d <DELAY_IN_MS> Add a delay after processing each event.
EXAMPLES:
% voveventmon -- Show 1000
% voveventmon -m 0 -- Unlimited events
% voveventmon -f FILE INFORM
% voveventmon -f LICDAEMON ALL
% voveventmon
1 NODE CONNECT 02709649 1132452736 {746499}
2 NODE CHANGE 00746499 1132452736 {\"RUNNING\"}
3 NODE CONNECT 00745066 1132452736 {2709649}
4 NODE CONNECT 02709649 1132452736 {746500}
5 NODE CHANGE 00746500 1132452736 {\"RUNNING\"}
6 NODE CONNECT 02709649 1132452736 {746501}
7 NODE CHANGE 00746501 1132452736 {\"RUNNING\"}
8 NODESET DETACH 02699306 1132452737 {2709643 0 9}
9 NODESET DETACH 02699306 1132452737 {2709646 0 9}
10 NODE CONNECT 02709649 1132452737 {746502}
...
% voveventmon -f LICDAEMON CHANGE
...