-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Implement OTLP/HTTP X-Protobuf Receiver #1021
Implement OTLP/HTTP X-Protobuf Receiver #1021
Conversation
This change adds application/x-protobuf support to the existing grpc-gateway mux in the OTLP receiver. See: https://github.com/open-telemetry/oteps/blob/master/text/0099-otlp-http.md What currently works: * The receiver will correctly process HTTP requests with the Content-Type application/x-protobuf. * The receiver will respond with Content-Type application/x-protobuf. * The receiver will respond with status code HTTP 200 OK on success. What doesn't work yet: * The receiver cannot handle gzip-encoded requests (Content-Encoding gzip). * The receiver will not gzip-encode responses to requests with Accept-Encoding: gzip. Updates open-telemetry#881
runtime.ProtoMarshaller is now embedded in xProtoBufMarshaler so that only ContentType() needs to be implemented.
f4e480d
to
d3065a9
Compare
Codecov Report
@@ Coverage Diff @@
## master #1021 +/- ##
==========================================
+ Coverage 85.61% 85.63% +0.01%
==========================================
Files 189 190 +1
Lines 13167 13171 +4
==========================================
+ Hits 11273 11279 +6
+ Misses 1441 1440 -1
+ Partials 453 452 -1
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Once OTLP/HTTP exporter is added we will need to add OTLP/HTTP testing to E2E tests.
@kirbyquerby do you plan to submit a separate PR for these? Can you add a github issue so that we don't forget? |
@tigrannajaryan for the first bullet point I was mistaken: Go's http server can already receive gzip-encoded requests (but still will not gzip responses). I am planning on submitting a PR for gzipped responses soon. |
This change adds application/x-protobuf support to the existing grpc-gateway mux in the OTLP receiver. See: https://github.com/open-telemetry/oteps/blob/master/text/0099-otlp-http.md What currently works: * The receiver will correctly process HTTP requests with the Content-Type application/x-protobuf. * The receiver will respond with Content-Type application/x-protobuf. * The receiver will respond with status code HTTP 200 OK on success. What doesn't work yet: * The receiver cannot handle gzip-encoded requests (Content-Encoding gzip). * The receiver will not gzip-encode responses to requests with Accept-Encoding: gzip. Updates open-telemetry#881
open-telemetry#1021) * Bump github.com/golangci/golangci-lint from 1.29.0 to 1.30.0 in /tools Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.29.0 to 1.30.0. - [Release notes](https://github.com/golangci/golangci-lint/releases) - [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md) - [Commits](golangci/golangci-lint@v1.29.0...v1.30.0) Signed-off-by: dependabot[bot] <support@github.com> * Auto-fix go.sum changes in dependent modules Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com> Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
* Exports span attributes to ETW
Description: This change adds application/x-protobuf support to the existing
grpc-gateway mux in the OTLP receiver.
(This change is a duplicate of #982 because CircleCI wasn't working.)
Protocol spec: https://github.com/open-telemetry/oteps/blob/master/text/0099-otlp-http.md
What currently works:
Content-Type application/x-protobuf.
gzip) (http.Server natively supports gzip decoding).
What doesn't work yet:
Accept-Encoding: gzip.
Link to tracking Issue: #881
Testing: A test was added to verify that the receiver accepts application/x-protobuf requests.
Documentation: