Crate relay_dynamic_config
source ·Expand description
Protocol for dynamic configuration passed down to Relay from Sentry.
In contrast to static configuration files, parts of Relay’s configuration is generated by Sentry and polled by Relay in regular intervals. Dynamic configuration includes (but is not limited to)
- rate limits and quotas,
- feature flags,
- settings that the user configured in Sentry’s UI.
§Project Configuration
So far, the only scope of dynamic configuration is per relay_auth::PublicKey
a.k.a. DSN.
The schema for this configuration is defined in ProjectConfig
.
§Example Config
{
"organizationId": 1,
"config": {
"excludeFields": [],
"filterSettings": {},
"scrubIpAddresses": False,
"sensitiveFields": [],
"scrubDefaults": True,
"scrubData": True,
"groupingConfig": {
"id": "legacy:2019-03-12",
"enhancements": "eJybzDhxY05qemJypZWRgaGlroGxrqHRBABbEwcC",
},
"blacklistedIps": ["127.43.33.22"],
"trustedRelays": [],
},
}
§Global configuration
This is the configuration for all Relays, independently from what per-project configuration is, and is defined in GlobalConfig
.
§Example Config
{
"measurements": {
"builtinMeasurements": [
{
"name": "app_start_cold",
"unit": "millisecond"
}
],
"maxCustomMeasurements": 1
}
}
Structs§
- Configuration container to control
BucketEncoding
per namespace. - Configuration for extracting custom measurements from transaction payloads.
- A set of
Feature
s. - A dynamic configuration for all Relays passed down from Sentry.
- Subset of
ProjectConfig
that is passed to external Relays. - Configuration for generic extraction of metrics from all data categories.
- Specification for a metric to extract from some data.
- Configuration for metrics filtering.
- All options passed down from Sentry to Relay.
- Dynamic, per-DSN configuration passed down from Sentry.
- Configuration for metric extraction from sessions.
- Builder for
TagSpec
. - Configuration for removing tags matching the
tag
pattern on metrics whose name matches thename
pattern. - Mapping between extracted metrics and additional tags to extract.
- Configuration for a tag to add to a metric.
- Intermediate result of the tag spec builder.
- Rule defining when a target tag should be set on a metric.
- Configuration for extracting metrics from transaction payloads.
Enums§
- Deprecated. Defines whether URL transactions should be considered low cardinality.
- All supported metric bucket encodings.
- Kill switch for controlling the cardinality limiter.
- Wraps a serialization / deserialization result to prevent error from bubbling up.
- Features exposed by project config.
- Specifies how to obtain the value of a tag in
TagSpec
.
Functions§
- Converts the given tagging rules from
conditional_tagging
to the newer metric extraction config. - Normalizes the given value by deserializing it and serializing it back.
- Validate that the given JSON resolves to a valid instance of type
S
.