Module: Gitlab::UsageDataCounters

Defined in:
lib/gitlab/usage_data_counters.rb,
lib/gitlab/usage_data_counters/base_counter.rb,
lib/gitlab/usage_data_counters/note_counter.rb,
lib/gitlab/usage_data_counters/diffs_counter.rb,
lib/gitlab/usage_data_counters/redis_counter.rb,
lib/gitlab/usage_data_counters/search_counter.rb,
lib/gitlab/usage_data_counters/designs_counter.rb,
lib/gitlab/usage_data_counters/snippet_counter.rb,
lib/gitlab/usage_data_counters/web_ide_counter.rb,
lib/gitlab/usage_data_counters/hll_redis_counter.rb,
lib/gitlab/usage_data_counters/wiki_page_counter.rb,
lib/gitlab/usage_data_counters/source_code_counter.rb,
lib/gitlab/usage_data_counters/editor_unique_counter.rb,
lib/gitlab/usage_data_counters/merge_request_counter.rb,
lib/gitlab/usage_data_counters/package_event_counter.rb,
lib/gitlab/usage_data_counters/cycle_analytics_counter.rb,
lib/gitlab/usage_data_counters/kubernetes_agent_counter.rb,
lib/gitlab/usage_data_counters/ci_template_unique_counter.rb,
lib/gitlab/usage_data_counters/service_usage_data_counter.rb,
lib/gitlab/usage_data_counters/ipynb_diff_activity_counter.rb,
lib/gitlab/usage_data_counters/issue_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/productivity_analytics_counter.rb,
lib/gitlab/usage_data_counters/container_registry_event_counter.rb,
lib/gitlab/usage_data_counters/work_item_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/gitlab_cli_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/quick_action_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/merge_request_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/neovim_plugin_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/merge_request_widget_extension_counter.rb,
lib/gitlab/usage_data_counters/jetbrains_plugin_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/vscode_extension_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/visual_studio_extension_activity_unique_counter.rb,
lib/gitlab/usage_data_counters/jetbrains_bundled_plugin_activity_unique_counter.rb

Defined Under Namespace

Modules: EditorUniqueCounter, GitLabCliActivityUniqueCounter, HLLRedisCounter, IpynbDiffActivityCounter, IssueActivityUniqueCounter, JetBrainsBundledPluginActivityUniqueCounter, JetBrainsPluginActivityUniqueCounter, MergeRequestActivityUniqueCounter, NeovimPluginActivityUniqueCounter, QuickActionActivityUniqueCounter, RedisCounter, VSCodeExtensionActivityUniqueCounter, VisualStudioExtensionActivityUniqueCounter, WorkItemActivityUniqueCounter Classes: BaseCounter, CiTemplateUniqueCounter, ContainerRegistryEventCounter, CycleAnalyticsCounter, DesignsCounter, DiffsCounter, KubernetesAgentCounter, MergeRequestCounter, MergeRequestWidgetExtensionCounter, NoteCounter, PackageEventCounter, ProductivityAnalyticsCounter, SearchCounter, ServiceUsageDataCounter, SnippetCounter, SourceCodeCounter, WebIdeCounter, WikiPageCounter

Constant Summary collapse

COUNTERS =
[
  PackageEventCounter,
  MergeRequestCounter,
  DesignsCounter,
  DiffsCounter,
  KubernetesAgentCounter,
  NoteCounter,
  SearchCounter,
  ServiceUsageDataCounter,
  WebIdeCounter,
  WikiPageCounter,
  SnippetCounter,
  CycleAnalyticsCounter,
  ProductivityAnalyticsCounter,
  SourceCodeCounter,
  MergeRequestWidgetExtensionCounter
].freeze
UsageDataCounterError =
Class.new(StandardError)
UnknownEvent =
Class.new(UsageDataCounterError)

Class Method Summary collapse

Class Method Details

.count(event_name) ⇒ Object

Raises:



31
32
33
34
35
36
37
38
39
# File 'lib/gitlab/usage_data_counters.rb', line 31

def count(event_name)
  counters.each do |counter|
    event = counter.fetch_supported_event(event_name)

    return counter.count(event) if event
  end

  raise UnknownEvent, "Cannot find counter for event #{event_name}"
end

.countersObject



27
28
29
# File 'lib/gitlab/usage_data_counters.rb', line 27

def counters
  COUNTERS
end