Merge pull request #13102 from JimMoen/fix-ds-prom-badkey

fix: add ds metrics into prometheus zipper init acc
This commit is contained in:
Zaiming (Stone) Shi 2024-05-23 16:57:06 +02:00 committed by GitHub
commit 1d99ba2a8a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 28 additions and 13 deletions

View File

@ -294,19 +294,19 @@ fetch_cluster_consistented_data() ->
}. }.
aggre_or_zip_init_acc() -> aggre_or_zip_init_acc() ->
#{ (maybe_add_ds_meta())#{
stats_data => maps:from_keys(metrics_name(stats_metric_meta()), []), stats_data => meta_to_init_from(stats_metric_meta()),
vm_data => maps:from_keys(metrics_name(vm_metric_meta()), []), vm_data => meta_to_init_from(vm_metric_meta()),
cluster_data => maps:from_keys(metrics_name(cluster_metric_meta()), []), cluster_data => meta_to_init_from(cluster_metric_meta()),
emqx_packet_data => maps:from_keys(metrics_name(emqx_packet_metric_meta()), []), emqx_packet_data => meta_to_init_from(emqx_packet_metric_meta()),
emqx_message_data => maps:from_keys(metrics_name(message_metric_meta()), []), emqx_message_data => meta_to_init_from(message_metric_meta()),
emqx_delivery_data => maps:from_keys(metrics_name(delivery_metric_meta()), []), emqx_delivery_data => meta_to_init_from(delivery_metric_meta()),
emqx_client_data => maps:from_keys(metrics_name(client_metric_meta()), []), emqx_client_data => meta_to_init_from(client_metric_meta()),
emqx_session_data => maps:from_keys(metrics_name(session_metric_meta()), []), emqx_session_data => meta_to_init_from(session_metric_meta()),
emqx_olp_data => maps:from_keys(metrics_name(olp_metric_meta()), []), emqx_olp_data => meta_to_init_from(olp_metric_meta()),
emqx_acl_data => maps:from_keys(metrics_name(acl_metric_meta()), []), emqx_acl_data => meta_to_init_from(acl_metric_meta()),
emqx_authn_data => maps:from_keys(metrics_name(authn_metric_meta()), []), emqx_authn_data => meta_to_init_from(authn_metric_meta()),
mria_data => maps:from_keys(metrics_name(mria_metric_meta()), []) mria_data => meta_to_init_from(mria_metric_meta())
}. }.
logic_sum_metrics() -> logic_sum_metrics() ->
@ -656,6 +656,18 @@ emqx_metric_data(MetricNameTypeKeyL, Mode) ->
MetricNameTypeKeyL MetricNameTypeKeyL
). ).
%%==========
%% Durable Storage
maybe_add_ds_meta() ->
case emqx_persistent_message:is_persistence_enabled() of
true ->
#{
ds_data => meta_to_init_from(emqx_ds_builtin_metrics:prometheus_meta())
};
false ->
#{}
end.
%%========== %%==========
%% Bytes && Packets %% Bytes && Packets
emqx_packet_metric_meta() -> emqx_packet_metric_meta() ->
@ -1116,6 +1128,9 @@ zip_json_prom_stats_metrics(Key, Points, AllResultedAcc) ->
ThisKeyResult = lists:foldl(emqx_prometheus_cluster:point_to_map_fun(Key), [], Points), ThisKeyResult = lists:foldl(emqx_prometheus_cluster:point_to_map_fun(Key), [], Points),
lists:zipwith(fun maps:merge/2, AllResultedAcc, ThisKeyResult). lists:zipwith(fun maps:merge/2, AllResultedAcc, ThisKeyResult).
meta_to_init_from(Meta) ->
maps:from_keys(metrics_name(Meta), []).
metrics_name(MetricsAll) -> metrics_name(MetricsAll) ->
[Name || {Name, _, _} <- MetricsAll]. [Name || {Name, _, _} <- MetricsAll].