Struct sentry_core::ClientOptions
source · pub struct ClientOptions {Show 29 fields
pub dsn: Option<Dsn>,
pub debug: bool,
pub release: Option<Cow<'static, str>>,
pub environment: Option<Cow<'static, str>>,
pub sample_rate: f32,
pub traces_sample_rate: f32,
pub traces_sampler: Option<Arc<TracesSampler>>,
pub enable_profiling: bool,
pub profiles_sample_rate: f32,
pub max_breadcrumbs: usize,
pub attach_stacktrace: bool,
pub send_default_pii: bool,
pub server_name: Option<Cow<'static, str>>,
pub in_app_include: Vec<&'static str>,
pub in_app_exclude: Vec<&'static str>,
pub integrations: Vec<Arc<dyn Integration>>,
pub default_integrations: bool,
pub before_send: Option<Arc<dyn Fn(Event<'static>) -> Option<Event<'static>> + Send + Sync>>,
pub before_breadcrumb: Option<Arc<dyn Fn(Breadcrumb) -> Option<Breadcrumb> + Send + Sync>>,
pub transport: Option<Arc<dyn TransportFactory>>,
pub http_proxy: Option<Cow<'static, str>>,
pub https_proxy: Option<Cow<'static, str>>,
pub shutdown_timeout: Duration,
pub accept_invalid_certs: bool,
pub auto_session_tracking: bool,
pub session_mode: SessionMode,
pub extra_border_frames: Vec<&'static str>,
pub trim_backtraces: bool,
pub user_agent: Cow<'static, str>,
}Expand description
Configuration settings for the client.
These options are explained in more detail in the general sentry documentation.
Examples
let _options = sentry::ClientOptions {
debug: true,
..Default::default()
};Fields
dsn: Option<Dsn>The DSN to use. If not set the client is effectively disabled.
debug: boolEnables debug mode.
In debug mode debug information is printed to stderr to help you understand what
sentry is doing. When the log feature is enabled, Sentry will instead
log to the sentry logger independently of this flag with the Debug level.
release: Option<Cow<'static, str>>The release to be sent with events.
environment: Option<Cow<'static, str>>The environment to be sent with events.
Defaults to either "development" or "production" depending on the
debug_assertions cfg-attribute.
sample_rate: f32The sample rate for event submission. (0.0 - 1.0, defaults to 1.0)
traces_sample_rate: f32The sample rate for tracing transactions. (0.0 - 1.0, defaults to 0.0)
traces_sampler: Option<Arc<TracesSampler>>If given, called with a SamplingContext for each transaction to determine the sampling rate.
Return a sample rate between 0.0 and 1.0 for the transaction in question.
Takes priority over the sample_rate.
enable_profiling: boolEnables profiling
profiles_sample_rate: f32The sample rate for profiling a transactions. (0.0 - 1.0, defaults to 0.0)
This represents the probability that a sampled transaction will send a profile to Sentry
Maximum number of breadcrumbs. (defaults to 100)
attach_stacktrace: boolAttaches stacktraces to messages.
send_default_pii: boolIf turned on some default PII informat is attached.
server_name: Option<Cow<'static, str>>The server name to be reported.
in_app_include: Vec<&'static str>Module prefixes that are always considered “in_app”.
in_app_exclude: Vec<&'static str>Module prefixes that are never “in_app”.
integrations: Vec<Arc<dyn Integration>>A list of integrations to enable.
See sentry::integrations for
how to use this to enable extra integrations.
default_integrations: boolWhether to add default integrations.
See sentry::integrations for
details how this works and interacts with manually installed integrations.
before_send: Option<Arc<dyn Fn(Event<'static>) -> Option<Event<'static>> + Send + Sync>>Callback that is executed before event sending.
Callback that is executed for each Breadcrumb being added.
transport: Option<Arc<dyn TransportFactory>>The transport to use.
This is typically either a boxed function taking the client options by
reference and returning a Transport, a boxed Arc<Transport> or
alternatively the DefaultTransportFactory.
http_proxy: Option<Cow<'static, str>>An optional HTTP proxy to use.
This will default to the http_proxy environment variable.
https_proxy: Option<Cow<'static, str>>An optional HTTPS proxy to use.
This will default to the HTTPS_PROXY environment variable
or http_proxy if that one exists.
shutdown_timeout: DurationThe timeout on client drop for draining events on shutdown.
accept_invalid_certs: boolDisable SSL verification.
Warning
This introduces significant vulnerabilities, and should only be used as a last resort.
auto_session_tracking: boolEnable Release Health Session tracking.
When automatic session tracking is enabled, a new “user-mode” session
is started at the time of sentry::init, and will persist for the
application lifetime.
session_mode: SessionModeDetermine how Sessions are being tracked.
extra_border_frames: Vec<&'static str>Border frames which indicate a border from a backtrace to useless internals. Some are automatically included.
trim_backtraces: boolAutomatically trim backtraces of junk before sending. (defaults to true)
user_agent: Cow<'static, str>The user agent that should be reported.
Implementations
sourceimpl ClientOptions
impl ClientOptions
sourcepub fn add_integration<I: Integration>(self, integration: I) -> Self
pub fn add_integration<I: Integration>(self, integration: I) -> Self
Adds a configured integration to the options.
Examples
struct MyIntegration;
impl sentry::Integration for MyIntegration {}
let options = sentry::ClientOptions::new().add_integration(MyIntegration);
assert_eq!(options.integrations.len(), 1);Trait Implementations
sourceimpl Clone for ClientOptions
impl Clone for ClientOptions
sourcefn clone(&self) -> ClientOptions
fn clone(&self) -> ClientOptions
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more