Skip to content

Commit

Permalink
Merge master
Browse files Browse the repository at this point in the history
  • Loading branch information
antonjim-te committed Sep 6, 2023
1 parent b6ac5ac commit 6c2051a
Show file tree
Hide file tree
Showing 91 changed files with 1,908 additions and 1,010 deletions.
25 changes: 25 additions & 0 deletions .chloggen/components-command-with-stability-levels.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Use this changelog template to create an entry for release notes.

# One of 'breaking', 'deprecation', 'new_component', 'enhancement', 'bug_fix'
change_type: enhancement

# The name of the component, or a single word describing the area of concern, (e.g. otlpreceiver)
component: components command

# A brief description of the change. Surround your text with quotes ("") if it needs to start with a backtick (`).
note: The "components" command now lists the component's stability levels.

# One or more tracking issues or pull requests related to the change
issues: [8289]

# (Optional) One or more lines of additional information to render under the primary note.
# These lines will be padded with 2 spaces and then inserted directly into the document.
# Use pipe (|) for multiline entries.
subtext: Note that the format of this output is NOT stable and can change between versions.

# Optional: The change log or logs in which this entry should be included.
# e.g. '[user]' or '[user, api]'
# Include 'user' if the change is relevant to end users.
# Include 'api' if there is a change to a library API.
# Default: '[user]'
change_logs: []
2 changes: 1 addition & 1 deletion .github/workflows/scripts/release-create-tracking-issue.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ if [ "${CANDIDATE_BETA}" == "" ]; then
RELEASE_VERSION="v${CANDIDATE_STABLE}"
fi

EXISTING_ISSUE=$( gh issue list --search "Release ${RELEASE_VERSION}" --json url --jq '.[].url' --repo "${REPO}" )
EXISTING_ISSUE=$( gh issue list --search "in:title Release ${RELEASE_VERSION}" --json url --jq '.[].url' --repo "${REPO}" --state open --label release )

