trace and match_spec
Fredrik Linder
fredrik.linder@REDACTED
Mon Feb 18 15:55:35 CET 2002
Hi
I am having problems understanding the erlang:trace and
erlang:trace_pattern.
What I am after is getting a call-tree trace with return values. In the
documentation of erlang:trace[_pattern] is {return_trace} mentioned to give
me my return values, which I assume comes from match_spec in ERTS.
According to the description of match_spec will a badarg EXIT occurr if ther
is something wrong with the match condition, but I cannot find the fault.
Could someone please help me understand what I am doing wrong?
---[Working, but no return tracing]---
erlang:trace(Pid1, true, [call, 'receive', return_to]),
erlang:trace_pattern({'_', '_', '_'}, true, [local]),
---[Working, but too much tracing]---
erlang:trace(Pid1, true, all),
erlang:trace_pattern({'_', '_', '_'}, true, [local]),
---[Not Working]---
erlang:trace(Pid1, true, [call, 'receive', return_to]),
MatchHead = '_', % Any arguments
MatchCond = [], % Always
MatchBody = [{return, trace}], % Trace return values (disables tail
recursion)
erlang:trace_pattern({Mod, '_', '_'}, [{MatchHead, MatchCond, MatchBody}],
[local]),
=ERROR REPORT==== 18-Feb-2002::15:42:17 ===
Error in process <0.292.0> with exit value:
{badarg,[{erlang,trace_pattern,[{'_','_','_'},[{'_',[],[{return,trace}]}]]},
{t,tracer_init,1}]}
/Fredrik
More information about the erlang-questions
mailing list