The full list of changes can be found in the compare view for the respective release at https://github.com/open-telemetry/opentelemetry-proto/releases.
- metrics: Add resource attributes and scope to metrics proto diagram. #519
- metrics: Added json example for exponential histogram. #580
- metrics: Clarify aggregation temporality for Summary metric type. #591
- docs: Remove HTTP 1.1 restriction from Protocol Details #571
- docs: Update specification to include development profiles #582
- docs: update references to logging exporter #581
- Makefile: exclude Profiles protocol from breaking-changes #576
- Makefile: exclude Profiles service from breaking changes too #586
- profiles: align type of index into string table #557
- profiles: drop Sample.stacktrace_id_index #575
- profiles: drop BuildIdKind #584
- profiles: drop Sample.label #583
- profiles: drop Location.type_index #578
- profiles: Rename profiles v1experimental to v1development #585
- profiles: Make mapping in Profile optional #556
- profiles: Fold the content of pprofextended.proto into profiles.proto, removing ProfileContainer. #590
- profiles: Improve lookup table pattern use in profiles. #592
- profiles: Renovations to experimental profiling schema. #596
- profiles: add missing java_package option to pprofextended. #558
- profiles: fix versioning in selector. #551
- Add new profile signal. #534
- Indicate if a
Span
's parent or link is remote using 2 bit flag. #484 - Add metric.metadata for supporting additional metadata on metrics #514
- Add example of an Event #538
Full list of differences found in this compare.
- Add
flags
field toSpan
andSpan/Link
for W3C-specified Trace Context flags. #503
- Update and fix OTLP JSON examples. #516, #510, #499
- Remove irrelevant comments from metric name field. #512
- Add comment to explain schema_url fields. #504
Full list of differences found in this compare.
- Add note about the possibility to have unstable components after 1.0.0 #489
- Add maturity JSON entry per package #490
Full list of differences found in this compare.
- Declare OTLP/JSON Stable. #436 #435
- Provide stronger symbolic stability guarantees. #432
- Clarify how additive changes are handled. #455
- Change the exponential histogram boundary condition. #409
- Clarify behavior for empty/not present/invalid trace_id and span_id fields. #442
- Change the collector trace endpoint to /v1/traces. #449
- Delete requirement to generate new trace/span id if an invalid id is received. #444
Full list of differences found in this compare.
- Add
csharp_namespace
option to protos. (#399) - Fix some out-of-date urls which link to specification. (#402)
- 🛑 [BREAKING] Delete deprecated InstrumentationLibrary, InstrumentationLibraryLogs, InstrumentationLibrarySpans and InstrumentationLibraryMetrics messages. Delete deprecated instrumentation_library_logs, instrumentation_library_spans and instrumentation_library_metrics fields.
- Introduce Scope Attributes. #395
- Introduce partial success fields in
Export<signal>ServiceResponse
. #414
Full list of differences found in this compare.
- Declare logs Stable. (#376)
- Metrics ExponentialHistogramDataPoint makes the
sum
optional (follows the same change in HistogramDataPOint in 0.15). #392
Full list of differences found in this compare.
- Introduce optional
min
andmax
fields to the Histogram and ExponentialHistogram data points. (#279)
Full list of differences found in this compare.
- Remove deprecated LogRecord.Name field (#373).
Full list of differences found in this compare.
- Rename InstrumentationLibrary to InstrumentationScope (#362)
- Use optional for
sum
field to mark presence (#366)
Full list of differences found in this compare.
- Deprecate LogRecord.Name field (#357)
Full list of differences found in this compare.
Swagger
generation updated toopenapiv2
due to the use of an updated version of protoc inotel/build-protobuf
- Clarify attribute key uniqueness requirement (#350)
- Fix path to Go packages (#360)
- Add ObservedTimestamp to LogRecord. (#351)
- Add native kotlin support (#337)
- Remove unused deprecated message StringKeyValue (#358)
- Remove experimental metrics config service (#359)
Full list of differences found in this compare.
- Rename logs to log_records in InstrumentationLibraryLogs. (#352)
- Remove deprecated messages and fields from traces. (#341)
- Remove deprecated messages and fields from metrics. (#342)
Full list of differences found in this compare.
- ExponentialHistogram is a base-2 exponential histogram described in OTEP 149. (#322)
- Adds
TracesData
,MetricsData
, andLogsData
container types for common use in transporting multipleResourceSpans
,ResourceMetrics
, andResourceLogs
. (#332)
Full list of differences found in this compare.
collector/logs/*
is now consideredBeta
. (#311)logs/*
is now consideredBeta
. (#311)
- Metrics data points add a
flags
field with one bit to represent explicitly missing data. (#316)
Full list of differences found in this compare.
collector/metrics/*
is now consideredstable
. (#305)
- 🛑 [DATA MODEL CHANGE] Histogram/Summary sums must be monotonic counters of events (#302)
- 🛑 [DATA MODEL CHANGE] Clarify requirements and semantics for start time (#295)
- 🛑 [BREAKING] Deprecate
labels
field from NumberDataPoint, HistogramDataPoint, SummaryDataPoint and add equivalentattributes
field (#283) - 🛑 [BREAKING] Deprecate
filtered_labels
field from Exemplars and add equivalentfiltered_attributes
field (#283)
- Common - Add bytes (binary) as data type to AnyValue (#297)
- Common - Add schema_url fields as described in OTEP 0152 (#298)
- Remove if no changes for this section before release.
Full list of differences found in this compare.
Release 0.8 was the last in the line of releases marked as "unstable".
This release broke compatibility in more ways than were recognized and
documented at the time of its release. In particular, #278 created
the NumberDataPoint
type and used it in several locations in place
of the former DoubleDataPoint
. The new oneof
in NumberDataPoint
re-used the former DoubleDataPoint
tag number, which means that
pre-0.8 DoubleSum
and DoubleGauge
points would parse correctly as
a 0.8 Sum
and Gauge
points containing double-valued numbers.
However, by virtue of a syntax = "proto3"
declaration, the protocol
compiler for all versions of OTLP have not included field presence,
which means 0 values are not serialized. The result is that valid
OTLP 0.7 DoubleSum
and DoubleGauge
points would not parse
correctly as OTLP 0.8 data. Instead, they parse as
NumberDataPoint
with a missing value in the oneof
field.
- 🛑 [DEPRECATION] Deprecate IntSum, IntGauge, and IntDataPoint (#278)
- 🛑 [DEPRECATION] Deprecate IntExemplar (#281)
- 🛑 [DEPRECATION] Deprecate IntHistogram (#270)
- 🛑 [BREAKING] Rename DoubleGauge to Gauge (#278)
- 🛑 [BREAKING] Rename DoubleSum to Sum (#278)
- 🛑 [BREAKING] Rename DoubleDataPoint to NumberDataPoint (#278)
- 🛑 [BREAKING] Rename DoubleSummary to Summary (#269)
- 🛑 [BREAKING] Rename DoubleExemplar to Exemplar (#281)
- 🛑 [BREAKING] Rename DoubleHistogram to Histogram (#270)
- 🛑 [DATA MODEL CHANGE] Make explicit bounds compatible with OM/Prometheus (#262)
Full list of differences found in this compare.
$$$Protobuf Encodings:**
collector/metrics/*
is now consideredBeta
. (#223)collector/logs/*
is now consideredAlpha
. (#228)logs/*
is now consideredAlpha
. (#228)metrics/*
is now consideredBeta
. (#223)
- Common/Logs/Metrics/Traces - Clarify empty instrumentation (#245)
- Metrics - Add SummaryDataPoint support to Metrics proto (#227)
Full list of differences found in this compare.
- Clarify maturity guarantees (#225)
- Traces - Deprecated old Span status code and added a new status code according to specification (#224)
** Marked for removal
2021-10-22
given Stability Guarantees. - Rename ProbabilitySampler to TraceIdRatioBased (#221)
Full list of differences found in this compare.
Protobuf Encodings:
collector/trace/*
is nowStable
.common/*
is nowStable
.resource/*
is nowStable
.trace/trace.proto
is nowStable
. (#160)
JSON Encodings:
- All messages are now
Alpha
.
- 🛑 [BREAKING] Metrics - protocol was refactored, and lots of breaking changes.
- Removed MetricDescriptor and embedded into Metric and the new data types.
- Add new data types Gauge/Sum/Histogram.
- Make use of the "AggregationTemporality" into the data types that allow that support.
- Rename enum values to follow the proto3 style guide.
- Enable build to use docker image otel/build-protobuf to be used in CI. ** Can also be used by the languages to generate protos.
- 🛑 [BREAKING] Remove generated golang structs from the repository
The following was announced in the release, but has not yet been considered stable. Please see the latest README.md for actual status.
This is a Release Candidate to declare Metrics part of the protocol Stable.
Full list of differences found in this compare.
- Metrics - Add temporality to MetricDescriptor (#140).
- Metrics - Add Monotonic Types (#145)
- Common/Traces - Added support for arrays and maps for attribute values (AnyValue) (#157).
- 🛑 [BREAKING] Metrics - Removed common labels from MetricDescriptor (#144).
The following was announced in the release, but this was not considered Stable until v0.5.0
This is a Release Candidate to declare Traces part of the protocol Stable.
- Initial protos for trace, metrics, resource and OTLP.