From 57fd32c796256e5523197921d950d2c496f46865 Mon Sep 17 00:00:00 2001 From: eletuchy Date: Wed, 27 Feb 2008 17:43:40 +0000 Subject: [PATCH] [thrift] make erlang error logger more efficient Summary: when omit_fmt is included Reviewed By: cpiro Test Plan: sanity checked a service to make sure it ran Revert Plan: sure Other Notes: TODO - make reconfiguration work with this git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665524 13f79535-47bb-0310-9956-ffa450edef68 --- lib/erl/src/thrift_logger.erl | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/lib/erl/src/thrift_logger.erl b/lib/erl/src/thrift_logger.erl index fefa1914..bf1f54b7 100644 --- a/lib/erl/src/thrift_logger.erl +++ b/lib/erl/src/thrift_logger.erl @@ -19,7 +19,7 @@ %% --record(state, {}). +-record(state, {omit_formats=gb_sets:empty()}). -define(GS_TERM_FORMAT, "** Generic server ~p terminating \n** Last message in was ~p~n** When Server state == ~p~n** Reason for termination == ~n** ~p~n"). @@ -48,7 +48,8 @@ install() -> %%% init([]) -> - State = #state{}, + OmitFormats = gb_sets:from_list(config(omit_fmt)), + State = #state{omit_formats = OmitFormats}, {ok, State}. %%% @@ -121,7 +122,8 @@ bin_trim(Bin) when is_binary(Bin), size(Bin) > 100 -> bin_trim(Term) -> Term. -handle_event1({What, _Gleader, {Ref, Format, Data}}, State) when is_list(Format) -> +handle_event1({What, _Gleader, {Ref, Format, Data}}, State = #state{omit_formats=OmitFormats}) + when is_list(Format) -> Symbol = case What of error -> "!!"; @@ -144,12 +146,12 @@ handle_event1({What, _Gleader, {Ref, Format, Data}}, State) when is_list(Format) Message = sformat("DATA DIDN'T MATCH: ~p~n", [TrimData]) ++ sformat(Format, TrimData), handle_event2(Symbol, Ref, "", Message, State); {_, _} -> - case lists:member(Format, config(omit_fmt)) of + case gb_sets:is_member(Format, OmitFormats) of + true -> + ok; false -> Message = sformat(Format, bin_trim(Data)), - handle_event2(Symbol, Ref, "", Message, State); - true -> - ok + handle_event2(Symbol, Ref, "", Message, State) end end, {ok, State}; -- 2.17.1