et_selector
Define event transforms and trace patterns
Functions
make_pattern(RawPattern) -> TracePattern
RawPattern = detail_level()
TracePattern = erlang_trace_pattern_match_spec()
detail_level() = min | max | integer(X) when X >= 0, X =< 100
Makes a trace pattern suitable to feed change_pattern/1
Min detail level deactivates tracing of calls to et:trace_me/4,5
Max detail level activates tracing of all calls to et:trace_me/4,5
integer(X) detail level activates tracing of all calls to
et:trace_me/4,5
whose detail level argument is lesser than
X.
See also erlang:trace_pattern/2
for more info about its match_spec()
change_pattern(Pattern) -> ok
Pattern = detail_level() | empty_match_spec() | erlang_trace_pattern_match_spec()
detail_level() = min | max | integer(X) when X >= 0, X =< 100
empty_match_spec() = []
Activates/deactivates tracing by changing the current trace pattern.
min
detail level deactivates tracing of calls to et:trace_me/4,5
max
detail level activates tracing of all calls to et:trace_me/4,5
integer(X)
detail level activates tracing of all
calls to et:trace_me/4,5
whose detail level argument is
lesser than X
.
An empty match spec deactivates tracing of calls to et:trace_me/4,5
Other match specs activates tracing of calls to
et:trace_me/4,5
accordingly with
erlang:trace_pattern/2
.
parse_event(Mod, ValidTraceData) -> false | true | {true, Event}
Mod = module_name() | undefined <v>module_name() = atom() <v>ValidTraceData = erlang_trace_data() | record(event)
erlang_trace_data() = {trace, Pid, Label, Info} | {trace, Pid, Label, Info, Extra} | {trace_ts, Pid, Label, Info, ReportedTS} | {trace_ts, Pid, Label, Info, Extra, ReportedTS} | {seq_trace, Label, Info} | {seq_trace, Label, Info, ReportedTS} | {drop, NumberOfDroppedItems}
Transforms trace data and makes an event record out of it.
See erlang:trace/3
for more info about the semantics of the
trace data.
An event record consists of the following fields:
- detail_level
Noise has a high level as opposed to essentials.
- trace_ts
Time when the trace was generated. Same as event_ts if omitted in trace data.
- event_ts
Time when the event record was created.
- from
From actor, such as sender of a message.
- to
To actor, such as receiver of message.
- label
Label intended to provide a brief event summary.
- contents
All nitty gritty details of the event.
See et:trace_me/4
and et:trace_me/5
for details.
Returns:
- {true, Event}
where Event is an #event{} record representing the trace data
- true
means that the trace data already is an event record and that it is valid as it is. No transformation is needed.
- false
means that the trace data is uninteresting and should be dropped