Closed mariusc83 closed 3 months ago
Attention: Patch coverage is 89.61039%
with 8 lines
in your changes are missing coverage. Please review.
Project coverage is 63.62%. Comparing base (
a0e5b5f
) to head (b49d5b0
). Report is 2 commits behind head on feature/otel-support.
Docs were flagged to review due to
features/dd-sdk-android-trace-otel/README.md
. Do you intend to add more content here? Let me know, and we can take a look!
@brett0000FF yes we have a special task for docs in the README.md + docs in the public page.
What does this PR do?
Following previous discussions and plans in this PR we are performing the following:
dd-sdk-android-trace-otel
dd-java-agent
project containing theCoreTracer
code will remain as part of thedd-sdk-android-trace
module as this is considered the core tracing module. The idea behind this decision is to have later a better split of tracing API implementations support into dedicated module and all to delegate to theCoreTracer
into thedd-sdk-android-trace
module.dd-sdk-android-trace-otel
module will not require desugaring in its .aar metadata anymore and we added a safety mechanism in place in case our clients will omit the docs and use this module without desugaringMotivation
What inspired you to submit this pull request?
Additional Notes
dd-java-agent
code containing theCoreTracer
logic is still using thejava.util.function
package and therefor will require desugaring for Android 23 and below. By discussing with the team we decided that it is fine for this code to stay in thedd-sdk-android-trace
module as for now it will only be used by thedd-sdk-android-trace-otel
module which will require desugaring in the release docs. In any case this code will be stripped out by R8 in the clients apps if it is not used.CoreTracer
code and see if we can actually make it compatible for Android 23 and below by removing all thejava.util.function
logic. This is highly doubtable as I already performed some research and this turns out to be quite complicated.ContextStorage.addWrapper
functionality as this is weirdly initialized in the OpenTelemetry code (when the class is loaded) and these tests are too flaky as there can be already the class loaded before the test started due to some weird Junit behaviour.Review checklist (to be filled by reviewers)