diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2024-01-12 00:09:23 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2024-01-12 00:09:23 +0300 |
commit | c53e365d68ee800702befb15adfdfac708d5de6f (patch) | |
tree | 023b65376d2929e777be5785ec9c3fdd24263c7e /lib | |
parent | 1bd9d2d9499d0d28e62254a28fcd3d913a8704af (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab/usage_data_counters/hll_redis_counter.rb | 20 | ||||
-rw-r--r-- | lib/gitlab/usage_data_counters/hll_redis_key_overrides.yml | 1 |
2 files changed, 17 insertions, 4 deletions
diff --git a/lib/gitlab/usage_data_counters/hll_redis_counter.rb b/lib/gitlab/usage_data_counters/hll_redis_counter.rb index b0444066722..137b6f90545 100644 --- a/lib/gitlab/usage_data_counters/hll_redis_counter.rb +++ b/lib/gitlab/usage_data_counters/hll_redis_counter.rb @@ -8,6 +8,7 @@ module Gitlab module HLLRedisCounter KEY_EXPIRY_LENGTH = 6.weeks REDIS_SLOT = 'hll_counters' + KEY_OVERRIDES_PATH = Rails.root.join('lib/gitlab/usage_data_counters/hll_redis_key_overrides.yml') EventError = Class.new(StandardError) UnknownEvent = Class.new(EventError) @@ -22,6 +23,7 @@ module Gitlab include Gitlab::Utils::UsageData include Gitlab::Usage::TimeFrame include Gitlab::Usage::TimeSeriesStorable + include Gitlab::Utils::StrongMemoize # Track unique events # @@ -105,13 +107,23 @@ module Gitlab end def redis_key(event, time) - raise UnknownEvent, "Unknown event #{event[:name]}" unless known_events_names.include?(event[:name].to_s) - - key = "{#{REDIS_SLOT}}_#{event[:name]}" + key = redis_key_base(event[:name]) year_week = time.strftime('%G-%V') - "#{key}-#{year_week}" + "{#{REDIS_SLOT}}_#{key}-#{year_week}" + end + + def redis_key_base(event_name) + raise UnknownEvent, "Unknown event #{event_name}" unless known_events_names.include?(event_name.to_s) + + key_overrides.fetch(event_name, event_name) end + + def key_overrides + YAML.safe_load(File.read(KEY_OVERRIDES_PATH)) + end + + strong_memoize_attr :key_overrides end end end diff --git a/lib/gitlab/usage_data_counters/hll_redis_key_overrides.yml b/lib/gitlab/usage_data_counters/hll_redis_key_overrides.yml new file mode 100644 index 00000000000..0967ef424bc --- /dev/null +++ b/lib/gitlab/usage_data_counters/hll_redis_key_overrides.yml @@ -0,0 +1 @@ +{} |