-
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
Wire compatibility tests #1031
Comments
@flands I am removing this from this milestone since we won't have time to do it. Will be done later. |
Extracted out TestResultsSummary (in testbed/testbed/results.go), DataProvider (in testbed/testbed/data_provider.go), OtelcolRunner (in testbed/testbed/otelcol_runner.go), TestCaseValidator (in testbed/testbed/validator.go) interfaces with multiple implementations. Added tracing correctness tests in testbed/correctness using the testbed with different implementations of the 5 interfaces listed than what the perf tests use. **Link to tracking Issue:** Provides the support to cleanly implement #652, #1022, #1023, #1027, #1031 **Testing:** All existing testbed-driven tests still pass. Correctness tests run without any panics. Correctness tests are reporting a number of bugs with translations. **Documentation:** Godocs on all public methods.
…telemetry#1062) Extracted out TestResultsSummary (in testbed/testbed/results.go), DataProvider (in testbed/testbed/data_provider.go), OtelcolRunner (in testbed/testbed/otelcol_runner.go), TestCaseValidator (in testbed/testbed/validator.go) interfaces with multiple implementations. Added tracing correctness tests in testbed/correctness using the testbed with different implementations of the 5 interfaces listed than what the perf tests use. **Link to tracking Issue:** Provides the support to cleanly implement open-telemetry#652, open-telemetry#1022, open-telemetry#1023, open-telemetry#1027, open-telemetry#1031 **Testing:** All existing testbed-driven tests still pass. Correctness tests run without any panics. Correctness tests are reporting a number of bugs with translations. **Documentation:** Godocs on all public methods.
* Move content length out of basic attributes semconv.httpBasicAttributesFromHTTPRequest() was including the request's content length, which is a high-cardinality label. It ended up in metric labels through the use of that function by semconv.HTTPServerMetricAttributesFromHTTPRequest(). * Add CHANGELOG entry Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
I am happy to pick this up @tigrannajaryan, Is that we only care about N and N+1 versions? Should that be configurable? And should this be for all receivers / exporters, or specifically scoped to the otlp receivers / exporters? |
I think verifying N and N+1 is sufficient. The purpose of the test is to catch accidental breakage due to any changes we make in the serialization or transport code (e.g. we are currently looking at replacing some generated Protobuf code by manually written code, which is error prone). I think we want it for OTLP which evolves over time (both protocol spec and the implementation). the rest of the receivers/exporters we rarely touch after the initial implementation. There are probably many ways a test like this can be written. One possible way is to download the last stable Collector docker image and test that against one built from HEAD. This should catch any incompatibilities early in the PRs. I hope we can reuse OTLP data generators used in the correctness tests. |
That is sounds reasonable with me, let me explore some ideas and I'll come back with a PR hopefully in the next week or two? |
Sounds good. |
@MovieStoreGuy are you still working on this? Can I assign this ticket to you? |
… (open-telemetry#1032) * changed connectors.spanmetrics config * bump helm chart version * Updated the examples using make generate-examples
We need compatibility tests that verify that the build is compatible on wire level with previous official release (chain new and old versions and ensure data flows correctly).
The text was updated successfully, but these errors were encountered: