diff options
| author | Matthias Radestock <matthias@rabbitmq.com> | 2011-05-19 18:40:35 +0100 |
|---|---|---|
| committer | Matthias Radestock <matthias@rabbitmq.com> | 2011-05-19 18:40:35 +0100 |
| commit | bff378171127bb2688dd3db920310227b7c87a27 (patch) | |
| tree | bb55330d609b72593c79d4437d58c4d27fa62cd4 /src | |
| parent | 96bcb7310baf35dd14f37586733ac9ffb63254c1 (diff) | |
| download | rabbitmq-server-git-bff378171127bb2688dd3db920310227b7c87a27.tar.gz | |
sometimes clarity trumps performance
I can't actually detect a difference in performance here, though I'm
sure the new code is slower than the old one.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_trace.erl | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/rabbit_trace.erl b/src/rabbit_trace.erl index df44ed2562..36125376f1 100644 --- a/src/rabbit_trace.erl +++ b/src/rabbit_trace.erl @@ -39,29 +39,24 @@ init(VHost) -> trace_exchange(VHost). tap_trace_in(Msg, TraceX) -> - maybe_trace(Msg, TraceX, publish, []). + maybe_trace(Msg, TraceX, <<"publish">>, xname(Msg), []). tap_trace_out({#resource{name = QName}, _QPid, _QMsgId, Redelivered, Msg}, TraceX) -> RedeliveredNum = case Redelivered of true -> 1; false -> 0 end, - maybe_trace(Msg, TraceX, {deliver, QName}, + maybe_trace(Msg, TraceX, <<"deliver">>, QName, [{<<"redelivered">>, signedint, RedeliveredNum}]). xname(#basic_message{exchange_name = #resource{name = XName}}) -> XName. vhost(#basic_message{exchange_name = #resource{virtual_host = VHost}}) -> VHost. -maybe_trace(_Msg, none, _Mode, _Extra) -> +maybe_trace(_Msg, none, _RKPrefix, _RKSuffix, _Extra) -> ok; -maybe_trace(Msg0, TraceX, Mode, Extra) -> +maybe_trace(Msg0, TraceX, RKPrefix, RKSuffix, Extra) -> case xname(Msg0) of TraceX -> ok; _ -> Msg = ensure_content_decoded(Msg0), X = rabbit_misc:r(vhost(Msg), exchange, TraceX), - {RKPrefix, RKSuffix} = - case Mode of - publish -> {<<"publish">>, xname(Msg0)}; - {deliver, Q} -> {<<"deliver">>, Q} - end, RKey = <<RKPrefix/binary, ".", RKSuffix/binary>>, P = #'P_basic'{headers = msg_to_table(Msg) ++ Extra}, case catch rabbit_basic:publish(X, RKey, P, payload(Msg)) of |
