opentelemetry-instrumentation-mongo 0.14.0 → 0.18.1

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: 7e8ea57f1e1f3e19fb445bc85cac351384d3b8aadd3d873eb8885d983997815d
4
- data.tar.gz: 63eec5d7a470fd63d846e7bab19ce736e2851539849811d6182eb052d39bff8e
3
+ metadata.gz: 88a5248c360c56ea13c8d7145cb733a26e7bb1f5abc7b717acc86f4b0c36697a
4
+ data.tar.gz: e35a28ace8e4b22fa14d62355cf75fb1285d5a03cb0b25a70d386dd7937df909
5
5
  SHA512:
6
- metadata.gz: fab3f3edc076656bfb61652ffbabf082dd5b33fdc306ad8bce12c7fdf71d11b58e438ad519f63647c6c445d88d87cc9f9aca2305d6676654dcd03399fdff5ba6
7
- data.tar.gz: 2ff4f59d4b42fef78c555521886e156fedf5bf55d8046a326a4085b7a1c819e833d2d27ad46b36bc5b853dde88b9cc9f8388a4f9fe173eb59b28bb695dead090
6
+ metadata.gz: cb3e6bef3ed07047b472358da9d67735746583f96f6ad24e4b22465bbf6df09202f05f26ed38509e8dd71751c40864408e8adf696449d1d95831c30b2b95ac1a
7
+ data.tar.gz: e70eabe8e28bff63396be6eafe62a7a1334899ee0022f8cd85d29afd3c637db043360437368d24711e06a8d437022bf14346c53866acd0fd35ac47bfec7b12fd
data/CHANGELOG.md CHANGED
@@ -1,14 +1,41 @@
1
1
  # Release History: opentelemetry-instrumentation-mongo
2
2
 
3
+ ### v0.18.1 / 2021-06-23
4
+
5
+ * (No significant changes)
6
+
7
+ ### v0.18.0 / 2021-05-21
8
+
9
+ * BREAKING CHANGE: Replace Time.now with Process.clock_gettime
10
+
11
+ * ADDED: Updated API depedency for 1.0.0.rc1
12
+ * FIXED: Replace Time.now with Process.clock_gettime
13
+ * FIXED: Mongodb test asserting error message
14
+
15
+ ### v0.17.0 / 2021-04-22
16
+
17
+ * ADDED: Mongo instrumentation accepts peer service config attribute.
18
+ * FIXED: Fix Mongo instrumentation example.
19
+ * FIXED: Refactor propagators to add #fields
20
+
21
+ ### v0.16.0 / 2021-03-17
22
+
23
+ * FIXED: Example scripts now reference local common lib
24
+ * DOCS: Replace Gitter with GitHub Discussions
25
+
26
+ ### v0.15.0 / 2021-02-18
27
+
28
+ * (No significant changes)
29
+
3
30
  ### v0.14.0 / 2021-02-03
4
31
 
5
- * BREAKING CHANGE: Replace getter and setter callables and remove rack specific propagators
32
+ * BREAKING CHANGE: Replace getter and setter callables and remove rack specific propagators
6
33
 
7
- * ADDED: Replace getter and setter callables and remove rack specific propagators
34
+ * ADDED: Replace getter and setter callables and remove rack specific propagators
8
35
 
9
36
  ### v0.13.0 / 2021-01-29
10
37
 
11
- * FIXED: Mongo Instrumenter: Do not send nil attributes
38
+ * FIXED: Mongo Instrumenter: Do not send nil attributes
12
39
 
13
40
  ### v0.12.0 / 2020-12-24
14
41
 
@@ -16,7 +43,7 @@
16
43
 
17
44
  ### v0.11.0 / 2020-12-11
18
45
 
19
- * FIXED: Copyright comments to not reference year
46
+ * FIXED: Copyright comments to not reference year
20
47
 
21
48
  ### v0.10.0 / 2020-12-03
22
49
 
@@ -24,4 +51,4 @@
24
51
 
25
52
  ### v0.9.0 / 2020-11-03
26
53
 
27
- * Initial release of Mongo instrumenter (ported from Datadog)
54
+ * Initial release of Mongo instrumenter (ported from Datadog)
data/README.md CHANGED
@@ -30,15 +30,25 @@ OpenTelemetry::SDK.configure do |c|
30
30
  end
