Skip to content
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

fix(tracing): Drop app start data older than one minute #3974

Merged
merged 2 commits into from
Jul 31, 2024

Conversation

krystofwoldrich
Copy link
Member

@krystofwoldrich krystofwoldrich commented Jul 29, 2024

📢 Type of change

  • Bugfix

📜 Description

This PR adds filter to app start data which drops all app starts which are older than one minute in production builds.

We can do this as a minute or more time difference between transaction start and app start is a clear signal the data are not related and result would be incorrect and long (minutes in duration) transaction.

We skip the filter in development builds, as bundling of the Javascript bundle can take more than a minute and so we want to capture the data.

💡 Motivation and Context

💚 How did you test it?

integration tests, sample app

📝 Checklist

  • I reviewed submitted code
  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • All tests passing
  • No breaking changes

Copy link
Contributor

Android (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 427.49 ms 459.30 ms 31.81 ms
Size 17.73 MiB 20.05 MiB 2.31 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
c398f67 449.64 ms 461.38 ms 11.74 ms
d7401ac+dirty 375.20 ms 383.51 ms 8.31 ms
12427f4 393.69 ms 414.84 ms 21.14 ms
4cc5c27 460.04 ms 496.32 ms 36.28 ms
31fcca2 391.22 ms 414.78 ms 23.56 ms
abb7058 370.27 ms 389.58 ms 19.31 ms
e2b64fe 316.88 ms 330.23 ms 13.35 ms
70caa60+dirty 299.00 ms 321.02 ms 22.02 ms
acadc0f+dirty 373.24 ms 381.51 ms 8.27 ms
70e6261 482.65 ms 495.70 ms 13.05 ms

App size

Revision Plain With Sentry Diff
c398f67 17.73 MiB 19.94 MiB 2.21 MiB
d7401ac+dirty 17.73 MiB 19.75 MiB 2.02 MiB
12427f4 17.73 MiB 19.85 MiB 2.12 MiB
4cc5c27 17.73 MiB 19.95 MiB 2.21 MiB
31fcca2 17.73 MiB 19.90 MiB 2.17 MiB
abb7058 17.73 MiB 19.83 MiB 2.10 MiB
e2b64fe 17.73 MiB 19.80 MiB 2.07 MiB
70caa60+dirty 17.73 MiB 19.75 MiB 2.01 MiB
acadc0f+dirty 17.73 MiB 19.75 MiB 2.01 MiB
70e6261 17.73 MiB 19.94 MiB 2.21 MiB

Copy link
Contributor

iOS (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1236.38 ms 1245.90 ms 9.51 ms
Size 2.36 MiB 3.06 MiB 717.57 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
86d6d2c+dirty 1267.55 ms 1286.21 ms 18.66 ms
e2b64fe+dirty 1232.22 ms 1255.20 ms 22.98 ms
9433f35+dirty 1246.94 ms 1271.45 ms 24.52 ms
4a6664f+dirty 1209.49 ms 1208.63 ms -0.86 ms
80b2ce3+dirty 1265.92 ms 1268.60 ms 2.69 ms
dadc233+dirty 1223.20 ms 1236.88 ms 13.68 ms
f06c879+dirty 1252.64 ms 1259.66 ms 7.02 ms
5a22220+dirty 1209.49 ms 1220.94 ms 11.45 ms
3853f43+dirty 1221.82 ms 1242.64 ms 20.82 ms
8900e1a+dirty 1210.27 ms 1218.66 ms 8.39 ms

App size

Revision Plain With Sentry Diff
86d6d2c+dirty 2.36 MiB 2.82 MiB 462.82 KiB
e2b64fe+dirty 2.36 MiB 2.85 MiB 495.80 KiB
9433f35+dirty 2.36 MiB 2.85 MiB 499.80 KiB
4a6664f+dirty 2.36 MiB 3.04 MiB 696.39 KiB
80b2ce3+dirty 2.36 MiB 2.84 MiB 486.98 KiB
dadc233+dirty 2.36 MiB 2.84 MiB 486.85 KiB
f06c879+dirty 2.36 MiB 2.88 MiB 530.42 KiB
5a22220+dirty 2.36 MiB 2.92 MiB 570.21 KiB
3853f43+dirty 2.36 MiB 2.85 MiB 499.81 KiB
8900e1a+dirty 2.36 MiB 2.83 MiB 479.25 KiB

Copy link
Contributor

iOS (new) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1242.96 ms 1239.98 ms -2.98 ms
Size 2.92 MiB 3.62 MiB 718.69 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
86d6d2c+dirty 1291.62 ms 1296.80 ms 5.18 ms
e2b64fe+dirty 1285.78 ms 1297.56 ms 11.78 ms
9433f35+dirty 1232.24 ms 1232.74 ms 0.50 ms
4a6664f+dirty 1218.77 ms 1221.07 ms 2.30 ms
80b2ce3+dirty 1245.12 ms 1262.04 ms 16.92 ms
dadc233+dirty 1266.52 ms 1282.55 ms 16.03 ms
f06c879+dirty 1285.14 ms 1285.86 ms 0.72 ms
5a22220+dirty 1246.18 ms 1249.61 ms 3.43 ms
3853f43+dirty 1271.74 ms 1278.04 ms 6.30 ms
8900e1a+dirty 1268.36 ms 1273.04 ms 4.68 ms

App size

Revision Plain With Sentry Diff
86d6d2c+dirty 2.92 MiB 3.37 MiB 464.31 KiB
e2b64fe+dirty 2.92 MiB 3.41 MiB 499.97 KiB
9433f35+dirty 2.92 MiB 3.41 MiB 503.55 KiB
4a6664f+dirty 2.92 MiB 3.60 MiB 702.09 KiB
80b2ce3+dirty 2.92 MiB 3.40 MiB 492.75 KiB
dadc233+dirty 2.92 MiB 3.40 MiB 492.53 KiB
f06c879+dirty 2.92 MiB 3.44 MiB 533.24 KiB
5a22220+dirty 2.92 MiB 3.48 MiB 575.81 KiB
3853f43+dirty 2.92 MiB 3.41 MiB 503.54 KiB
8900e1a+dirty 2.92 MiB 3.39 MiB 485.96 KiB

Copy link
Collaborator

@lucas-zimerman lucas-zimerman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

extremely long auto transactions for react-navigation
2 participants