feat: upsert stats counters, daily buckets and ETS tops for admin metrics. Refs EventHub/EventHubBack#42 #43 #44 #45 #46
This commit is contained in:
+15
-6
@@ -282,12 +282,21 @@
|
||||
created_at :: calendar:datetime()
|
||||
}).
|
||||
|
||||
-record(stats, {
|
||||
id :: binary(),
|
||||
metric :: atom(),
|
||||
entity_id :: binary(),
|
||||
value :: integer() | {integer(), integer()},
|
||||
timestamp :: calendar:datetime()
|
||||
%% Upsert-счётчики админ-статистики (абсолютные значения).
|
||||
%% key: atom() | {atom(), atom()} | {atom(), atom(), atom()}
|
||||
%% users_total-подобные totals не храним (table_info),
|
||||
%% размерности: {user_by_status, pending}, {event_by_type, single}, ...
|
||||
-record(stats_counter, {
|
||||
key :: term(),
|
||||
value :: integer(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
|
||||
%% Дневные бакеты: key = {Metric :: atom(), Date :: calendar:date()}.
|
||||
-record(stats_daily, {
|
||||
key :: {atom(), calendar:date()},
|
||||
value :: integer(),
|
||||
updated_at :: calendar:datetime()
|
||||
}).
|
||||
|
||||
-record(node_metric, {
|
||||
|
||||
Reference in New Issue
Block a user