31
31
  ```
32
32
 
33
- ## Examples
33
+ ## Example
34
34
 
35
- Example usage of mongo can be seen in the `./example/mongo.rb` file [here](https://github.com/open-telemetry/opentelemetry-ruby/blob/main/instrumentation/mongo/example/mongo.rb)
35
+ To run the example:
36
+
37
+ 1. Start MongoDB using docker-compose
38
+ * `docker-compose up mongo`
39
+ 2. In a separate terminal window, `cd` to the examples directory and install gems
40
+ * `cd example`
41
+ * `bundle install`
42
+ 3. Run the sample client script
43
+ * `ruby mongo.rb`
44
+
45
+ This will run a few MongoDB commands, printing OpenTelemetry traces to the console as it goes.
36
46
 
37
47
  ## How can I get involved?
38
48
 
39
49
  The `opentelemetry-instrumentation-mongo` gem source is [on github][repo-github], along with related gems including `opentelemetry-api` and `opentelemetry-sdk`.
40
50
 
41
- The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us on our [gitter channel][ruby-gitter] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig].
51
+ The OpenTelemetry Ruby gems are maintained by the OpenTelemetry-Ruby special interest group (SIG). You can get involved by joining us in [GitHub Discussions][discussions-url] or attending our weekly meeting. See the [meeting calendar][community-meetings] for dates and times. For more information on this and other language SIGs, see the OpenTelemetry [community page][ruby-sig].
42
52
 
43
53
  ## License
44
54
 
@@ -50,4 +60,5 @@ Apache 2.0 license. See [LICENSE][license-github] for more information.
50
60
  [license-github]: https://github.com/open-telemetry/opentelemetry-ruby/blob/main/LICENSE
51
61
  [ruby-sig]: https://github.com/open-telemetry/community#ruby-sig
52
62
  [community-meetings]: https://github.com/open-telemetry/community#community-meetings
53
- [ruby-gitter]: https://gitter.im/open-telemetry/opentelemetry-ruby
63
+ [discussions-url]: https://github.com/open-telemetry/opentelemetry-ruby/discussions
64
+
@@ -5,6 +5,7 @@
5
5
  # SPDX-License-Identifier: Apache-2.0
6
6
 
7
7
  require 'opentelemetry'
8
+ require 'opentelemetry-instrumentation-base'
8
9
 
9
10
  module OpenTelemetry
10
11
  module Instrumentation
@@ -24,6 +24,8 @@ module OpenTelemetry
24
24
  gem_version >= MINIMUM_VERSION
25
25
  end
26
26
 
27
+ option :peer_service, default: nil, validate: :string
28
+
27
29
  private
28
30
 
29
31
  def gem_version
@@ -64,14 +64,18 @@ module OpenTelemetry
64
64
  end
65
65
 
66
66
  def build_attributes(event)
67
- {
67
+ attrs = {
68
68
  'db.system' => 'mongodb',
69
69
  'db.name' => event.database_name,
70
70
  'db.operation' => event.command_name,
71
71
  'db.statement' => CommandSerializer.new(event.command).serialize,
72
72
  'net.peer.name' => event.address.host,
73
73
  'net.peer.port' => event.address.port
74
- }.compact
74
+ }
75
+ config = Mongo::Instrumentation.instance.config
76
+ attrs['peer.service'] = config[:peer_service] if config[:peer_service]
77
+ attrs.compact!
78
+ attrs
75
79
  end
76
80
 
77
81
  def get_collection(command)
@@ -7,7 +7,7 @@
7
7
  module OpenTelemetry
8
8
  module Instrumentation
9
9
  module Mongo
10
- VERSION = '0.14.0'
10
+ VERSION = '0.18.1'
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-mongo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.18.1
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-02-03 00:00:00.000000000 Z
11
+ date: 2021-06-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -16,14 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.14.0
19
+ version: 1.0.0.rc2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.14.0
26
+ version: 1.0.0.rc2
27
+ - !ruby/object:Gem::Dependency
28
+ name: opentelemetry-instrumentation-base
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.18.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.18.1
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: appraisal
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -86,14 +100,14 @@ dependencies:
86
100
  requirements:
87
101
  - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: '0.0'
103
+ version: 1.0.0.rc1
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
- version: '0.0'
110
+ version: 1.0.0.rc1
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: rspec-mocks
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -200,10 +214,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
200
214
  licenses:
201
215
  - Apache-2.0
202
216
  metadata:
203
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-mongo/v0.14.0/file.CHANGELOG.html
217
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-mongo/v0.18.1/file.CHANGELOG.html
204
218
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/instrumentation/mongo
205
219
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
206
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-mongo/v0.14.0
220
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-instrumentation-mongo/v0.18.1
207
221
  post_install_message:
208
222
  rdoc_options: []
209
223
  require_paths:
@@ -219,7 +233,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
219
233
  - !ruby/object:Gem::Version
220
234
  version: '0'
221
235
  requirements: []
222
- rubygems_version: 3.1.4
236
+ rubygems_version: 3.1.6
223
237
  signing_key:
224
238
  specification_version: 4
225
239
  summary: Mongo instrumentation for the OpenTelemetry framework