if [ "${EXISTING_ISSUE}" != "" ]; then
echo "Issue already exists: ${EXISTING_ISSUE}"
Expand Down
19 changes: 19 additions & 0 deletions CHANGELOG-API.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,25 @@ If you are looking for user-facing changes, check out [CHANGELOG.md](./CHANGELOG

<!-- next version -->

## v0.84.0

### 💡 Enhancements 💡

- `exporter/exporterhelper`: Introduce a new exporter helper that operates over client-provided requests instead of pdata (#7874)
The following experimental API is introduced in exporter/exporterhelper package:
- `NewLogsRequestExporter`: a new exporter helper for logs.
- `NewMetricsRequestExporter`: a new exporter helper for metrics.
- `NewTracesRequestExporter`: a new exporter helper for traces.
- `Request`: an interface for client-defined requests.
- `RequestItemsCounter`: an optional interface for counting the number of items in a Request.
- `LogsConverter`: an interface for converting plog.Logs to Request.
- `MetricsConverter`: an interface for converting pmetric.Metrics to Request.
- `TracesConverter`: an interface for converting ptrace.Traces to Request.
All the new APIs are intended to be used by exporters that need to operate over client-provided requests instead of pdata.

- `otlpreceiver`: Export HTTPConfig as part of the API for creating the otlpreceiver configuration. (#8175)
Changes signature of receiver/otlpreceiver/config.go type httpServerSettings to HTTPConfig.

## v0.83.0

### 🛑 Breaking changes 🛑
Expand Down
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,19 @@ If you are looking for developer-facing changes, check out [CHANGELOG-API.md](./

<!-- next version -->

## v0.84.0

### 💡 Enhancements 💡

- `loggingexporter`: Adds exemplars logging to the logging exporter when `detailed` verbosity level is set. (#7912)
- `configgrpc`: Allow any registered gRPC load balancer name to be used. (#8262)
- `service`: add OTLP export for internal traces (#8106)
- `configgrpc`: Add support for :authority pseudo-header in grpc client (#8228)

### 🧰 Bug fixes 🧰

- `otlphttpexporter`: Fix the handling of the HTTP response to ignore responses not encoded as protobuf (#8263)

## v0.83.0

### 💡 Enhancements 💡
Expand Down
44 changes: 44 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -494,6 +494,50 @@ that each of the following steps is done in a separate version:
1. On `v0.N+2`, we change `func GetFoo() Foo` to `func GetFoo(context.Context) Foo` if desired or remove it entirely if
needed.

#### Configuration changes

##### Alpha components

Configuration for alpha components can be changed with minimal notice. Documenting them as part of the changelog is
sufficient. We still recommend giving users one or two minor version's notice before breaking the configuration, such as
when removing or renaming a configuration option. Providing a migration path in the component's repository is NOT
required for alpha components, although still recommended.

- when adding a new configuration option, components MAY mark the new option as required and are not required to provide
a reasonable default.
- when renaming a configuration option, components MAY treat the old name as an alias to the new one and log a WARN
level message in case the old option is being used.
- when removing a configuration option, components MAY keep the old option for a few minor releases and log a WARN level
message instructing users to remove the option.

##### Beta components

One of the requirements for a component to be marked as beta is to have its configuration options stabilized. Therefore,
backward incompatible changes should be rare events for beta components. Users of those components are not expecting to
have their Collector instances failing at startup because of a configuration change. When doing backward incompatible
changes, component owners should add the migration path to a place within the component's repository, linked from the
component's main README. This is to ensure that people using older instructions can understand how to migrate to the
latest version of the component.

When adding a new required option:
- the option MUST come with a sensible default value

When renaming or removing a configuration option:
- the option MUST be deprecated in one version
- a WARN level message should be logged, with a link to a place within the component's repository where the change is
documented and a migration path is provided
- the option MUST be kept for at least N+1 version, and MAY be hidden behind a feature gate in N+2
- the option and the WARN level message MAY be removed after N+2 or 6 months, whichever comes later

Additionally, when removing an option:
- the option MAY be made non operational already by the same version where it is deprecated

##### Stable components

Stable component MUST be compatible between minor versions, unless critical security issues are found. In that case, the
component owner MUST provide a migration path and a reasonable time frame for users to upgrade. The same rules from beta
components apply to stable when it comes to configuration changes.

### Specification Tracking

The [OpenTelemetry Specification](https://github.com/open-telemetry/opentelemetry-specification) can be a rapidly
Expand Down
2 changes: 1 addition & 1 deletion cmd/builder/internal/builder/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import (
"go.uber.org/zap"
)

const defaultOtelColVersion = "0.83.0"
const defaultOtelColVersion = "0.84.0"

// ErrInvalidGoMod indicates an invalid gomod
var ErrInvalidGoMod = errors.New("invalid gomod specification for module")
Expand Down
5 changes: 5 additions & 0 deletions cmd/builder/internal/builder/templates/go.mod.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,11 @@ require (
go.opentelemetry.io/collector v{{.Distribution.OtelColVersion}}
)

require (
github.com/knadh/koanf/maps v0.1.1 // indirect
github.com/knadh/koanf/providers/confmap v0.1.0 // indirect
)

{{- range .Connectors}}
{{if ne .Path ""}}replace {{.GoMod}} => {{.Path}}{{end}}
{{- end}}
Expand Down
22 changes: 11 additions & 11 deletions cmd/builder/internal/config/default.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@ dist:
module: go.opentelemetry.io/collector/cmd/otelcorecol
name: otelcorecol
description: Local OpenTelemetry Collector binary, testing only.
version: 0.83.0-dev
otelcol_version: 0.83.0
version: 0.84.0-dev
otelcol_version: 0.84.0

receivers:
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.83.0
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.84.0
exporters:
- gomod: go.opentelemetry.io/collector/exporter/loggingexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/loggingexporter v0.84.0
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.84.0
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.84.0
extensions:
- gomod: go.opentelemetry.io/collector/extension/ballastextension v0.83.0
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.83.0
- gomod: go.opentelemetry.io/collector/extension/ballastextension v0.84.0
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.84.0
processors:
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.83.0
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.83.0
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.84.0
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.84.0
connectors:
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.83.0
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.84.0

8 changes: 4 additions & 4 deletions cmd/builder/test/core.builder.yaml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
dist:
module: go.opentelemetry.io/collector/builder/test/core
otelcol_version: 0.83.0
otelcol_version: 0.84.0

extensions:
- import: go.opentelemetry.io/collector/extension/zpagesextension
gomod: go.opentelemetry.io/collector v0.83.0
gomod: go.opentelemetry.io/collector v0.84.0
path: ${WORKSPACE_DIR}

receivers:
- import: go.opentelemetry.io/collector/receiver/otlpreceiver
gomod: go.opentelemetry.io/collector v0.83.0
gomod: go.opentelemetry.io/collector v0.84.0
path: ${WORKSPACE_DIR}

exporters:
- import: go.opentelemetry.io/collector/exporter/loggingexporter
gomod: go.opentelemetry.io/collector v0.83.0
gomod: go.opentelemetry.io/collector v0.84.0
path: ${WORKSPACE_DIR}

replaces:
Expand Down
22 changes: 11 additions & 11 deletions cmd/otelcorecol/builder-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@ dist:
module: go.opentelemetry.io/collector/cmd/otelcorecol
name: otelcorecol
description: Local OpenTelemetry Collector binary, testing only.
version: 0.83.0-dev
otelcol_version: 0.83.0
version: 0.84.0-dev
otelcol_version: 0.84.0

receivers:
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.83.0
- gomod: go.opentelemetry.io/collector/receiver/otlpreceiver v0.84.0
exporters:
- gomod: go.opentelemetry.io/collector/exporter/loggingexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.83.0
- gomod: go.opentelemetry.io/collector/exporter/loggingexporter v0.84.0
- gomod: go.opentelemetry.io/collector/exporter/otlpexporter v0.84.0
- gomod: go.opentelemetry.io/collector/exporter/otlphttpexporter v0.84.0
extensions:
- gomod: go.opentelemetry.io/collector/extension/ballastextension v0.83.0
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.83.0
- gomod: go.opentelemetry.io/collector/extension/ballastextension v0.84.0
- gomod: go.opentelemetry.io/collector/extension/zpagesextension v0.84.0
processors:
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.83.0
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.83.0
- gomod: go.opentelemetry.io/collector/processor/batchprocessor v0.84.0
- gomod: go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.84.0
connectors:
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.83.0
- gomod: go.opentelemetry.io/collector/connector/forwardconnector v0.84.0

replaces:
- go.opentelemetry.io/collector => ../../
Expand Down
65 changes: 34 additions & 31 deletions cmd/otelcorecol/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,22 @@ go 1.20

require (
github.com/stretchr/testify v1.8.4
go.opentelemetry.io/collector v0.83.0
go.opentelemetry.io/collector/component v0.83.0
go.opentelemetry.io/collector/connector v0.83.0
go.opentelemetry.io/collector/connector/forwardconnector v0.83.0
go.opentelemetry.io/collector/exporter v0.83.0
go.opentelemetry.io/collector/exporter/loggingexporter v0.83.0
go.opentelemetry.io/collector/exporter/otlpexporter v0.83.0
go.opentelemetry.io/collector/exporter/otlphttpexporter v0.83.0
go.opentelemetry.io/collector/extension v0.83.0
go.opentelemetry.io/collector/extension/ballastextension v0.83.0
go.opentelemetry.io/collector/extension/zpagesextension v0.83.0
go.opentelemetry.io/collector/processor v0.83.0
go.opentelemetry.io/collector/processor/batchprocessor v0.83.0
go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.83.0
go.opentelemetry.io/collector/receiver v0.83.0
go.opentelemetry.io/collector/receiver/otlpreceiver v0.83.0
go.opentelemetry.io/collector v0.84.0
go.opentelemetry.io/collector/component v0.84.0
go.opentelemetry.io/collector/connector v0.84.0
go.opentelemetry.io/collector/connector/forwardconnector v0.84.0
go.opentelemetry.io/collector/exporter v0.84.0
go.opentelemetry.io/collector/exporter/loggingexporter v0.84.0
go.opentelemetry.io/collector/exporter/otlpexporter v0.84.0
go.opentelemetry.io/collector/exporter/otlphttpexporter v0.84.0
go.opentelemetry.io/collector/extension v0.84.0
go.opentelemetry.io/collector/extension/ballastextension v0.84.0
go.opentelemetry.io/collector/extension/zpagesextension v0.84.0
go.opentelemetry.io/collector/processor v0.84.0
go.opentelemetry.io/collector/processor/batchprocessor v0.84.0
go.opentelemetry.io/collector/processor/memorylimiterprocessor v0.84.0
go.opentelemetry.io/collector/receiver v0.84.0
go.opentelemetry.io/collector/receiver/otlpreceiver v0.84.0
golang.org/x/sys v0.11.0
)

Expand All @@ -42,7 +42,7 @@ require (
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/google/uuid v1.3.1 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.11.3 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
Expand Down Expand Up @@ -74,21 +74,21 @@ require (
github.com/tklauser/numcpus v0.6.0 // indirect
github.com/yusufpapurcu/wmi v1.2.3 // indirect
go.opencensus.io v0.24.0 // indirect
go.opentelemetry.io/collector/config/configauth v0.83.0 // indirect
go.opentelemetry.io/collector/config/configcompression v0.83.0 // indirect
go.opentelemetry.io/collector/config/configgrpc v0.83.0 // indirect
go.opentelemetry.io/collector/config/confighttp v0.83.0 // indirect
go.opentelemetry.io/collector/config/confignet v0.83.0 // indirect
go.opentelemetry.io/collector/config/configopaque v0.83.0 // indirect
go.opentelemetry.io/collector/config/configtelemetry v0.83.0 // indirect
go.opentelemetry.io/collector/config/configtls v0.83.0 // indirect
go.opentelemetry.io/collector/config/internal v0.83.0 // indirect
go.opentelemetry.io/collector/confmap v0.83.0 // indirect
go.opentelemetry.io/collector/consumer v0.83.0 // indirect
go.opentelemetry.io/collector/extension/auth v0.83.0 // indirect
go.opentelemetry.io/collector/config/configauth v0.84.0 // indirect
go.opentelemetry.io/collector/config/configcompression v0.84.0 // indirect
go.opentelemetry.io/collector/config/configgrpc v0.84.0 // indirect
go.opentelemetry.io/collector/config/confighttp v0.84.0 // indirect
go.opentelemetry.io/collector/config/confignet v0.84.0 // indirect
go.opentelemetry.io/collector/config/configopaque v0.84.0 // indirect
go.opentelemetry.io/collector/config/configtelemetry v0.84.0 // indirect
go.opentelemetry.io/collector/config/configtls v0.84.0 // indirect
go.opentelemetry.io/collector/config/internal v0.84.0 // indirect
go.opentelemetry.io/collector/confmap v0.84.0 // indirect
go.opentelemetry.io/collector/consumer v0.84.0 // indirect
go.opentelemetry.io/collector/extension/auth v0.84.0 // indirect
go.opentelemetry.io/collector/featuregate v1.0.0-rcv0014 // indirect
go.opentelemetry.io/collector/pdata v1.0.0-rcv0014 // indirect
go.opentelemetry.io/collector/semconv v0.83.0 // indirect
go.opentelemetry.io/collector/semconv v0.84.0 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.42.1-0.20230612162650-64be7e574a17 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.42.0 // indirect
go.opentelemetry.io/contrib/propagators/b3 v1.17.0 // indirect
Expand All @@ -99,6 +99,9 @@ require (
go.opentelemetry.io/otel/exporters/otlp/otlpmetric v0.39.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v0.39.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v0.39.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.16.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.16.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.16.0 // indirect
go.opentelemetry.io/otel/exporters/prometheus v0.39.0 // indirect
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v0.39.0 // indirect
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.16.0 // indirect
Expand All @@ -111,7 +114,7 @@ require (
go.uber.org/zap v1.25.0 // indirect
golang.org/x/net v0.14.0 // indirect
golang.org/x/text v0.12.0 // indirect
gonum.org/v1/gonum v0.13.0 // indirect
gonum.org/v1/gonum v0.14.0 // indirect
google.golang.org/genproto v0.0.0-20230530153820-e85fd2cbaebc // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20230530153820-e85fd2cbaebc // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc // indirect
Expand Down
Loading

0 comments on commit 6c2051a

Please sign in to comment.