Package io.sentry
Class HubAdapter
- java.lang.Object
-
- io.sentry.HubAdapter
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addBreadcrumb(@NotNull Breadcrumb breadcrumb, @Nullable java.lang.Object hint)
Adds a breadcrumb to the current Scopevoid
bindClient(@NotNull ISentryClient client)
Binds a different client to the hub@NotNull SentryId
captureEnvelope(@NotNull SentryEnvelope envelope, @Nullable java.lang.Object hint)
Captures an envelope.@NotNull SentryId
captureEvent(@NotNull SentryEvent event, @Nullable java.lang.Object hint)
Captures the event.@NotNull SentryId
captureException(@NotNull java.lang.Throwable throwable, @Nullable java.lang.Object hint)
Captures the exception.@NotNull SentryId
captureMessage(@NotNull java.lang.String message, @NotNull SentryLevel level)
Captures the message.@NotNull SentryId
captureTransaction(@NotNull SentryTransaction transaction, @Nullable TraceState traceState, @Nullable java.lang.Object hint)
Captures the transaction and enqueues it for sending to Sentry server.void
captureUserFeedback(@NotNull UserFeedback userFeedback)
Captures a manually created user feedback and sends it to Sentry.void
clearBreadcrumbs()
Deletes current breadcrumbs from the current scope.@NotNull IHub
clone()
Clones the Hubvoid
close()
Flushes out the queue for up to timeout seconds and disable the Hub.void
configureScope(@NotNull ScopeCallback callback)
Configures the scope through the callback.void
endSession()
Ends the current sessionvoid
flush(long timeoutMillis)
Flushes events queued up, but keeps the Hub enabled.static HubAdapter
getInstance()
@NotNull SentryId
getLastEventId()
Last event id recorded in the current scope@NotNull SentryOptions
getOptions()
Gets theSentryOptions
attached to current scope.@Nullable ISpan
getSpan()
Gets the current active transaction or span.boolean
isEnabled()
Check if the Hub is enabled/active.void
popScope()
Removes the first scopevoid
pushScope()
Pushes a new scope while inheriting the current scope's data.void
removeExtra(@NotNull java.lang.String key)
Removes the extra key to an arbitrary value to the current Scopevoid
removeTag(@NotNull java.lang.String key)
Removes the tag to a string value to the current Scopevoid
setExtra(@NotNull java.lang.String key, @NotNull java.lang.String value)
Sets the extra key to an arbitrary value to the current Scope, overwriting a potential previous valuevoid
setFingerprint(@NotNull java.util.List<java.lang.String> fingerprint)
Sets the fingerprint to group specific events together to the current Scope.void
setLevel(@Nullable SentryLevel level)
Sets the level of all events sent within current Scopevoid
setSpanContext(@NotNull java.lang.Throwable throwable, @NotNull ISpan span, @NotNull java.lang.String transactionName)
AssociatesISpan
and the transaction name with theThrowable
.void
setTag(@NotNull java.lang.String key, @NotNull java.lang.String value)
Sets the tag to a string value to the current Scope, overwriting a potential previous valuevoid
setTransaction(@Nullable java.lang.String transaction)
Sets the name of the current transaction to the current Scope.void
setUser(@Nullable User user)
Shallow merges user configuration (email, username, etc) to the current Scope.void
startSession()
Starts a new session.@NotNull ITransaction
startTransaction(@NotNull TransactionContext transactionContexts)
Creates a Transaction and returns the instance.@NotNull ITransaction
startTransaction(@NotNull TransactionContext transactionContexts, @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope)
Creates a Transaction and returns the instance.@NotNull ITransaction
startTransaction(@NotNull TransactionContext transactionContexts, @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope, @Nullable java.util.Date startTimestamp)
@NotNull ITransaction
startTransaction(@NotNull TransactionContext transactionContexts, @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope, @Nullable java.util.Date startTimestamp, boolean waitForChildren, @Nullable TransactionFinishedCallback transactionFinishedCallback)
@Nullable SentryTraceHeader
traceHeaders()
Returns trace header of active transaction ornull
if no transaction is active.void
withScope(@NotNull ScopeCallback callback)
Runs the callback with a new scope which gets dropped at the end-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.sentry.IHub
addBreadcrumb, addBreadcrumb, addBreadcrumb, captureEnvelope, captureEvent, captureException, captureMessage, captureTransaction, captureTransaction, startTransaction, startTransaction, startTransaction, startTransaction, startTransaction, startTransaction, startTransaction
-
-
-
-
Method Detail
-
getInstance
public static HubAdapter getInstance()
-
isEnabled
public boolean isEnabled()
Description copied from interface:IHub
Check if the Hub is enabled/active.
-
captureEvent
@NotNull public @NotNull SentryId captureEvent(@NotNull @NotNull SentryEvent event, @Nullable @Nullable java.lang.Object hint)
Description copied from interface:IHub
Captures the event.- Specified by:
captureEvent
in interfaceIHub
- Parameters:
event
- the eventhint
- SDK specific but provides high level information about the origin of the event- Returns:
- The Id (SentryId object) of the event
-
captureMessage
@NotNull public @NotNull SentryId captureMessage(@NotNull @NotNull java.lang.String message, @NotNull @NotNull SentryLevel level)
Description copied from interface:IHub
Captures the message.- Specified by:
captureMessage
in interfaceIHub
- Parameters:
message
- The message to send.level
- The message level.- Returns:
- The Id (SentryId object) of the event
-
captureEnvelope
@Internal @NotNull public @NotNull SentryId captureEnvelope(@NotNull @NotNull SentryEnvelope envelope, @Nullable @Nullable java.lang.Object hint)
Description copied from interface:IHub
Captures an envelope.- Specified by:
captureEnvelope
in interfaceIHub
- Parameters:
envelope
- the SentryEnvelope to send.hint
- SDK specific but provides high level information about the origin of the event- Returns:
- The Id (SentryId object) of the event
-
captureException
@NotNull public @NotNull SentryId captureException(@NotNull @NotNull java.lang.Throwable throwable, @Nullable @Nullable java.lang.Object hint)
Description copied from interface:IHub
Captures the exception.- Specified by:
captureException
in interfaceIHub
- Parameters:
throwable
- The exception.hint
- SDK specific but provides high level information about the origin of the event- Returns:
- The Id (SentryId object) of the event
-
captureUserFeedback
public void captureUserFeedback(@NotNull @NotNull UserFeedback userFeedback)
Description copied from interface:IHub
Captures a manually created user feedback and sends it to Sentry.- Specified by:
captureUserFeedback
in interfaceIHub
- Parameters:
userFeedback
- The user feedback to send to Sentry.
-
startSession
public void startSession()
Description copied from interface:IHub
Starts a new session. If there's a running session, it ends it before starting the new one.- Specified by:
startSession
in interfaceIHub
-
endSession
public void endSession()
Description copied from interface:IHub
Ends the current session- Specified by:
endSession
in interfaceIHub
-
close
public void close()
Description copied from interface:IHub
Flushes out the queue for up to timeout seconds and disable the Hub.
-
addBreadcrumb
public void addBreadcrumb(@NotNull @NotNull Breadcrumb breadcrumb, @Nullable @Nullable java.lang.Object hint)
Description copied from interface:IHub
Adds a breadcrumb to the current Scope- Specified by:
addBreadcrumb
in interfaceIHub
- Parameters:
breadcrumb
- the breadcrumbhint
- SDK specific but provides high level information about the origin of the event
-
setLevel
public void setLevel(@Nullable @Nullable SentryLevel level)
Description copied from interface:IHub
Sets the level of all events sent within current Scope
-
setTransaction
public void setTransaction(@Nullable @Nullable java.lang.String transaction)
Description copied from interface:IHub
Sets the name of the current transaction to the current Scope.- Specified by:
setTransaction
in interfaceIHub
- Parameters:
transaction
- the transaction
-
setUser
public void setUser(@Nullable @Nullable User user)
Description copied from interface:IHub
Shallow merges user configuration (email, username, etc) to the current Scope.
-
setFingerprint
public void setFingerprint(@NotNull @NotNull java.util.List<java.lang.String> fingerprint)
Description copied from interface:IHub
Sets the fingerprint to group specific events together to the current Scope.- Specified by:
setFingerprint
in interfaceIHub
- Parameters:
fingerprint
- the fingerprints
-
clearBreadcrumbs
public void clearBreadcrumbs()
Description copied from interface:IHub
Deletes current breadcrumbs from the current scope.- Specified by:
clearBreadcrumbs
in interfaceIHub
-
setTag
public void setTag(@NotNull @NotNull java.lang.String key, @NotNull @NotNull java.lang.String value)
Description copied from interface:IHub
Sets the tag to a string value to the current Scope, overwriting a potential previous value
-
removeTag
public void removeTag(@NotNull @NotNull java.lang.String key)
Description copied from interface:IHub
Removes the tag to a string value to the current Scope
-
setExtra
public void setExtra(@NotNull @NotNull java.lang.String key, @NotNull @NotNull java.lang.String value)
Description copied from interface:IHub
Sets the extra key to an arbitrary value to the current Scope, overwriting a potential previous value
-
removeExtra
public void removeExtra(@NotNull @NotNull java.lang.String key)
Description copied from interface:IHub
Removes the extra key to an arbitrary value to the current Scope- Specified by:
removeExtra
in interfaceIHub
- Parameters:
key
- the key
-
getLastEventId
@NotNull public @NotNull SentryId getLastEventId()
Description copied from interface:IHub
Last event id recorded in the current scope- Specified by:
getLastEventId
in interfaceIHub
- Returns:
- last SentryId
-
pushScope
public void pushScope()
Description copied from interface:IHub
Pushes a new scope while inheriting the current scope's data.
-
popScope
public void popScope()
Description copied from interface:IHub
Removes the first scope
-
withScope
public void withScope(@NotNull @NotNull ScopeCallback callback)
Description copied from interface:IHub
Runs the callback with a new scope which gets dropped at the end
-
configureScope
public void configureScope(@NotNull @NotNull ScopeCallback callback)
Description copied from interface:IHub
Configures the scope through the callback.- Specified by:
configureScope
in interfaceIHub
- Parameters:
callback
- The configure scope callback.
-
bindClient
public void bindClient(@NotNull @NotNull ISentryClient client)
Description copied from interface:IHub
Binds a different client to the hub- Specified by:
bindClient
in interfaceIHub
- Parameters:
client
- the client.
-
flush
public void flush(long timeoutMillis)
Description copied from interface:IHub
Flushes events queued up, but keeps the Hub enabled. Not implemented yet.
-
captureTransaction
@NotNull public @NotNull SentryId captureTransaction(@NotNull @NotNull SentryTransaction transaction, @Nullable @Nullable TraceState traceState, @Nullable @Nullable java.lang.Object hint)
Description copied from interface:IHub
Captures the transaction and enqueues it for sending to Sentry server.- Specified by:
captureTransaction
in interfaceIHub
- Parameters:
transaction
- the transactiontraceState
- the trace statehint
- the hint- Returns:
- transaction's id
-
startTransaction
@NotNull public @NotNull ITransaction startTransaction(@NotNull @NotNull TransactionContext transactionContexts)
Description copied from interface:IHub
Creates a Transaction and returns the instance.- Specified by:
startTransaction
in interfaceIHub
- Parameters:
transactionContexts
- the transaction contexts- Returns:
- created transaction
-
startTransaction
@NotNull public @NotNull ITransaction startTransaction(@NotNull @NotNull TransactionContext transactionContexts, @Nullable @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope)
Description copied from interface:IHub
Creates a Transaction and returns the instance. Based on the passed transaction and sampling contexts the decision if transaction is sampled will be taken byTracesSampler
.- Specified by:
startTransaction
in interfaceIHub
- Parameters:
transactionContexts
- the transaction contextcustomSamplingContext
- the sampling contextbindToScope
- if transaction should be bound to scope- Returns:
- created transaction.
-
startTransaction
@Internal @NotNull public @NotNull ITransaction startTransaction(@NotNull @NotNull TransactionContext transactionContexts, @Nullable @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope, @Nullable @Nullable java.util.Date startTimestamp)
- Specified by:
startTransaction
in interfaceIHub
-
startTransaction
@Internal @NotNull public @NotNull ITransaction startTransaction(@NotNull @NotNull TransactionContext transactionContexts, @Nullable @Nullable CustomSamplingContext customSamplingContext, boolean bindToScope, @Nullable @Nullable java.util.Date startTimestamp, boolean waitForChildren, @Nullable @Nullable TransactionFinishedCallback transactionFinishedCallback)
- Specified by:
startTransaction
in interfaceIHub
-
traceHeaders
@Nullable public @Nullable SentryTraceHeader traceHeaders()
Description copied from interface:IHub
Returns trace header of active transaction ornull
if no transaction is active.- Specified by:
traceHeaders
in interfaceIHub
- Returns:
- trace header or null
-
setSpanContext
public void setSpanContext(@NotNull @NotNull java.lang.Throwable throwable, @NotNull @NotNull ISpan span, @NotNull @NotNull java.lang.String transactionName)
Description copied from interface:IHub
AssociatesISpan
and the transaction name with theThrowable
. Used to determine in which trace the exception has been thrown in framework integrations.- Specified by:
setSpanContext
in interfaceIHub
- Parameters:
throwable
- the throwablespan
- the span contexttransactionName
- the transaction name
-
getSpan
@Nullable public @Nullable ISpan getSpan()
Description copied from interface:IHub
Gets the current active transaction or span.
-
getOptions
@NotNull public @NotNull SentryOptions getOptions()
Description copied from interface:IHub
Gets theSentryOptions
attached to current scope.- Specified by:
getOptions
in interfaceIHub
- Returns:
- the options attached to current scope.
-
-