|
2 | 2 |
|
3 | 3 | ## Unreleased |
4 | 4 |
|
| 5 | +### Features |
| 6 | + |
| 7 | +- Add option to capture additional OkHttp network request/response details in session replays ([#4919](https://github.com/getsentry/sentry-java/pull/4919)) |
| 8 | + - Depends on `SentryOkHttpInterceptor` to intercept the request and extract request/response bodies. |
| 9 | + - To enable, add url regexes via the `io.sentry.session-replay.network-detail-allow-urls` metadata tag in AndroidManifest ([code sample](https://github.com/getsentry/sentry-java/blob/b03edbb1b0d8b871c62a09bc02cbd8a4e1f6fea1/sentry-samples/sentry-samples-android/src/main/AndroidManifest.xml#L196-L205)) |
| 10 | + - Or you can manually specify SentryReplayOptions via `SentryAndroid#init`: |
| 11 | +_(Make sure you disable the auto init via manifest meta-data: io.sentry.auto-init=false)_ |
| 12 | + |
| 13 | +<details> |
| 14 | + <summary>Kotlin</summary> |
| 15 | + |
| 16 | +```kotlin |
| 17 | +SentryAndroid.init( |
| 18 | + this, |
| 19 | + options -> { |
| 20 | + options.sessionReplay.networkDetailAllowUrls = arrayOf(".*") |
| 21 | + options.sessionReplay.networkDetailDenyUrls = arrayOf(".*deny.*") |
| 22 | + options.sessionReplay.networkRequestHeaders = listOf("Authorization", "X-Custom-Header", "X-Test-Request") |
| 23 | + options.sessionReplay.networkResponseHeaders = listOf("X-Response-Time", "X-Cache-Status", "X-Test-Response") |
| 24 | + }); |
| 25 | +``` |
| 26 | + |
| 27 | +</details> |
| 28 | + |
| 29 | +<details> |
| 30 | + <summary>Java</summary> |
| 31 | + |
| 32 | +```java |
| 33 | +SentryAndroid.init( |
| 34 | + this, |
| 35 | + options -> { |
| 36 | + options.getSessionReplay().setNetworkDetailAllowUrls(new String[] {".*"}); |
| 37 | + options.getSessionReplay().setNetworkDetailDenyUrls(new String[] {".*deny.*"}); |
| 38 | + options.getSessionReplay().setNetworkRequestHeaders( |
| 39 | + Arrays.asList("Authorization", "X-Custom-Header", "X-Test-Request")); |
| 40 | + options.getSessionReplay().setNetworkResponseHeaders( |
| 41 | + Arrays.asList("X-Response-Time", "X-Cache-Status", "X-Test-Response")); |
| 42 | + }); |
| 43 | + |
| 44 | +``` |
| 45 | + |
| 46 | +</details> |
| 47 | + |
| 48 | + |
5 | 49 | ### Improvements |
6 | 50 |
|
7 | 51 | - Avoid forking `rootScopes` for Reactor if current thread has `NoOpScopes` ([#4793](https://github.com/getsentry/sentry-java/pull/4793)) |
|
17 | 61 |
|
18 | 62 | ### Features |
19 | 63 |
|
20 | | -- Add option to capture additional network details for session replays (OkHttp) ([#4919](https://github.com/getsentry/sentry-java/pull/4919) |
21 | | - - Depends on `SentryOkHttpInterceptor` to intercept the request and extract request/response bodies. |
22 | | - - To enable, configure your sentry SDK using the "io.sentry.session-replay.network-*" options via [manifest](https://github.com/getsentry/sentry-java/blob/b03edbb1b0d8b871c62a09bc02cbd8a4e1f6fea1/sentry-samples/sentry-samples-android/src/main/AndroidManifest.xml#L196-L205) |
23 | | - - Or manually specify SentryReplayOptions via [SentryAndroid#init](https://github.com/getsentry/sentry-java/blob/c83e427e8baca17098f882f8b45fc7c5a80c1d8c/sentry-samples/sentry-samples-android/src/main/java/io/sentry/samples/android/MyApplication.java#L16-L28) |
24 | 64 | - Implement OpenFeature Integration that tracks Feature Flag evaluations ([#4910](https://github.com/getsentry/sentry-java/pull/4910)) |
25 | 65 | - To make use of it, add the `sentry-openfeature` dependency and register the the hook using: `openFeatureApiInstance.addHooks(new SentryOpenFeatureHook());` |
26 | 66 | - Implement LaunchDarkly Integrations that track Feature Flag evaluations ([#4917](https://github.com/getsentry/sentry-java/pull/4917)) |
|
0 commit comments