Merge pull request #11115 from thalesmg/log-expired-msgs-buffer-workers-master-20230621
feat(buffer_worker): log expired message count
This commit is contained in:
commit
c76fa411db
|
@ -927,6 +927,7 @@ merge_counters(OldCounters, DeltaCounters) ->
|
||||||
flush_metrics(Data = #{id := Id, counters := Counters}) ->
|
flush_metrics(Data = #{id := Id, counters := Counters}) ->
|
||||||
bump_counters(Id, Counters),
|
bump_counters(Id, Counters),
|
||||||
set_gauges(Data),
|
set_gauges(Data),
|
||||||
|
log_expired_message_count(Data),
|
||||||
ensure_metrics_flush_timer(Data#{counters := #{}}).
|
ensure_metrics_flush_timer(Data#{counters := #{}}).
|
||||||
|
|
||||||
-spec ensure_metrics_flush_timer(data()) -> data().
|
-spec ensure_metrics_flush_timer(data()) -> data().
|
||||||
|
@ -966,6 +967,22 @@ do_bump_counters1(dropped_resource_not_found, Val, Id) ->
|
||||||
do_bump_counters1(dropped_resource_stopped, Val, Id) ->
|
do_bump_counters1(dropped_resource_stopped, Val, Id) ->
|
||||||
emqx_resource_metrics:dropped_resource_stopped_inc(Id, Val).
|
emqx_resource_metrics:dropped_resource_stopped_inc(Id, Val).
|
||||||
|
|
||||||
|
-spec log_expired_message_count(data()) -> ok.
|
||||||
|
log_expired_message_count(_Data = #{id := Id, index := Index, counters := Counters}) ->
|
||||||
|
ExpiredCount = maps:get(dropped_expired, Counters, 0),
|
||||||
|
case ExpiredCount > 0 of
|
||||||
|
false ->
|
||||||
|
ok;
|
||||||
|
true ->
|
||||||
|
?SLOG(info, #{
|
||||||
|
msg => "buffer_worker_dropped_expired_messages",
|
||||||
|
resource_id => Id,
|
||||||
|
worker_index => Index,
|
||||||
|
expired_count => ExpiredCount
|
||||||
|
}),
|
||||||
|
ok
|
||||||
|
end.
|
||||||
|
|
||||||
-spec set_gauges(data()) -> ok.
|
-spec set_gauges(data()) -> ok.
|
||||||
set_gauges(_Data = #{id := Id, index := Index, queue := Q, inflight_tid := InflightTID}) ->
|
set_gauges(_Data = #{id := Id, index := Index, queue := Q, inflight_tid := InflightTID}) ->
|
||||||
emqx_resource_metrics:queuing_set(Id, Index, queue_count(Q)),
|
emqx_resource_metrics:queuing_set(Id, Index, queue_count(Q)),
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Added info logs to indicate when buffered messages are dropped due to time-to-live (TTL) expiration.
|
4
mix.exs
4
mix.exs
|
@ -95,7 +95,9 @@ defmodule EMQXUmbrella.MixProject do
|
||||||
github: "emqx/ranch", ref: "de8ba2a00817c0a6eb1b8f20d6fb3e44e2c9a5aa", override: true},
|
github: "emqx/ranch", ref: "de8ba2a00817c0a6eb1b8f20d6fb3e44e2c9a5aa", override: true},
|
||||||
# in conflict by grpc and eetcd
|
# in conflict by grpc and eetcd
|
||||||
{:gpb, "4.19.7", override: true, runtime: false},
|
{:gpb, "4.19.7", override: true, runtime: false},
|
||||||
{:hackney, github: "emqx/hackney", tag: "1.18.1-1", override: true}
|
{:hackney, github: "emqx/hackney", tag: "1.18.1-1", override: true},
|
||||||
|
# set by hackney (dependency)
|
||||||
|
{:ssl_verify_fun, "1.1.6", override: true}
|
||||||
] ++
|
] ++
|
||||||
emqx_apps(profile_info, version) ++
|
emqx_apps(profile_info, version) ++
|
||||||
enterprise_deps(profile_info) ++ bcrypt_dep() ++ jq_dep() ++ quicer_dep()
|
enterprise_deps(profile_info) ++ bcrypt_dep() ++ jq_dep() ++ quicer_dep()
|
||||||
|
|
Loading…
Reference in New Issue