sentry-java icon indicating copy to clipboard operation
sentry-java copied to clipboard

Concurrent profiling 1 - added envelope payload data format

Open stefanosiano opened this issue 3 years ago • 5 comments

:scroll: Description

We want to support concurrent transactions. In order to do it, we are going to add the list of transactions occurred during a profile. This pr just adds the data format of the transaction list that will be sent in the envelope payload, inserting the profiled transaction in it. This is the first part of concurrent profiling support. Next part is this pr

:bulb: Motivation and Context

We want to avoid situations where the user cannot profile his transaction due to automatic transactions occurring at the same time, as pointed in this issue The strategy we will follow is described here

:green_heart: How did you test it?

Updated unit test to check the new format Updated the ui test to check the current profiled transaction is added to the transaction list

:pencil: Checklist

  • [ ] I reviewed the submitted code
  • [x] I added tests to verify the changes
  • [ ] I updated the docs if needed
  • [x] No breaking changes

:crystal_ball: Next steps

Another pr will contain the logic to add other transactions occurring during profiling

stefanosiano avatar Aug 11 '22 09:08 stefanosiano

Codecov Report

Merging #2216 (4abe8f5) into main (7dd32c0) will decrease coverage by 0.20%. The diff coverage is 50.00%.

@@             Coverage Diff              @@
##               main    #2216      +/-   ##
============================================
- Coverage     80.65%   80.45%   -0.21%     
- Complexity     3355     3366      +11     
============================================
  Files           240      241       +1     
  Lines         12324    12416      +92     
  Branches       1633     1652      +19     
============================================
+ Hits           9940     9989      +49     
- Misses         1778     1804      +26     
- Partials        606      623      +17     
Impacted Files Coverage Δ
.../main/java/io/sentry/ProfilingTransactionData.java 48.80% <48.80%> (ø)
...ry/src/main/java/io/sentry/ProfilingTraceData.java 77.23% <62.50%> (+0.84%) :arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

codecov-commenter avatar Aug 11 '22 10:08 codecov-commenter

This PR has been sitting here for a while. @stefanosiano, how can we move this forward? Do you still need a review?

philipphofmann avatar Aug 30 '22 14:08 philipphofmann

This PR has been sitting here for a while. @stefanosiano, how can we move this forward? Do you still need a review?

In order to merge it i'm waiting for relay to be updated. However, yeah, It'd need a review, as the pr is finished. Same with this other I'll ping someone

stefanosiano avatar Aug 30 '22 15:08 stefanosiano

I'm going to wait for relay pr to be merged before merging this into master

stefanosiano avatar Sep 01 '22 16:09 stefanosiano

Performance metrics :rocket:

  Plain With Sentry Diff
Startup time 298.57 ms 334.35 ms 35.78 ms
Size 1.74 MiB 2.33 MiB 607.50 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
3d89dea01bc94d77c82e013014fd7be0541fff62 345.59 ms 364.06 ms 18.47 ms
1e4690d24ef94b303d6b8f1bff3060eb7422e168 354.69 ms 387.88 ms 33.19 ms
3d89dea01bc94d77c82e013014fd7be0541fff62 322.38 ms 350.82 ms 28.45 ms
2f079a1dcf2d55d9a587ba534f27df2f57c82bf6 296.91 ms 337.43 ms 40.51 ms

App size

Revision Plain With Sentry Diff
3d89dea01bc94d77c82e013014fd7be0541fff62 1.74 MiB 2.33 MiB 604.92 KiB
1e4690d24ef94b303d6b8f1bff3060eb7422e168 1.74 MiB 2.33 MiB 604.92 KiB
3d89dea01bc94d77c82e013014fd7be0541fff62 1.74 MiB 2.33 MiB 604.92 KiB
2f079a1dcf2d55d9a587ba534f27df2f57c82bf6 1.74 MiB 2.33 MiB 605.56 KiB

github-actions[bot] avatar Sep 19 '22 10:09 github-actions[bot]

Messages
:book: Do not forget to update Sentry-docs with your feature once the pull request gets approved.

Generated by :no_entry_sign: dangerJS against 830669bb1657c77d946cfaabf497735af8d1d6ee

github-actions[bot] avatar Sep 27 '22 10:09 github-actions[bot]