Module: Aws::Xray::CallerBuilder

Extended by:
CallerBuilder
Included in:
CallerBuilder
Defined in:
lib/aws/xray/caller_builder.rb

Constant Summary collapse

MAX_BACKTRACE_SIZE =
100

Instance Method Summary collapse

Instance Method Details

#callHash

Build caller stack trace data.

Returns:

  • (Hash)

    for metadata



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/aws/xray/caller_builder.rb', line 10

def call
  dir = (Dir.pwd + '/') rescue '/'
  stack = caller

  truncated = [stack.size - MAX_BACKTRACE_SIZE, 0].max
  stack = stack[0..MAX_BACKTRACE_SIZE - 1].map do |s|
    file, line, method_name = s.split(':')
    {
      path: file.sub(dir, ''),
      line: line,
      label: method_name,
    }
  end

  {
    caller: {
      stack: stack,
      truncated: truncated,
    }
  }
end