summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2012-02-24 14:59:57 +0000
committerSimon MacMullen <simon@rabbitmq.com>2012-02-24 14:59:57 +0000
commitb7e393df242e0938abe659aac2571c85e1b9507a (patch)
tree28aa99e7c6747c133b37446ce07a0acc825dc486
parent5d4806b9452e4546a47d83837785c85b2e11664c (diff)
downloadrabbitmq-server-b7e393df242e0938abe659aac2571c85e1b9507a.tar.gz
Channel names rather than pids.
-rw-r--r--src/rabbit_channel.erl26
-rw-r--r--src/rabbit_trace.erl14
2 files changed, 19 insertions, 21 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl
index 262048d2..9d35c5fd 100644
--- a/src/rabbit_channel.erl
+++ b/src/rabbit_channel.erl
@@ -269,7 +269,7 @@ handle_call(_Request, _From, State) ->
handle_cast({method, Method, Content, Flow},
State = #ch{reader_pid = Reader,
trace_state = TraceState}) ->
- rabbit_trace:tap_trace_method_in(self(), Method, TraceState),
+ rabbit_trace:tap_trace_method_in(name(State), Method, TraceState),
case Flow of
flow -> credit_flow:ack(Reader);
noflow -> ok
@@ -1474,25 +1474,25 @@ coalesce_and_send(MsgSeqNos, MkMsgFun,
[ok = write_command(State, MkMsgFun(SeqNo, false)) || SeqNo <- Ss],
State.
-write_command(#ch{writer_pid = WriterPid,
- trace_state = TraceState}, Method) ->
- rabbit_trace:tap_trace_method_out(self(), Method, TraceState),
+write_command(State = #ch{writer_pid = WriterPid,
+ trace_state = TraceState}, Method) ->
+ rabbit_trace:tap_trace_method_out(name(State), Method, TraceState),
rabbit_writer:send_command(WriterPid, Method).
-write_command(#ch{writer_pid = WriterPid,
- trace_state = TraceState}, Method, Content) ->
- rabbit_trace:tap_trace_method_out(self(), Method, TraceState),
+write_command(State = #ch{writer_pid = WriterPid,
+ trace_state = TraceState}, Method, Content) ->
+ rabbit_trace:tap_trace_method_out(name(State), Method, TraceState),
rabbit_writer:send_command(WriterPid, Method, Content).
-write_command_sync(#ch{writer_pid = WriterPid,
- trace_state = TraceState}, Method) ->
- rabbit_trace:tap_trace_method_out(self(), Method, TraceState),
+write_command_sync(State = #ch{writer_pid = WriterPid,
+ trace_state = TraceState}, Method) ->
+ rabbit_trace:tap_trace_method_out(name(State), Method, TraceState),
rabbit_writer:send_command_sync(WriterPid, Method).
-write_command_and_notify(#ch{writer_pid = WriterPid,
- trace_state = TraceState},
+write_command_and_notify(State = #ch{writer_pid = WriterPid,
+ trace_state = TraceState},
Q, ChPid, Method, Content) ->
- rabbit_trace:tap_trace_method_out(self(), Method, TraceState),
+ rabbit_trace:tap_trace_method_out(name(State), Method, TraceState),
rabbit_writer:send_command_and_notify(WriterPid, Q, ChPid, Method, Content).
maybe_complete_tx(State = #ch{tx_status = in_progress}) ->
diff --git a/src/rabbit_trace.erl b/src/rabbit_trace.erl
index d399e1cc..fe4930ed 100644
--- a/src/rabbit_trace.erl
+++ b/src/rabbit_trace.erl
@@ -68,18 +68,16 @@ tap_trace_out({#resource{name = QName}, _QPid, _QMsgId, Redelivered, Msg},
maybe_trace(TraceX, Msg, <<"deliver.", QName/binary>>,
[{<<"redelivered">>, signedint, RedeliveredNum}]).
-tap_trace_method_in(ChPid, Method, TraceX) ->
- tap_trace_method(ChPid, Method, TraceX, <<"method_in">>).
+tap_trace_method_in(Ch, Method, TraceX) ->
+ tap_trace_method(Ch, Method, TraceX, <<"method_in">>).
-tap_trace_method_out(ChPid, Method, TraceX) ->
- tap_trace_method(ChPid, Method, TraceX, <<"method_out">>).
+tap_trace_method_out(Ch, Method, TraceX) ->
+ tap_trace_method(Ch, Method, TraceX, <<"method_out">>).
-tap_trace_method(ChPid, Method, TraceX, Prefix) ->
- %% TODO pid_to_string is probably too slow here!
+tap_trace_method(Ch, Method, TraceX, Prefix) ->
MethodName = a2b(element(1, Method)),
- PidStr = list_to_binary(rabbit_misc:pid_to_string(ChPid)),
maybe_trace(TraceX, Method,
- <<Prefix/binary, ".", MethodName/binary,".", PidStr/binary>>,
+ <<Prefix/binary, ".", MethodName/binary,".", Ch/binary>>,
[]).
%%----------------------------------------------------------------------------