fix(emqx_opentelemetry): fix dialyzer warnings

This commit is contained in:
Serge Tupchii 2023-11-21 20:00:10 +02:00
parent 60da6427ca
commit 8d3f98eff2
4 changed files with 15 additions and 17 deletions

View File

@ -39,12 +39,12 @@
-define(PROVIDER, {?MODULE, trace_provider}).
-define(with_provider(IfRegisitered, IfNotRegisired),
-define(with_provider(IfRegistered, IfNotRegistered),
case persistent_term:get(?PROVIDER, undefined) of
undefined ->
IfNotRegisired;
IfNotRegistered;
Provider ->
Provider:IfRegisitered
Provider:IfRegistered
end
).

View File

@ -3,13 +3,13 @@
{deps,
[{emqx, {path, "../emqx"}}
%% trace
, {opentelemetry_api, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.3-emqx"}, "apps/opentelemetry_api"}}
, {opentelemetry, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.3-emqx"}, "apps/opentelemetry"}}
, {opentelemetry_api, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.4-emqx"}, "apps/opentelemetry_api"}}
, {opentelemetry, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.4-emqx"}, "apps/opentelemetry"}}
%% log metrics
, {opentelemetry_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.3-emqx"}, "apps/opentelemetry_experimental"}}
, {opentelemetry_api_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.3-emqx"}, "apps/opentelemetry_api_experimental"}}
, {opentelemetry_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.4-emqx"}, "apps/opentelemetry_experimental"}}
, {opentelemetry_api_experimental, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.4-emqx"}, "apps/opentelemetry_api_experimental"}}
%% export
, {opentelemetry_exporter, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.3-emqx"}, "apps/opentelemetry_exporter"}}
, {opentelemetry_exporter, {git_subdir, "https://github.com/emqx/opentelemetry-erlang", {tag, "v1.4.4-emqx"}, "apps/opentelemetry_exporter"}}
]}.
{edoc_opts, [{preprocess, true}]}.

View File

@ -102,12 +102,12 @@ cleanup() ->
safe_stop_default_metrics() ->
try
_ = opentelemetry_experimental:stop_default_metrics()
_ = opentelemetry_experimental:stop_default_metrics(),
ok
catch
%% noramal scenario, metrics supervisor is not started
exit:{noproc, _} -> ok
end,
ok.
end.
create_metric_views() ->
Meter = opentelemetry_experimental:get_meter(),

View File

@ -37,7 +37,6 @@
-include_lib("opentelemetry_api/include/otel_tracer.hrl").
-define(EMQX_OTEL_CTX, otel_ctx).
%% NOTE: it's possible to use trace_flags to set is_sampled flag
-define(IS_ENABLED, emqx_enable).
-define(USER_PROPERTY, 'User-Property').
@ -115,13 +114,11 @@ trace_process_publish(Packet, Channel, ProcessFun) ->
Ctx = otel_tracer:set_current_span(RootCtx1, SpanCtx),
%% put ctx to packet, so it can be further propagated
Packet1 = put_ctx_to_packet(Ctx, Packet),
%% TODO: consider getting rid of propagating Ctx through process dict as it's anyway seems to have
%% very limited usage
otel_ctx:attach(Ctx),
_ = otel_ctx:attach(Ctx),
try
ProcessFun(Packet1, Channel)
after
?end_span(),
_ = ?end_span(),
clear()
end
end.
@ -261,7 +258,8 @@ clear() ->
safe_stop_default_tracer() ->
try
_ = opentelemetry:stop_default_tracer_provider()
_ = opentelemetry:stop_default_tracer_provider(),
ok
catch
%% noramal scenario, opentelemetry supervisor is not started
exit:{noproc, _} -> ok