datadog-lambda 0.9.0 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15ddc462886c4a35ba66d327ebbc2be17c403b2d47cab973fa06e05d6df3d2d1
4
- data.tar.gz: b90918aa8b2372e2149e4b084b5ee97d9a8268ebff7ebb83a0e1a6a3751488c1
3
+ metadata.gz: c19e8514981117ae88bdaa4d17f7a3a5db19595d39336100ac581e0cf330be1d
4
+ data.tar.gz: 5d2c0ef21fb1fb0d33759f0b3430daebe88100e4f626b20f6dd9512739c6b62c
5
5
  SHA512:
6
- metadata.gz: 71b82b6b3ec47c17fff39fb4f3bfd40c6d2ef7ba477baa82de83a87bc710fc0114fa7aadc84153908db40de6af8437248e9634b8838a6d60af54e44fefbe8e29
7
- data.tar.gz: ca9afd36577caa6b5efef5663add0b37e32bfa953b55ee2909bc2f104a139e0a6478fcddcdde67687537672ae88b2d50f81b3d79c4aefa2967c29cae4faf367b
6
+ metadata.gz: 6cab42dc833290ea7742def1dda6e4bb4a89ebb7f90240e053cdbcd8f8a338fbaaa98069dc48fdc6d823fb087a90c946c097bd012014e31b84629995f296fe0a
7
+ data.tar.gz: 4092f19c6b544307e2a82492fd13ce2241d2e0820df2b81da53a6adbd4ec3da0aa9b6d04a56c528b822f93df36e8122985d1a5c0584773d867c3f787feb46eba
@@ -37,6 +37,7 @@ module Datadog
37
37
  c.tracer writer: Datadog::SyncWriter.new(
38
38
  transport: Datadog::Transport::IO.default
39
39
  )
40
+ c.tags = { "_dd.origin": 'lambda' }
40
41
  yield(c) if block_given?
41
42
  end
42
43
  end
@@ -68,7 +69,6 @@ module Datadog
68
69
  # Gets the current tracing context
69
70
  def self.trace_context
70
71
  context = Hash[Datadog::Trace.trace_context]
71
- context.delete(:source)
72
72
  context
73
73
  end
74
74
 
@@ -82,13 +82,18 @@ module Datadog
82
82
  raise 'value must be a number' unless value.is_a?(Numeric)
83
83
 
84
84
  time ||= Time.now
85
- tag_list = ['dd_lambda_layer:datadog-ruby25']
85
+ time_ms = time.to_f.to_i
86
+
87
+ tag_list = ["dd_lambda_layer:datadog-ruby#{dd_lambda_layer_tag}"]
86
88
  tags.each do |tag|
87
89
  tag_list.push("#{tag[0]}:#{tag[1]}")
88
90
  end
89
- time_ms = time.to_f.to_i
90
- metric = { e: time_ms, m: name, t: tag_list, v: value }.to_json
91
- puts metric
91
+ metric = { e: time_ms, m: name, t: tag_list, v: value }
92
+ puts metric.to_json
93
+ end
94
+
95
+ def self.dd_lambda_layer_tag
96
+ RUBY_VERSION[0, 3].tr('.', '')
92
97
  end
93
98
 
94
99
  # Generate tags for enhanced metrics
@@ -41,8 +41,11 @@ module Datadog
41
41
  request_context: request_context,
42
42
  cold_start: cold_start
43
43
  )
44
- options[:resource] = @handler_name
45
- options[:service] = @function_name
44
+ context = Datadog::Trace.trace_context
45
+ source = context[:source] if context
46
+ options[:tags]['_dd.parent_source'] = source if source && source != 'ddtrace'
47
+ options[:resource] = @function_name
48
+ options[:service] = 'aws.lambda'
46
49
  options[:span_type] = 'serverless'
47
50
  Datadog::Trace.apply_datadog_trace_context(Datadog::Trace.trace_context)
48
51
  Datadog::Trace.wrap_datadog(options) do
@@ -36,11 +36,7 @@ module Datadog
36
36
  Datadog::Trace.trace_context
37
37
  )
38
38
 
39
- req[Datadog::Trace::DD_SAMPLING_PRIORITY_HEADER.to_sym] =
40
- context[:sample_mode]
41
- req[Datadog::Trace::DD_PARENT_ID_HEADER.to_sym] = context[:parent_id]
42
- req[Datadog::Trace::DD_TRACE_ID_HEADER.to_sym] = context[:trace_id]
43
- logger.debug("added context #{context} to request")
39
+ req = add_ctx_to_req(req, context)
44
40
  rescue StandardError => e
45
41
  trace = e.backtrace.join("\n ")
46
42
  logger.debug(
@@ -49,6 +45,17 @@ module Datadog
49
45
  end
50
46
  super(req, body, &block)
51
47
  end
48
+
49
+ private
50
+
51
+ def add_ctx_to_req(req, context)
52
+ req[Datadog::Trace::DD_SAMPLING_PRIORITY_HEADER.to_sym] =
53
+ context[:sample_mode]
54
+ req[Datadog::Trace::DD_PARENT_ID_HEADER.to_sym] = context[:parent_id]
55
+ req[Datadog::Trace::DD_TRACE_ID_HEADER.to_sym] = context[:trace_id]
56
+ logger.debug("added context #{context} to request")
57
+ req
58
+ end
52
59
  end
53
60
  end
54
61
  end
@@ -11,8 +11,8 @@
11
11
  module Datadog
12
12
  module Lambda
13
13
  module VERSION
14
- MAJOR = 0
15
- MINOR = 9
14
+ MAJOR = 1
15
+ MINOR = 10
16
16
  PATCH = 0
17
17
  PRE = nil
18
18
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datadog-lambda
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Datadog, Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-23 00:00:00.000000000 Z
11
+ date: 2020-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-xray-sdk
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.32'
33
+ version: '0.4'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0.32'
40
+ version: '0.4'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -113,7 +113,7 @@ files:
113
113
  - lib/datadog/lambda/trace/xray.rb
114
114
  - lib/datadog/lambda/utils/logger.rb
115
115
  - lib/datadog/lambda/version.rb
116
- homepage: https://github.com/DataDog/datadog-lambda-layer-rb
116
+ homepage: https://github.com/DataDog/datadog-lambda-rb
117
117
  licenses:
118
118
  - Apache-2.0
119
119
  metadata: