open-telemetry / opentelemetry-go-instrumentation

OpenTelemetry Auto Instrumentation using eBPF
https://opentelemetry.io
Apache License 2.0
530 stars 81 forks source link

Refine e2e tests #93

Open pellared opened 1 year ago

pellared commented 1 year ago

Based on my experience in https://github.com/open-telemetry/opentelemetry-dotnet-instrumentation (where I am a maintainer) I find testing against a "test fake collector" makes the tests more maintainable:

Here you can find an example implementation and usage of a "test fake collector" in Go: https://github.com/signalfx/splunk-otel-go/blob/main/distro/otel_test.go

Originally posted by @pellared in https://github.com/open-telemetry/opentelemetry-go-instrumentation/pull/46#pullrequestreview-1359674606

CC @damemi

pellared commented 1 year ago

Removing from Beta project as I do not think it is a blocker.

damemi commented 7 months ago

From https://github.com/open-telemetry/opentelemetry-go-instrumentation/pull/738:

The bug in this PR can happen approximately once every 50-100 client spans (since page size is 4096 bytes and we write ~40 bytes per request in gRPC for example)

1-2% of the time isn't insignificant, but I don't think any of our tests are set up for that kind of scenario. Maybe as part of #93 we should update the tests to send more than one span (ideally enough to cross the page threshold).