opentelemetry-instrumentation-active_record 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/opentelemetry/instrumentation/active_record/instrumentation.rb +3 -0
- data/lib/opentelemetry/instrumentation/active_record/patches/persistence_class_methods.rb +0 -6
- data/lib/opentelemetry/instrumentation/active_record/patches/relation_persistence.rb +34 -0
- data/lib/opentelemetry/instrumentation/active_record/version.rb +1 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a55434976a5ba204e32e46913ee4ab5a7653060e18fb22b87b28cd2551d4b8f2
|
4
|
+
data.tar.gz: 71fc97b9d03c4952c2fb6e2325158aa0f4045c1c3766f60058927d5f251d090c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7d88fe43aba0a4887b95e1fe5600fcc365222597e539f0bfca8ea21206f0480558bec5e3f398719e7142e6d2e4b6770e7a89ead4acbda3a19280173f89f186cf
|
7
|
+
data.tar.gz: f00e3bf14b7b1b84d4d25e0cc4707366078cf0bccb0400e268b0864c69f4983ef654890167ebc376999afdaf3f88565a1376ecb8eff80c4b36059e2eea1a74f6
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,10 @@
|
|
1
1
|
# Release History: opentelemetry-instrumentation-active_record
|
2
2
|
|
3
|
+
### v0.2.0 / 2021-09-29
|
4
|
+
|
5
|
+
* ADDED: Trace update_all and delete_all calls in ActiveRecord
|
6
|
+
* FIXED: Remove Active Record instantiation patch
|
7
|
+
|
3
8
|
### v0.1.1 / 2021-08-12
|
4
9
|
|
5
10
|
* (No significant changes)
|
@@ -50,6 +50,8 @@ module OpenTelemetry
|
|
50
50
|
::ActiveRecord::Base.prepend(Patches::PersistenceInsertClassMethods) if insert_class_methods_supported?
|
51
51
|
::ActiveRecord::Base.prepend(Patches::TransactionsClassMethods)
|
52
52
|
::ActiveRecord::Base.prepend(Patches::Validations)
|
53
|
+
|
54
|
+
::ActiveRecord::Relation.prepend(Patches::RelationPersistence)
|
53
55
|
end
|
54
56
|
|
55
57
|
def require_dependencies
|
@@ -59,6 +61,7 @@ module OpenTelemetry
|
|
59
61
|
require_relative 'patches/persistence_insert_class_methods' if insert_class_methods_supported?
|
60
62
|
require_relative 'patches/transactions_class_methods'
|
61
63
|
require_relative 'patches/validations'
|
64
|
+
require_relative 'patches/relation_persistence'
|
62
65
|
end
|
63
66
|
end
|
64
67
|
end
|
@@ -30,12 +30,6 @@ module OpenTelemetry
|
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
|
-
def instantiate(attributes, column_types = {}, &block)
|
34
|
-
tracer.in_span("#{self}.instantiate") do
|
35
|
-
super
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
33
|
def update(id = :all, attributes) # rubocop:disable Style/OptionalArguments
|
40
34
|
tracer.in_span("#{self}.update") do
|
41
35
|
super
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright The OpenTelemetry Authors
|
4
|
+
#
|
5
|
+
# SPDX-License-Identifier: Apache-2.0
|
6
|
+
|
7
|
+
module OpenTelemetry
|
8
|
+
module Instrumentation
|
9
|
+
module ActiveRecord
|
10
|
+
module Patches
|
11
|
+
# Module to prepend to ActiveRecord::Relation for instrumentation
|
12
|
+
module RelationPersistence
|
13
|
+
def update_all(*)
|
14
|
+
tracer.in_span("#{model.name}.update_all") do
|
15
|
+
super
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def delete_all(*)
|
20
|
+
tracer.in_span("#{model.name}.delete_all") do
|
21
|
+
super
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
def tracer
|
28
|
+
ActiveRecord::Instrumentation.instance.tracer
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentelemetry-instrumentation-active_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.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: 2021-
|
11
|
+
date: 2021-09-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: opentelemetry-api
|
@@ -211,6 +211,7 @@ files:
|
|
211
211
|
- lib/opentelemetry/instrumentation/active_record/patches/persistence_class_methods.rb
|
212
212
|
- lib/opentelemetry/instrumentation/active_record/patches/persistence_insert_class_methods.rb
|
213
213
|
- lib/opentelemetry/instrumentation/active_record/patches/querying.rb
|
214
|
+
- lib/opentelemetry/instrumentation/active_record/patches/relation_persistence.rb
|
214
215
|
- lib/opentelemetry/instrumentation/active_record/patches/transactions_class_methods.rb
|
215
216
|
- lib/opentelemetry/instrumentation/active_record/patches/validations.rb
|
216
217
|
- lib/opentelemetry/instrumentation/active_record/version.rb
|
@@ -218,10 +219,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
|
|
218
219
|
licenses:
|
219
220
|
- Apache-2.0
|
220
221
|
metadata:
|
221
|
-
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-active_record/v0.
|
222
|
+
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-active_record/v0.2.0/file.CHANGELOG.html
|
222
223
|
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/instrumentation/active_record
|
223
224
|
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
|
224
|
-
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-active_record/v0.
|
225
|
+
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-active_record/v0.2.0
|
225
226
|
post_install_message:
|
226
227
|
rdoc_options: []
|
227
228
|
require_paths:
|