diff options
author | Siri Hansen <[email protected]> | 2016-09-14 18:19:16 +0200 |
---|---|---|
committer | Siri Hansen <[email protected]> | 2016-09-23 15:14:46 +0200 |
commit | ac1a648ff518e0aa92cb14773b617829081a75d0 (patch) | |
tree | 652667867a508c3b352beb98c1a3272fb55350a4 /lib/observer/src/ttb.erl | |
parent | 3f3f25b23379b1afb15cc97462cf5d385690f5a0 (diff) | |
download | otp-ac1a648ff518e0aa92cb14773b617829081a75d0.tar.gz otp-ac1a648ff518e0aa92cb14773b617829081a75d0.tar.bz2 otp-ac1a648ff518e0aa92cb14773b617829081a75d0.zip |
[ttb] Add option <c>queue_size</c> to tracer/2
This sets the maximum queue size for the IP trace driver which is used
when tracing to shell and/or <c>{local,File}</c>.
Also, change the default queue size set by dbg:trace_port/2 to 200.
Diffstat (limited to 'lib/observer/src/ttb.erl')
-rw-r--r-- | lib/observer/src/ttb.erl | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/observer/src/ttb.erl b/lib/observer/src/ttb.erl index ac6c4572eb..87a50e046b 100644 --- a/lib/observer/src/ttb.erl +++ b/lib/observer/src/ttb.erl @@ -78,6 +78,11 @@ do_tracer(Nodes0,PI,Client,Traci) -> do_tracer(Clients,PI,Traci) -> Shell = proplists:get_value(shell, Traci, false), + IpPortSpec = + case proplists:get_value(queue_size, Traci) of + undefined -> 0; + QS -> {0,QS} + end, DefShell = fun(Trace) -> dbg:dhandler(Trace, standard_io) end, {ClientSucc,Succ} = lists:foldl( @@ -98,7 +103,7 @@ do_tracer(Clients,PI,Traci) -> [_,H] = string:tokens(atom_to_list(N),"@"), H end, - case catch dbg:tracer(N,port,dbg:trace_port(ip,0)) of + case catch dbg:tracer(N,port,dbg:trace_port(ip,IpPortSpec)) of {ok,N} -> {ok,Port} = dbg:trace_port_control(N,get_listen_port), {ok,T} = dbg:get_tracer(N), @@ -160,6 +165,8 @@ opt([{resume,MSec}|O],{PI,Client,Traci}) -> opt(O,{PI,Client,[{resume, {true, MSec}}|Traci]}); opt([{flush,MSec}|O],{PI,Client,Traci}) -> opt(O,{PI,Client,[{flush, MSec}|Traci]}); +opt([{queue_size,QueueSize}|O],{PI,Client,Traci}) -> + opt(O,{PI,Client,[{queue_size,QueueSize}|Traci]}); opt([],Opt) -> ensure_opt(Opt). |