opentelemetry-exporter-zipkin 0.19.0 → 0.20.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 580a224dcd73af1a6cc7ea728da7d58a2d759a57d563d4c23d3d1a5439c038f4
4
- data.tar.gz: 9550c4253385e2ca2c954ee827cc7af7687a249d56866a4e6f7e76b7ba79556a
3
+ metadata.gz: dd0f6efbe1457e04c816f0e2be81ad8cf1ea5ab59a8c76a939429776cb46b9fa
4
+ data.tar.gz: 46067ad66e3b6b3c5121936f5f0fa74860d21a14c90abcdbf266f37ea8471e9d
5
5
  SHA512:
6
- metadata.gz: 9e63e143611bdc223be0d009fd3b51acc3c2dfb8fe4f8e23e31a82a4a9b18a82b650def2a0b1554a326c7b40409a743d0fc6fae41c4779115ff9e3924de88804
7
- data.tar.gz: 24d0c9e7a3ee41954e42db0587e6cdbb2553d1af92d46c8e8a0b83d5a39149d80e5b5a71cad7692b47648359ed16c706c83dbdb17e837327aa9ba57453be6c97
6
+ metadata.gz: 50cc28cfa5da93f15b5f0e32ef10b003357dc06583638cd93ae9574f0fc187e5e3aff5694f6007b326f784e5aca2ba7adaf1da47b583f6cdf766c9aea1246142
7
+ data.tar.gz: 3418502a4f82b0e2e260bee0423f51aa28772f69ba7ea9233a54877bf76c3f77669caf6bafcdfd05bf8da47a2cd2835565714a9ff69ee3693460b1c5eead14bc
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Release History: opentelemetry-exporter-zipkin
2
2
 
3
+ ### v0.20.0 / 2022-06-09
4
+
5
+ * (No significant changes)
6
+
7
+ ### v0.19.3 / 2021-12-01
8
+
9
+ * FIXED: Change net attribute names to match the semantic conventions spec for http
10
+
11
+ ### v0.19.2 / 2021-09-29
12
+
13
+ * (No significant changes)
14
+
15
+ ### v0.19.1 / 2021-08-12
16
+
17
+ * DOCS: Update docs to rely more on environment variable configuration
18
+
3
19
  ### v0.19.0 / 2021-06-23
4
20
 
5
21
  * BREAKING CHANGE: Total order constraint on span.status=
data/README.md CHANGED
@@ -31,16 +31,14 @@ Then, configure the SDK to use a zipkin exporter as a span processor, and use th
31
31
  require 'opentelemetry/sdk'
32
32
  require 'opentelemetry/exporter/zipkin'
33
33
 
34
- # Configure the sdk with custom export
35
- OpenTelemetry::SDK.configure do |c|
36
- c.add_span_processor(
37
- OpenTelemetry::SDK::Trace::Export::BatchSpanProcessor.new(
38
- OpenTelemetry::Exporter::Zipkin::Exporter.new(endpoint: 'http://192.168.0.1:9411/api/v2/spans' )
39
- )
40
- )
41
- c.service_name = 'zipkin-example'
42
- c.service_version = '0.15.0'
43
- end
34
+ # Select the zipkin exporter via environmental variables
35
+ ENV['OTEL_TRACES_EXPORTER'] = 'zipkin'
36
+
37
+ ENV['OTEL_SERVICE_NAME'] = 'zipkin-example'
38
+ ENV['OTEL_SERVICE_VERSION'] = '0.15.0'
39
+
40
+ # The zipkin expects an exporter running on localhost:9411 - you may override this if needed:
41
+ # ENV['OTEL_EXPORTER_ZIPKIN_ENDPOINT'] = 'http://some.other.host:12345'
44
42
 
45
43
  # To start a trace you need to get a Tracer from the TracerProvider
46
44
  tracer = OpenTelemetry.tracer_provider.tracer('my_app_or_gem', '0.1.0')
@@ -63,7 +61,7 @@ For additional examples, see the [examples on github][examples-github].
63
61
 
64
62
  ## How can I configure the Zipkin exporter?
65
63
 
66
- The collector exporter can be configured explicitly in code, as shown above, or via environment variables. The configuration parameters, environment variables, and defaults are shown below.
64
+ The collector exporter can be configured explicitly in code, or via environment variables as shown above. The configuration parameters, environment variables, and defaults are shown below.
67
65
 
68
66
  | Parameter | Environment variable | Default |
69
67
  | ----------- | --------------------------------------| -------------------------- |
@@ -27,10 +27,10 @@ module OpenTelemetry
27
27
  WRITE_TIMEOUT_SUPPORTED = Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('2.6')
28
28
  private_constant(:KEEP_ALIVE_TIMEOUT, :RETRY_COUNT, :WRITE_TIMEOUT_SUPPORTED)
29
29
 
30
- def initialize(endpoint: config_opt('OTEL_EXPORTER_ZIPKIN_ENDPOINT', default: 'http://localhost:9411/api/v2/spans'),
31
- headers: config_opt('OTEL_EXPORTER_ZIPKIN_TRACES_HEADERS', 'OTEL_EXPORTER_ZIPKIN_HEADERS'),
32
- timeout: config_opt('OTEL_EXPORTER_ZIPKIN_TRACES_TIMEOUT', 'OTEL_EXPORTER_ZIPKIN_TIMEOUT', default: 10))
33
- raise ArgumentError, "invalid url for Zipkin::Exporter #{endpoint}" if invalid_url?(endpoint)
30
+ def initialize(endpoint: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_ZIPKIN_ENDPOINT', default: 'http://localhost:9411/api/v2/spans'),
31
+ headers: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_ZIPKIN_TRACES_HEADERS', 'OTEL_EXPORTER_ZIPKIN_HEADERS'),
32
+ timeout: OpenTelemetry::Common::Utilities.config_opt('OTEL_EXPORTER_ZIPKIN_TRACES_TIMEOUT', 'OTEL_EXPORTER_ZIPKIN_TIMEOUT', default: 10))
33
+ raise ArgumentError, "invalid url for Zipkin::Exporter #{endpoint}" unless OpenTelemetry::Common::Utilities.valid_url?(endpoint)
34
34
  raise ArgumentError, 'headers must be comma-separated k=v pairs or a Hash' unless valid_headers?(headers)
