From a97bc3ce9b21e3daedf936892bce58bbcbcb68a9 Mon Sep 17 00:00:00 2001 From: David Herberth Date: Wed, 9 Oct 2024 12:15:49 +0200 Subject: [PATCH 1/3] test(pattern): Assert all patterns when compiling in debug mode --- relay-pattern/src/typed.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/relay-pattern/src/typed.rs b/relay-pattern/src/typed.rs index 64dd73a722..b78334a0a8 100644 --- a/relay-pattern/src/typed.rs +++ b/relay-pattern/src/typed.rs @@ -180,7 +180,9 @@ impl FromIterator for TypedPatterns { fn from_iter>(iter: T) -> Self { let mut builder = Self::builder(); for pattern in iter.into_iter() { - let _ = builder.add(pattern); + let _err = builder.add(pattern); + #[cfg(debug_assertions)] + _err.expect("all patterns should be valid patterns"); } builder.build() } @@ -248,7 +250,9 @@ impl<'de, C: PatternConfig> serde::Deserialize<'de> for TypedPatterns { while let Some(item) = seq.next_element()? { // Ignore invalid patterns as documented. - let _ = builder.add(item); + let _err = builder.add(item); + #[cfg(debug_assertions)] + _err.expect("all patterns should be valid patterns"); } Ok(builder.build()) @@ -398,7 +402,7 @@ mod tests { } #[test] - #[cfg(feature = "serde")] + #[cfg(all(feature = "serde", not(debug_assertions)))] fn test_patterns_deserialize_err() { let r: TypedPatterns = serde_json::from_str(r#"["[invalid","foobar"]"#).unwrap(); From 21db425a99d2566a4fb586bdf43c4c46eab64eeb Mon Sep 17 00:00:00 2001 From: David Herberth Date: Wed, 9 Oct 2024 13:17:27 +0200 Subject: [PATCH 2/3] fix mongodb globs --- relay-dynamic-config/src/defaults.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/relay-dynamic-config/src/defaults.rs b/relay-dynamic-config/src/defaults.rs index 2cbcfe3de4..27b96f7494 100644 --- a/relay-dynamic-config/src/defaults.rs +++ b/relay-dynamic-config/src/defaults.rs @@ -24,7 +24,7 @@ const MOBILE_OPS: &[&str] = &[ const APP_START_ROOT_SPAN_DESCRIPTIONS: &[&str] = &["Cold Start", "Warm Start"]; /// A list of patterns found in MongoDB queries. -const MONGODB_QUERIES: &[&str] = &["*\"$*", "{*", "*({*", "*[{*"]; +const MONGODB_QUERIES: &[&str] = &["*\"$*", r"\{*", r"*(\{*", r"*\[\{*"]; /// A list of patterns for resource span ops we'd like to ingest. const RESOURCE_SPAN_OPS: &[&str] = &["resource.script", "resource.css", "resource.img"]; From 69dc76904234c4255f0cf59db35f81f250645f9d Mon Sep 17 00:00:00 2001 From: David Herberth Date: Wed, 9 Oct 2024 13:58:21 +0200 Subject: [PATCH 3/3] fix broken span db system query --- relay-dynamic-config/src/defaults.rs | 2 +- ...nt__tests__both_feature_flags_enabled.snap | 60 +++++++++++++++++++ ...extraction__event__tests__only_common.snap | 56 +++++++++++++++++ 3 files changed, 117 insertions(+), 1 deletion(-) diff --git a/relay-dynamic-config/src/defaults.rs b/relay-dynamic-config/src/defaults.rs index 27b96f7494..9642b6cabc 100644 --- a/relay-dynamic-config/src/defaults.rs +++ b/relay-dynamic-config/src/defaults.rs @@ -117,7 +117,7 @@ pub fn hardcoded_span_metrics() -> Vec<(GroupKey, Vec, Vec