diff --git a/.cursor/rules/options.mdc b/.cursor/rules/options.mdc index 24e1dadc58..3983ff5aa6 100644 --- a/.cursor/rules/options.mdc +++ b/.cursor/rules/options.mdc @@ -76,7 +76,7 @@ Allows setting options via `AndroidManifest.xml` `` tags. - Add a `static final String` constant for the key - Read it in `applyMetadata()` using `readBool(metadata, logger, CONSTANT, defaultValue)` - Apply automatic-source options directly, for example - `options.setEnableLogcatLogs(...)` for `io.sentry.logcat.logs.enabled` + `options.setLogcatLogsEnabled(...)` for `io.sentry.logcat.logs.enabled` - Do not add or restore `io.sentry.logs.enabled` or `io.sentry.metrics.enabled`; those aggregate keys are obsolete and are read only to emit migration warnings. @@ -89,8 +89,8 @@ Allows setting options via `AndroidManifest.xml` `` tags. `SentryProperties` extends `SentryOptions`, so bindable namespaced behavior options are available through the `SentryOptions` class hierarchy. Spring-owned integration controls belong to a Spring -namespace instead. For example, `SentryProperties.Logging.enableLogs` binds to -`sentry.logging.enable-logs` and controls Logs forwarding from the auto-configured Logback +namespace instead. For example, `SentryProperties.Logging.logsEnabled` binds to +`sentry.logging.logs-enabled` and controls Logs forwarding from the auto-configured Logback appender. `sentry.logging.enabled` separately controls whether that appender is installed. Do not add or restore `sentry.logs.enabled` or `sentry.metrics.enabled`. Spring detects those legacy @@ -110,12 +110,12 @@ They capture whenever their scopes are enabled, then apply signal behavior such Automatic integrations must check their source-local opt-in without affecting their existing event or breadcrumb paths. Current Logs controls are: -- Logback: appender `enableLogs` -- Log4j2: appender `enableLogs` -- JUL: handler `enableLogs` -- Spring Boot Logback: `sentry.logging.enable-logs` -- Timber: `enableTimberLogs` / `io.sentry.timber.logs.enabled` -- Logcat: `enableLogcatLogs` / `io.sentry.logcat.logs.enabled` +- Logback: appender `logsEnabled` +- Log4j2: appender `logsEnabled` +- JUL: handler `logsEnabled` +- Spring Boot Logback: `sentry.logging.logs-enabled` +- Timber: `timberLogsEnabled` / `io.sentry.timber.logs.enabled` +- Logcat: `logcatLogsEnabled` / `io.sentry.logcat.logs.enabled` All source-local options default to `false` and gate only Sentry Logs forwarding. diff --git a/sentry-android-core/api/sentry-android-core.api b/sentry-android-core/api/sentry-android-core.api index 16b9caabc4..60c9ed2b3e 100644 --- a/sentry-android-core/api/sentry-android-core.api +++ b/sentry-android-core/api/sentry-android-core.api @@ -408,11 +408,13 @@ public final class io/sentry/android/core/SentryAndroidOptions : io/sentry/Sentr public fun getBeforeViewHierarchyCaptureCallback ()Lio/sentry/android/core/SentryAndroidOptions$BeforeCaptureCallback; public fun getDebugImagesLoader ()Lio/sentry/android/core/IDebugImagesLoader; public fun getFrameMetricsCollector ()Lio/sentry/android/core/internal/util/SentryFrameMetricsCollector; + public fun getLogcatLogsEnabled ()Z public fun getNativeSdkName ()Ljava/lang/String; public fun getNdkAppHangTimeoutIntervalMillis ()J public fun getNdkHandlerStrategy ()I public fun getScreenshot ()Lio/sentry/android/core/SentryScreenshotOptions; public fun getStartupCrashDurationThresholdMillis ()J + public fun getTimberLogsEnabled ()Z public fun isAnrEnabled ()Z public fun isAnrProfilingEnabled ()Z public fun isAnrReportInDebug ()Z @@ -430,7 +432,6 @@ public final class io/sentry/android/core/SentryAndroidOptions : io/sentry/Sentr public fun isEnableAutoActivityLifecycleTracing ()Z public fun isEnableAutoTraceIdGeneration ()Z public fun isEnableFramesTracking ()Z - public fun isEnableLogcatLogs ()Z public fun isEnableNdk ()Z public fun isEnableNdkAppHangTracking ()Z public fun isEnableNetworkEventBreadcrumbs ()Z @@ -440,7 +441,6 @@ public final class io/sentry/android/core/SentryAndroidOptions : io/sentry/Sentr public fun isEnableStandaloneAppStartTracing ()Z public fun isEnableSystemEventBreadcrumbs ()Z public fun isEnableSystemEventBreadcrumbsExtras ()Z - public fun isEnableTimberLogs ()Z public fun isReportHistoricalAnrs ()Z public fun isReportHistoricalTombstones ()Z public fun isTombstoneEnabled ()Z @@ -465,7 +465,6 @@ public final class io/sentry/android/core/SentryAndroidOptions : io/sentry/Sentr public fun setEnableAutoActivityLifecycleTracing (Z)V public fun setEnableAutoTraceIdGeneration (Z)V public fun setEnableFramesTracking (Z)V - public fun setEnableLogcatLogs (Z)V public fun setEnableNdk (Z)V public fun setEnableNdkAppHangTracking (Z)V public fun setEnableNetworkEventBreadcrumbs (Z)V @@ -475,13 +474,14 @@ public final class io/sentry/android/core/SentryAndroidOptions : io/sentry/Sentr public fun setEnableStandaloneAppStartTracing (Z)V public fun setEnableSystemEventBreadcrumbs (Z)V public fun setEnableSystemEventBreadcrumbsExtras (Z)V - public fun setEnableTimberLogs (Z)V public fun setFrameMetricsCollector (Lio/sentry/android/core/internal/util/SentryFrameMetricsCollector;)V + public fun setLogcatLogsEnabled (Z)V public fun setNativeHandlerStrategy (Lio/sentry/android/core/NdkHandlerStrategy;)V public fun setNativeSdkName (Ljava/lang/String;)V public fun setNdkAppHangTimeoutIntervalMillis (J)V public fun setReportHistoricalAnrs (Z)V public fun setReportHistoricalTombstones (Z)V + public fun setTimberLogsEnabled (Z)V public fun setTombstoneEnabled (Z)V } diff --git a/sentry-android-core/src/main/java/io/sentry/android/core/AndroidOptionsInitializer.java b/sentry-android-core/src/main/java/io/sentry/android/core/AndroidOptionsInitializer.java index cd47f96d87..07d388157b 100644 --- a/sentry-android-core/src/main/java/io/sentry/android/core/AndroidOptionsInitializer.java +++ b/sentry-android-core/src/main/java/io/sentry/android/core/AndroidOptionsInitializer.java @@ -473,7 +473,7 @@ static void installDefaultIntegrations( } if (isTimberAvailable) { - options.addIntegration(new SentryTimberIntegration(options::isEnableTimberLogs)); + options.addIntegration(new SentryTimberIntegration(options::getTimberLogsEnabled)); } options.addIntegration(new AppComponentsBreadcrumbsIntegration(context)); options.addIntegration(new SystemEventsBreadcrumbsIntegration(context)); diff --git a/sentry-android-core/src/main/java/io/sentry/android/core/ManifestMetadataReader.java b/sentry-android-core/src/main/java/io/sentry/android/core/ManifestMetadataReader.java index d94d2aa72a..3e30a441c5 100644 --- a/sentry-android-core/src/main/java/io/sentry/android/core/ManifestMetadataReader.java +++ b/sentry-android-core/src/main/java/io/sentry/android/core/ManifestMetadataReader.java @@ -746,11 +746,11 @@ static void applyMetadata( } } - options.setEnableTimberLogs( - readBool(metadata, logger, ENABLE_TIMBER_LOGS, options.isEnableTimberLogs())); + options.setTimberLogsEnabled( + readBool(metadata, logger, ENABLE_TIMBER_LOGS, options.getTimberLogsEnabled())); - options.setEnableLogcatLogs( - readBool(metadata, logger, ENABLE_LOGCAT_LOGS, options.isEnableLogcatLogs())); + options.setLogcatLogsEnabled( + readBool(metadata, logger, ENABLE_LOGCAT_LOGS, options.getLogcatLogsEnabled())); final @NotNull SentryFeedbackOptions feedbackOptions = options.getFeedbackOptions(); feedbackOptions.setNameRequired( diff --git a/sentry-android-core/src/main/java/io/sentry/android/core/SentryAndroidOptions.java b/sentry-android-core/src/main/java/io/sentry/android/core/SentryAndroidOptions.java index ade7a5fc95..44e6def83e 100644 --- a/sentry-android-core/src/main/java/io/sentry/android/core/SentryAndroidOptions.java +++ b/sentry-android-core/src/main/java/io/sentry/android/core/SentryAndroidOptions.java @@ -72,10 +72,10 @@ public final class SentryAndroidOptions extends SentryOptions { private boolean enableNetworkEventBreadcrumbs = true; /** Enable or disable automatic Sentry Logs capture from Timber. Default is disabled. */ - private boolean enableTimberLogs = false; + private boolean timberLogsEnabled = false; /** Enable or disable automatic Sentry Logs capture from Logcat. Default is disabled. */ - private boolean enableLogcatLogs = false; + private boolean logcatLogsEnabled = false; /** * Enables the Auto instrumentation for Activity lifecycle tracing. @@ -463,20 +463,20 @@ public void setEnableNetworkEventBreadcrumbs(boolean enableNetworkEventBreadcrum this.enableNetworkEventBreadcrumbs = enableNetworkEventBreadcrumbs; } - public boolean isEnableTimberLogs() { - return enableTimberLogs; + public boolean getTimberLogsEnabled() { + return timberLogsEnabled; } - public void setEnableTimberLogs(boolean enableTimberLogs) { - this.enableTimberLogs = enableTimberLogs; + public void setTimberLogsEnabled(boolean timberLogsEnabled) { + this.timberLogsEnabled = timberLogsEnabled; } - public boolean isEnableLogcatLogs() { - return enableLogcatLogs; + public boolean getLogcatLogsEnabled() { + return logcatLogsEnabled; } - public void setEnableLogcatLogs(boolean enableLogcatLogs) { - this.enableLogcatLogs = enableLogcatLogs; + public void setLogcatLogsEnabled(boolean logcatLogsEnabled) { + this.logcatLogsEnabled = logcatLogsEnabled; } /** diff --git a/sentry-android-core/src/main/java/io/sentry/android/core/SentryLogcatAdapter.java b/sentry-android-core/src/main/java/io/sentry/android/core/SentryLogcatAdapter.java index 998ce58b3d..f0dac8629a 100644 --- a/sentry-android-core/src/main/java/io/sentry/android/core/SentryLogcatAdapter.java +++ b/sentry-android-core/src/main/java/io/sentry/android/core/SentryLogcatAdapter.java @@ -55,7 +55,7 @@ private static void addAsLog( final @NotNull ScopesAdapter scopes = ScopesAdapter.getInstance(); final @NotNull SentryOptions options = scopes.getOptions(); if (!(options instanceof SentryAndroidOptions) - || !((SentryAndroidOptions) options).isEnableLogcatLogs()) { + || !((SentryAndroidOptions) options).getLogcatLogsEnabled()) { return; } final @Nullable String trMessage = tr != null ? tr.getMessage() : null; diff --git a/sentry-android-core/src/test/java/io/sentry/android/core/AndroidOptionsInitializerTest.kt b/sentry-android-core/src/test/java/io/sentry/android/core/AndroidOptionsInitializerTest.kt index 894ea9dfa4..5f3bcaa8b5 100644 --- a/sentry-android-core/src/test/java/io/sentry/android/core/AndroidOptionsInitializerTest.kt +++ b/sentry-android-core/src/test/java/io/sentry/android/core/AndroidOptionsInitializerTest.kt @@ -704,18 +704,18 @@ class AndroidOptionsInitializerTest { val actual = fixture.sentryOptions.integrations.firstOrNull { it is SentryTimberIntegration } as SentryTimberIntegration - assertFalse(actual.enableLogs) + assertFalse(actual.logsEnabled) } @Test fun `SentryTimberIntegration receives Timber logs option`() { - fixture.sentryOptions.isEnableTimberLogs = true + fixture.sentryOptions.timberLogsEnabled = true fixture.initSutWithClassLoader(isTimberAvailable = true) val actual = fixture.sentryOptions.integrations.firstOrNull { it is SentryTimberIntegration } as SentryTimberIntegration - assertTrue(actual.enableLogs) + assertTrue(actual.logsEnabled) } @Test diff --git a/sentry-android-core/src/test/java/io/sentry/android/core/ManifestMetadataReaderTest.kt b/sentry-android-core/src/test/java/io/sentry/android/core/ManifestMetadataReaderTest.kt index df361b0de1..b49f767a92 100644 --- a/sentry-android-core/src/test/java/io/sentry/android/core/ManifestMetadataReaderTest.kt +++ b/sentry-android-core/src/test/java/io/sentry/android/core/ManifestMetadataReaderTest.kt @@ -1975,14 +1975,14 @@ class ManifestMetadataReaderTest { "integrations now require their own opt-ins.", *emptyArray(), ) - assertThat(fixture.options.isEnableTimberLogs).isFalse() - assertThat(fixture.options.isEnableLogcatLogs).isFalse() + assertThat(fixture.options.timberLogsEnabled).isFalse() + assertThat(fixture.options.logcatLogsEnabled).isFalse() } @Test fun `applyMetadata warns when legacy logs enabled metadata is false`() { - fixture.options.isEnableTimberLogs = true - fixture.options.isEnableLogcatLogs = true + fixture.options.timberLogsEnabled = true + fixture.options.logcatLogsEnabled = true val bundle = bundleOf(ManifestMetadataReader.ENABLE_LOGS to false) val context = fixture.getContext(metaData = bundle) @@ -1996,8 +1996,8 @@ class ManifestMetadataReaderTest { "enabled through their own opt-ins.", *emptyArray(), ) - assertThat(fixture.options.isEnableTimberLogs).isTrue() - assertThat(fixture.options.isEnableLogcatLogs).isTrue() + assertThat(fixture.options.timberLogsEnabled).isTrue() + assertThat(fixture.options.logcatLogsEnabled).isTrue() } @Test @@ -2006,7 +2006,7 @@ class ManifestMetadataReaderTest { ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider) - assertFalse(fixture.options.isEnableTimberLogs) + assertFalse(fixture.options.timberLogsEnabled) } @Test @@ -2016,7 +2016,7 @@ class ManifestMetadataReaderTest { ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider) - assertTrue(fixture.options.isEnableTimberLogs) + assertTrue(fixture.options.timberLogsEnabled) } @Test @@ -2025,7 +2025,7 @@ class ManifestMetadataReaderTest { ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider) - assertThat(fixture.options.isEnableLogcatLogs).isFalse() + assertThat(fixture.options.logcatLogsEnabled).isFalse() } @Test @@ -2035,18 +2035,18 @@ class ManifestMetadataReaderTest { ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider) - assertThat(fixture.options.isEnableLogcatLogs).isTrue() + assertThat(fixture.options.logcatLogsEnabled).isTrue() } @Test fun `applyMetadata reads Logcat logs disabled to options`() { - fixture.options.isEnableLogcatLogs = true + fixture.options.logcatLogsEnabled = true val bundle = bundleOf(ManifestMetadataReader.ENABLE_LOGCAT_LOGS to false) val context = fixture.getContext(metaData = bundle) ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider) - assertThat(fixture.options.isEnableLogcatLogs).isFalse() + assertThat(fixture.options.logcatLogsEnabled).isFalse() } @Test diff --git a/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidOptionsTest.kt b/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidOptionsTest.kt index 4d1fbad0dd..8fa68e77e6 100644 --- a/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidOptionsTest.kt +++ b/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidOptionsTest.kt @@ -98,28 +98,28 @@ class SentryAndroidOptionsTest { fun `Timber logs are disabled by default`() { val sentryOptions = SentryAndroidOptions() - assertFalse(sentryOptions.isEnableTimberLogs) + assertFalse(sentryOptions.timberLogsEnabled) } @Test fun `Timber logs can be enabled`() { val sentryOptions = SentryAndroidOptions() - sentryOptions.isEnableTimberLogs = true + sentryOptions.timberLogsEnabled = true - assertTrue(sentryOptions.isEnableTimberLogs) + assertTrue(sentryOptions.timberLogsEnabled) } @Test fun `Logcat logs are disabled by default`() { - assertThat(SentryAndroidOptions().isEnableLogcatLogs).isFalse() + assertThat(SentryAndroidOptions().logcatLogsEnabled).isFalse() } @Test fun `Logcat logs can be enabled`() { val sentryOptions = SentryAndroidOptions() - sentryOptions.isEnableLogcatLogs = true + sentryOptions.logcatLogsEnabled = true - assertThat(sentryOptions.isEnableLogcatLogs).isTrue() + assertThat(sentryOptions.logcatLogsEnabled).isTrue() } @Test diff --git a/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidTest.kt b/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidTest.kt index cacdaf0834..00353a806f 100644 --- a/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidTest.kt +++ b/sentry-android-core/src/test/java/io/sentry/android/core/SentryAndroidTest.kt @@ -244,7 +244,7 @@ class SentryAndroidTest { fun `auto-installed Timber integration uses Logs option set in configuration callback`() { val logs = mutableListOf() fixture.initSut { options -> - options.isEnableTimberLogs = true + options.timberLogsEnabled = true options.logs.beforeSend = SentryOptions.Logs.BeforeSendLogCallback { log -> logs.add(log) @@ -268,7 +268,7 @@ class SentryAndroidTest { val logs = mutableListOf() initForTest(mockContext) { options -> - options.isEnableTimberLogs = false + options.timberLogsEnabled = false options.logs.beforeSend = SentryOptions.Logs.BeforeSendLogCallback { log -> logs.add(log) diff --git a/sentry-android-core/src/test/java/io/sentry/android/core/SentryLogcatAdapterTest.kt b/sentry-android-core/src/test/java/io/sentry/android/core/SentryLogcatAdapterTest.kt index 582f475f68..0e4717c458 100644 --- a/sentry-android-core/src/test/java/io/sentry/android/core/SentryLogcatAdapterTest.kt +++ b/sentry-android-core/src/test/java/io/sentry/android/core/SentryLogcatAdapterTest.kt @@ -28,7 +28,7 @@ class SentryLogcatAdapterTest { val logs = mutableListOf() fun initSut( - enableLogcatLogs: Boolean? = true, + logcatLogsEnabled: Boolean? = true, metadata: Bundle = Bundle(), options: Sentry.OptionsConfiguration? = null, ) { @@ -39,8 +39,8 @@ class SentryLogcatAdapterTest { breadcrumbs.add(breadcrumb) breadcrumb } - if (enableLogcatLogs != null) { - it.isEnableLogcatLogs = enableLogcatLogs + if (logcatLogsEnabled != null) { + it.logcatLogsEnabled = logcatLogsEnabled } it.logs.beforeSend = SentryOptions.Logs.BeforeSendLogCallback { logEvent -> @@ -66,7 +66,7 @@ class SentryLogcatAdapterTest { @Test fun `Logcat logs are disabled by default while breadcrumbs and Android Log remain enabled`() { - fixture.initSut(enableLogcatLogs = null) + fixture.initSut(logcatLogsEnabled = null) SentryLogcatAdapter.d(tag, commonMsg) @@ -77,7 +77,7 @@ class SentryLogcatAdapterTest { @Test fun `Logcat logs can be enabled through Android options`() { - fixture.initSut(enableLogcatLogs = true) + fixture.initSut(logcatLogsEnabled = true) SentryLogcatAdapter.d(tag, commonMsg) @@ -87,7 +87,7 @@ class SentryLogcatAdapterTest { @Test fun `Logcat logs can be enabled through manifest metadata`() { val metadata = Bundle().apply { putBoolean(ManifestMetadataReader.ENABLE_LOGCAT_LOGS, true) } - fixture.initSut(enableLogcatLogs = null, metadata = metadata) + fixture.initSut(logcatLogsEnabled = null, metadata = metadata) SentryLogcatAdapter.d(tag, commonMsg) diff --git a/sentry-android-timber/api/sentry-android-timber.api b/sentry-android-timber/api/sentry-android-timber.api index 275460a034..32a8407e41 100644 --- a/sentry-android-timber/api/sentry-android-timber.api +++ b/sentry-android-timber/api/sentry-android-timber.api @@ -15,7 +15,7 @@ public final class io/sentry/android/timber/SentryTimberIntegration : io/sentry/ public fun (Lio/sentry/util/LazyEvaluator$Evaluator;)V public fun (Z)V public fun close ()V - public final fun getEnableLogs ()Z + public final fun getLogsEnabled ()Z public final fun getMinBreadcrumbLevel ()Lio/sentry/SentryLevel; public final fun getMinEventLevel ()Lio/sentry/SentryLevel; public final fun getMinLogsLevel ()Lio/sentry/SentryLogLevel; diff --git a/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberIntegration.kt b/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberIntegration.kt index ba8956696d..93d2104489 100644 --- a/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberIntegration.kt +++ b/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberIntegration.kt @@ -19,26 +19,26 @@ public class SentryTimberIntegration( public val minBreadcrumbLevel: SentryLevel = SentryLevel.INFO, public val minLogsLevel: SentryLogLevel = SentryLogLevel.INFO, ) : Integration, Closeable { - public val enableLogs: Boolean - get() = enableLogsProvider.evaluate() + public val logsEnabled: Boolean + get() = logsEnabledProvider.evaluate() - private var enableLogsProvider: Evaluator = Evaluator { false } + private var logsEnabledProvider: Evaluator = Evaluator { false } - public constructor(enableLogs: Boolean) : this() { - enableLogsProvider = Evaluator { enableLogs } + public constructor(logsEnabled: Boolean) : this() { + logsEnabledProvider = Evaluator { logsEnabled } } public constructor( minEventLevel: SentryLevel, minBreadcrumbLevel: SentryLevel, minLogsLevel: SentryLogLevel, - enableLogs: Boolean, + logsEnabled: Boolean, ) : this(minEventLevel, minBreadcrumbLevel, minLogsLevel) { - enableLogsProvider = Evaluator { enableLogs } + logsEnabledProvider = Evaluator { logsEnabled } } - public constructor(enableLogsProvider: Evaluator) : this() { - this.enableLogsProvider = enableLogsProvider + public constructor(logsEnabledProvider: Evaluator) : this() { + this.logsEnabledProvider = logsEnabledProvider } private lateinit var tree: SentryTimberTree @@ -60,7 +60,7 @@ public class SentryTimberIntegration( minEventLevel, minBreadcrumbLevel, minLogsLevel, - enableLogsProvider.evaluate(), + logsEnabledProvider.evaluate(), ) Timber.plant(tree) diff --git a/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberTree.kt b/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberTree.kt index f63dd7b66d..9d3f86fa81 100644 --- a/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberTree.kt +++ b/sentry-android-timber/src/main/java/io/sentry/android/timber/SentryTimberTree.kt @@ -20,16 +20,16 @@ public class SentryTimberTree( private val minBreadcrumbLevel: SentryLevel, private val minLogLevel: SentryLogLevel = SentryLogLevel.INFO, ) : Timber.Tree() { - private var enableLogs: Boolean = false + private var logsEnabled: Boolean = false public constructor( scopes: IScopes, minEventLevel: SentryLevel, minBreadcrumbLevel: SentryLevel, minLogLevel: SentryLogLevel, - enableLogs: Boolean, + logsEnabled: Boolean, ) : this(scopes, minEventLevel, minBreadcrumbLevel, minLogLevel) { - this.enableLogs = enableLogs + this.logsEnabled = logsEnabled } private val pendingTag = ThreadLocal() @@ -197,7 +197,7 @@ public class SentryTimberTree( captureEvent(level, tag, sentryMessage, throwable) addBreadcrumb(level, sentryMessage, throwable) - if (enableLogs) { + if (logsEnabled) { addLog(logLevel, message, tag, throwable, *args) } } diff --git a/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberIntegrationTest.kt b/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberIntegrationTest.kt index 6597d528f8..4fae8bc685 100644 --- a/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberIntegrationTest.kt +++ b/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberIntegrationTest.kt @@ -39,9 +39,9 @@ class SentryTimberIntegrationTest { minEventLevel: SentryLevel = SentryLevel.ERROR, minBreadcrumbLevel: SentryLevel = SentryLevel.INFO, minLogsLevel: SentryLogLevel = SentryLogLevel.INFO, - enableLogs: Boolean? = null, + logsEnabled: Boolean? = null, ): SentryTimberIntegration = - if (enableLogs == null) { + if (logsEnabled == null) { SentryTimberIntegration( minEventLevel = minEventLevel, minBreadcrumbLevel = minBreadcrumbLevel, @@ -52,7 +52,7 @@ class SentryTimberIntegrationTest { minEventLevel = minEventLevel, minBreadcrumbLevel = minBreadcrumbLevel, minLogsLevel = minLogsLevel, - enableLogs = enableLogs, + logsEnabled = logsEnabled, ) } } @@ -90,7 +90,7 @@ class SentryTimberIntegrationTest { val sut = fixture.getSut() sut.register(fixture.scopes, fixture.options) - assertFalse(sut.enableLogs) + assertFalse(sut.logsEnabled) Timber.e("message") verify(fixture.scopes).captureEvent(any()) @@ -100,10 +100,10 @@ class SentryTimberIntegrationTest { @Test fun `Manual integration captures logs when enabled`() { - val sut = fixture.getSut(enableLogs = true) + val sut = fixture.getSut(logsEnabled = true) sut.register(fixture.scopes, fixture.options) - assertTrue(sut.enableLogs) + assertTrue(sut.logsEnabled) Timber.i("message") verify(fixture.logs).log(any(), any(), any()) @@ -111,9 +111,9 @@ class SentryTimberIntegrationTest { @Test fun `Integration evaluates Logs provider when registered`() { - var enableLogs = false - val sut = SentryTimberIntegration(Evaluator { enableLogs }) - enableLogs = true + var logsEnabled = false + val sut = SentryTimberIntegration(Evaluator { logsEnabled }) + logsEnabled = true sut.register(fixture.scopes, fixture.options) Timber.i("message") diff --git a/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberTreeTest.kt b/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberTreeTest.kt index 457ab31d33..6206bb783b 100644 --- a/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberTreeTest.kt +++ b/sentry-android-timber/src/test/java/io/sentry/android/timber/SentryTimberTreeTest.kt @@ -31,15 +31,15 @@ class SentryTimberTreeTest { minEventLevel: SentryLevel = SentryLevel.ERROR, minBreadcrumbLevel: SentryLevel = SentryLevel.INFO, minLogsLevel: SentryLogLevel = SentryLogLevel.INFO, - enableLogs: Boolean? = true, + logsEnabled: Boolean? = true, ): SentryTimberTree { logs = mock() scopes = mock() whenever(scopes.logger()).thenReturn(logs) - return if (enableLogs == null) { + return if (logsEnabled == null) { SentryTimberTree(scopes, minEventLevel, minBreadcrumbLevel, minLogsLevel) } else { - SentryTimberTree(scopes, minEventLevel, minBreadcrumbLevel, minLogsLevel, enableLogs) + SentryTimberTree(scopes, minEventLevel, minBreadcrumbLevel, minLogsLevel, logsEnabled) } } } @@ -303,7 +303,7 @@ class SentryTimberTreeTest { @Test fun `Tree defaults logs to disabled while capturing events and breadcrumbs`() { - val sut = fixture.getSut(enableLogs = null) + val sut = fixture.getSut(logsEnabled = null) sut.e("message") diff --git a/sentry-jul/api/sentry-jul.api b/sentry-jul/api/sentry-jul.api index 1fdf489597..e23503666e 100644 --- a/sentry-jul/api/sentry-jul.api +++ b/sentry-jul/api/sentry-jul.api @@ -12,13 +12,13 @@ public class io/sentry/jul/SentryHandler : java/util/logging/Handler { protected fun captureLog (Ljava/util/logging/LogRecord;)V public fun close ()V public fun flush ()V + public fun getLogsEnabled ()Z public fun getMinimumBreadcrumbLevel ()Ljava/util/logging/Level; public fun getMinimumEventLevel ()Ljava/util/logging/Level; public fun getMinimumLevel ()Ljava/util/logging/Level; - public fun isEnableLogs ()Z public fun isPrintfStyle ()Z public fun publish (Ljava/util/logging/LogRecord;)V - public fun setEnableLogs (Z)V + public fun setLogsEnabled (Z)V public fun setMinimumBreadcrumbLevel (Ljava/util/logging/Level;)V public fun setMinimumEventLevel (Ljava/util/logging/Level;)V public fun setMinimumLevel (Ljava/util/logging/Level;)V diff --git a/sentry-jul/src/main/java/io/sentry/jul/SentryHandler.java b/sentry-jul/src/main/java/io/sentry/jul/SentryHandler.java index bb1cce0444..d9dcae0f8b 100644 --- a/sentry-jul/src/main/java/io/sentry/jul/SentryHandler.java +++ b/sentry-jul/src/main/java/io/sentry/jul/SentryHandler.java @@ -53,7 +53,7 @@ public class SentryHandler extends Handler { */ private boolean printfStyle; - private boolean enableLogs; + private boolean logsEnabled; private @NotNull Level minimumBreadcrumbLevel = Level.INFO; private @NotNull Level minimumEventLevel = Level.SEVERE; @@ -114,7 +114,7 @@ public void publish(final @NotNull LogRecord record) { return; } try { - if (enableLogs && record.getLevel().intValue() >= minimumLevel.intValue()) { + if (logsEnabled && record.getLevel().intValue() >= minimumLevel.intValue()) { captureLog(record); } if (record.getLevel().intValue() >= minimumEventLevel.intValue()) { @@ -197,7 +197,7 @@ private void retrieveProperties() { final LogManager manager = LogManager.getLogManager(); final String className = SentryHandler.class.getName(); setPrintfStyle(Boolean.parseBoolean(manager.getProperty(className + ".printfStyle"))); - setEnableLogs(Boolean.parseBoolean(manager.getProperty(className + ".enableLogs"))); + setLogsEnabled(Boolean.parseBoolean(manager.getProperty(className + ".logsEnabled"))); setLevel(parseLevelOrDefault(manager.getProperty(className + ".level"))); final String minimumBreadCrumbLevel = manager.getProperty(className + ".minimumBreadcrumbLevel"); @@ -397,12 +397,12 @@ public void setPrintfStyle(final boolean printfStyle) { this.printfStyle = printfStyle; } - public void setEnableLogs(final boolean enableLogs) { - this.enableLogs = enableLogs; + public void setLogsEnabled(final boolean logsEnabled) { + this.logsEnabled = logsEnabled; } - public boolean isEnableLogs() { - return enableLogs; + public boolean getLogsEnabled() { + return logsEnabled; } public void setMinimumBreadcrumbLevel(final @Nullable Level minimumBreadcrumbLevel) { diff --git a/sentry-jul/src/test/kotlin/io/sentry/jul/SentryHandlerTest.kt b/sentry-jul/src/test/kotlin/io/sentry/jul/SentryHandlerTest.kt index 29dbaeb368..215923163e 100644 --- a/sentry-jul/src/test/kotlin/io/sentry/jul/SentryHandlerTest.kt +++ b/sentry-jul/src/test/kotlin/io/sentry/jul/SentryHandlerTest.kt @@ -41,7 +41,7 @@ class SentryHandlerTest { val transport: ITransport = mock(), contextTags: List? = null, printfStyle: Boolean? = null, - enableLogs: Boolean? = true, + logsEnabled: Boolean? = true, ) { var logger: Logger var handler: SentryHandler @@ -60,8 +60,8 @@ class SentryHandlerTest { handler.setMinimumBreadcrumbLevel(minimumBreadcrumbLevel) handler.setMinimumEventLevel(minimumEventLevel) handler.setMinimumLevel(minimumLevel) - if (enableLogs != null) { - handler.setEnableLogs(enableLogs) + if (logsEnabled != null) { + handler.setLogsEnabled(logsEnabled) } if (printfStyle == true) { handler.setPrintfStyle(printfStyle) @@ -323,12 +323,12 @@ class SentryHandlerTest { @Test fun `fetches configuration from logging dot properties`() { - fixture = Fixture(configureWithLogManager = true, enableLogs = null) + fixture = Fixture(configureWithLogManager = true, logsEnabled = null) assertEquals(Level.CONFIG, fixture.handler.minimumBreadcrumbLevel) assertEquals(Level.WARNING, fixture.handler.minimumEventLevel) assertEquals(Level.ALL, fixture.handler.level) assertTrue(fixture.handler.isPrintfStyle) - assertTrue(fixture.handler.isEnableLogs) + assertTrue(fixture.handler.logsEnabled) fixture.logger.info("this should be captured as a log") Sentry.flush(10) @@ -436,9 +436,9 @@ class SentryHandlerTest { @Test fun `does not capture logs by default`() { - fixture = Fixture(enableLogs = null) + fixture = Fixture(logsEnabled = null) - assertFalse(fixture.handler.isEnableLogs) + assertFalse(fixture.handler.logsEnabled) fixture.logger.info("this should not be captured as a log") Sentry.flush(10) @@ -447,9 +447,9 @@ class SentryHandlerTest { @Test fun `captures logs when enabled through Java`() { - fixture = Fixture(enableLogs = true) + fixture = Fixture(logsEnabled = true) - assertTrue(fixture.handler.isEnableLogs) + assertTrue(fixture.handler.logsEnabled) fixture.logger.info("this should be captured as a log") Sentry.flush(10) @@ -467,7 +467,7 @@ class SentryHandlerTest { Fixture( minimumBreadcrumbLevel = Level.INFO, minimumEventLevel = Level.SEVERE, - enableLogs = false, + logsEnabled = false, ) fixture.logger.info("this should be a breadcrumb") @@ -491,7 +491,7 @@ class SentryHandlerTest { Fixture( minimumBreadcrumbLevel = Level.INFO, minimumEventLevel = Level.SEVERE, - enableLogs = true, + logsEnabled = true, ) fixture.logger.info(null as String?) diff --git a/sentry-jul/src/test/resources/logging.properties b/sentry-jul/src/test/resources/logging.properties index 25ac65e1f6..66d5b40360 100644 --- a/sentry-jul/src/test/resources/logging.properties +++ b/sentry-jul/src/test/resources/logging.properties @@ -3,6 +3,6 @@ io.sentry.jul.SentryHandler.minimumEventLevel=WARNING io.sentry.jul.SentryHandler.minimumBreadcrumbLevel=CONFIG io.sentry.jul.SentryHandler.minimumLevel=CONFIG io.sentry.jul.SentryHandler.printfStyle=true -io.sentry.jul.SentryHandler.enableLogs=true +io.sentry.jul.SentryHandler.logsEnabled=true jul.SentryHandlerTest.handlers=java.util.logging.ConsoleHandler, io.sentry.jul.SentryHandler diff --git a/sentry-log4j2/src/main/java/io/sentry/log4j2/SentryAppender.java b/sentry-log4j2/src/main/java/io/sentry/log4j2/SentryAppender.java index 39d17a30c1..a8f1411b02 100644 --- a/sentry-log4j2/src/main/java/io/sentry/log4j2/SentryAppender.java +++ b/sentry-log4j2/src/main/java/io/sentry/log4j2/SentryAppender.java @@ -55,7 +55,7 @@ public class SentryAppender extends AbstractAppender { private @NotNull Level minimumBreadcrumbLevel = Level.INFO; private @NotNull Level minimumEventLevel = Level.ERROR; private @NotNull Level minimumLevel = Level.INFO; - private final boolean enableLogs; + private final boolean logsEnabled; private final @Nullable Boolean debug; private final @NotNull IScopes scopes; private final @Nullable List contextTags; @@ -126,7 +126,7 @@ public SentryAppender( final @Nullable Level minimumBreadcrumbLevel, final @Nullable Level minimumEventLevel, final @Nullable Level minimumLevel, - final boolean enableLogs, + final boolean logsEnabled, final @Nullable Boolean debug, final @Nullable ITransportFactory transportFactory, final @NotNull IScopes scopes, @@ -142,7 +142,7 @@ public SentryAppender( if (minimumLevel != null) { this.minimumLevel = minimumLevel; } - this.enableLogs = enableLogs; + this.logsEnabled = logsEnabled; this.debug = debug; this.transportFactory = transportFactory; this.scopes = scopes; @@ -188,7 +188,7 @@ public SentryAppender( @Nullable @PluginAttribute("minimumBreadcrumbLevel") final Level minimumBreadcrumbLevel, @Nullable @PluginAttribute("minimumEventLevel") final Level minimumEventLevel, @Nullable @PluginAttribute("minimumLevel") final Level minimumLevel, - @Nullable @PluginAttribute("enableLogs") final Boolean enableLogs, + @Nullable @PluginAttribute("logsEnabled") final Boolean logsEnabled, @Nullable @PluginAttribute("dsn") final String dsn, @Nullable @PluginAttribute("debug") final Boolean debug, @Nullable @PluginElement("filter") final Filter filter, @@ -205,7 +205,7 @@ public SentryAppender( minimumBreadcrumbLevel, minimumEventLevel, minimumLevel, - Boolean.TRUE.equals(enableLogs), + Boolean.TRUE.equals(logsEnabled), debug, null, ScopesAdapter.getInstance(), @@ -257,7 +257,7 @@ void start(final @NotNull Sentry.OptionsConfiguration optionsConf @Override public void append(final @NotNull LogEvent eventObject) { - if (enableLogs && eventObject.getLevel().isMoreSpecificThan(minimumLevel)) { + if (logsEnabled && eventObject.getLevel().isMoreSpecificThan(minimumLevel)) { captureLog(eventObject); } if (eventObject.getLevel().isMoreSpecificThan(minimumEventLevel)) { diff --git a/sentry-log4j2/src/test/kotlin/io/sentry/log4j2/SentryAppenderTest.kt b/sentry-log4j2/src/test/kotlin/io/sentry/log4j2/SentryAppenderTest.kt index fe5d3f4112..0ae42c6358 100644 --- a/sentry-log4j2/src/test/kotlin/io/sentry/log4j2/SentryAppenderTest.kt +++ b/sentry-log4j2/src/test/kotlin/io/sentry/log4j2/SentryAppenderTest.kt @@ -62,7 +62,7 @@ class SentryAppenderTest { minimumLevel: Level? = null, debug: Boolean? = null, contextTags: List? = null, - enableLogs: Boolean = true, + logsEnabled: Boolean = true, ): ExtendedLogger { if (transportFactory != null) { this.transportFactory = transportFactory @@ -77,7 +77,7 @@ class SentryAppenderTest { minimumBreadcrumbLevel, minimumEventLevel, minimumLevel, - enableLogs, + logsEnabled, debug, this.transportFactory, ScopesAdapter.getInstance(), @@ -262,7 +262,7 @@ class SentryAppenderTest { @Test fun `does not capture logs when local logs are disabled`() { - val logger = fixture.getSut(enableLogs = false) + val logger = fixture.getSut(logsEnabled = false) logger.info("this should not be captured as a log") Sentry.flush(10) @@ -272,7 +272,7 @@ class SentryAppenderTest { @Test fun `captures logs when local logs are enabled`() { - val logger = fixture.getSut(enableLogs = true) + val logger = fixture.getSut(logsEnabled = true) logger.info("this should be captured as a log") Sentry.flush(10) @@ -291,7 +291,7 @@ class SentryAppenderTest { fixture.getSut( minimumBreadcrumbLevel = Level.INFO, minimumEventLevel = Level.ERROR, - enableLogs = false, + logsEnabled = false, ) logger.info("this should be a breadcrumb") diff --git a/sentry-logback/api/sentry-logback.api b/sentry-logback/api/sentry-logback.api index 8d697f1b94..faf3e97879 100644 --- a/sentry-logback/api/sentry-logback.api +++ b/sentry-logback/api/sentry-logback.api @@ -11,12 +11,12 @@ public class io/sentry/logback/SentryAppender : ch/qos/logback/core/Unsynchroniz protected fun captureLog (Lch/qos/logback/classic/spi/ILoggingEvent;)V protected fun createBreadcrumb (Lch/qos/logback/classic/spi/ILoggingEvent;)Lio/sentry/Breadcrumb; protected fun createEvent (Lch/qos/logback/classic/spi/ILoggingEvent;)Lio/sentry/SentryEvent; + public fun getLogsEnabled ()Z public fun getMinimumBreadcrumbLevel ()Lch/qos/logback/classic/Level; public fun getMinimumEventLevel ()Lch/qos/logback/classic/Level; public fun getMinimumLevel ()Lch/qos/logback/classic/Level; - public fun isEnableLogs ()Z - public fun setEnableLogs (Z)V public fun setEncoder (Lch/qos/logback/core/encoder/Encoder;)V + public fun setLogsEnabled (Z)V public fun setMinimumBreadcrumbLevel (Lch/qos/logback/classic/Level;)V public fun setMinimumEventLevel (Lch/qos/logback/classic/Level;)V public fun setMinimumLevel (Lch/qos/logback/classic/Level;)V diff --git a/sentry-logback/src/main/java/io/sentry/logback/SentryAppender.java b/sentry-logback/src/main/java/io/sentry/logback/SentryAppender.java index 2beca04e82..1a46f9bb2a 100644 --- a/sentry-logback/src/main/java/io/sentry/logback/SentryAppender.java +++ b/sentry-logback/src/main/java/io/sentry/logback/SentryAppender.java @@ -52,7 +52,7 @@ public class SentryAppender extends UnsynchronizedAppenderBase { private @NotNull Level minimumBreadcrumbLevel = Level.INFO; private @NotNull Level minimumEventLevel = Level.ERROR; private @NotNull Level minimumLevel = Level.INFO; - private boolean enableLogs = false; + private boolean logsEnabled = false; private @Nullable Encoder encoder; static { @@ -88,7 +88,7 @@ public void start() { @Override protected void append(@NotNull ILoggingEvent eventObject) { - if (enableLogs && eventObject.getLevel().isGreaterOrEqual(minimumLevel)) { + if (logsEnabled && eventObject.getLevel().isGreaterOrEqual(minimumLevel)) { captureLog(eventObject); } if (eventObject.getLevel().isGreaterOrEqual(minimumEventLevel)) { @@ -323,12 +323,12 @@ public void setMinimumLevel(final @Nullable Level minimumLevel) { return minimumLevel; } - public void setEnableLogs(final boolean enableLogs) { - this.enableLogs = enableLogs; + public void setLogsEnabled(final boolean logsEnabled) { + this.logsEnabled = logsEnabled; } - public boolean isEnableLogs() { - return enableLogs; + public boolean getLogsEnabled() { + return logsEnabled; } @ApiStatus.Internal diff --git a/sentry-logback/src/test/kotlin/io/sentry/logback/SentryAppenderTest.kt b/sentry-logback/src/test/kotlin/io/sentry/logback/SentryAppenderTest.kt index 153fcb2f63..9ff55be8f5 100644 --- a/sentry-logback/src/test/kotlin/io/sentry/logback/SentryAppenderTest.kt +++ b/sentry-logback/src/test/kotlin/io/sentry/logback/SentryAppenderTest.kt @@ -55,7 +55,7 @@ class SentryAppenderTest { contextTags: List? = null, encoder: Encoder? = null, sendDefaultPii: Boolean = false, - enableLogs: Boolean = false, + logsEnabled: Boolean = false, options: SentryOptions = SentryOptions(), startLater: Boolean = false, ) { @@ -81,7 +81,7 @@ class SentryAppenderTest { appender.setMinimumBreadcrumbLevel(minimumBreadcrumbLevel) appender.setMinimumEventLevel(minimumEventLevel) appender.setMinimumLevel(minimumLevel) - appender.setEnableLogs(enableLogs) + appender.setLogsEnabled(logsEnabled) appender.context = loggerContext appender.setTransportFactory(transportFactory) encoder?.context = loggerContext @@ -325,9 +325,9 @@ class SentryAppenderTest { @Test fun `does not capture logs by default`() { - fixture = Fixture(enableLogs = false) + fixture = Fixture(logsEnabled = false) - assertFalse(fixture.appender.isEnableLogs) + assertFalse(fixture.appender.logsEnabled) fixture.logger.info("this should not be captured as a log") Sentry.flush(10) @@ -336,9 +336,9 @@ class SentryAppenderTest { @Test fun `captures logs when local logs are enabled`() { - fixture = Fixture(enableLogs = true) + fixture = Fixture(logsEnabled = true) - assertTrue(fixture.appender.isEnableLogs) + assertTrue(fixture.appender.logsEnabled) fixture.logger.info("this should be captured as a log") Sentry.flush(10) @@ -356,7 +356,7 @@ class SentryAppenderTest { Fixture( minimumBreadcrumbLevel = Level.INFO, minimumEventLevel = Level.ERROR, - enableLogs = false, + logsEnabled = false, ) fixture.logger.info("this should be a breadcrumb") @@ -376,7 +376,7 @@ class SentryAppenderTest { @Test fun `converts trace log level to Sentry log level`() { - fixture = Fixture(minimumLevel = Level.TRACE, enableLogs = true) + fixture = Fixture(minimumLevel = Level.TRACE, logsEnabled = true) fixture.logger.trace("testing trace level") Sentry.flush(10) @@ -387,7 +387,7 @@ class SentryAppenderTest { @Test fun `converts debug log level to Sentry log level`() { - fixture = Fixture(minimumLevel = Level.DEBUG, enableLogs = true) + fixture = Fixture(minimumLevel = Level.DEBUG, logsEnabled = true) fixture.logger.debug("testing debug level") Sentry.flush(10) @@ -398,7 +398,7 @@ class SentryAppenderTest { @Test fun `converts info log level to Sentry log level`() { - fixture = Fixture(minimumLevel = Level.INFO, enableLogs = true) + fixture = Fixture(minimumLevel = Level.INFO, logsEnabled = true) fixture.logger.info("testing info level") Sentry.flush(10) @@ -409,7 +409,7 @@ class SentryAppenderTest { @Test fun `converts warn log level to Sentry log level`() { - fixture = Fixture(minimumLevel = Level.WARN, enableLogs = true) + fixture = Fixture(minimumLevel = Level.WARN, logsEnabled = true) fixture.logger.warn("testing warn level") Sentry.flush(10) @@ -420,7 +420,7 @@ class SentryAppenderTest { @Test fun `converts error log level to Sentry log level`() { - fixture = Fixture(minimumLevel = Level.ERROR, enableLogs = true) + fixture = Fixture(minimumLevel = Level.ERROR, logsEnabled = true) fixture.logger.error("testing error level") Sentry.flush(10) @@ -431,7 +431,7 @@ class SentryAppenderTest { @Test fun `sends formatted log message if no encoder`() { - fixture = Fixture(minimumLevel = Level.TRACE, enableLogs = true) + fixture = Fixture(minimumLevel = Level.TRACE, logsEnabled = true) fixture.logger.trace("Testing {} level", "TRACE") Sentry.flush(10) @@ -453,7 +453,7 @@ class SentryAppenderTest { fun `does not send formatted log message if encoder is available but sendDefaultPii is off`() { var encoder = PatternLayoutEncoder() encoder.pattern = "encoderadded %msg" - fixture = Fixture(minimumLevel = Level.TRACE, enableLogs = true, encoder = encoder) + fixture = Fixture(minimumLevel = Level.TRACE, logsEnabled = true, encoder = encoder) fixture.logger.trace("Testing {} level", "TRACE") Sentry.flush(10) @@ -476,7 +476,7 @@ class SentryAppenderTest { fixture = Fixture( minimumLevel = Level.TRACE, - enableLogs = true, + logsEnabled = true, sendDefaultPii = true, encoder = encoder, ) @@ -503,7 +503,7 @@ class SentryAppenderTest { fixture = Fixture( minimumLevel = Level.TRACE, - enableLogs = true, + logsEnabled = true, sendDefaultPii = true, encoder = encoder, ) @@ -776,7 +776,7 @@ class SentryAppenderTest { @Test fun `does not set template on log when logging message without parameters`() { - fixture = Fixture(minimumLevel = Level.ERROR, enableLogs = true) + fixture = Fixture(minimumLevel = Level.ERROR, logsEnabled = true) fixture.logger.error("testing message without parameters") Sentry.flush(1000) @@ -793,7 +793,7 @@ class SentryAppenderTest { @Test fun `sets template on log when logging message with parameters`() { - fixture = Fixture(minimumLevel = Level.ERROR, enableLogs = true) + fixture = Fixture(minimumLevel = Level.ERROR, logsEnabled = true) fixture.logger.error("testing message {}", "param") Sentry.flush(1000) @@ -811,7 +811,7 @@ class SentryAppenderTest { @Test fun `sets template on log when logging message with parameters and number of parameters is wrong`() { - fixture = Fixture(minimumLevel = Level.ERROR, enableLogs = true) + fixture = Fixture(minimumLevel = Level.ERROR, logsEnabled = true) fixture.logger.error("testing message {} {} {}", "param1", "param2") Sentry.flush(1000) @@ -839,7 +839,7 @@ class SentryAppenderTest { fixture = Fixture( minimumLevel = Level.ERROR, - enableLogs = true, + logsEnabled = true, encoder = encoder, sendDefaultPii = false, ) @@ -865,7 +865,7 @@ class SentryAppenderTest { fixture = Fixture( minimumLevel = Level.ERROR, - enableLogs = true, + logsEnabled = true, encoder = encoder, sendDefaultPii = true, ) @@ -886,7 +886,8 @@ class SentryAppenderTest { @Test fun `sets properties from MDC as attributes on logs`() { - fixture = Fixture(minimumLevel = Level.INFO, enableLogs = true, contextTags = listOf("someTag")) + fixture = + Fixture(minimumLevel = Level.INFO, logsEnabled = true, contextTags = listOf("someTag")) MDC.put("someTag", "someValue") MDC.put("otherTag", "otherValue") fixture.logger.info("testing MDC properties in logs") diff --git a/sentry-samples/sentry-samples-jul/src/main/resources/logging.properties b/sentry-samples/sentry-samples-jul/src/main/resources/logging.properties index db3026bfb9..a3381afbc8 100644 --- a/sentry-samples/sentry-samples-jul/src/main/resources/logging.properties +++ b/sentry-samples/sentry-samples-jul/src/main/resources/logging.properties @@ -2,7 +2,7 @@ io.sentry.jul.SentryHandler.minimumEventLevel=INFO io.sentry.jul.SentryHandler.minimumBreadcrumbLevel=CONFIG io.sentry.jul.SentryHandler.minimumLevel=INFO io.sentry.jul.SentryHandler.printfStyle=true -io.sentry.jul.SentryHandler.enableLogs=true +io.sentry.jul.SentryHandler.logsEnabled=true io.sentry.jul.SentryHandler.level=FINEST java.util.logging.ConsoleHandler.level = FINE handlers=io.sentry.jul.SentryHandler diff --git a/sentry-samples/sentry-samples-log4j2/src/main/resources/log4j2.xml b/sentry-samples/sentry-samples-log4j2/src/main/resources/log4j2.xml index 028e449b06..64479e2155 100644 --- a/sentry-samples/sentry-samples-log4j2/src/main/resources/log4j2.xml +++ b/sentry-samples/sentry-samples-log4j2/src/main/resources/log4j2.xml @@ -12,7 +12,7 @@ minimumBreadcrumbLevel="DEBUG" minimumEventLevel="WARN" minimumLevel="DEBUG" - enableLogs="true" + logsEnabled="true" debug="true" contextTags="userId,requestId" /> diff --git a/sentry-samples/sentry-samples-logback/src/main/resources/logback.xml b/sentry-samples/sentry-samples-logback/src/main/resources/logback.xml index 196486cf80..bc42723a90 100644 --- a/sentry-samples/sentry-samples-logback/src/main/resources/logback.xml +++ b/sentry-samples/sentry-samples-logback/src/main/resources/logback.xml @@ -14,7 +14,7 @@ userId requestId - true + true WARN diff --git a/sentry-samples/sentry-samples-spring-boot-4-opentelemetry-noagent/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-4-opentelemetry-noagent/src/main/resources/application.properties index d8b1bcd2bb..c21e62a628 100644 --- a/sentry-samples/sentry-samples-spring-boot-4-opentelemetry-noagent/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-4-opentelemetry-noagent/src/main/resources/application.properties @@ -15,7 +15,7 @@ sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-4-opentelemetry/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-4-opentelemetry/src/main/resources/application.properties index bf302c6dd0..0867acf41d 100644 --- a/sentry-samples/sentry-samples-spring-boot-4-opentelemetry/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-4-opentelemetry/src/main/resources/application.properties @@ -15,7 +15,7 @@ sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-4-otlp/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-4-otlp/src/main/resources/application.properties index 05a35327d8..a49f6244ad 100644 --- a/sentry-samples/sentry-samples-spring-boot-4-otlp/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-4-otlp/src/main/resources/application.properties @@ -16,7 +16,7 @@ sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false sentry.in-app-includes="io.sentry.samples" -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces sentry.profile-lifecycle=TRACE diff --git a/sentry-samples/sentry-samples-spring-boot-4-webflux/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-4-webflux/src/main/resources/application.properties index 2e897e5c71..cb54e513d9 100644 --- a/sentry-samples/sentry-samples-spring-boot-4-webflux/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-4-webflux/src/main/resources/application.properties @@ -10,7 +10,7 @@ sentry.logging.minimum-breadcrumb-level=debug sentry.reactive.thread-local-accessor-enabled=true sentry.traces-sample-rate=1.0 sentry.enable-backpressure-handling=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.enable-spotlight=true sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-4/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-4/src/main/resources/application.properties index 40a5843c13..3ba334d8f3 100644 --- a/sentry-samples/sentry-samples-spring-boot-4/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-4/src/main/resources/application.properties @@ -16,7 +16,7 @@ sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false sentry.in-app-includes="io.sentry.samples" -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces sentry.profile-lifecycle=TRACE diff --git a/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry-noagent/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry-noagent/src/main/resources/application.properties index 7f5880b741..1e056aead2 100644 --- a/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry-noagent/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry-noagent/src/main/resources/application.properties @@ -15,7 +15,7 @@ sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry/src/main/resources/application.properties index 4b80755d84..22b7ced935 100644 --- a/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-jakarta-opentelemetry/src/main/resources/application.properties @@ -15,7 +15,7 @@ sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true sentry.enablePrettySerializationOutput=false -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-jakarta/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-jakarta/src/main/resources/application.properties index d71c2c433a..afd27690ff 100644 --- a/sentry-samples/sentry-samples-spring-boot-jakarta/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-jakarta/src/main/resources/application.properties @@ -16,7 +16,7 @@ sentry.enable-backpressure-handling=true sentry.enable-spotlight=false sentry.enablePrettySerializationOutput=false sentry.in-app-includes="io.sentry.samples" -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces sentry.profile-lifecycle=TRACE diff --git a/sentry-samples/sentry-samples-spring-boot-opentelemetry-noagent/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-opentelemetry-noagent/src/main/resources/application.properties index af217277c7..5b739ad404 100644 --- a/sentry-samples/sentry-samples-spring-boot-opentelemetry-noagent/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-opentelemetry-noagent/src/main/resources/application.properties @@ -14,7 +14,7 @@ sentry.debug=true sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-opentelemetry/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-opentelemetry/src/main/resources/application.properties index 404549c12d..ffdfa4fa28 100644 --- a/sentry-samples/sentry-samples-spring-boot-opentelemetry/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-opentelemetry/src/main/resources/application.properties @@ -14,7 +14,7 @@ sentry.debug=true sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-samples/sentry-samples-spring-boot-webflux-jakarta/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-webflux-jakarta/src/main/resources/application.properties index 45d04440f8..bd1df84435 100644 --- a/sentry-samples/sentry-samples-spring-boot-webflux-jakarta/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-webflux-jakarta/src/main/resources/application.properties @@ -10,7 +10,7 @@ sentry.logging.minimum-breadcrumb-level=debug sentry.reactive.thread-local-accessor-enabled=true sentry.traces-sample-rate=1.0 sentry.enable-backpressure-handling=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.enable-spotlight=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 diff --git a/sentry-samples/sentry-samples-spring-boot-webflux/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot-webflux/src/main/resources/application.properties index 5e85915a9c..d8ff798353 100644 --- a/sentry-samples/sentry-samples-spring-boot-webflux/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot-webflux/src/main/resources/application.properties @@ -12,7 +12,7 @@ spring.graphql.graphiql.enabled=true spring.graphql.websocket.path=/graphql spring.graphql.schema.printer.enabled=true sentry.enable-backpressure-handling=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.enable-spotlight=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 diff --git a/sentry-samples/sentry-samples-spring-boot/src/main/resources/application.properties b/sentry-samples/sentry-samples-spring-boot/src/main/resources/application.properties index bce0ce41f5..e51e207669 100644 --- a/sentry-samples/sentry-samples-spring-boot/src/main/resources/application.properties +++ b/sentry-samples/sentry-samples-spring-boot/src/main/resources/application.properties @@ -14,7 +14,7 @@ sentry.debug=true sentry.graphql.ignored-error-types=SOME_ERROR,ANOTHER_ERROR sentry.enable-backpressure-handling=true sentry.enable-spotlight=true -sentry.logging.enable-logs=true +sentry.logging.logs-enabled=true sentry.in-app-includes="io.sentry.samples" sentry.profile-session-sample-rate=1.0 sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces diff --git a/sentry-spring-boot-4/api/sentry-spring-boot-4.api b/sentry-spring-boot-4/api/sentry-spring-boot-4.api index 0415ffff76..f86ad82ca8 100644 --- a/sentry-spring-boot-4/api/sentry-spring-boot-4.api +++ b/sentry-spring-boot-4/api/sentry-spring-boot-4.api @@ -57,14 +57,14 @@ public class io/sentry/spring/boot4/SentryProperties$Graphql { public class io/sentry/spring/boot4/SentryProperties$Logging { public fun ()V public fun getLoggers ()Ljava/util/List; + public fun getLogsEnabled ()Z public fun getMinimumBreadcrumbLevel ()Lorg/slf4j/event/Level; public fun getMinimumEventLevel ()Lorg/slf4j/event/Level; public fun getMinimumLevel ()Lorg/slf4j/event/Level; - public fun isEnableLogs ()Z public fun isEnabled ()Z - public fun setEnableLogs (Z)V public fun setEnabled (Z)V public fun setLoggers (Ljava/util/List;)V + public fun setLogsEnabled (Z)V public fun setMinimumBreadcrumbLevel (Lorg/slf4j/event/Level;)V public fun setMinimumEventLevel (Lorg/slf4j/event/Level;)V public fun setMinimumLevel (Lorg/slf4j/event/Level;)V diff --git a/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryLogbackInitializer.java b/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryLogbackInitializer.java index c51e2cda07..b2f498e440 100644 --- a/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryLogbackInitializer.java +++ b/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryLogbackInitializer.java @@ -45,7 +45,7 @@ public void onApplicationEvent(final @NotNull ApplicationEvent event) { if (!isSentryAppenderRegistered(logger)) { final SentryAppender sentryAppender = getSentryAppender(); - sentryAppender.setEnableLogs(sentryProperties.getLogging().isEnableLogs()); + sentryAppender.setLogsEnabled(sentryProperties.getLogging().getLogsEnabled()); Optional.ofNullable(sentryProperties.getLogging().getMinimumBreadcrumbLevel()) .map(slf4jLevel -> Level.toLevel(slf4jLevel.name())) .ifPresent(sentryAppender::setMinimumBreadcrumbLevel); diff --git a/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryProperties.java b/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryProperties.java index 41358f8cc8..9bc86185ff 100644 --- a/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryProperties.java +++ b/sentry-spring-boot-4/src/main/java/io/sentry/spring/boot4/SentryProperties.java @@ -130,7 +130,7 @@ public static class Logging { private boolean enabled = true; /** Enable/Disable Sentry Logs capture from the auto-configured appender. */ - private boolean enableLogs = false; + private boolean logsEnabled = false; /** Minimum logging level for recording breadcrumbs. */ private @Nullable Level minimumBreadcrumbLevel; @@ -152,12 +152,12 @@ public void setEnabled(boolean enabled) { this.enabled = enabled; } - public boolean isEnableLogs() { - return enableLogs; + public boolean getLogsEnabled() { + return logsEnabled; } - public void setEnableLogs(boolean enableLogs) { - this.enableLogs = enableLogs; + public void setLogsEnabled(boolean logsEnabled) { + this.logsEnabled = logsEnabled; } public @Nullable Level getMinimumBreadcrumbLevel() { diff --git a/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryAutoConfigurationTest.kt b/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryAutoConfigurationTest.kt index 00ee58a5c2..cb01659756 100644 --- a/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryAutoConfigurationTest.kt +++ b/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryAutoConfigurationTest.kt @@ -222,7 +222,7 @@ class SentryAutoConfigurationTest { "integrations now require their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -242,7 +242,7 @@ class SentryAutoConfigurationTest { "their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -340,7 +340,7 @@ class SentryAutoConfigurationTest { "sentry.cron.default-timezone=America/New_York", "sentry.cron.default-failure-issue-threshold=40", "sentry.cron.default-recovery-threshold=50", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", "sentry.strict-trace-continuation=true", "sentry.org-id=12345", ) @@ -397,7 +397,7 @@ class SentryAutoConfigurationTest { assertThat(options.cron!!.defaultTimezone).isEqualTo("America/New_York") assertThat(options.cron!!.defaultFailureIssueThreshold).isEqualTo(40L) assertThat(options.cron!!.defaultRecoveryThreshold).isEqualTo(50L) - assertThat(options.logging.isEnableLogs).isTrue() + assertThat(options.logging.logsEnabled).isTrue() assertThat(options.isStrictTraceContinuation).isEqualTo(true) assertThat(options.orgId).isEqualTo("12345") } diff --git a/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryLogbackAppenderAutoConfigurationTest.kt b/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryLogbackAppenderAutoConfigurationTest.kt index be3f7863b0..90e756d59b 100644 --- a/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryLogbackAppenderAutoConfigurationTest.kt +++ b/sentry-spring-boot-4/src/test/kotlin/io/sentry/spring/boot4/SentryLogbackAppenderAutoConfigurationTest.kt @@ -112,7 +112,7 @@ class SentryLogbackAppenderAutoConfigurationTest { "sentry.logging.minimum-event-level=info", "sentry.logging.minimum-breadcrumb-level=debug", "sentry.logging.minimum-level=error", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", ) .run { val appenders = rootLogger.getAppenders(SentryAppender::class.java) @@ -122,7 +122,7 @@ class SentryLogbackAppenderAutoConfigurationTest { assertThat(sentryAppender.minimumBreadcrumbLevel).isEqualTo(Level.DEBUG) assertThat(sentryAppender.minimumEventLevel).isEqualTo(Level.INFO) assertThat(sentryAppender.minimumLevel).isEqualTo(Level.ERROR) - assertThat(sentryAppender.isEnableLogs).isTrue() + assertThat(sentryAppender.logsEnabled).isTrue() } } @@ -131,7 +131,7 @@ class SentryLogbackAppenderAutoConfigurationTest { dsnEnabledRunner.run { val sentryAppender = rootLogger.getAppenders(SentryAppender::class.java).single() - assertThat((sentryAppender as SentryAppender).isEnableLogs).isFalse() + assertThat((sentryAppender as SentryAppender).logsEnabled).isFalse() } } diff --git a/sentry-spring-boot-jakarta/api/sentry-spring-boot-jakarta.api b/sentry-spring-boot-jakarta/api/sentry-spring-boot-jakarta.api index 8ecabe5de9..7a80854d2a 100644 --- a/sentry-spring-boot-jakarta/api/sentry-spring-boot-jakarta.api +++ b/sentry-spring-boot-jakarta/api/sentry-spring-boot-jakarta.api @@ -57,14 +57,14 @@ public class io/sentry/spring/boot/jakarta/SentryProperties$Graphql { public class io/sentry/spring/boot/jakarta/SentryProperties$Logging { public fun ()V public fun getLoggers ()Ljava/util/List; + public fun getLogsEnabled ()Z public fun getMinimumBreadcrumbLevel ()Lorg/slf4j/event/Level; public fun getMinimumEventLevel ()Lorg/slf4j/event/Level; public fun getMinimumLevel ()Lorg/slf4j/event/Level; - public fun isEnableLogs ()Z public fun isEnabled ()Z - public fun setEnableLogs (Z)V public fun setEnabled (Z)V public fun setLoggers (Ljava/util/List;)V + public fun setLogsEnabled (Z)V public fun setMinimumBreadcrumbLevel (Lorg/slf4j/event/Level;)V public fun setMinimumEventLevel (Lorg/slf4j/event/Level;)V public fun setMinimumLevel (Lorg/slf4j/event/Level;)V diff --git a/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryLogbackInitializer.java b/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryLogbackInitializer.java index fa6cd7a76c..e7902c9966 100644 --- a/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryLogbackInitializer.java +++ b/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryLogbackInitializer.java @@ -45,7 +45,7 @@ public void onApplicationEvent(final @NotNull ApplicationEvent event) { if (!isSentryAppenderRegistered(logger)) { final SentryAppender sentryAppender = getSentryAppender(); - sentryAppender.setEnableLogs(sentryProperties.getLogging().isEnableLogs()); + sentryAppender.setLogsEnabled(sentryProperties.getLogging().getLogsEnabled()); Optional.ofNullable(sentryProperties.getLogging().getMinimumBreadcrumbLevel()) .map(slf4jLevel -> Level.toLevel(slf4jLevel.name())) .ifPresent(sentryAppender::setMinimumBreadcrumbLevel); diff --git a/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryProperties.java b/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryProperties.java index 223dcce869..cdfc9229a2 100644 --- a/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryProperties.java +++ b/sentry-spring-boot-jakarta/src/main/java/io/sentry/spring/boot/jakarta/SentryProperties.java @@ -130,7 +130,7 @@ public static class Logging { private boolean enabled = true; /** Enable/Disable Sentry Logs capture from the auto-configured appender. */ - private boolean enableLogs = false; + private boolean logsEnabled = false; /** Minimum logging level for recording breadcrumbs. */ private @Nullable Level minimumBreadcrumbLevel; @@ -152,12 +152,12 @@ public void setEnabled(boolean enabled) { this.enabled = enabled; } - public boolean isEnableLogs() { - return enableLogs; + public boolean getLogsEnabled() { + return logsEnabled; } - public void setEnableLogs(boolean enableLogs) { - this.enableLogs = enableLogs; + public void setLogsEnabled(boolean logsEnabled) { + this.logsEnabled = logsEnabled; } public @Nullable Level getMinimumBreadcrumbLevel() { diff --git a/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryAutoConfigurationTest.kt b/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryAutoConfigurationTest.kt index 1d8b8817bd..ae0a8fd6af 100644 --- a/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryAutoConfigurationTest.kt +++ b/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryAutoConfigurationTest.kt @@ -225,7 +225,7 @@ class SentryAutoConfigurationTest { "integrations now require their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -245,7 +245,7 @@ class SentryAutoConfigurationTest { "their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -342,7 +342,7 @@ class SentryAutoConfigurationTest { "sentry.cron.default-timezone=America/New_York", "sentry.cron.default-failure-issue-threshold=40", "sentry.cron.default-recovery-threshold=50", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", "sentry.profile-session-sample-rate=1.0", "sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces", "sentry.profile-lifecycle=TRACE", @@ -401,7 +401,7 @@ class SentryAutoConfigurationTest { assertThat(options.cron!!.defaultTimezone).isEqualTo("America/New_York") assertThat(options.cron!!.defaultFailureIssueThreshold).isEqualTo(40L) assertThat(options.cron!!.defaultRecoveryThreshold).isEqualTo(50L) - assertThat(options.logging.isEnableLogs).isTrue() + assertThat(options.logging.logsEnabled).isTrue() assertThat(options.profileSessionSampleRate).isEqualTo(1.0) assertThat(options.profilingTracesDirPath) .startsWith(File("tmp/sentry/profiling-traces").absolutePath) diff --git a/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryLogbackAppenderAutoConfigurationTest.kt b/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryLogbackAppenderAutoConfigurationTest.kt index 5dfcd5cd32..fb324265b9 100644 --- a/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryLogbackAppenderAutoConfigurationTest.kt +++ b/sentry-spring-boot-jakarta/src/test/kotlin/io/sentry/spring/boot/jakarta/SentryLogbackAppenderAutoConfigurationTest.kt @@ -112,7 +112,7 @@ class SentryLogbackAppenderAutoConfigurationTest { "sentry.logging.minimum-event-level=info", "sentry.logging.minimum-breadcrumb-level=debug", "sentry.logging.minimum-level=error", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", ) .run { val appenders = rootLogger.getAppenders(SentryAppender::class.java) @@ -122,7 +122,7 @@ class SentryLogbackAppenderAutoConfigurationTest { assertThat(sentryAppender.minimumBreadcrumbLevel).isEqualTo(Level.DEBUG) assertThat(sentryAppender.minimumEventLevel).isEqualTo(Level.INFO) assertThat(sentryAppender.minimumLevel).isEqualTo(Level.ERROR) - assertThat(sentryAppender.isEnableLogs).isTrue() + assertThat(sentryAppender.logsEnabled).isTrue() } } @@ -131,7 +131,7 @@ class SentryLogbackAppenderAutoConfigurationTest { dsnEnabledRunner.run { val sentryAppender = rootLogger.getAppenders(SentryAppender::class.java).single() - assertThat((sentryAppender as SentryAppender).isEnableLogs).isFalse() + assertThat((sentryAppender as SentryAppender).logsEnabled).isFalse() } } diff --git a/sentry-spring-boot/api/sentry-spring-boot.api b/sentry-spring-boot/api/sentry-spring-boot.api index 3a34fcc542..9aa4f3caf0 100644 --- a/sentry-spring-boot/api/sentry-spring-boot.api +++ b/sentry-spring-boot/api/sentry-spring-boot.api @@ -53,14 +53,14 @@ public class io/sentry/spring/boot/SentryProperties$Graphql { public class io/sentry/spring/boot/SentryProperties$Logging { public fun ()V public fun getLoggers ()Ljava/util/List; + public fun getLogsEnabled ()Z public fun getMinimumBreadcrumbLevel ()Lorg/slf4j/event/Level; public fun getMinimumEventLevel ()Lorg/slf4j/event/Level; public fun getMinimumLevel ()Lorg/slf4j/event/Level; - public fun isEnableLogs ()Z public fun isEnabled ()Z - public fun setEnableLogs (Z)V public fun setEnabled (Z)V public fun setLoggers (Ljava/util/List;)V + public fun setLogsEnabled (Z)V public fun setMinimumBreadcrumbLevel (Lorg/slf4j/event/Level;)V public fun setMinimumEventLevel (Lorg/slf4j/event/Level;)V public fun setMinimumLevel (Lorg/slf4j/event/Level;)V diff --git a/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryLogbackInitializer.java b/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryLogbackInitializer.java index 6997aca3fc..a064d8e129 100644 --- a/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryLogbackInitializer.java +++ b/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryLogbackInitializer.java @@ -45,7 +45,7 @@ public void onApplicationEvent(final @NotNull ApplicationEvent event) { if (!isSentryAppenderRegistered(logger)) { final SentryAppender sentryAppender = getSentryAppender(); - sentryAppender.setEnableLogs(sentryProperties.getLogging().isEnableLogs()); + sentryAppender.setLogsEnabled(sentryProperties.getLogging().getLogsEnabled()); Optional.ofNullable(sentryProperties.getLogging().getMinimumBreadcrumbLevel()) .map(slf4jLevel -> Level.toLevel(slf4jLevel.name())) .ifPresent(sentryAppender::setMinimumBreadcrumbLevel); diff --git a/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryProperties.java b/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryProperties.java index 876cb55257..f4fc3bb882 100644 --- a/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryProperties.java +++ b/sentry-spring-boot/src/main/java/io/sentry/spring/boot/SentryProperties.java @@ -104,7 +104,7 @@ public static class Logging { private boolean enabled = true; /** Enable/Disable Sentry Logs capture from the auto-configured appender. */ - private boolean enableLogs = false; + private boolean logsEnabled = false; /** Minimum logging level for recording breadcrumbs. */ private @Nullable Level minimumBreadcrumbLevel; @@ -126,12 +126,12 @@ public void setEnabled(boolean enabled) { this.enabled = enabled; } - public boolean isEnableLogs() { - return enableLogs; + public boolean getLogsEnabled() { + return logsEnabled; } - public void setEnableLogs(boolean enableLogs) { - this.enableLogs = enableLogs; + public void setLogsEnabled(boolean logsEnabled) { + this.logsEnabled = logsEnabled; } public @Nullable Level getMinimumBreadcrumbLevel() { diff --git a/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryAutoConfigurationTest.kt b/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryAutoConfigurationTest.kt index 39185e581f..d9c78311da 100644 --- a/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryAutoConfigurationTest.kt +++ b/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryAutoConfigurationTest.kt @@ -223,7 +223,7 @@ class SentryAutoConfigurationTest { "integrations now require their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -243,7 +243,7 @@ class SentryAutoConfigurationTest { "their own opt-ins.", *emptyArray(), ) - assertThat(it.getBean(SentryProperties::class.java).logging.isEnableLogs).isFalse() + assertThat(it.getBean(SentryProperties::class.java).logging.logsEnabled).isFalse() } } @@ -340,7 +340,7 @@ class SentryAutoConfigurationTest { "sentry.cron.default-timezone=America/New_York", "sentry.cron.default-failure-issue-threshold=40", "sentry.cron.default-recovery-threshold=50", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", "sentry.profile-session-sample-rate=1.0", "sentry.profiling-traces-dir-path=tmp/sentry/profiling-traces", "sentry.profile-lifecycle=TRACE", @@ -399,7 +399,7 @@ class SentryAutoConfigurationTest { assertThat(options.cron!!.defaultTimezone).isEqualTo("America/New_York") assertThat(options.cron!!.defaultFailureIssueThreshold).isEqualTo(40L) assertThat(options.cron!!.defaultRecoveryThreshold).isEqualTo(50L) - assertThat(options.logging.isEnableLogs).isTrue() + assertThat(options.logging.logsEnabled).isTrue() assertThat(options.profileSessionSampleRate).isEqualTo(1.0) assertThat(options.profilingTracesDirPath) .startsWith(File("tmp/sentry/profiling-traces").absolutePath) diff --git a/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryLogbackAppenderAutoConfigurationTest.kt b/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryLogbackAppenderAutoConfigurationTest.kt index 6117ccf3f8..f6f24bf67a 100644 --- a/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryLogbackAppenderAutoConfigurationTest.kt +++ b/sentry-spring-boot/src/test/kotlin/io/sentry/spring/boot/SentryLogbackAppenderAutoConfigurationTest.kt @@ -112,7 +112,7 @@ class SentryLogbackAppenderAutoConfigurationTest { "sentry.logging.minimum-event-level=info", "sentry.logging.minimum-breadcrumb-level=debug", "sentry.logging.minimum-level=error", - "sentry.logging.enable-logs=true", + "sentry.logging.logs-enabled=true", ) .run { val appenders = rootLogger.getAppenders(SentryAppender::class.java) @@ -122,7 +122,7 @@ class SentryLogbackAppenderAutoConfigurationTest { assertThat(sentryAppender.minimumBreadcrumbLevel).isEqualTo(Level.DEBUG) assertThat(sentryAppender.minimumEventLevel).isEqualTo(Level.INFO) assertThat(sentryAppender.minimumLevel).isEqualTo(Level.ERROR) - assertThat(sentryAppender.isEnableLogs).isTrue() + assertThat(sentryAppender.logsEnabled).isTrue() } } @@ -131,7 +131,7 @@ class SentryLogbackAppenderAutoConfigurationTest { dsnEnabledRunner.run { val sentryAppender = rootLogger.getAppenders(SentryAppender::class.java).single() - assertThat((sentryAppender as SentryAppender).isEnableLogs).isFalse() + assertThat((sentryAppender as SentryAppender).logsEnabled).isFalse() } }