Skip to content

Commit

Permalink
Merge branch 'main' into file-config-format-env-sub
Browse files Browse the repository at this point in the history
  • Loading branch information
jack-berg authored Dec 14, 2023
2 parents 60756c6 + 3d60131 commit a65cdb5
Show file tree
Hide file tree
Showing 22 changed files with 414 additions and 346 deletions.
97 changes: 97 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,106 @@ release.

### Traces

### Metrics

### Logs

### Resource

### OpenTelemetry Protocol

### Compatibility

### SDK Configuration

### Common

### Supplementary Guidelines

## v1.28.0 (2023-12-07)

### Context

- No changes.

### Traces

- Stabilize how exceptions are recorded using the Trace SDK.
([#3769](https://github.com/open-telemetry/opentelemetry-specification/pull/3769))
- Add definition for standard output span exporter.
([#3740](https://github.com/open-telemetry/opentelemetry-specification/pull/3740))

### Metrics

- Define experimental MetricFilter as a mechanism to filter collected metrics by the MetricReader
([#3566](https://github.com/open-telemetry/opentelemetry-specification/pull/3566))
- Add optional configuration for Prometheus exporters to promote resource attributes to metric attributes
([#3761](https://github.com/open-telemetry/opentelemetry-specification/pull/3761))
- Clarifications and flexibility in Exemplar speicification.
([#3760](https://github.com/open-telemetry/opentelemetry-specification/pull/3760))
- Add optional configuration for Prometheus exporters to optionally remove unit and type suffixes
([#3777](https://github.com/open-telemetry/opentelemetry-specification/pull/3777))

### Logs

- Add definition for standard output log record exporter.
([#3741](https://github.com/open-telemetry/opentelemetry-specification/pull/3741))
- BREAKING: Change `event.name` definition to include `namespace` and removed `event.domain` from log event attributes.
([#3749](https://github.com/open-telemetry/opentelemetry-specification/pull/3749))
- BREAKING: Refine the arguments of the emit Event API. Instead of accepting
a `LogRecord`, the individual arguments are enumerated along with the
implementation requirements on how those arguments map to `LogRecord`.
([#3772](https://github.com/open-telemetry/opentelemetry-specification/pull/3772))

### Resource

- No changes.

### OpenTelemetry Protocol

- Clarify HTTP endpoint configuration option handling.
([#3739](https://github.com/open-telemetry/opentelemetry-specification/pull/3739))

### Compatibility

- No changes.

### SDK Configuration

- Add `console` as an exporter type that is supported via environment variable configuration.
([#3742](https://github.com/open-telemetry/opentelemetry-specification/pull/3742))

### Common

- No changes.

### Supplementary Guidelines

- No changes.

## v1.27.0 (2023-11-08)

### Context

- No changes.

### Traces

- Add a new AddLink() operation to Span (experimental).
([#3678](https://github.com/open-telemetry/opentelemetry-specification/pull/3678))

### Metrics

- No changes.

### Logs

- No changes.

### Resource

- No changes.

### OpenTelemetry Protocol

- New exporter implementations do not need to support
Expand All @@ -28,10 +119,14 @@ release.

### Compatibility

- No changes.

### SDK Configuration

- Define file configuration parse and create operations.
([#3437](https://github.com/open-telemetry/opentelemetry-specification/pull/3437))
- Add environment variable implementation guidelines.
([#3738](https://github.com/open-telemetry/opentelemetry-specification/pull/3738))

### Common

Expand All @@ -40,6 +135,8 @@ release.

### Supplementary Guidelines

- No changes.

## v1.26.0 (2023-10-10)

### Context
Expand Down
2 changes: 1 addition & 1 deletion experimental/trace/zpages.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@

zPages are an in-process alternative to external exporters. When included, they collect and aggregate tracing and metrics information in the background; this data is served on web pages when requested.

The idea of "zPages" originates from one of OpenTelemetry's predecessors, [OpenCensus](https://opencensus.io/). You can read more about zPages from the OpenCensus docs [here](https://opencensus.io/zpages) or the OTEP [here](https://github.com/open-telemetry/oteps/blob/main/text/0110-z-pages.md). OpenCensus has different zPage implementations in [Java](https://opencensus.io/zpages/java/), [Go](https://opencensus.io/zpages/go/), and [Node](https://opencensus.io/zpages/node/) and there has been similar internal solutions developed at companies like Uber. Within OpenTelemetry, zPages are being developed in C++. The OTel Collector also has [an implementation](https://github.com/open-telemetry/opentelemetry-collector/tree/master/extension/zpagesextension) of zPages.
The idea of "zPages" originates from one of OpenTelemetry's predecessors, [OpenCensus](https://opencensus.io/). You can read more about zPages from the OpenCensus docs [here](https://opencensus.io/zpages) or the OTEP [here](https://github.com/open-telemetry/oteps/blob/main/text/0110-z-pages.md). OpenCensus has different zPage implementations in [Java](https://opencensus.io/zpages/java/), [Go](https://opencensus.io/zpages/go/), and [Node](https://opencensus.io/zpages/node/) and there has been similar internal solutions developed at companies like Uber. Within OpenTelemetry, zPages are available in Go and Rust. The OTel Collector also has [an implementation](https://github.com/open-telemetry/opentelemetry-collector/tree/master/extension/zpagesextension) of zPages.

zPages are uniquely useful in a couple of different ways. One is that they're more lightweight and quicker compared to installing external tracing systems like Jaeger and Zipkin, yet they still share useful ways to debug and gain insight into instrumented applications; these uses depend on the type of zPage, which is detailed below. For high throughput applications, zPages can also analyze more telemetry with the limited set of supported scenarios than external exporters; this is because zPages are in-memory while external exporters are typically configured to send a subset of telemetry for reach analysis to save costs.

Expand Down
9 changes: 6 additions & 3 deletions spec-compliance-matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ formats is required. Implementing more than one format is optional.
| Create TracerProvider | | + | + | + | + | + | + | + | + | + | + | + |
| Get a Tracer | | + | + | + | + | + | + | + | + | + | + | + |
| Get a Tracer with schema_url | | + | + | | + | | | + | | + | | |
| Get a Tracer with scope attributes | | | | | | | | + | | | | |
| Get a Tracer with scope attributes | | | | | | | | + | | + | | |
| Associate Tracer with InstrumentationScope | | | | | + | | | + | | | | |
| Safe for concurrent calls | | + | + | + | + | + | + | + | + | + | + | + |
| Shutdown (SDK only required) | | + | + | + | + | + | + | + | + | + | + | + |
Expand Down Expand Up @@ -67,7 +67,7 @@ formats is required. Implementing more than one format is optional.
| Unicode support for keys and string values | | + | + | + | + | + | + | + | + | + | + | + |
| [Span linking](specification/trace/api.md#specifying-links) | Optional | Go | Java | JS | Python | Ruby | Erlang | PHP | Rust | C++ | .NET | Swift |
| Links can be recorded on span creation | | + | + | | + | + | + | + | + | + | + | |
| Links can be recorded after span creation | | | | | | | | | | | | |
| Links can be recorded after span creation | | | | | | | | | | + | | |
| Links order is preserved | | + | + | | + | + | + | + | + | + | + | |
| [Span events](specification/trace/api.md#add-events) | | | | | | | | | | | | |
| AddEvent | | + | + | + | + | + | + | + | + | + | + | + |
Expand Down Expand Up @@ -102,7 +102,7 @@ formats is required. Implementing more than one format is optional.
| It is possible to create any number of `MeterProvider`s. | X | + | + | + | + | | | + | + | + | + | |
| `MeterProvider` provides a way to get a `Meter`. | | + | + | + | + | | | + | + | + | - | |
| `get_meter` accepts name, `version` and `schema_url`. | | + | + | + | + | | | + | + | + | - | |
| `get_meter` accepts `attributes`. | | | | | | | | + | + | | | |
| `get_meter` accepts `attributes`. | | | | | | | | + | + | + | | |
| When an invalid `name` is specified a working `Meter` implementation is returned as a fallback. | | + | + | + | + | | | | + | + | - | |
| The fallback `Meter` `name` property keeps its original invalid value. | X | - | - | + | + | | | | + | - | - | |
| Associate `Meter` with `InstrumentationScope`. | | | + | + | + | | | | + | + | | |
Expand Down Expand Up @@ -212,6 +212,9 @@ formats is required. Implementing more than one format is optional.
| The metrics SDK provides an `AlignedHistogramBucketExemplarReservoir` that is used by default for `ExplicitBucketHistogram` aggregation. | | | + | | - | | | | | | - | |
| The metrics SDK provides an `ExemplarFilter` interface or extension point. | X | | - | | - | | | + | | | - | |
| An `ExemplarFilter` has access to the measurement value, attributes, `Context` and timestamp. | X | | - | | - | | | + | | | - | |
| A metric Producer accepts an optional metric Filter | | | | | | | | | | | | |
| The metric Reader implementation supports registering metric Filter and passing them its registered metric Producers | | | | | | | | | | | | |
| The metric SDK's metric Producer implementations uses the metric Filter | | | | | | | | | | | | |

## Logs

Expand Down
2 changes: 1 addition & 1 deletion specification/baggage/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ reasons.

The API layer or an extension package MUST include the following `Propagator`s:

* A `TextMapPropagator` implementing the [W3C Baggage Specification](https://w3c.github.io/baggage).
* A `TextMapPropagator` implementing the [W3C Baggage Specification](https://www.w3.org/TR/baggage).

See [Propagators Distribution](../context/api-propagators.md#propagators-distribution)
for how propagators are to be distributed.
Expand Down
4 changes: 2 additions & 2 deletions specification/common/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,9 @@ indices that are kept in sync (e.g., two attributes `header_keys` and `header_va
both containing an array of strings to represent a mapping
`header_keys[i] -> header_values[i]`).

See [Attribute Naming](attribute-naming.md) for naming guidelines.
See [Attribute Naming](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/general/attribute-naming.md) for naming guidelines.

See [Requirement Level](attribute-requirement-level.md) for requirement levels guidelines.
See [Requirement Level](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/general/attribute-requirement-level.md) for requirement levels guidelines.

See [this document](attribute-type-mapping.md) to find out how to map values obtained
outside OpenTelemetry into OpenTelemetry attribute values.
Expand Down
Loading

0 comments on commit a65cdb5

Please sign in to comment.