[−][src]Crate sentry_core
This crate provides the core of the Sentry SDK, which can be used to log events and errors.
This crate is meant for integration authors and third party library authors that want to instrument their code for sentry.
Regular users who wish to integrate sentry into their applications should
rather use the sentry
crate, which comes with a default transport, and
a large set of integrations for various third-party libraries.
Core Concepts
This crate follows the Unified API guidelines and is centered around
the concepts of Client
, Hub
and Scope
, as well as the extension
points via the Integration
, Transport
and TransportFactory
traits.
Minimal API
By default, this crate comes with a so-called "minimal" mode. This mode will provide all the APIs needed to instrument code with sentry, and to write sentry integrations, but it will blackhole a lot of operations.
In minimal mode some types are restricted in functionality. For instance
the Client
is not available and the Hub
does not retain all API
functionality.
Features
feature = "client"
: Activates theClient
type and certainHub
functionality.feature = "test"
: Activates the [test
] module, which can be used to write integration tests. It comes with a test transport which can capture all sent events for inspection.feature = "debug-logs"
: Uses thelog
crate for debug output, instead of printing tostderr
. This feature is deprecated and will be replaced by a dedicated log callback in the future.
Modules
protocol | The current latest sentry protocol version. |
test | This provides testing functionality for building tests. |
types | This crate provides common types for working with the Sentry protocol or the Sentry server. It's used by the Sentry Relay infrastructure as well as the rust Sentry client. |
Macros
release_name | Returns the intended release for Sentry as an |
Structs
Breadcrumb | Represents a single breadcrumb. |
Client | The Sentry Client. |
ClientOptions | Configuration settings for the client. |
Future | A future that binds a |
Hub | The central object that can manages scopes and clients. |
Scope | Holds contextual data for the current scope. |
ScopeGuard | A scope guard. |
User | Represents user info. |
Enums
Level | Represents the level of severity of an event or breadcrumb. |
Traits
FutureExt | Future extensions for Sentry. |
Integration | Integration abstraction. |
IntoBreadcrumbs | A helper trait that converts self into an Iterator of Breadcrumbs. |
IntoDsn | Helper trait to convert a string into an |
Transport | The trait for transports. |
TransportFactory | A factory creating transport instances. |
Functions
add_breadcrumb | Records a breadcrumb by calling a function. |
capture_error | Captures a |
capture_event | Captures an event on the currently active client if any. |
capture_message | Captures an arbitrary message. |
configure_scope | Invokes a function that can modify the current scope. |
event_from_error | Create a sentry |
last_event_id | Returns the last event ID captured. |
parse_type_from_debug | Parse the types name from |
with_integration | Looks up an integration on the current Hub. |
with_scope | Temporarily pushes a scope for a single call optionally reconfiguring it. |