-
-
Notifications
You must be signed in to change notification settings - Fork 342
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
Enable Spotlight in Android and iOS SDKs #4211
Conversation
Android (new) Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
f06c879+dirty | 361.27 ms | 407.88 ms | 46.61 ms |
d43a46b+dirty | 417.65 ms | 472.98 ms | 55.33 ms |
5446992+dirty | 371.61 ms | 390.00 ms | 18.39 ms |
fe13591+dirty | 539.51 ms | 597.92 ms | 58.40 ms |
5a22220+dirty | 384.61 ms | 419.06 ms | 34.45 ms |
2534337+dirty | 597.14 ms | 665.04 ms | 67.90 ms |
e73d82f+dirty | 377.67 ms | 407.06 ms | 29.39 ms |
dadc233+dirty | 363.19 ms | 370.37 ms | 7.18 ms |
0677344+dirty | 288.40 ms | 391.44 ms | 103.04 ms |
70caa60+dirty | 308.83 ms | 393.06 ms | 84.23 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
f06c879+dirty | 7.15 MiB | 8.12 MiB | 997.78 KiB |
d43a46b+dirty | 7.15 MiB | 8.34 MiB | 1.19 MiB |
5446992+dirty | 7.15 MiB | 8.12 MiB | 999.45 KiB |
fe13591+dirty | 7.15 MiB | 8.35 MiB | 1.20 MiB |
5a22220+dirty | 7.15 MiB | 8.21 MiB | 1.06 MiB |
2534337+dirty | 7.15 MiB | 8.11 MiB | 988.68 KiB |
e73d82f+dirty | 7.15 MiB | 8.34 MiB | 1.19 MiB |
dadc233+dirty | 7.15 MiB | 8.04 MiB | 910.84 KiB |
0677344+dirty | 7.15 MiB | 8.07 MiB | 949.80 KiB |
70caa60+dirty | 7.15 MiB | 8.03 MiB | 901.79 KiB |
Previous results on branch: antonis/3706-enable-native-spotlight
Startup times
Revision | Plain | With Sentry | Diff |
---|---|---|---|
205310a+dirty | 392.67 ms | 453.48 ms | 60.81 ms |
c290d35+dirty | 486.24 ms | 545.96 ms | 59.72 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
205310a+dirty | 7.15 MiB | 8.35 MiB | 1.20 MiB |
c290d35+dirty | 7.15 MiB | 8.35 MiB | 1.20 MiB |
iOS (legacy) Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c2a4e9b+dirty | 1240.10 ms | 1239.22 ms | -0.88 ms |
5571a20+dirty | 1203.57 ms | 1204.57 ms | 1.00 ms |
e2b64fe+dirty | 1232.22 ms | 1255.20 ms | 22.98 ms |
31fcca2+dirty | 1209.17 ms | 1216.21 ms | 7.04 ms |
c639edf+dirty | 1236.18 ms | 1235.04 ms | -1.14 ms |
0d3e677+dirty | 1214.39 ms | 1225.70 ms | 11.31 ms |
9433f35+dirty | 1246.94 ms | 1271.45 ms | 24.52 ms |
b95b8af+dirty | 1221.39 ms | 1228.52 ms | 7.13 ms |
2ec71da+dirty | 1225.85 ms | 1231.57 ms | 5.72 ms |
62a750b+dirty | 1216.60 ms | 1229.14 ms | 12.54 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c2a4e9b+dirty | 2.36 MiB | 3.08 MiB | 734.00 KiB |
5571a20+dirty | 2.36 MiB | 2.92 MiB | 569.93 KiB |
e2b64fe+dirty | 2.36 MiB | 2.85 MiB | 495.80 KiB |
31fcca2+dirty | 2.36 MiB | 2.90 MiB | 552.95 KiB |
c639edf+dirty | 2.36 MiB | 3.08 MiB | 736.63 KiB |
0d3e677+dirty | 2.36 MiB | 3.10 MiB | 753.12 KiB |
9433f35+dirty | 2.36 MiB | 2.85 MiB | 499.80 KiB |
b95b8af+dirty | 2.36 MiB | 3.14 MiB | 793.32 KiB |
2ec71da+dirty | 2.36 MiB | 3.13 MiB | 784.66 KiB |
62a750b+dirty | 2.36 MiB | 2.92 MiB | 570.00 KiB |
Previous results on branch: antonis/3706-enable-native-spotlight
Startup times
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c290d35+dirty | 1212.42 ms | 1223.76 ms | 11.34 ms |
205310a+dirty | 1218.18 ms | 1218.54 ms | 0.36 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c290d35+dirty | 2.36 MiB | 3.08 MiB | 736.00 KiB |
205310a+dirty | 2.36 MiB | 3.08 MiB | 737.04 KiB |
iOS (new) Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c2a4e9b+dirty | 1247.39 ms | 1243.04 ms | -4.35 ms |
5571a20+dirty | 1228.09 ms | 1233.45 ms | 5.36 ms |
e2b64fe+dirty | 1285.78 ms | 1297.56 ms | 11.78 ms |
31fcca2+dirty | 1222.04 ms | 1226.51 ms | 4.47 ms |
c639edf+dirty | 1223.63 ms | 1227.98 ms | 4.35 ms |
0d3e677+dirty | 1239.02 ms | 1241.22 ms | 2.20 ms |
9433f35+dirty | 1232.24 ms | 1232.74 ms | 0.50 ms |
b95b8af+dirty | 1235.60 ms | 1242.06 ms | 6.46 ms |
2ec71da+dirty | 1230.29 ms | 1239.50 ms | 9.21 ms |
62a750b+dirty | 1228.12 ms | 1230.53 ms | 2.41 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c2a4e9b+dirty | 2.92 MiB | 3.64 MiB | 739.91 KiB |
5571a20+dirty | 2.92 MiB | 3.48 MiB | 575.54 KiB |
e2b64fe+dirty | 2.92 MiB | 3.41 MiB | 499.97 KiB |
31fcca2+dirty | 2.92 MiB | 3.46 MiB | 557.31 KiB |
c639edf+dirty | 2.92 MiB | 3.64 MiB | 742.55 KiB |
0d3e677+dirty | 2.92 MiB | 3.66 MiB | 758.42 KiB |
9433f35+dirty | 2.92 MiB | 3.41 MiB | 503.55 KiB |
b95b8af+dirty | 2.92 MiB | 3.69 MiB | 794.16 KiB |
2ec71da+dirty | 2.92 MiB | 3.69 MiB | 791.06 KiB |
62a750b+dirty | 2.92 MiB | 3.48 MiB | 575.59 KiB |
Previous results on branch: antonis/3706-enable-native-spotlight
Startup times
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c290d35+dirty | 1245.04 ms | 1244.04 ms | -1.00 ms |
205310a+dirty | 1222.87 ms | 1222.64 ms | -0.23 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
c290d35+dirty | 2.92 MiB | 3.64 MiB | 742.12 KiB |
205310a+dirty | 2.92 MiB | 3.64 MiB | 743.02 KiB |
Android (legacy) Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
f06c879 | 408.41 ms | 424.54 ms | 16.13 ms |
0ebca77 | 414.93 ms | 444.49 ms | 29.56 ms |
e2b64fe | 316.88 ms | 330.23 ms | 13.35 ms |
148f924 | 492.65 ms | 500.28 ms | 7.63 ms |
d7401ac+dirty | 375.20 ms | 383.51 ms | 8.31 ms |
34aba08 | 328.10 ms | 342.84 ms | 14.74 ms |
62a750b | 395.96 ms | 423.36 ms | 27.41 ms |
1c65324 | 426.37 ms | 460.36 ms | 33.99 ms |
86d6d2c+dirty | 332.90 ms | 352.45 ms | 19.55 ms |
e73d82f | 475.82 ms | 506.55 ms | 30.73 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
f06c879 | 17.73 MiB | 19.85 MiB | 2.12 MiB |
0ebca77 | 17.73 MiB | 19.95 MiB | 2.21 MiB |
e2b64fe | 17.73 MiB | 19.80 MiB | 2.07 MiB |
148f924 | 17.73 MiB | 19.94 MiB | 2.21 MiB |
d7401ac+dirty | 17.73 MiB | 19.75 MiB | 2.02 MiB |
34aba08 | 17.73 MiB | 19.80 MiB | 2.07 MiB |
62a750b | 17.73 MiB | 19.93 MiB | 2.20 MiB |
1c65324 | 17.73 MiB | 19.95 MiB | 2.21 MiB |
86d6d2c+dirty | 17.73 MiB | 20.04 MiB | 2.31 MiB |
e73d82f | 17.73 MiB | 20.07 MiB | 2.33 MiB |
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.
PR Looks good to me, Thank you for the contribution!
packages/core/RNSentryAndroidTester/app/src/test/java/io/sentry/react/RNSentryModuleImplTest.kt
Show resolved
Hide resolved
packages/core/RNSentryCocoaTester/RNSentryCocoaTesterTests/RNSentryTests.mm
Show resolved
Hide resolved
RN Default URL is based on the Metro dev server host, this is slightly different from the platform SDK, which use localhost as default. Depending on the effort it would be good to use the same default.
This should ensure that Dev Builds running on Real devices will be also sending platform events to spotlight. |
When spotlight is enabled on both JS an platform SDKs, JS event will be send twice. This will be super useful for debugging the SDK, but for Spotlight customers this should not result in duplicates in the Spotlight UI (only in Developer Tab). Maybe you already check this. But let's confirm that it works this way. |
Thank you for your feedback @krystofwoldrich 🙇
iOS uses
If I understand correctly, we want to use the same default values on the RN side (or vice versa)?
I will check this 🙏 |
Those are the default of the native SDKs. I was not exact, In RN JS we take the host of the Metro dev server as host of Spotlight (the assumption is that the dev server and spotlight run on the same computer). We should pass the RN JS default to the platform layers when Spotlight is enabled. |
Thanks again for the feedback 🙇 |
# Conflicts: # CHANGELOG.md
This PR is also a reminder to me that I need to do the same on Capacitor |
packages/core/android/src/main/java/io/sentry/react/RNSentryModuleImpl.java
Show resolved
Hide resolved
packages/core/android/src/main/java/io/sentry/react/RNSentryModuleImpl.java
Show resolved
Hide resolved
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.
Awesome, thanks for adding the screens from testing and more platform tests. 🚀
Hey @antonis, thanks so much for this! 🥳 |
Instructions and example for changelogPlease add an entry to Example: ## Unreleased
- Enable Spotlight in Android and iOS SDKs ([#4211](https://github.com/getsentry/sentry-react-native/pull/4211)) If none of the above apply, you can opt out of this check by adding |
📢 Type of change
📜 Description
Passes
spotlight
initialisation option to the native Android and iOS SDKs. When aurl
is not passed the RN JSdefaultSidecarUrl
is used.When spotlight is enabled on both JS and platform SDKs, JS events will be send twice. The duplication only affects the
Developer Info
tab and the rest of the UI remains uncluttered.💡 Motivation and Context
Fixes #3706
💚 How did you test it?
Manual testing, CI
📝 Checklist
sendDefaultPII
is enabled🔮 Next steps