Skip to content

Releases: getsentry/relay

24.3.0

15 Mar 17:46
Compare
Choose a tag to compare

Features:

  • Extend GPU context with data for Unreal Engine crash reports. (#3144)
  • Implement base64 and zstd metric bucket encodings. (#3218)
  • Implement COGS measurements into Relay. (#3157)
  • Parametrize transaction in dynamic sampling context. (#3141)
  • Adds ReplayVideo envelope-item type. (#3105)
  • Parse & scrub span description for supabase. (#3153, #3156)
  • Introduce generic filters in global configs. (#3161)
  • Individual cardinality limits can now be set into passive mode and not be enforced. (#3199)
  • Allow enabling SSL for Kafka. (#3232)
  • Enable HTTP compression for all APIs. (#3233)
  • Add process.load span to ingested mobile span ops. (#3227)
  • Track metric bucket metadata for Relay internal usage. (#3254)
  • Enforce rate limits for standalone spans. (#3238)
  • Extract span.status_code tag for HTTP spans. (#3245)

Bug Fixes:

  • Forward metrics in proxy mode. (#3106)
  • Do not PII-scrub code locations by default. (#3116)
  • Accept transactions with unfinished spans. (#3162)
  • Don't run validation on renormalization, and don't normalize spans from librelay calls. (#3214)
  • Set segment_id as optional (#3275)

Internal:

  • Add quotas to global config. (#3086)
  • Adds support for dynamic metric bucket encoding. (#3137)
  • Use statsdproxy to pre-aggregate metrics. (#2425)
  • Add SDK information to spans. (#3178)
  • Drop replay envelopes if any item fails. (#3201)
  • Filter null values from metrics summary tags. (#3204)
  • Emit a usage metric for every span seen. (#3209)
  • Add namespace for profile metrics. (#3229)
  • Add segment_id to the profile. (#3265)

24.2.0

15 Feb 21:08
Compare
Choose a tag to compare

Bug Fixes:

  • Fix regression in SQL query scrubbing. (#3091)
  • Normalize route in trace context data field. (#3104)
  • Limit the length of scrubbed span descriptions. (#3115)

Features:

  • Add protobuf support for ingesting OpenTelemetry spans and use official opentelemetry-proto generated structs. (#3044)

Internal:

  • Set the span op on segments. (#3082)

24.1.2

08 Feb 18:14
Compare
Choose a tag to compare

Features:

  • Add raw_domain tag to indexed spans. (#2975)
  • Obtain span.domain field from the span data's url.scheme and server.address properties when applicable. (#2975)
  • Do not truncate simplified SQL expressions. (#3003)
  • Add app_start_type as a tag for self time and duration for app start spans. (#3027), (#3066)

Internal:

  • Emit a usage metric for total spans. (#3007)
  • Drop timestamp from metrics partition key. (#3025)
  • Drop spans ending outside the valid timestamp range. (#3013)
  • Extract INP metrics from spans. (#2969, #3041)
  • Add ability to rate limit metric buckets by namespace. (#2941)
  • Upgrade sqlparser to 0.43.1.(#3057)
  • Implement project scoped cardinality limits. (#3071)

24.1.1

26 Jan 18:42
Compare
Choose a tag to compare

Features:

  • Add new legacy browser filters. (#2950)

Internal:

  • Implement quota system for cardinality limiter. (#2972)
  • Use cardinality limits from project config instead of Relay config. (#2990)
  • Proactively move on-disk spool to memory. (#2949)
  • Default missing Event.platform and Event.level fields during light normalization. (#2961)
  • Copy event measurements to span & normalize span measurements. (#2953)
  • Add allow_negative to BuiltinMeasurementKey. Filter out negative BuiltinMeasurements if allow_negative is false. (#2982)
  • Add possiblity to block metrics or their tags with glob-patterns. (#2954, #2973)
  • Forward profiles of non-sampled transactions. (#2940)
  • Enable throttled periodic unspool of the buffered envelopes. (#2993)

Bug Fixes:

  • Add automatic PII scrubbing to logentry.params. (#2956)
  • Avoid producing null values in metric data. These values were the result of Infinity or NaN values extracted from event data. The values are now discarded during extraction. (#2958)
  • Fix processing of user reports. (#2981, #2984)
  • Fetch project config when metrics are received. (#2987)

24.1.0

16 Jan 22:00
Compare
Choose a tag to compare

Features:

  • Add a global throughput rate limiter for metric buckets. (#2928)
  • Group db spans with repeating logical conditions together. (#2929)

Bug Fixes:

  • Normalize event timestamps before validating them, fixing cases where Relay would drop valid events with reason "invalid_transaction". (#2878)
  • Resolve a division by zero in performance score computation that leads to dropped metrics for transactions. (#2911)

Internal:

  • Add duration metric for mobile app start spans. (#2906)
  • Introduce the configuration option http.global_metrics. When enabled, Relay submits metric buckets not through regular project-scoped Envelopes, but instead through the global endpoint. When this Relay serves a high number of projects, this can reduce the overall request volume. (#2902)
  • Record the size of global metrics requests in statsd as upstream.metrics.body_size. (#2908)
  • Make Kafka spans compatible with the Snuba span schema. (#2917, #2926)
  • Only extract span metrics / tags when they are needed. (#2907, #2923, #2924)
  • Normalize metric resource identifiers in event._metrics_summary and span._metrics_summary. (#2914)
  • Validate error_id and trace_id vectors in replay deserializer. (#2931)
  • Add a data category for indexed spans. (#2937)
  • Add nested Android app start span ops to span ingestion (#2927)

23.12.1

21 Dec 16:48
Compare
Choose a tag to compare

Internal:

  • Use a Lua script and in-memory cache for the cardinality limiting to reduce load on Redis. (#2849)
  • Extract metrics for file spans. (#2874)
  • Add an internal endpoint that allows Relays to submit metrics from multiple projects in a single request. (#2869)
  • Emit a processor.message.duration metric to assess the throughput of the internal CPU pool. (#2877)

23.12.0

19 Dec 12:42
Compare
Choose a tag to compare

Features:

  • Ingest OpenTelemetry and standalone Sentry spans via HTTP or an envelope. (#2620)
  • Partition and split metric buckets just before sending. Log outcomes for metrics. (#2682)
  • Support optional PerformanceScoreWeightedComponent in performance score processing. (#2783)
  • Return global config ready status to downstream relays. (#2765)
  • Add Mixed JS/Android Profiles events processing. (#2706)
  • Allow to ingest measurements on a span. (#2792)
  • Extract size metrics for all resource spans when permitted. (#2805)
  • Allow access to more fields in dynamic sampling and metric extraction. (#2820)
  • Add Redis set based cardinality limiter for metrics. (#2745)
  • Support issue thresholds for Cron Monitor configurations (#2842)

Bug Fixes:

  • In on-demand metric extraction, use the normalized URL instead of raw URLs sent by SDKs. This bug prevented metrics for certain dashboard queries from being extracted. (#2819)
  • Ignore whitespaces when parsing user reports. (#2798)

Internal:

  • Support source context in metric code locations metadata entries. (#2781)
  • Temporarily add metric summaries on spans and top-level transaction events to link DDM with performance monitoring. (#2757)
  • Add size limits on metric related envelope items. (#2800)
  • Include the size offending item in the size limit error message. (#2801)
  • Allow ingestion of metrics summary on spans. (#2823)
  • Add metric_bucket data category. (#2824)
  • Org rate limit metrics per bucket. (#2836)
  • Emit image resource spans, grouped by domain and extension. (#2826, #2855)
  • Parse timestamps from strings in span OpenTelemetry schema. (#2857)

23.11.2

27 Nov 17:34
Compare
Choose a tag to compare
  • normalize_performance_score now handles PerformanceScoreProfile configs with zero weight components and component weight sums of any number greater than 0. (#2756)

Features:

  • Normalize invalid metric names. (#2769)

Internal:

  • Add support for metric metadata. (#2751)

23.11.1

22 Nov 14:14
Compare
Choose a tag to compare

Features:

  • normalize_performance_score stores 0 to 1 cdf score instead of weighted score for each performance score component. (#2734)
  • Add Bytespider (Bytedance) to web crawler filter. (#2747)

Bug Fixes:

  • Fix bug introduced in 23.11.0 that broke profile-transaction association. (#2733)

Internal:

  • License is now FSL instead of BSL (#2739)
  • Support device.model in dynamic sampling and metric extraction. (#2728)
  • Support comparison operators (>, >=, <, <=) for strings in dynamic sampling and metric extraction rules. Previously, these comparisons were only possible on numbers. (#2730)
  • Postpone processing till the global config is available. (#2697)
  • Skip running NormalizeProcessor on renormalization. (#2744)

23.11.0

15 Nov 17:58
Compare
Choose a tag to compare

Features:

  • Add inbound filters option to filter legacy Edge browsers (i.e. versions 12-18 ) (#2650)
  • Add User Feedback Ingestion. (#2604)
  • Group resource spans by scrubbed domain and filename. (#2654)
  • Convert transactions to spans for all organizations. (#2659)
  • Filter outliers (>180s) for mobile measurements. (#2649)
  • Allow access to more context fields in dynamic sampling and metric extraction. (#2607, #2640, #2675, #2707, #2715)
  • Allow advanced scrubbing expressions for datascrubbing safe fields. (#2670)
  • Disable graphql scrubbing when datascrubbing is disabled. (#2689)
  • Track when a span was received. (#2688)
  • Add context for NEL (Network Error Logging) reports to the event schema. (#2421)
  • Add validate_pii_selector to CABI for safe fields validation. (#2687)
  • Do not scrub Prisma spans. (#2711)
  • Count spans by op. (#2712)
  • Extract resource spans & metrics regardless of feature flag. (#2713)

Bug Fixes:

  • Disable scrubbing for the User-Agent header. (#2641)
  • Fixes certain safe fields disabling data scrubbing for all string fields. (#2701)

Internal:

  • Disable resource link span ingestion. (#2647)
  • Collect http.decoded_response_content_length. (#2638)
  • Add TTID and TTFD tags to mobile spans. (#2662)
  • Validate span timestamps and IDs in light normalization on renormalization. (#2679)
  • Scrub all DB Core Data spans differently. (#2686)
  • Support generic metrics extraction version 2. (#2692)
  • Emit error on continued project config fetch failures after a time interval. (#2700)