-
Notifications
You must be signed in to change notification settings - Fork 24
TST: e2e with trace group propagation #480
TST: e2e with trace group propagation #480
Conversation
* main: (112 commits) Bump junit in /data-prepper-plugins/otel-trace-group-prepper Bump aws-java-sdk-core in /data-prepper-plugins/elasticsearch Upgraded OpenTelemetry dependencies. Minor update to scaling docs. Bump guava in /data-prepper-plugins/otel-trace-raw-prepper Bump aws-java-sdk-core in /data-prepper-plugins/elasticsearch Limit overall cache size MAINT: remove unused wrapper class MAINT: remove wrapper class MAINT: variable name MAINT: constant variable names Update guava version FIX: integTest MAINT: enhance e2e FIX: wrong import Untrack MapDBTraceIdTraceGroupCache MAINT: use guava cache for traceId to traceGroup map FIX: timeunit RMV: unused APIs TODO ...
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...er-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndRawSpanTest.java
Outdated
Show resolved
Hide resolved
...epper-core/src/integrationTest/java/com/amazon/dataprepper/integration/EndToEndTestData.java
Outdated
Show resolved
Hide resolved
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.
👍
@@ -154,6 +164,28 @@ public static ExportTraceServiceRequest getExportTraceServiceRequest(List<Resour | |||
.build(); | |||
} | |||
|
|||
private List<ResourceSpans> getResourceSpansBatch(final List<EndToEndTestSpan> dataList) { |
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.
nit - Now that the class has been renamed, would suggest something like testSpanList
. Also applies to the for loop below.
entry-pipeline: | ||
source: | ||
otel_trace_source: | ||
ssl: false | ||
sink: | ||
- pipeline: | ||
name: "raw-pipeline" |
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.
Comment for later - eventually we might consider integ tests per component/feature instead of adding more to the existing. Calling this out because at first glance this pipeline config might look "incomplete" (no peer forwarder), but that is by design to test the traceGroupPrepper.
End state would be tests for:
- Basic test- Single DP
- Peer Forwarder plugin test - Two DP with forwarding enabled
- TraceGroup plugin test - Two DP without forwarding
etc.
Will be easier to isolate breaking changes based on the specific test failing. I'll create a backlog item if we think this is a good idea.
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.
Sounds good to me. Might even add one with Amazon Elasticseach Service backend.
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.
Created #492
Issue #, if available:
Description of changes:
This PR
(1) refactors integrationTest.gradle tasks
(2) separate pipeline configuration for raw-span and service-map e2e tests
(3) tests trace group propagation by replacing random span generation in raw-span e2e test with explicitly constructed trace-group dataset.
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.