-
Notifications
You must be signed in to change notification settings - Fork 428
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prepare log_helper for parallel tests #4243
Conversation
The goal is to have common code for all helpers using ETS tables, which can survive for the entire test suite/group.
Unfortunately logger does adding/removing handlers asynchronously, which leads to race conditions, and some handlers may fail to get registered. This is why log_helper is now reimplemented with only one log handler, and an ETS table for receiver Pids.
elasticsearch_and_cassandra_26 / elasticsearch_and_cassandra_mnesia / 4e94a99 small_tests_25 / small_tests / 4e94a99 small_tests_26 / small_tests / 4e94a99 small_tests_26_arm64 / small_tests / 4e94a99 ldap_mnesia_25 / ldap_mnesia / 4e94a99 ldap_mnesia_26 / ldap_mnesia / 4e94a99 dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / 4e94a99 dynamic_domains_pgsql_mnesia_26 / pgsql_mnesia / 4e94a99 internal_mnesia_26 / internal_mnesia / 4e94a99 pgsql_cets_26 / pgsql_cets / 4e94a99 dynamic_domains_mssql_mnesia_26 / odbc_mssql_mnesia / 4e94a99 dynamic_domains_mysql_redis_26 / mysql_redis / 4e94a99 pgsql_mnesia_25 / pgsql_mnesia / 4e94a99 pgsql_mnesia_26 / pgsql_mnesia / 4e94a99 mysql_redis_26 / mysql_redis / 4e94a99 amp_big_SUITE:offline:offline_failure:notify_deliver_to_online_user_recipient_privacy_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_notify_deliver_to_online_user_recipient_privacy_test_314">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:error_deliver_to_online_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_error_deliver_to_online_user_test_338">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:notify_deliver_to_offline_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_notify_deliver_to_offline_user_test_318">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{amp_big_SUITE,notify_deliver_to_offline_user_test,1,
[{file,"/home/circleci/project/big_tests/tests/amp_big_SUITE.erl"},
{line,365}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:notify_deliver_to_offline_user_recipient_privacy_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_notify_deliver_to_offline_user_recipient_privacy_test_323">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{amp_big_SUITE,do_notify_deliver_to_offline_user_recipient_privacy_test,
1,
[{file,"/home/circleci/project/big_tests/tests/amp_big_SUITE.erl"},
{line,408}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:error_deliver_to_online_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_error_deliver_to_online_user_test_336">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:drop_deliver_to_offline_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_drop_deliver_to_offline_user_test_355">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{amp_big_SUITE,drop_deliver_to_offline_user_test,1,
[{file,"/home/circleci/project/big_tests/tests/amp_big_SUITE.erl"},
{line,654}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:drop_deliver_to_online_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_drop_deliver_to_online_user_test_349">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:error_deliver_to_offline_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_error_deliver_to_offline_user_test_341">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{amp_big_SUITE,error_deliver_to_offline_user_test,1,
[{file,"/home/circleci/project/big_tests/tests/amp_big_SUITE.erl"},
{line,572}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:error_deliver_to_online_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_error_deliver_to_online_user_test_340">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:drop_deliver_to_offline_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_drop_deliver_to_offline_user_test_354">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{amp_big_SUITE,drop_deliver_to_offline_user_test,1,
[{file,"/home/circleci/project/big_tests/tests/amp_big_SUITE.erl"},
{line,654}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} amp_big_SUITE:offline:offline_failure:drop_deliver_to_online_user_test{error,{{badrpc,timeout},
[{escalus_rpc,call_with_cookie_match,
[mongooseim@localhost,ejabberd_admin,register,
[<<"bOb_drop_deliver_to_online_user_test_350">>,
<<"localhost">>,<<"makrolika">>],
3000,mongooseim],
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
{line,34}]},
{lists,foreach_1,2,[{file,"lists.erl"},{line,1686}]},
{escalus_ejabberd,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_ejabberd.erl"},
{line,211}]},
{escalus_fresh,create_users,2,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,62}]},
{escalus_fresh,story,3,
[{file,"/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_fresh.erl"},
{line,27}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} graphql_account_SUITE:admin_account_http:admin_register_user_limit_error{error,
{{badmap,null},
[{erlang,map_get,
[<<"message">>,null],
[{error_info,#{module => erl_erts_errors}}]},
{graphql_helper,get_value,2,
[{file,"/home/circleci/project/big_tests/tests/graphql_helper.erl"},
{line,292}]},
{graphql_account_SUITE,admin_register_user_limit_error,1,
[{file,
"/home/circleci/project/big_tests/tests/graphql_account_SUITE.erl"},
{line,385}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} graphql_account_SUITE:admin_account_cli:admin_register_user_limit_error{error,
{#{what => invalid_response_code,expected_type => ok,
response_code => {exit_status,1}},
[{graphql_helper,assert_response_code,2,
[{file,"/home/circleci/project/big_tests/tests/graphql_helper.erl"},
{line,256}]},
{graphql_helper,get_ok_value,2,
[{file,"/home/circleci/project/big_tests/tests/graphql_helper.erl"},
{line,239}]},
{graphql_account_SUITE,admin_register_user_limit_error,1,
[{file,
"/home/circleci/project/big_tests/tests/graphql_account_SUITE.erl"},
{line,385}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} graphql_account_SUITE:domain_admin_account:admin_register_user_limit_error{error,
{{badmap,null},
[{erlang,map_get,
[<<"message">>,null],
[{error_info,#{module => erl_erts_errors}}]},
{graphql_helper,get_value,2,
[{file,"/home/circleci/project/big_tests/tests/graphql_helper.erl"},
{line,292}]},
{graphql_account_SUITE,admin_register_user_limit_error,1,
[{file,
"/home/circleci/project/big_tests/tests/graphql_account_SUITE.erl"},
{line,385}]},
{test_server,ts_tc,3,[{file,"test_server.erl"},{line,1793}]},
{test_server,run_test_case_eval1,6,
[{file,"test_server.erl"},{line,1302}]},
{test_server,run_test_case_eval,9,
[{file,"test_server.erl"},{line,1234}]}]}} graphql_last_SUITE:admin_http:admin_last_configured:admin_old_users:admin_list_old_users_domain{error,{{badmatch,[#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_354@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_355@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_349@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_350@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_offline_user_test_341@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_336@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_338@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_340@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_recipient_privacy_test_323@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_test_318@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_online_user_recipient_privacy_test_... graphql_last_SUITE:admin_http:admin_last_configured:admin_old_users:admin_list_old_users_global{error,{{badmatch,[#{<<"jid">> => <<"[email protected]">>,
<<"timestamp">> => <<"2024-03-13T08:23:41.000000Z">>},
#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_354@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_355@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_349@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_350@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_offline_user_test_341@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_336@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_338@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_340@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_recipient_privacy_test_323@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_test_318@localhost">>,
<<"times... graphql_last_SUITE:admin_http:admin_last_configured:admin_old_users:admin_remove_old_users_domain{error,{{badmatch,[#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_354@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_offline_user_test_355@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_349@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_drop_deliver_to_online_user_test_350@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_offline_user_test_341@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_336@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_338@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_error_deliver_to_online_user_test_340@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_recipient_privacy_test_323@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_offline_user_test_318@localhost">>,
<<"timestamp">> => null},
#{<<"jid">> =>
<<"alice_notify_deliver_to_online_user_recipient_privacy_test_... mssql_mnesia_26 / odbc_mssql_mnesia / 4e94a99 mysql_redis_26 / mysql_redis / 4e94a99 |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #4243 +/- ##
=======================================
Coverage 84.40% 84.41%
=======================================
Files 552 552
Lines 33538 33538
=======================================
+ Hits 28308 28310 +2
+ Misses 5230 5228 -2 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! 👍
This PR prepares
log_helper
for being used in parallel tests.Logger does adding/removing handlers asynchronously, which leads to race conditions, and some handlers may fail to get registered.
This is why
log_helper
is now reimplemented with only one log handler, and an ETS table for receiver Pids.Additionally,
ets_helper
is added, which is currently used only once, but infeature/instrument
it will be used again.