sentry-react-native
sentry-react-native copied to clipboard
feat(replay): Add Mobile Replay
Only Reviewed Content from other PRs in this branch
This PR contains all the changes needed for RN Mobile Replay.
Future alphas and betas should be also released from this branch.
#skip-changelog
| 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 b9a7f9d882729f1ed6f34d239134f64e6eaa2e2d
Android (legacy) Performance metrics :rocket:
| Plain | With Sentry | Diff | |
|---|---|---|---|
| Startup time | 409.52 ms | 460.44 ms | 50.92 ms |
| Size | 17.73 MiB | 20.05 MiB | 2.31 MiB |
Baseline results on branch: main
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 34aba0802bf802288f91fada55c0b133252fe67f | 328.10 ms | 342.84 ms | 14.74 ms |
| d7401ac44acf524fe4d9a6a525f2cc13c70ce9e5+dirty | 375.20 ms | 383.51 ms | 8.31 ms |
| 70caa604a66a0a191f272363d4dd04d6f5950ba1+dirty | 299.00 ms | 321.02 ms | 22.02 ms |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c | 385.02 ms | 387.36 ms | 2.34 ms |
| 22e31b6ad7bd629bf078367aee82121c08977ded | 396.48 ms | 419.64 ms | 23.16 ms |
| 544699261cd72e3efc1259ba66b138f5f70a05ed | 403.40 ms | 426.70 ms | 23.30 ms |
| ad6c2993f6b77abbcf4094d17dd1fa9f7742ae99 | 375.94 ms | 382.02 ms | 6.08 ms |
| e73f4eddcecda26c0380795bce5ba97e1f11b91f+dirty | 332.96 ms | 354.33 ms | 21.37 ms |
| 728164bd341a3b0e14876d86101c4bcca5b1f1ed | 414.34 ms | 449.22 ms | 34.88 ms |
| 76d1bafa51ac0d20b127bc97b0f45201263636c3+dirty | 335.72 ms | 355.52 ms | 19.80 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 34aba0802bf802288f91fada55c0b133252fe67f | 17.73 MiB | 19.80 MiB | 2.07 MiB |
| d7401ac44acf524fe4d9a6a525f2cc13c70ce9e5+dirty | 17.73 MiB | 19.75 MiB | 2.02 MiB |
| 70caa604a66a0a191f272363d4dd04d6f5950ba1+dirty | 17.73 MiB | 19.75 MiB | 2.01 MiB |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c | 17.73 MiB | 19.75 MiB | 2.02 MiB |
| 22e31b6ad7bd629bf078367aee82121c08977ded | 17.73 MiB | 19.84 MiB | 2.10 MiB |
| 544699261cd72e3efc1259ba66b138f5f70a05ed | 17.73 MiB | 19.85 MiB | 2.12 MiB |
| ad6c2993f6b77abbcf4094d17dd1fa9f7742ae99 | 17.73 MiB | 19.75 MiB | 2.02 MiB |
| e73f4eddcecda26c0380795bce5ba97e1f11b91f+dirty | 17.73 MiB | 20.04 MiB | 2.31 MiB |
| 728164bd341a3b0e14876d86101c4bcca5b1f1ed | 17.73 MiB | 19.85 MiB | 2.12 MiB |
| 76d1bafa51ac0d20b127bc97b0f45201263636c3+dirty | 17.73 MiB | 20.04 MiB | 2.31 MiB |
Previous results on branch: feat/replay
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 41db11d8196b65bca2dd47a43699f03809c383de | 429.33 ms | 451.24 ms | 21.91 ms |
| 376301c0b4714309405998099f97f661f10e8375 | 445.52 ms | 474.70 ms | 29.18 ms |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2 | 431.40 ms | 448.40 ms | 17.00 ms |
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2 | 422.50 ms | 465.69 ms | 43.19 ms |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe | 469.96 ms | 516.38 ms | 46.42 ms |
| c3e470500cea47a2b925ae86b673f82124dba57c | 478.62 ms | 486.84 ms | 8.22 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 41db11d8196b65bca2dd47a43699f03809c383de | 17.73 MiB | 20.04 MiB | 2.30 MiB |
| 376301c0b4714309405998099f97f661f10e8375 | 17.73 MiB | 20.04 MiB | 2.30 MiB |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2 | 17.73 MiB | 20.04 MiB | 2.31 MiB |
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2 | 17.73 MiB | 20.04 MiB | 2.31 MiB |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe | 17.73 MiB | 20.04 MiB | 2.30 MiB |
| c3e470500cea47a2b925ae86b673f82124dba57c | 17.73 MiB | 20.05 MiB | 2.31 MiB |
Android (new) Performance metrics :rocket:
| Plain | With Sentry | Diff | |
|---|---|---|---|
| Startup time | 432.04 ms | 467.82 ms | 35.78 ms |
| Size | 7.15 MiB | 8.32 MiB | 1.17 MiB |
Baseline results on branch: main
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| d7401ac44acf524fe4d9a6a525f2cc13c70ce9e5+dirty | 373.98 ms | 394.08 ms | 20.10 ms |
| 70caa604a66a0a191f272363d4dd04d6f5950ba1+dirty | 308.83 ms | 393.06 ms | 84.23 ms |
| e5c9b8b6d5ce209fa4b3a77aa9de65bd590fa727+dirty | 335.40 ms | 360.06 ms | 24.67 ms |
| b1e87125f5dbad623a4e4293384e68e8f702cc19+dirty | 322.55 ms | 331.84 ms | 9.29 ms |
| 25343377820b65409b646b44bc8e9bc9fbb51c8c+dirty | 597.14 ms | 665.04 ms | 67.90 ms |
| 1c653243e2e4fd64d6c98a843b9aeccf235ba198+dirty | 381.10 ms | 427.26 ms | 46.16 ms |
| e73f4eddcecda26c0380795bce5ba97e1f11b91f+dirty | 262.98 ms | 311.02 ms | 48.04 ms |
| 9c48b2c9eb6422d8d51fcf56b1b4ab7841d2ec8a+dirty | 270.82 ms | 321.12 ms | 50.30 ms |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 265.50 ms | 336.08 ms | 70.58 ms |
| 76d1bafa51ac0d20b127bc97b0f45201263636c3+dirty | 339.02 ms | 408.65 ms | 69.63 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| d7401ac44acf524fe4d9a6a525f2cc13c70ce9e5+dirty | 7.15 MiB | 8.04 MiB | 910.85 KiB |
| 70caa604a66a0a191f272363d4dd04d6f5950ba1+dirty | 7.15 MiB | 8.03 MiB | 901.79 KiB |
| e5c9b8b6d5ce209fa4b3a77aa9de65bd590fa727+dirty | 7.15 MiB | 8.10 MiB | 980.41 KiB |
| b1e87125f5dbad623a4e4293384e68e8f702cc19+dirty | 7.15 MiB | 8.04 MiB | 912.27 KiB |
| 25343377820b65409b646b44bc8e9bc9fbb51c8c+dirty | 7.15 MiB | 8.11 MiB | 988.68 KiB |
| 1c653243e2e4fd64d6c98a843b9aeccf235ba198+dirty | 7.15 MiB | 8.22 MiB | 1.07 MiB |
| e73f4eddcecda26c0380795bce5ba97e1f11b91f+dirty | 7.15 MiB | 8.09 MiB | 965.94 KiB |
| 9c48b2c9eb6422d8d51fcf56b1b4ab7841d2ec8a+dirty | 7.15 MiB | 8.07 MiB | 947.16 KiB |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 7.15 MiB | 8.08 MiB | 959.34 KiB |
| 76d1bafa51ac0d20b127bc97b0f45201263636c3+dirty | 7.15 MiB | 8.09 MiB | 964.41 KiB |
Previous results on branch: feat/replay
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 384.48 ms | 457.15 ms | 72.67 ms |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 338.00 ms | 369.88 ms | 31.88 ms |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 391.08 ms | 461.04 ms | 69.96 ms |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 353.80 ms | 388.54 ms | 34.74 ms |
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 391.15 ms | 446.94 ms | 55.79 ms |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 374.57 ms | 415.25 ms | 40.68 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 7.15 MiB | 8.32 MiB | 1.17 MiB |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 7.15 MiB | 8.31 MiB | 1.17 MiB |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 7.15 MiB | 8.32 MiB | 1.17 MiB |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 7.15 MiB | 8.31 MiB | 1.17 MiB |
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 7.15 MiB | 8.32 MiB | 1.17 MiB |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 7.15 MiB | 8.31 MiB | 1.16 MiB |
iOS (legacy) Performance metrics :rocket:
| Plain | With Sentry | Diff | |
|---|---|---|---|
| Startup time | 1222.81 ms | 1226.12 ms | 3.31 ms |
| Size | 2.36 MiB | 3.06 MiB | 717.48 KiB |
Baseline results on branch: main
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 86d6d2c81bc42209de70f7f3b97a1fbbde04025f+dirty | 1267.55 ms | 1286.21 ms | 18.66 ms |
| e2b64fed057d4b01cf7ad79eb19eb3c8b8002a82+dirty | 1232.22 ms | 1255.20 ms | 22.98 ms |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 1246.94 ms | 1271.45 ms | 24.52 ms |
| 4a6664fa7140687cfa079f2d738b59b18e4ac7b7+dirty | 1209.49 ms | 1208.63 ms | -0.86 ms |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c+dirty | 1265.92 ms | 1268.60 ms | 2.69 ms |
| dadc233f906b89b35cb320c3f7d1dfaf5db0cc5d+dirty | 1223.20 ms | 1236.88 ms | 13.68 ms |
| f06c879d164a5bd44945c6e000e25ce3f7c14172+dirty | 1252.64 ms | 1259.66 ms | 7.02 ms |
| 5a22220fafc6352a2e07e20943dda325a4cf67f5+dirty | 1209.49 ms | 1220.94 ms | 11.45 ms |
| 3853f4362ec819042552ffa9ed30e8f6627e60bf+dirty | 1221.82 ms | 1242.64 ms | 20.82 ms |
| 8900e1acdc5e3dcbb40938d4ba5c2abad4cc86a4+dirty | 1210.27 ms | 1218.66 ms | 8.39 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 86d6d2c81bc42209de70f7f3b97a1fbbde04025f+dirty | 2.36 MiB | 2.82 MiB | 462.82 KiB |
| e2b64fed057d4b01cf7ad79eb19eb3c8b8002a82+dirty | 2.36 MiB | 2.85 MiB | 495.80 KiB |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 2.36 MiB | 2.85 MiB | 499.80 KiB |
| 4a6664fa7140687cfa079f2d738b59b18e4ac7b7+dirty | 2.36 MiB | 3.04 MiB | 696.39 KiB |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c+dirty | 2.36 MiB | 2.84 MiB | 486.98 KiB |
| dadc233f906b89b35cb320c3f7d1dfaf5db0cc5d+dirty | 2.36 MiB | 2.84 MiB | 486.85 KiB |
| f06c879d164a5bd44945c6e000e25ce3f7c14172+dirty | 2.36 MiB | 2.88 MiB | 530.42 KiB |
| 5a22220fafc6352a2e07e20943dda325a4cf67f5+dirty | 2.36 MiB | 2.92 MiB | 570.21 KiB |
| 3853f4362ec819042552ffa9ed30e8f6627e60bf+dirty | 2.36 MiB | 2.85 MiB | 499.81 KiB |
| 8900e1acdc5e3dcbb40938d4ba5c2abad4cc86a4+dirty | 2.36 MiB | 2.83 MiB | 479.25 KiB |
Previous results on branch: feat/replay
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 1221.27 ms | 1223.08 ms | 1.81 ms |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 1215.73 ms | 1219.80 ms | 4.06 ms |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 1207.36 ms | 1210.32 ms | 2.96 ms |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 1220.55 ms | 1219.22 ms | -1.33 ms |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 1207.77 ms | 1214.63 ms | 6.87 ms |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 1224.27 ms | 1219.66 ms | -4.61 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 2.36 MiB | 3.05 MiB | 703.38 KiB |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 2.36 MiB | 3.05 MiB | 702.83 KiB |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 2.36 MiB | 3.04 MiB | 698.69 KiB |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 2.36 MiB | 3.06 MiB | 717.37 KiB |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 2.36 MiB | 3.06 MiB | 717.36 KiB |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 2.36 MiB | 3.05 MiB | 702.78 KiB |
iOS (new) Performance metrics :rocket:
| Plain | With Sentry | Diff | |
|---|---|---|---|
| Startup time | 1249.08 ms | 1245.08 ms | -4.00 ms |
| Size | 2.92 MiB | 3.62 MiB | 718.61 KiB |
Baseline results on branch: main
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 86d6d2c81bc42209de70f7f3b97a1fbbde04025f+dirty | 1291.62 ms | 1296.80 ms | 5.18 ms |
| e2b64fed057d4b01cf7ad79eb19eb3c8b8002a82+dirty | 1285.78 ms | 1297.56 ms | 11.78 ms |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 1232.24 ms | 1232.74 ms | 0.50 ms |
| 4a6664fa7140687cfa079f2d738b59b18e4ac7b7+dirty | 1218.77 ms | 1221.07 ms | 2.30 ms |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c+dirty | 1245.12 ms | 1262.04 ms | 16.92 ms |
| dadc233f906b89b35cb320c3f7d1dfaf5db0cc5d+dirty | 1266.52 ms | 1282.55 ms | 16.03 ms |
| f06c879d164a5bd44945c6e000e25ce3f7c14172+dirty | 1285.14 ms | 1285.86 ms | 0.72 ms |
| 5a22220fafc6352a2e07e20943dda325a4cf67f5+dirty | 1246.18 ms | 1249.61 ms | 3.43 ms |
| 3853f4362ec819042552ffa9ed30e8f6627e60bf+dirty | 1271.74 ms | 1278.04 ms | 6.30 ms |
| 8900e1acdc5e3dcbb40938d4ba5c2abad4cc86a4+dirty | 1268.36 ms | 1273.04 ms | 4.68 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 86d6d2c81bc42209de70f7f3b97a1fbbde04025f+dirty | 2.92 MiB | 3.37 MiB | 464.31 KiB |
| e2b64fed057d4b01cf7ad79eb19eb3c8b8002a82+dirty | 2.92 MiB | 3.41 MiB | 499.97 KiB |
| 9433f356583b99b5c970842ca1f926315bf23ba9+dirty | 2.92 MiB | 3.41 MiB | 503.55 KiB |
| 4a6664fa7140687cfa079f2d738b59b18e4ac7b7+dirty | 2.92 MiB | 3.60 MiB | 702.09 KiB |
| 80b2ce3d0ebe86bf1196944a2036912f6670295c+dirty | 2.92 MiB | 3.40 MiB | 492.75 KiB |
| dadc233f906b89b35cb320c3f7d1dfaf5db0cc5d+dirty | 2.92 MiB | 3.40 MiB | 492.53 KiB |
| f06c879d164a5bd44945c6e000e25ce3f7c14172+dirty | 2.92 MiB | 3.44 MiB | 533.24 KiB |
| 5a22220fafc6352a2e07e20943dda325a4cf67f5+dirty | 2.92 MiB | 3.48 MiB | 575.81 KiB |
| 3853f4362ec819042552ffa9ed30e8f6627e60bf+dirty | 2.92 MiB | 3.41 MiB | 503.54 KiB |
| 8900e1acdc5e3dcbb40938d4ba5c2abad4cc86a4+dirty | 2.92 MiB | 3.39 MiB | 485.96 KiB |
Previous results on branch: feat/replay
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 1227.53 ms | 1231.76 ms | 4.22 ms |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 1224.74 ms | 1227.00 ms | 2.26 ms |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 1208.60 ms | 1210.47 ms | 1.87 ms |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 1239.65 ms | 1233.69 ms | -5.97 ms |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 1221.81 ms | 1226.51 ms | 4.70 ms |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 1225.38 ms | 1218.06 ms | -7.31 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 52f5e03f3090b7bdf699476e3ed3bc3d8b9afbe2+dirty | 2.92 MiB | 3.61 MiB | 710.43 KiB |
| 376301c0b4714309405998099f97f661f10e8375+dirty | 2.92 MiB | 3.61 MiB | 709.95 KiB |
| 41db11d8196b65bca2dd47a43699f03809c383de+dirty | 2.92 MiB | 3.61 MiB | 705.84 KiB |
| 6b9147b5a63acdfc5a497c90b22d189fd87908e2+dirty | 2.92 MiB | 3.62 MiB | 718.74 KiB |
| c3e470500cea47a2b925ae86b673f82124dba57c+dirty | 2.92 MiB | 3.62 MiB | 718.72 KiB |
| 063bfcee71b276ada63ad5e92c21b6ad648543fe+dirty | 2.92 MiB | 3.61 MiB | 710.22 KiB |
The 5.25.0-alpha.2 is the latest version of Sentry's RN SDK with Session Replay, that's why it's in the branch, craft will overwrite it with a new version when we release it.
The Android Session Replay (Beta) will be released on Friday in a stable release of the Android SDK and we will release RN with that.
Added a blocked label to remind that we should wait for non beta releases from the native SDKs to be released before merging.