Class: Datadog::Profiling::Collectors::Info

Inherits:
Object
  • Object
show all
Defined in:
lib/datadog/profiling/collectors/info.rb

Overview

Collects information of relevance for profiler. This will get sent alongside the profile and show up in the UI or potentially influence processing in some way.

Information is currently collected and frozen at construction time. A full collector could be seen as overkill for this case but it allows us to centralize information gathering and easily support more flexible/dynamic info collection in the future.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(settings) ⇒ Info

: (untyped) -> void



24
25
26
27
28
29
30
31
32
33
# File 'lib/datadog/profiling/collectors/info.rb', line 24

def initialize(settings)
  @profiler_info = nil

  @info = {
    platform: collect_platform_info,
    runtime: collect_runtime_info,
    application: collect_application_info(settings),
    profiler: collect_profiler_info(settings),
  }.freeze
end

Instance Attribute Details

#info ⇒ Object (readonly)

: ::Hash[::Symbol, ::Hash[::Symbol, untyped]]



35
36
37
# File 'lib/datadog/profiling/collectors/info.rb', line 35

def info
  @info
end