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

Returns a new instance of Info.



16
17
18
19
20
21
22
23
24
# File 'lib/datadog/profiling/collectors/info.rb', line 16

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

#infoObject (readonly)

Returns the value of attribute info.



26
27
28
# File 'lib/datadog/profiling/collectors/info.rb', line 26

def info
  @info
end