Module: Gitlab::InternalEvents
- Extended by:
- Tracking::Helpers, UsageDataCounters::RedisCounter, UsageDataCounters::RedisSum, Utils::StrongMemoize
- Defined in:
- lib/gitlab/internal_events.rb,
lib/gitlab/internal_events/event_definitions.rb
Defined Under Namespace
Modules: EventDefinitions
Constant Summary collapse
- SNOWPLOW_EMITTER_BUFFER_SIZE =
100
- DEFAULT_BUFFER_SIZE =
1
- KEY_EXPIRY_LENGTH =
Gitlab::UsageDataCounters::HLLRedisCounter::KEY_EXPIRY_LENGTH
Constants included from UsageDataCounters::RedisCounter
UsageDataCounters::RedisCounter::KEY_OVERRIDES_PATH
Class Method Summary collapse
Methods included from UsageDataCounters::RedisSum
Methods included from UsageDataCounters::RedisCounter
increment, increment_by, total_count, with_batched_redis_writes
Methods included from Tracking::Helpers
dnt_enabled?, trackable_html_request?
Class Method Details
.track_event(event_name, category: nil, additional_properties: {}, **kwargs) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/gitlab/internal_events.rb', line 15 def track_event(event_name, category: nil, additional_properties: {}, **kwargs) Gitlab::Tracking::EventValidator.new(event_name, additional_properties, kwargs).validate! event_definition = Gitlab::Tracking::EventDefinition.find(event_name) send_snowplow_event = kwargs.fetch(:send_snowplow_event, true) track_analytics_event(event_name, send_snowplow_event, category: category, additional_properties: additional_properties, **kwargs) return if Feature.disabled?(:move_ai_tracking_to_instrumentation_layer, kwargs[:user]) kwargs[:additional_properties] = additional_properties event_definition.extra_tracking_classes.each do |tracking_class| tracking_class.track_event(event_name, **kwargs) end end |