Implement event notifier
The event notifier feature allows the user to get notify through a pipe
that an callsite was reached. It's really similar to a regular UST event
in that firing can be controlled by filters and exclusions. It diverges
because firing a event notifier does not end up writing to the tracing
buffers. In fact, event notifiers live outside of any sessions (i.e. no
session is needed).
Definitions
===========
A `Event notifier` is defined as an event description (event name, log level,
etc.) and a unique event notifier token.
A `Event notifier group` is a set of event notifiers sharing the same
pipe to the liblttng-ust-ctl user.
Sequence of operations
======================
event_notifier_group_handle = ustctl_create_event_notifier_group(notification_fd)
event_notifier_handle = ustctl_create_event_notifier(event_notifier_group_handle, event_notifier_id);
ustctl_set_filter(event_notifier_handle, filter)
ustctl_set_exclusion(event_notifier_handle, exclusion)
ustctl_enable(event_notifier_handle)
...
ustctl_disable(event_notifier_handle)
ustctl_release_object(event_notifier_handle)
ustctl_release_object(event_notifier_group_handle)
Highlevel changes
=================
- Add the event notifier probe generation macros,
- Add event notifier enabling/disabling machinery,
- Add event notifier filter machinery,
- Add event notifier exclusion machinery,
- Expose ABI structures
- Expose ABI enums
- Expose ABI cmds
- Expose ustctl functions
Signed-off-by: Francis Deslauriers <francis.deslauriers@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Change-Id: I493d784cc6830cd6c7979f6f08b209521676f05c
17 files changed:
This page took 0.026779 seconds and 4 git commands to generate.