Conversation
|
@markushi and @marandaneto I'll leave some markers where I'd like your input. A full review would be very welcome as well. |
| }); | ||
| } | ||
|
|
||
| public static void traceIfAllowed( |
There was a problem hiding this comment.
M: I believe it'd be better if this just returns a boolean?
Executing a callback forces you to have Atomic operations in a few different places.
There was a problem hiding this comment.
Hmm could change it to return the TracingHeaders instead of having a callback. With @Nullable it'd only be a simple null check on the calling side. If this returned a boolean we'd have to duplicate the extraction code everywhere.
There was a problem hiding this comment.
Then returning TracingHeaders looks already better.
maybe @romtsn or @stefanosiano ? Markus is OOO. |
|
@adinauer related to your questions/markers, I believe @cleptric can help? since it's not Android related, but rather how this feature should work, Also https://www.notion.so/sentry/Tracing-without-performance-efab307eb7f64e71a04f09dc72722530 The places you added a TODO are where a new transaction would be created (but performance is disabled), so in this case, you do nothing, right? |
|
It's basically the following question and answer from #2768:
So in theory we should be starting a new trace there. I just wanted your input for Android specifics. |
|
With my (limited) understanding of tracing, I'd say we should start a new trace for all of the markers you left. When UI is involved, a User Interaction (whether navigation or click) usually marks the start of a new trace (e.g. you clicked "Save" button - then you make |
Yes, exactly, what I meant by "you do nothing because performance is disabled" means, you don't start a transaction. |
|
Performance metrics 🚀
|
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| dc67004 | 273.86 ms | 346.37 ms | 72.51 ms |
| 9246ed4 | 275.63 ms | 321.31 ms | 45.69 ms |
| 8820c5c | 330.60 ms | 416.86 ms | 86.26 ms |
| 9246ed4 | 281.79 ms | 352.08 ms | 70.29 ms |
| 0310da5 | 381.20 ms | 404.50 ms | 23.30 ms |
| 496bdfd | 272.86 ms | 407.33 ms | 134.48 ms |
| 496bdfd | 301.22 ms | 343.96 ms | 42.73 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| dc67004 | 1.72 MiB | 2.28 MiB | 573.45 KiB |
| 9246ed4 | 1.72 MiB | 2.28 MiB | 572.22 KiB |
| 8820c5c | 1.72 MiB | 2.28 MiB | 571.82 KiB |
| 9246ed4 | 1.72 MiB | 2.28 MiB | 572.22 KiB |
| 0310da5 | 1.72 MiB | 2.28 MiB | 573.45 KiB |
| 496bdfd | 1.72 MiB | 2.28 MiB | 571.82 KiB |
| 496bdfd | 1.72 MiB | 2.28 MiB | 571.82 KiB |
Previous results on branch: feat/tracing-without-performance
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 25cb71a | 322.37 ms | 395.86 ms | 73.49 ms |
| d50b334 | 299.84 ms | 401.56 ms | 101.72 ms |
| 0a8926a | 293.88 ms | 333.60 ms | 39.72 ms |
| bfaa13c | 256.71 ms | 313.62 ms | 56.91 ms |
| c4c8632 | 295.86 ms | 322.98 ms | 27.12 ms |
| 9c8777f | 280.52 ms | 370.46 ms | 89.94 ms |
| 03de2a6 | 281.98 ms | 318.64 ms | 36.66 ms |
| 1d85b7f | 303.18 ms | 356.62 ms | 53.44 ms |
| 6da169c | 295.60 ms | 390.86 ms | 95.26 ms |
| 8cfda4c | 355.00 ms | 425.33 ms | 70.33 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 25cb71a | 1.72 MiB | 2.28 MiB | 572.59 KiB |
| d50b334 | 1.72 MiB | 2.29 MiB | 574.13 KiB |
| 0a8926a | 1.72 MiB | 2.29 MiB | 574.47 KiB |
| bfaa13c | 1.72 MiB | 2.29 MiB | 574.47 KiB |
| c4c8632 | 1.72 MiB | 2.29 MiB | 574.15 KiB |
| 9c8777f | 1.72 MiB | 2.29 MiB | 574.16 KiB |
| 03de2a6 | 1.72 MiB | 2.29 MiB | 574.47 KiB |
| 1d85b7f | 1.72 MiB | 2.28 MiB | 572.59 KiB |
| 6da169c | 1.72 MiB | 2.29 MiB | 574.39 KiB |
| 8cfda4c | 1.72 MiB | 2.29 MiB | 574.47 KiB |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #2788 +/- ##
============================================
+ Coverage 81.15% 81.25% +0.10%
- Complexity 4501 4560 +59
============================================
Files 348 350 +2
Lines 16685 16870 +185
Branches 2268 2274 +6
============================================
+ Hits 13540 13708 +168
- Misses 2198 2219 +21
+ Partials 947 943 -4
☔ View full report in Codecov by Sentry. |
adinauer
left a comment
There was a problem hiding this comment.
@marandaneto @romtsn @markushi I've updated the PR now so should be good to review. Not sure about gesture listener and starting a new trace there.
markushi
left a comment
There was a problem hiding this comment.
Nice one, already looks pretty complete to me 🚀 Left a few comments.
Co-authored-by: Manoel Aranda Neto <5731772+marandaneto@users.noreply.github.com>
|
@marandaneto any more changes you'd like to see before I merge this? |
PR is already approved, and all my comments were addressed, all good, thank you. |
…ityLifecycleIntegration.java Co-authored-by: Roman Zavarnitsyn <rom4ek93@gmail.com>
|
Made a couple of more suggestions as I realized we check for the breadcrumbs flag inside |
Co-authored-by: Roman Zavarnitsyn <rom4ek93@gmail.com>
📜 Description
Pass through / add
sentry-traceandbaggageeven if performance is disabled.💡 Motivation and Context
Closes #2768
💚 How did you test it?
wanna do some more e2e testing before merging
📝 Checklist
sendDefaultPIIis enabled.🔮 Next steps