opentelemetry-instrumentation-action_pack 0.2.1 → 0.3.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: c2fe93205bd6919c07ee1c8bcffcc4da51ef45c44ae35e43e5d9706d8bc5ec69
4
- data.tar.gz: 434bb0a50a54867c3d125736763678660ed36155b208c2daba71866d36f12cbb
3
+ metadata.gz: 9e808b337aa7f7d2b1f89d256b5fb47b1863713d562e31497b20feda46d9f8c8
4
+ data.tar.gz: 20dc3d8e3b3fd5adb37fdb7fac3b48f5a015c50bb57e26f2d7b22c202ced2258
5
5
  SHA512:
6
- metadata.gz: 61254f1ee327721f3acd8da527f9f3d43f844c68fcb818a864f2f1df71d66201059f5248f2c1b70c8a3895fb1877be2de6d7466bfb31fb50422963cda21b3185
7
- data.tar.gz: bdfb5be311c901208a38228673db73c1500b7f687705e3bee6e6db6fffa09c34742211af6883cae375a793a6e2e6d30d52b5f560b6ad268c93662eb4a4cafed2
6
+ metadata.gz: f52bf2948e572c80139a243ad0e9d1c95fcd60398a08e3a059f63b17721892faeed67a30e39a937e1edc50e521395a2bd8484cb94fd115dc5dd0e21994a6aa73
7
+ data.tar.gz: f5fd8391cb504a12a3674add3d203ff66750cc55394db7008f382ddce78118d68ff81973244bf2c25051a810b054a0620b61ab4d6f335879a93396f6a74e3ddd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release History: opentelemetry-instrumentation-action_pack
2
2
 
3
+ ### v0.3.0 / 2022-10-14
4
+
5
+ * ADDED: Name ActionPack spans with the HTTP method and route
6
+
3
7
  ### v0.2.1 / 2022-10-04
4
8
 
5
9
  * FIXED: Ensures the correct route is add to http.route span attribute
@@ -14,11 +14,17 @@ module OpenTelemetry
14
14
  def dispatch(name, request, response)
15
15
  rack_span = OpenTelemetry::Instrumentation::Rack.current_span
16
16
  if rack_span.recording?
17
- rack_span.name = "#{self.class.name}##{name}" unless request.env['action_dispatch.exception']
18
-
19
- add_rails_route(rack_span, request) if instrumentation_config[:enable_recognize_route]
20
-
21
- rack_span.set_attribute('http.target', request.filtered_path) if request.filtered_path != request.fullpath
17
+ unless request.env['action_dispatch.exception']
18
+ rack_span.name = case instrumentation_config[:span_naming]
19
+ when :controller_action then "#{self.class.name}##{name}"
20
+ else "#{request.method} #{rails_route(request)}"
21
+ end
22
+ end
23
+
24
+ attributes_to_append = {}
25
+ attributes_to_append['http.route'] = rails_route(request) if instrumentation_config[:enable_recognize_route]
26
+ attributes_to_append['http.target'] = request.filtered_path if request.filtered_path != request.fullpath
27
+ rack_span.add_attributes(attributes_to_append) unless attributes_to_append.empty?
22
28
  end
23
29
 
24
30
  super(name, request, response)
@@ -26,11 +32,10 @@ module OpenTelemetry
26
32
 
27
33
  private
28
34
 
29
- def add_rails_route(rack_span, request)
30
- ::Rails.application.routes.router.recognize(request) do |route, _params|
31
- rack_span.set_attribute('http.route', route.path.spec.to_s)
35
+ def rails_route(request)
36
+ @rails_route ||= ::Rails.application.routes.router.recognize(request) do |route, _params|
37
+ return route.path.spec.to_s
32
38
  # Rails will match on the first route - see https://guides.rubyonrails.org/routing.html#crud-verbs-and-actions
33
- break
34
39
  end
35
40
  end
36
41
 
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module ActionPack
10
- VERSION = '0.2.1'
10
+ VERSION = '0.3.0'
11
11
  end
12
12
  end
13
13
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-instrumentation-action_pack
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenTelemetry Authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-04 00:00:00.000000000 Z
11
+ date: 2022-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -242,10 +242,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-contrib
242
242
  licenses:
243
243
  - Apache-2.0
244
244
  metadata:
245
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby-contrib/opentelemetry-instrumentation-action_pack/v0.2.1/file.CHANGELOG.html
245
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby-contrib/opentelemetry-instrumentation-action_pack/v0.3.0/file.CHANGELOG.html
246
246
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/action_pack
247
247
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby-contrib/issues
248
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby-contrib/opentelemetry-instrumentation-action_pack/v0.2.1
248
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby-contrib/opentelemetry-instrumentation-action_pack/v0.3.0
249
249
  post_install_message:
250
250
  rdoc_options: []
251
251
  require_paths: