Skip to content

Commit c7232fe

Browse files
authored
Parse and use send-default-pii and max-request-body-size from sentry.properties (#3534)
* Parse and use sendDefaultPii and maxRequestBodySize from external options * changelog
1 parent 437936e commit c7232fe

File tree

6 files changed

+34
-0
lines changed

6 files changed

+34
-0
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@
66

77
- `sentry-android-okhttp` has been removed in favor of `sentry-okhttp`, removing android dependency from the module ([#3510](https://github.com/getsentry/sentry-java/pull/3510))
88

9+
### Fixes
10+
11+
- Parse and use `send-default-pii` and `max-request-body-size` from `sentry.properties` ([#3534](https://github.com/getsentry/sentry-java/pull/3534))
12+
913
## 8.0.0-alpha.2
1014

1115
### Behavioural Changes

sentry/api/sentry.api

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -461,6 +461,7 @@ public final class io/sentry/ExternalOptions {
461461
public fun isEnableBackpressureHandling ()Ljava/lang/Boolean;
462462
public fun isEnablePrettySerializationOutput ()Ljava/lang/Boolean;
463463
public fun isEnabled ()Ljava/lang/Boolean;
464+
public fun isSendDefaultPii ()Ljava/lang/Boolean;
464465
public fun isSendModules ()Ljava/lang/Boolean;
465466
public fun setCron (Lio/sentry/SentryOptions$Cron;)V
466467
public fun setDebug (Ljava/lang/Boolean;)V
@@ -482,6 +483,7 @@ public final class io/sentry/ExternalOptions {
482483
public fun setProxy (Lio/sentry/SentryOptions$Proxy;)V
483484
public fun setRelease (Ljava/lang/String;)V
484485
public fun setSendClientReports (Ljava/lang/Boolean;)V
486+
public fun setSendDefaultPii (Ljava/lang/Boolean;)V
485487
public fun setSendModules (Ljava/lang/Boolean;)V
486488
public fun setServerName (Ljava/lang/String;)V
487489
public fun setTag (Ljava/lang/String;Ljava/lang/String;)V

sentry/src/main/java/io/sentry/ExternalOptions.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public final class ExternalOptions {
4949
private @Nullable List<String> ignoredCheckIns;
5050

5151
private @Nullable Boolean sendModules;
52+
private @Nullable Boolean sendDefaultPii;
5253
private @Nullable Boolean enableBackpressureHandling;
5354

5455
private @Nullable SentryOptions.Cron cron;
@@ -131,6 +132,7 @@ public final class ExternalOptions {
131132
propertiesProvider.getBooleanProperty("enable-pretty-serialization-output"));
132133

133134
options.setSendModules(propertiesProvider.getBooleanProperty("send-modules"));
135+
options.setSendDefaultPii(propertiesProvider.getBooleanProperty("send-default-pii"));
134136

135137
options.setIgnoredCheckIns(propertiesProvider.getList("ignored-checkins"));
136138

@@ -421,6 +423,14 @@ public void setSendModules(final @Nullable Boolean sendModules) {
421423
this.sendModules = sendModules;
422424
}
423425

426+
public @Nullable Boolean isSendDefaultPii() {
427+
return sendDefaultPii;
428+
}
429+
430+
public void setSendDefaultPii(final @Nullable Boolean sendDefaultPii) {
431+
this.sendDefaultPii = sendDefaultPii;
432+
}
433+
424434
@ApiStatus.Experimental
425435
public void setIgnoredCheckIns(final @Nullable List<String> ignoredCheckIns) {
426436
this.ignoredCheckIns = ignoredCheckIns;

sentry/src/main/java/io/sentry/SentryOptions.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2688,6 +2688,12 @@ public void merge(final @NotNull ExternalOptions options) {
26882688
if (options.isEnableBackpressureHandling() != null) {
26892689
setEnableBackpressureHandling(options.isEnableBackpressureHandling());
26902690
}
2691+
if (options.getMaxRequestBodySize() != null) {
2692+
setMaxRequestBodySize(options.getMaxRequestBodySize());
2693+
}
2694+
if (options.isSendDefaultPii() != null) {
2695+
setSendDefaultPii(options.isSendDefaultPii());
2696+
}
26912697

26922698
if (options.getCron() != null) {
26932699
if (getCron() == null) {

sentry/src/test/java/io/sentry/ExternalOptionsTest.kt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,13 @@ class ExternalOptionsTest {
286286
}
287287
}
288288

289+
@Test
290+
fun `creates options with sendDefaultPii set to true`() {
291+
withPropertiesFile("send-default-pii=true") { options ->
292+
assertTrue(options.isSendDefaultPii == true)
293+
}
294+
}
295+
289296
private fun withPropertiesFile(textLines: List<String> = emptyList(), logger: ILogger = mock(), fn: (ExternalOptions) -> Unit) {
290297
// create a sentry.properties file in temporary folder
291298
val temporaryFolder = TemporaryFolder()

sentry/src/test/java/io/sentry/SentryOptionsTest.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package io.sentry
22

3+
import io.sentry.SentryOptions.RequestSize
34
import io.sentry.util.StringUtils
45
import org.mockito.kotlin.mock
56
import java.io.File
@@ -371,6 +372,8 @@ class SentryOptionsTest {
371372
externalOptions.isSendModules = false
372373
externalOptions.ignoredCheckIns = listOf("slug1", "slug-B")
373374
externalOptions.isEnableBackpressureHandling = false
375+
externalOptions.maxRequestBodySize = SentryOptions.RequestSize.MEDIUM
376+
externalOptions.isSendDefaultPii = true
374377
externalOptions.cron = SentryOptions.Cron().apply {
375378
defaultCheckinMargin = 10L
376379
defaultMaxRuntime = 30L
@@ -415,6 +418,8 @@ class SentryOptionsTest {
415418
assertEquals(40L, options.cron?.defaultFailureIssueThreshold)
416419
assertEquals(50L, options.cron?.defaultRecoveryThreshold)
417420
assertEquals("America/New_York", options.cron?.defaultTimezone)
421+
assertTrue(options.isSendDefaultPii)
422+
assertEquals(RequestSize.MEDIUM, options.maxRequestBodySize)
418423
}
419424

420425
@Test

0 commit comments

Comments
 (0)