Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move OTLP to the OTLP exporter #1050

Merged
merged 11 commits into from
Aug 11, 2020
Merged

Conversation

MrAlias
Copy link
Contributor

@MrAlias MrAlias commented Aug 10, 2020

The generated protobuf currently lives in the top level otel internal package. This mean that the API will always depend on a protobuf and grpc package. These are large dependencies that we are trying to remove to achieve our goal of having the API be a lightweight dependency for instrumentors (#940).

The only current use of this code is in the OTLP exporter. This moves all of this code to that exporter.

Additionally, the github.com/golang/protobuf package is deprecated: golang/protobuf#1104

The docker container we use to generate the OTLP Go code is waiting on upstream changes before the alternate package will be used: namely/docker-protoc#177

For these reasons and to match what the collector is doing (https://github.com/open-telemetry/opentelemetry-collector/blob/master/Makefile#L260), I have switched to using "github.com/gogo/protobuf".

Resolves #1045

To stop using the deprecated github.com/golang/protobuf and match what
the collector is doing, switch to generating OTLP with the
github.com/gogo/protobuf/proto instead of
github.com/golang/protobuf/proto.
Remove all protobuf dependencies from otel package and all of its
dependencies.
@MrAlias MrAlias marked this pull request as draft August 10, 2020 19:01
@MrAlias
Copy link
Contributor Author

MrAlias commented Aug 10, 2020

Working on resolving build issues. "Works on my machine"

Remove submodule beforehand to avoid unneeded direct dependencies.
@MrAlias MrAlias marked this pull request as ready for review August 10, 2020 20:09
@MrAlias MrAlias merged commit 8f9f2d8 into open-telemetry:master Aug 11, 2020
@MrAlias MrAlias deleted the mv-proto branch August 11, 2020 02:55
@Aneurysm9 Aneurysm9 mentioned this pull request Aug 24, 2020
evantorrie pushed a commit to evantorrie/opentelemetry-go that referenced this pull request Sep 10, 2020
* Move proto to OTLP exporter

* Update OTLP exporter import of proto

* Use gogo protobuf

To stop using the deprecated github.com/golang/protobuf and match what
the collector is doing, switch to generating OTLP with the
github.com/gogo/protobuf/proto instead of
github.com/golang/protobuf/proto.

* Clean dependencies

Remove all protobuf dependencies from otel package and all of its
dependencies.

* Update CHANGELOG

* Clean OTLP exporter go mod

Remove submodule beforehand to avoid unneeded direct dependencies.

* Use default ref for GitHub workflow

* Update path that triggers proto gen action

* Correct license-check exclusion for OTLP

* Update commented location of the OTLP and code
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg:API Related to an API package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Move generated OTLP to OTLP exporter
3 participants