-
Notifications
You must be signed in to change notification settings - Fork 790
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
Used BatchSpansProcessor instead of SimpleSpansProcessor #393
Conversation
BatchSpansProcessor won't get blocked by the exporter. Fixes open-telemetry#368 Signed-off-by: RashmiRam <rashmi.ramanathan@freshworks.com>
I signed it |
Hi Rashmi - |
I was trying to run failure test alone as entire instrumentation test takes hours to run. I'll check that. Thanks for the help @johnbley |
I fixed the springboot smoke tests. Now, I see random failures in instrumentation tests(cassandra, akka-hhtp) which are passing in my local. Any help would be much appreciated. |
Yeah, our tests are quite flaky right now. We are working on it :) @trask can you please rerun the pipeline? |
@RashmiRam I see that |
I did @iNikem and ran |
I have checked out your repo and tried to run
Did you commit your changes? |
Yes. I did This is the commit. c4383ba |
I've seen googleJavaFormat's cache get confused at times; try adding some whitespace, saving, and then re-running it. |
That helped @johnbley |
@@ -70,6 +70,11 @@ abstract class AbstractSmokeTest extends Specification { | |||
processBuilder.environment().put("JAVA_HOME", System.getProperty("java.home")) | |||
processBuilder.environment().put("DD_API_KEY", API_KEY) | |||
|
|||
// // Setting configuration variables of batch span processor through env vars | |||
// // This config is to immediately flush a batch of 1 span with delay of 10ms | |||
processBuilder.environment().put("OTEL_BSP_MAX_EXPORT_BATCH", "1") |
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.
I like this solution a lot. Much cleaner than anything I had suggested.
Hi @RashmiRam, thanks so much for the PR! It looks like our
Can you try bumping the timeout at PlaySmokeTest.groovy#L48 and SpringBootSmokeTest.groovy#L42 from 10 seconds to 15 seconds? |
…nprocessor to finish exporting
@trask I have updated the timeout in both play & springbok smoke tests to 20s as 15s fails at times even in my local. |
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.
Thanks @RashmiRam!
smoke-tests/play/src/test/groovy/io/opentelemetry/smoketest/PlaySmokeTest.groovy
Outdated
Show resolved
Hide resolved
smoke-tests/springboot/src/test/groovy/io/opentelemetry/smoketest/SpringBootSmokeTest.groovy
Outdated
Show resolved
Hide resolved
…aySmokeTest.groovy
…est/SpringBootSmokeTest.groovy
Hey @RashmiRam, sorry we haven't merged this yet. The play smoke test is still failing in CI even after I bumped the timeout to 30 seconds. I'm looking into it now. |
The problem is that our smoke tests use the logging exporter and parse the log file which is not reliable under concurrent logging, which can happen now with the background BatchSpanProcessor thread. Here's an example of the problem, where LOGGED_SPAN didn't end up on it's own line:
The real solution here is to improve our test harness, I made a note here: #298 (comment) For now though, the debug logging |
Thank you so much for the detailed explanation on the test failures @trask and Thanks for the merge too. It would be great if you let me know about the release date for this too. |
Releasing |
BatchSpansProcessor won't get blocked by the exporter.
Fixes #368
@trask This is the quick fix. Are we working on introducing the disruptor in the future? If that's the case, Can this just be a stop gap for now?