Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 36 additions & 4 deletions sentry/api/sentry.api
Original file line number Diff line number Diff line change
Expand Up @@ -661,6 +661,7 @@ public final class io/sentry/HubAdapter : io/sentry/IHub {
public fun isHealthy ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -732,6 +733,7 @@ public final class io/sentry/HubScopesWrapper : io/sentry/IHub {
public fun isHealthy ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -992,6 +994,7 @@ public abstract interface class io/sentry/IScopes {
public fun isNoOp ()Z
public abstract fun logger ()Lio/sentry/logger/ILoggerApi;
public abstract fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public abstract fun metrics ()Lio/sentry/metrics/IMetricsApi;
public abstract fun popScope ()V
public abstract fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public abstract fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -1565,6 +1568,7 @@ public final class io/sentry/NoOpHub : io/sentry/IHub {
public fun isNoOp ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -1741,6 +1745,7 @@ public final class io/sentry/NoOpScopes : io/sentry/IScopes {
public fun isNoOp ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -2456,6 +2461,7 @@ public final class io/sentry/Scopes : io/sentry/IScopes {
public fun isHealthy ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -2528,6 +2534,7 @@ public final class io/sentry/ScopesAdapter : io/sentry/IScopes {
public fun isHealthy ()Z
public fun logger ()Lio/sentry/logger/ILoggerApi;
public fun makeCurrent ()Lio/sentry/ISentryLifecycleToken;
public fun metrics ()Lio/sentry/metrics/IMetricsApi;
public fun popScope ()V
public fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -2648,6 +2655,7 @@ public final class io/sentry/Sentry {
public static fun isEnabled ()Z
public static fun isHealthy ()Z
public static fun logger ()Lio/sentry/logger/ILoggerApi;
public static fun metrics ()Lio/sentry/metrics/IMetricsApi;
public static fun popScope ()V
public static fun pushIsolationScope ()Lio/sentry/ISentryLifecycleToken;
public static fun pushScope ()Lio/sentry/ISentryLifecycleToken;
Expand Down Expand Up @@ -3420,6 +3428,7 @@ public class io/sentry/SentryOptions {
public fun getMaxRequestBodySize ()Lio/sentry/SentryOptions$RequestSize;
public fun getMaxSpans ()I
public fun getMaxTraceFileSize ()J
public fun getMetrics ()Lio/sentry/SentryOptions$Metrics;
public fun getModulesLoader ()Lio/sentry/internal/modules/IModulesLoader;
public fun getOnDiscard ()Lio/sentry/SentryOptions$OnDiscardCallback;
public fun getOnOversizedEvent ()Lio/sentry/SentryOptions$OnOversizedEventCallback;
Expand Down Expand Up @@ -3572,6 +3581,7 @@ public class io/sentry/SentryOptions {
public fun setMaxRequestBodySize (Lio/sentry/SentryOptions$RequestSize;)V
public fun setMaxSpans (I)V
public fun setMaxTraceFileSize (J)V
public fun setMetrics (Lio/sentry/SentryOptions$Metrics;)V
public fun setModulesLoader (Lio/sentry/internal/modules/IModulesLoader;)V
public fun setOnDiscard (Lio/sentry/SentryOptions$OnDiscardCallback;)V
public fun setOnOversizedEvent (Lio/sentry/SentryOptions$OnOversizedEventCallback;)V
Expand Down Expand Up @@ -3626,10 +3636,6 @@ public abstract interface class io/sentry/SentryOptions$BeforeBreadcrumbCallback
public abstract fun execute (Lio/sentry/Breadcrumb;Lio/sentry/Hint;)Lio/sentry/Breadcrumb;
}

public abstract interface class io/sentry/SentryOptions$BeforeEmitMetricCallback {
public abstract fun execute (Ljava/lang/String;Ljava/util/Map;)Z
}

public abstract interface class io/sentry/SentryOptions$BeforeEnvelopeCallback {
public abstract fun execute (Lio/sentry/SentryEnvelope;Lio/sentry/Hint;)V
}
Expand Down Expand Up @@ -3683,6 +3689,18 @@ public abstract interface class io/sentry/SentryOptions$Logs$BeforeSendLogCallba
public abstract fun execute (Lio/sentry/SentryLogEvent;)Lio/sentry/SentryLogEvent;
}

public final class io/sentry/SentryOptions$Metrics {
public fun <init> ()V
public fun getBeforeSend ()Lio/sentry/SentryOptions$Metrics$BeforeSendMetricCallback;
public fun isEnabled ()Z
public fun setBeforeSend (Lio/sentry/SentryOptions$Metrics$BeforeSendMetricCallback;)V
public fun setEnabled (Z)V
}

public abstract interface class io/sentry/SentryOptions$Metrics$BeforeSendMetricCallback {
public abstract fun execute (Ljava/lang/Object;)Ljava/lang/Object;
}

public abstract interface class io/sentry/SentryOptions$OnDiscardCallback {
public abstract fun execute (Lio/sentry/clientreport/DiscardReason;Lio/sentry/DataCategory;Ljava/lang/Long;)V
}
Expand Down Expand Up @@ -5113,6 +5131,20 @@ public final class io/sentry/logger/SentryLogParameters {
public fun setTimestamp (Lio/sentry/SentryDate;)V
}

public abstract interface class io/sentry/metrics/IMetricsApi {
public abstract fun count (Ljava/lang/String;)V
}

public final class io/sentry/metrics/MetricsApi : io/sentry/metrics/IMetricsApi {
public fun <init> (Lio/sentry/Scopes;)V
public fun count (Ljava/lang/String;)V
}

public final class io/sentry/metrics/NoOpMetricsApi : io/sentry/metrics/IMetricsApi {
public fun count (Ljava/lang/String;)V
public static fun getInstance ()Lio/sentry/metrics/NoOpMetricsApi;
}

public final class io/sentry/opentelemetry/OpenTelemetryUtil {
public fun <init> ()V
public static fun applyIgnoredSpanOrigins (Lio/sentry/SentryOptions;)V
Expand Down
6 changes: 6 additions & 0 deletions sentry/src/main/java/io/sentry/HubAdapter.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.sentry;

import io.sentry.logger.ILoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -389,6 +390,11 @@ public void reportFullyDisplayed() {
return Sentry.getCurrentScopes().logger();
}

@Override
public @NotNull IMetricsApi metrics() {
return Sentry.getCurrentScopes().metrics();
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {
Sentry.addFeatureFlag(flag, result);
Expand Down
6 changes: 6 additions & 0 deletions sentry/src/main/java/io/sentry/HubScopesWrapper.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.sentry;

import io.sentry.logger.ILoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -374,6 +375,11 @@ public void reportFullyDisplayed() {
return scopes.logger();
}

@Override
public @NotNull IMetricsApi metrics() {
return scopes.metrics();
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {
scopes.addFeatureFlag(flag, result);
Expand Down
4 changes: 4 additions & 0 deletions sentry/src/main/java/io/sentry/IScopes.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.sentry;

import io.sentry.logger.ILoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -744,5 +745,8 @@ default boolean isNoOp() {
@NotNull
ILoggerApi logger();

@NotNull
IMetricsApi metrics();

void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result);
}
7 changes: 7 additions & 0 deletions sentry/src/main/java/io/sentry/NoOpHub.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import io.sentry.logger.ILoggerApi;
import io.sentry.logger.NoOpLoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.metrics.NoOpMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -331,6 +333,11 @@ public boolean isNoOp() {
return NoOpLoggerApi.getInstance();
}

@Override
public @NotNull IMetricsApi metrics() {
return NoOpMetricsApi.getInstance();
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {}
}
7 changes: 7 additions & 0 deletions sentry/src/main/java/io/sentry/NoOpScopes.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import io.sentry.logger.ILoggerApi;
import io.sentry.logger.NoOpLoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.metrics.NoOpMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -329,6 +331,11 @@ public boolean isNoOp() {
return NoOpLoggerApi.getInstance();
}

@Override
public @NotNull IMetricsApi metrics() {
return NoOpMetricsApi.getInstance();
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {}
}
9 changes: 9 additions & 0 deletions sentry/src/main/java/io/sentry/Scopes.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
import io.sentry.hints.SessionStartHint;
import io.sentry.logger.ILoggerApi;
import io.sentry.logger.LoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.metrics.MetricsApi;
import io.sentry.protocol.*;
import io.sentry.transport.RateLimiter;
import io.sentry.util.HintUtils;
Expand All @@ -31,6 +33,7 @@ public final class Scopes implements IScopes {

private final @NotNull CombinedScopeView combinedScope;
private final @NotNull ILoggerApi logger;
private final @NotNull IMetricsApi metrics;

public Scopes(
final @NotNull IScope scope,
Expand All @@ -57,6 +60,7 @@ private Scopes(
validateOptions(options);
this.compositePerformanceCollector = options.getCompositePerformanceCollector();
this.logger = new LoggerApi(this);
this.metrics = new MetricsApi(this);
}

public @NotNull String getCreator() {
Expand Down Expand Up @@ -1220,6 +1224,11 @@ public void reportFullyDisplayed() {
return logger;
}

@Override
public @NotNull IMetricsApi metrics() {
return metrics;
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {
combinedScope.addFeatureFlag(flag, result);
Expand Down
6 changes: 6 additions & 0 deletions sentry/src/main/java/io/sentry/ScopesAdapter.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.sentry;

import io.sentry.logger.ILoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
import io.sentry.protocol.SentryTransaction;
Expand Down Expand Up @@ -386,6 +387,11 @@ public void reportFullyDisplayed() {
return Sentry.getCurrentScopes().logger();
}

@Override
public @NotNull IMetricsApi metrics() {
return Sentry.getCurrentScopes().metrics();
}

@Override
public void addFeatureFlag(final @Nullable String flag, final @Nullable Boolean result) {
Sentry.addFeatureFlag(flag, result);
Expand Down
6 changes: 6 additions & 0 deletions sentry/src/main/java/io/sentry/Sentry.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import io.sentry.internal.modules.NoOpModulesLoader;
import io.sentry.internal.modules.ResourcesModulesLoader;
import io.sentry.logger.ILoggerApi;
import io.sentry.metrics.IMetricsApi;
import io.sentry.opentelemetry.OpenTelemetryUtil;
import io.sentry.protocol.Feedback;
import io.sentry.protocol.SentryId;
Expand Down Expand Up @@ -1344,6 +1345,11 @@ public static IDistributionApi distribution() {
return getCurrentScopes().getScope().getOptions().getDistributionController();
}

@NotNull
public static IMetricsApi metrics() {
return getCurrentScopes().metrics();
}

public static void showUserFeedbackDialog() {
showUserFeedbackDialog(null);
}
Expand Down
Loading
Loading