Method: Sentry::Event#initialize

Defined in:
lib/sentry/event.rb

#initialize(configuration:, integration_meta: nil, message: nil) ⇒ Event

Returns a new instance of Event.

Parameters:

  • configuration (Configuration)
  • integration_meta (Hash, nil) (defaults to: nil)
  • message (String, nil) (defaults to: nil)
[View source]

51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/sentry/event.rb', line 51

def initialize(configuration:, integration_meta: nil, message: nil)
  # Set some simple default values
  @event_id      = SecureRandom.uuid.delete("-")
  @timestamp     = Sentry.utc_now.iso8601
  @platform      = :ruby
  @type          = self.class::TYPE
  @sdk           = integration_meta || Sentry.sdk_meta

  @user          = {}
  @extra         = {}
  @contexts      = {}
  @tags          = {}
  @attachments   = []

  @fingerprint = []
  @dynamic_sampling_context = nil

  # configuration data that's directly used by events
  @server_name = configuration.server_name
  @environment = configuration.environment
  @release = configuration.release
  @modules = configuration.gem_specs if configuration.send_modules

  # configuration options to help events process data
  @send_default_pii = configuration.send_default_pii
  @trusted_proxies = configuration.trusted_proxies
  @stacktrace_builder = configuration.stacktrace_builder
  @rack_env_whitelist = configuration.rack_env_whitelist

  @message = (message || "").byteslice(0..MAX_MESSAGE_SIZE_IN_BYTES)
end