1

when using lager's 'trace' as follows:

lager:trace_file("/var/log/peter/lager_test_a_debug.log",[{module,lager_test_a}],debug),
lager:trace_file("/var/log/peter/lager_test_http_server_debug.log",[{module,lager_test_http_server}],debug),

'lager_test_a' is gen_server module, and it is terminated, the reason is as follows:

terminate(Reason, _State) ->
    io:format("_123:~n\t~p",[Reason]),
    ok.

{badarg,[{ets,update_counter,[40984,input,{2,1}],[]},
         {lager_default_tracer,handle,1,[]},
         {lager_util,check_trace,2,
                     [{file,"src/lager_util.erl"},{line,445}]},
         {lager_util,check_traces,4,
                     [{file,"src/lager_util.erl"},{line,438}]},
         {lager,do_log,9,[{file,"src/lager.erl"},{line,103}]},
         {lager_test_a,handle_info,2,
                       [{file,"src/lager_test_a.erl"},{line,104}]},
         {gen_server,try_dispatch,4,
                     [{file,"gen_server.erl"},{line,593}]},
         {gen_server,handle_msg,5,
                     [{file,"gen_server.erl"},{line,659}]}]}

But I can't find lager_default_tracer.beam and source file. I think that it may be ets's 'table 40984' doesn't exist, and the error happens.

But how to solve the problem?

4

0 回答 0