-
Breaking #1313 #1350 Changes how Span links/events are stored to achieve performance gains. See below for details:
Behavior Change: When enforcing
max_links_per_span
,max_events_per_span
fromSpanLimits
, links/events are kept in the first-come order. The previous "eviction" based approach is no longer performed.Breaking Change Affecting Exporter authors:
SpanData
now storeslinks
asSpanLinks
instead ofEvictedQueue
whereSpanLinks
is a struct with aVec
of links anddropped_count
.SpanData
now storesevents
asSpanEvents
instead ofEvictedQueue
whereSpanEvents
is a struct with aVec
of events anddropped_count
.
- Log warning if two instruments have the same name with different (#1266) casing
- Log warning if view is created with empty criteria (#1266)
- Add exponential histogram support (#1267)
- Add
opentelemetry::sdk::logs::config()
for parity withopentelemetry::sdk::trace::config()
(#1197)
-
Bump MSRV to 1.65 #1318
-
Default Resource (the one used when no other Resource is explicitly provided) now includes
TelemetryResourceDetector
, populating "telemetry.sdk.*" attributes. #1066. -
Bump MSRV to 1.64 #1203
-
Add unit/doc tests for MeterProvider #1220
-
Changed dependency from
opentelemetry_api
toopentelemetry
as the latter is now the API crate. #1226 -
Add in memory span exporter #1216
-
Add in memory log exporter #1231
-
Add
Sync
bound to theSpanExporter
andLogExporter
traits #1240 -
Move
MetricsProducer
config to builders to match other config (#1266) -
Return error earlier if readers are shut down (#1266)
-
Add
/
to valid characters for instrument names (#1269) -
Increase instrument name maximum length from 63 to 255 (#1269)
-
Updated crate documentation and examples. #1256
-
Replace regex with glob (#1301)
-
Breaking #1293 makes few breaking changes with respect to how Span attributes are stored to achieve performance gains. See below for details:
Behavior Change:
SDK will no longer perform de-duplication of Span attribute Keys. Please share feedback here, if you are affected.
Breaking Change Affecting Exporter authors:
SpanData
now storesattributes
asVec<KeyValue>
instead ofEvictedHashMap
.SpanData
now exposedropped_attributes_count
as a separate field.Breaking Change Affecting Sampler authors:
should_sample
changesattributes
fromOrderMap<Key, Value>
toVec<KeyValue>
. -
Breaking Move type argument from
RuntimeChannel<T>
to associated types #1314
- Remove context from Metric force_flush #1245
- Remove
logs::BatchMessage
andtrace::BatchMessage
types #1314
- Fix metric instrument name validation to include
_
#1030
- Implement cardinality limits for metric streams #1066.
- Propagate shutdown calls from
PeriodicReader
to metrics exporter #1138. - Add in memory metrics exporter #1017
- New metrics SDK #1000
- Use
Cow<'static, str>
instead of&'static str
#1018 - Unify trace and logs runtime extensions traits. #1067
- Fix EvictedQueue bug when capacity is set to 0 #1151.
- Samplers no longer has access to
InstrumentationLibrary
as one of parameters toshould_sample
. #1041. - Synchronous instruments no longer accepts
Context
while reporting measurements. #1076. - Don't use CARGO_BIN_NAME for service name #1150
- Wait for exports on the simple span processor's ForceFlush #1030
- Add instrument validation to
InstrumentBuilder
#884. - Add
TelemetryResourceDetector
#899. - Add support for instrumentation scope attributes #1021.
- Update to
opentelemetry_api
v0.19. - Update to
opentelemetry_http
v0.8. - Bump MSRV to 1.57 #953.
- Fix doc in
ShouldSample
trait #951 - Only run
ParentBased
delegate sampler when there is no parent #948. - Improve
SdkProvidedResourceDetector
's doc #964. - Update dependencies and bump MSRV to 1.60 #969.
- Use CARGO_BIN_NAME as default service name #991.
- Remove
in_memory
settings #946.
- Update the Number in the SDK API to support min and max. #989
- BREAKING
struct
s which implementShouldSample
a.k.a Custom Samplers must now implementClone
. This enables (#833) - SDK split from
opentelemetry
crate