35
35
 
36
36
  @uri = if endpoint == ENV['OTEL_EXPORTER_ZIPKIN_ENDPOINT']
@@ -94,14 +94,6 @@ module OpenTelemetry
94
94
 
95
95
  private
96
96
 
97
- def config_opt(*env_vars, default: nil)
98
- env_vars.each do |env_var|
99
- val = ENV[env_var]
100
- return val unless val.nil?
101
- end
102
- default
103
- end
104
-
105
97
  def encode_spans(span_data)
106
98
  span_data.map! { |span| Transformer.to_zipkin_span(span, span.resource) }
107
99
  end
@@ -110,15 +102,6 @@ module OpenTelemetry
110
102
  OpenTelemetry::Common::Utilities.untraced { yield }
111
103
  end
112
104
 
113
- def invalid_url?(url)
114
- return true if url.nil? || url.strip.empty?
115
-
116
- URI(url)
117
- false
118
- rescue URI::InvalidURIError
119
- true
120
- end
121
-
122
105
  def valid_headers?(headers)
123
106
  return true if headers.nil? || headers.is_a?(Hash)
124
107
  return false unless headers.is_a?(String)
@@ -29,10 +29,10 @@ module OpenTelemetry
29
29
  STATUS_ERROR = 'ERROR'
30
30
  STATUS_OK = 'OK'
31
31
  ATTRIBUTE_PEER_SERVICE = 'peer.service'
32
- ATTRIBUTE_NET_PEER_IP = 'peer.ip'
33
- ATTRIBUTE_NET_PEER_PORT = 'peer.port'
34
- ATTRIBUTE_NET_HOST_IP = 'host.ip'
35
- ATTRIBUTE_NET_HOST_PORT = 'host.port'
32
+ ATTRIBUTE_NET_PEER_IP = 'net.peer.ip'
33
+ ATTRIBUTE_NET_PEER_PORT = 'net.peer.port'
34
+ ATTRIBUTE_NET_HOST_IP = 'net.host.ip'
35
+ ATTRIBUTE_NET_HOST_PORT = 'net.host.port'
36
36
 
37
37
  DEFAULT_SERVICE_NAME = OpenTelemetry::SDK::Resources::Resource.default.attribute_enumerator.find { |k, _| k == SERVICE_NAME_ATTRIBUTE_KEY }&.last || 'unknown_service'
38
38
  private_constant(:KIND_MAP, :DEFAULT_SERVICE_NAME, :SERVICE_NAME_ATTRIBUTE_KEY, :ERROR_TAG_KEY, :STATUS_CODE_NAME, :STATUS_ERROR, :STATUS_OK, :ATTRIBUTE_PEER_SERVICE, :ATTRIBUTE_NET_PEER_IP, :ATTRIBUTE_NET_PEER_PORT, :ATTRIBUTE_NET_HOST_IP, :ATTRIBUTE_NET_HOST_PORT)
@@ -8,7 +8,7 @@ module OpenTelemetry
8
8
  module Exporter
9
9
  module Zipkin
10
10
  ## Current OpenTelemetry Zipkin exporter version
11
- VERSION = '0.19.0'
11
+ VERSION = '0.20.0'
12
12
  end
13
13
  end
14
14
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: opentelemetry-exporter-zipkin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.20.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-06-24 00:00:00.000000000 Z
11
+ date: 2022-06-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opentelemetry-api
@@ -16,42 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0.rc2
19
+ version: '1.0'
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: 1.0.0.rc2
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: opentelemetry-common
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.19.0
33
+ version: 0.19.6
34
34
  type: :runtime
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.19.0
40
+ version: 0.19.6
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: opentelemetry-sdk
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.0.0.rc2
47
+ version: '1.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.0.0.rc2
54
+ version: '1.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: opentelemetry-semantic_conventions
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -94,6 +108,20 @@ dependencies:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
110
  version: '5.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: opentelemetry-test-helpers
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
97
125
  - !ruby/object:Gem::Dependency
98
126
  name: rake
99
127
  requirement: !ruby/object:Gem::Requirement
@@ -198,10 +226,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
198
226
  licenses:
199
227
  - Apache-2.0
200
228
  metadata:
201
- changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-zipkin/v0.19.0/file.CHANGELOG.html
229
+ changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-zipkin/v0.20.0/file.CHANGELOG.html
202
230
  source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/exporter/zipkin
203
231
  bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
204
- documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-zipkin/v0.19.0
232
+ documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-exporter-zipkin/v0.20.0
205
233
  post_install_message:
206
234
  rdoc_options: []
207
235
  require_paths:
@@ -210,7 +238,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
210
238
  requirements:
211
239
  - - ">="
212
240
  - !ruby/object:Gem::Version
213
- version: 2.5.0
241
+ version: 2.6.0
214
242
  required_rubygems_version: !ruby/object:Gem::Requirement
215
243
  requirements:
216
244
  - - ">="