Struct ClientOptions
pub struct ClientOptions {Show 26 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<dyn Fn(&TransactionContext) -> f32 + Sync + Send>>,
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>> + Sync + Send>>,
pub before_breadcrumb: Option<Arc<dyn Fn(Breadcrumb) -> Option<Breadcrumb> + Sync + Send>>,
pub before_send_log: Option<Arc<dyn Fn(Log) -> Option<Log> + Sync + Send>>,
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 max_request_body_size: MaxRequestBodySize,
pub enable_logs: bool,
pub accept_invalid_certs: 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.
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<dyn Fn(&TransactionContext) -> f32 + Sync + Send>>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.
Maximum number of breadcrumbs. (defaults to 100)
attach_stacktrace: boolAttaches stacktraces to messages.
send_default_pii: boolIf turned on, some information that can be considered PII is captured, such as potentially sensitive HTTP headers and user IP address in HTTP server integrations.
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>> + Sync + Send>>Callback that is executed before event sending.
Callback that is executed for each Breadcrumb being added.
before_send_log: Option<Arc<dyn Fn(Log) -> Option<Log> + Sync + Send>>Callback that is executed for each Log 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.
max_request_body_size: MaxRequestBodySizeControls the maximum size of an HTTP request body that can be captured when using HTTP
server integrations. Needs send_default_pii to be enabled to have any effect.
enable_logs: boolDetermines whether captured structured logs should be sent to Sentry (defaults to false).
accept_invalid_certs: boolDisable SSL verification.
§Warning
This introduces significant vulnerabilities, and should only be used as a last resort.
user_agent: Cow<'static, str>The user agent that should be reported.
Implementations§
§impl ClientOptions
impl ClientOptions
pub fn new() -> ClientOptions
pub fn new() -> ClientOptions
Creates new Options.
pub fn add_integration<I>(self, integration: I) -> ClientOptionswhere
I: Integration,
pub fn add_integration<I>(self, integration: I) -> ClientOptionswhere
I: Integration,
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§
§impl Clone for ClientOptions
impl Clone for ClientOptions
§fn clone(&self) -> ClientOptions
fn clone(&self) -> ClientOptions
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more