opentelemetry-propagator-ottrace 0.19.1 → 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 +4 -4
- data/CHANGELOG.md +12 -0
- data/README.md +11 -1
- data/lib/opentelemetry/propagator/ottrace/text_map_propagator.rb +10 -1
- data/lib/opentelemetry/propagator/ottrace/version.rb +1 -1
- metadata +7 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cb24c007cb6bf25c86c659217edc17329ec2aaeb4fa034b3211ee6de3444918f
|
4
|
+
data.tar.gz: 58c33687234c495ecdbca0024e7fecd11fb1093e69a361a6a56ba5bb9a6f25d7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4132c33a8d43467034404e3427eaa108da849068d448112c42d1afa273eb67d213fba03af692289de2b0ba573ae75d1ff9a6c349a72f18fdb23d7528f4ce1dce
|
7
|
+
data.tar.gz: 95cc971d986ee60ca487f21d9ae0a5b2270997658a94068599574c82720ce5219cb12a440d2e3905a29613ed34f9059ffb95cbe5bd3b30e6e6a1fc9935b9f226
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
# Release History: opentelemetry-propagator-ottrace
|
2
2
|
|
3
|
+
### v0.20.0 / 2022-06-09
|
4
|
+
|
5
|
+
* (No significant changes)
|
6
|
+
|
7
|
+
### v0.19.3 / 2021-10-29
|
8
|
+
|
9
|
+
* FIXED: Add Support fo OTTrace Bit Encoded Sampled Flags
|
10
|
+
|
11
|
+
### v0.19.2 / 2021-09-29
|
12
|
+
|
13
|
+
* (No significant changes)
|
14
|
+
|
3
15
|
### v0.19.1 / 2021-08-12
|
4
16
|
|
5
17
|
* (No significant changes)
|
data/README.md
CHANGED
@@ -9,9 +9,19 @@ The `opentelemetry-propagator-ottrace` gem contains injectors and extractors for
|
|
9
9
|
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
|
10
10
|
| `ot-tracer-traceid` | uint64 encoded as a string of 16 hex characters | yes |
|
11
11
|
| `ot-tracer-spanid` | uint64 encoded as a string of 16 hex characters | yes |
|
12
|
-
| `ot-tracer-sampled` | boolean encoded as a string with the values `'true'` or `'
|
12
|
+
| `ot-tracer-sampled` | boolean or bit encoded as a string with the values `'true'`,`'false'`, `'1'`, or `'0'` | no |
|
13
13
|
| `ot-baggage-*` | repeated string to string key-value baggage items; keys are prefixed with `ot-baggage-` and the corresponding value is the raw string. | if baggage is present |
|
14
14
|
|
15
|
+
### Sampled Flag vs Bit
|
16
|
+
|
17
|
+
The `ot-tracer-sampled` header is a `boolean` encoded string however the Golang SDK incorrectly sets the `ot-tracer-sampled` header to a `bit` flag.
|
18
|
+
This and other language SDKs compensate for this by supporting both a `bit` and `boolean` encoded strings upon extraction:
|
19
|
+
|
20
|
+
- [Java](https://github.com/open-telemetry/opentelemetry-java/blob/9cea4ef1f92d3186b1bd8296e9daac4281c0f759/extensions/trace-propagators/src/main/java/io/opentelemetry/extension/trace/propagation/Common.java#L41)
|
21
|
+
- [Golang](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/b72c2cd63b9a9917554cbcd709e61f5d8541eea5/propagators/ot/ot_propagator.go#L118)
|
22
|
+
|
23
|
+
This issue was [fixed](https://github.com/open-telemetry/opentelemetry-go-contrib/pull/1358) however this SDK supports both for backward compatibility with older versions of the Golang propagator.
|
24
|
+
|
15
25
|
### Interop and trace ids
|
16
26
|
|
17
27
|
The OT trace propagation format expects trace ids to be 64-bits. In order to
|
@@ -56,7 +56,7 @@ module OpenTelemetry
|
|
56
56
|
span_context = Trace::SpanContext.new(
|
57
57
|
trace_id: Array(trace_id).pack('H*'),
|
58
58
|
span_id: Array(span_id).pack('H*'),
|
59
|
-
trace_flags: sampled
|
59
|
+
trace_flags: as_trace_flags(sampled),
|
60
60
|
remote: true
|
61
61
|
)
|
62
62
|
|
@@ -89,6 +89,15 @@ module OpenTelemetry
|
|
89
89
|
|
90
90
|
private
|
91
91
|
|
92
|
+
def as_trace_flags(sampled)
|
93
|
+
case sampled
|
94
|
+
when 'true', '1'
|
95
|
+
Trace::TraceFlags::SAMPLED
|
96
|
+
else
|
97
|
+
Trace::TraceFlags::DEFAULT
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
92
101
|
def valid?(trace_id:, span_id:)
|
93
102
|
!(VALID_TRACE_ID_REGEX !~ trace_id || VALID_SPAN_ID_REGEX !~ span_id)
|
94
103
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opentelemetry-propagator-ottrace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 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:
|
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,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.0
|
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
|
26
|
+
version: '1.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,20 +52,6 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '5.0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: opentelemetry-sdk
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: 1.0.0.rc1
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: 1.0.0.rc1
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
56
|
name: rake
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -155,10 +141,10 @@ homepage: https://github.com/open-telemetry/opentelemetry-ruby
|
|
155
141
|
licenses:
|
156
142
|
- Apache-2.0
|
157
143
|
metadata:
|
158
|
-
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-propagator-ottrace/v0.
|
144
|
+
changelog_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-propagator-ottrace/v0.20.0/file.CHANGELOG.html
|
159
145
|
source_code_uri: https://github.com/open-telemetry/opentelemetry-ruby/tree/main/propagator/ottrace
|
160
146
|
bug_tracker_uri: https://github.com/open-telemetry/opentelemetry-ruby/issues
|
161
|
-
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-propagator-ottrace/v0.
|
147
|
+
documentation_uri: https://open-telemetry.github.io/opentelemetry-ruby/opentelemetry-propagator-ottrace/v0.20.0
|
162
148
|
post_install_message:
|
163
149
|
rdoc_options: []
|
164
150
|
require_paths:
|
@@ -167,7 +153,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
167
153
|
requirements:
|
168
154
|
- - ">="
|
169
155
|
- !ruby/object:Gem::Version
|
170
|
-
version: 2.
|
156
|
+
version: 2.6.0
|
171
157
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
172
158
|
requirements:
|
173
159
|
- - ">="
|