Processing

Struct Processing 

Source
pub struct Processing {
Show 15 fields pub enabled: bool, pub geoip_path: Option<PathBuf>, pub max_secs_in_future: u32, pub max_session_secs_in_past: u32, pub kafka_config: Vec<KafkaConfigParam>, pub secondary_kafka_configs: BTreeMap<String, Vec<KafkaConfigParam>>, pub topics: TopicAssignments, pub kafka_validate_topics: bool, pub redis: Option<RedisConfigs>, pub attachment_chunk_size: ByteSize, pub projectconfig_cache_prefix: String, pub max_rate_limit: Option<u32>, pub quota_cache_ratio: Option<f32>, pub quota_cache_max: Option<f32>, pub upload: UploadServiceConfig,
}
Expand description

Controls Sentry-internal event processing.

Fields§

§enabled: bool

True if the Relay should do processing. Defaults to false.

§geoip_path: Option<PathBuf>

GeoIp DB file source.

§max_secs_in_future: u32

Maximum future timestamp of ingested events.

§max_session_secs_in_past: u32

Maximum age of ingested sessions. Older sessions will be dropped.

§kafka_config: Vec<KafkaConfigParam>

Kafka producer configurations.

§secondary_kafka_configs: BTreeMap<String, Vec<KafkaConfigParam>>

Additional kafka producer configurations.

The kafka_config is the default producer configuration used for all topics. A secondary kafka config can be referenced in topics: like this:

secondary_kafka_configs:
  mycustomcluster:
    - name: 'bootstrap.servers'
      value: 'sentry_kafka_metrics:9093'

topics:
  transactions: ingest-transactions
  metrics:
    name: ingest-metrics
    config: mycustomcluster

Then metrics will be produced to an entirely different Kafka cluster.

§topics: TopicAssignments

Kafka topic names.

§kafka_validate_topics: bool

Whether to validate the supplied topics by calling Kafka’s metadata endpoints.

§redis: Option<RedisConfigs>

Redis hosts to connect to for storing state for rate limits.

§attachment_chunk_size: ByteSize

Maximum chunk size of attachments for Kafka.

§projectconfig_cache_prefix: String

Prefix to use when looking up project configs in Redis. Defaults to “relayconfig”.

§max_rate_limit: Option<u32>

Maximum rate limit to report to clients.

§quota_cache_ratio: Option<f32>

Configures the quota cache ratio between 0.0 and 1.0.

The quota cache, caches the specified ratio of remaining quota in memory to reduce the amount of synchronizations required with Redis.

The ratio is applied to the (per second) rate of the quota, not the total limit. For example a quota with limit 100 with a 10 second window is treated equally to a quota of 10 with a 1 second window.

By default quota caching is disabled.

§quota_cache_max: Option<f32>

Relative amount of the total quota limit to which quota caching is applied.

If exceeded, the rate limiter will no longer cache the quota and sync with Redis on every call instead. Lowering this value reduces the probability of incorrectly over-accepting.

Must be between 0.0 and 1.0, by default there is no limit configured.

§upload: UploadServiceConfig

Configuration for attachment uploads.

Trait Implementations§

Source§

impl Debug for Processing

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Processing

Source§

fn default() -> Self

Constructs a disabled processing configuration.

Source§

impl<'de> Deserialize<'de> for Processing

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for Processing

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> PolicyExt for T
where T: ?Sized,

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T