Skip to content
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
0aa91e4
feat(eap): Produce logs to the items topic
phacops May 6, 2025
3e2b852
Vendor sentry_protos
phacops May 6, 2025
5332d1c
Gate sentry_protos dependency behind the processing feature
phacops May 6, 2025
d5ddc89
Use the proper enum value
phacops May 6, 2025
a401c2f
Do not use the macro
phacops May 6, 2025
697763a
Serialize in the function and return the raw bytes in serialize()
phacops May 6, 2025
74e809d
Read the items portion of the config
phacops May 6, 2025
1be1453
Generate proper types for Protobuf schema validation
phacops May 6, 2025
9a779f8
Remove vendored in favor of installing protoc
phacops May 6, 2025
8d21e2b
Enable type_generation for sentry-kafka-schemas
phacops May 6, 2025
d57223f
Install protoc to all workflows needing it
phacops May 6, 2025
a4dbeb8
Add missing workflows
phacops May 6, 2025
ad27999
Add a CHANGELOG entry
phacops May 6, 2025
095c26f
Fix some tests
phacops May 6, 2025
90462cc
Revert "Add missing workflows"
phacops May 7, 2025
f53c73a
Revert "Install protoc to all workflows needing it"
phacops May 7, 2025
dd26cab
Upgrade sentry_protos and sentry-kafka-schemas so we don't need protoc
phacops May 7, 2025
08c7886
Fix tests
phacops May 7, 2025
d78d272
Move some logic to the normalization
phacops May 7, 2025
57761af
Fix normalization tests
phacops May 7, 2025
86ca4aa
Fix one more test
phacops May 8, 2025
c9fe378
Remove another installation of protoc in CI
phacops May 8, 2025
1e3e6ac
Order crates alphabetically and remove types_generation feature
phacops May 8, 2025
6dc69a6
Use to_owned() instead of to_string()
phacops May 8, 2025
387b59f
Disable default features again now the crate is fixed
phacops May 8, 2025
02f7c1a
Really disable default features for sentry-kafka-schemas
phacops May 8, 2025
cf2475b
Can't make it with less default features than this
phacops May 8, 2025
abc0f44
Remove Serialization trait for logs
phacops May 8, 2025
79ed892
Move Protobuf encoding to serialize
phacops May 8, 2025
b7eb2b6
Use to_owned() instead of to_string() where we can
phacops May 8, 2025
b00ab99
Remove nanoseconds from this timestamp
phacops May 8, 2025
ba2fdeb
Remove other and add back sentry.timestamp_precise
phacops May 8, 2025
0d25ca7
Fix tests
phacops May 8, 2025
33ae11f
Fix integration tests
phacops May 9, 2025
5633637
Update snapshots
phacops May 9, 2025
b90d31b
Add a better comment on why we replace the item_id
phacops May 9, 2025
1cda6e9
Fix linting
phacops May 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

- Remove threads with 1 non-idle sample in profiling chunks. ([#4694](https://github.com/getsentry/relay/pull/4694))
- Migrate all Rust workspace crates to edition 2024. ([#4705](https://github.com/getsentry/relay/pull/4705))
- Produce logs to the items topic. ([#4707](https://github.com/getsentry/relay/pull/4707))

## 25.4.0

Expand Down
29 changes: 27 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 16 additions & 14 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ relay-common = { path = "relay-common" }
relay-config = { path = "relay-config" }
relay-crash = { path = "relay-crash" }
relay-dynamic-config = { path = "relay-dynamic-config" }
relay-event-derive = { path = "relay-event-derive" }
relay-event-normalization = { path = "relay-event-normalization" }
relay-event-schema = { path = "relay-event-schema" }
relay-ffi = { path = "relay-ffi" }
Expand All @@ -54,6 +55,7 @@ relay-pattern = { path = "relay-pattern" }
relay-pii = { path = "relay-pii" }
relay-profiling = { path = "relay-profiling" }
relay-protocol = { path = "relay-protocol" }
relay-protocol-derive = { path = "relay-protocol-derive" }
relay-quotas = { path = "relay-quotas" }
relay-redis = { path = "relay-redis" }
relay-replays = { path = "relay-replays" }
Expand All @@ -62,23 +64,21 @@ relay-server = { path = "relay-server" }
relay-spans = { path = "relay-spans" }
relay-statsd = { path = "relay-statsd" }
relay-system = { path = "relay-system" }
relay-test = { path = "relay-test" }
relay-threading = { path = "relay-threading" }
relay-ua = { path = "relay-ua" }
relay-test = { path = "relay-test" }
relay-protocol-derive = { path = "relay-protocol-derive" }
relay-event-derive = { path = "relay-event-derive" }

ahash = "0.8.11"
android_trace_log = { version = "0.3.0", features = ["serde"] }
# This version is pinned because upgrading it enables backtrace by default without the possibility to disable it
# which will increase processing time for transactions massively.
# Keep it pinned until it's possible to disable backtrace.
anyhow = "=1.0.69"
arc-swap = "1.7.1"
async-trait = "0.1.83"
axum = "0.8.1"
axum-extra = "0.10.0"
axum-server = "0.7.1"
arc-swap = "1.7.1"
async-trait = "0.1.83"
backoff = "0.4.0"
bindgen = "0.71.1"
brotli = "6.0.0"
Expand All @@ -87,8 +87,8 @@ bytes = "1.10.1"
bzip2 = "0.4.4"
cadence = "1.5.0"
chrono = { version = "0.4.38", default-features = false, features = [
"std",
"serde",
"std",
"serde",
] }
clap = { version = "4.4.18" }
clap_complete = "4.1.6"
Expand All @@ -106,19 +106,19 @@ dynfmt = "0.1.5"
ed25519-dalek = "2.1.1"
enumset = "1.0.13"
flate2 = "1.0.35"
flume = { version = "0.11.1", default-features = false }
fnv = "1.0.7"
futures = { version = "0.3", default-features = false, features = ["std"] }
flume = { version = "0.11.1", default-features = false }
globset = "0.4.15"
hash32 = "0.3.1"
hashbrown = "0.14.5"
hex = "0.4.3"
hmac = "0.12.1"
hostname = "0.4.0"
human-size = "0.4.3"
http = "1.1.0"
hyper-util = { version = "0.1.10", features = ["tokio"] }
human-size = "0.4.3"
hyper = "1.5.1"
hyper-util = { version = "0.1.10", features = ["tokio"] }
indexmap = "2.2.6"
insta = { version = "1.31.0", features = ["json", "redactions", "ron"] }
ipnetwork = "0.20.0"
Expand All @@ -128,8 +128,8 @@ libc = "0.2.167"
liblzma = "0.3.5"
lru = "0.12.5"
maxminddb = "0.24.0"
memchr = "2.7.4"
md5 = "0.7.0"
memchr = "2.7.4"
mime = "0.3.17"
minidump = "0.22.2"
multer = "3.1.0"
Expand All @@ -147,6 +147,7 @@ pretty-hex = "0.4.1"
priority-queue = "2.0.3"
proc-macro2 = "1.0.92"
prost = "0.13.3"
prost-types = "0.13.3"
psl = "2.1.65"
quote = "1.0.37"
rand = "0.8.5"
Expand All @@ -158,12 +159,13 @@ regex = "1.11.1"
regex-lite = "0.1.6"
reqwest = "0.12.9"
rmp-serde = "1.3.0"
semver = "1.0.23"
sentry = "0.36.0"
sentry-core = "0.36.0"
sentry-kafka-schemas = { version = "0.1.129", default-features = false }
sentry-kafka-schemas = { version = "1.3.2", default-features = false }
sentry-release-parser = { version = "1.3.2", default-features = false }
sentry-types = "0.36.0"
semver = "1.0.23"
sentry_protos = "0.2.0"
serde = { version = "1.0.215", features = ["derive", "rc"] }
serde-transcode = "1.1.1"
serde_bytes = "0.11"
Expand Down Expand Up @@ -201,6 +203,6 @@ unescaper = "0.1.5"
unicase = "2.8.0"
url = "2.5.4"
utf16string = "0.2.0"
uuid = { version = "1.11.0", features = ["serde", "v4"] }
uuid = { version = "1.11.0", features = ["serde", "v4", "v7"] }
walkdir = "2.5.0"
zstd = { version = "0.13.2", features = ["experimental"] }
4 changes: 2 additions & 2 deletions relay-kafka/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ rmp-serde = { workspace = true, optional = true }
serde = { workspace = true }
serde_json = { workspace = true, optional = true }
thiserror = { workspace = true }
sentry-kafka-schemas = { workspace = true, default_features = false, optional = true }
sentry-kafka-schemas = { workspace = true, default-features = false, optional = true }

[dev-dependencies]
serde_yaml = { workspace = true }
sentry-kafka-schemas = { workspace = true }
sentry-kafka-schemas = { workspace = true, default-features = false }

[features]
default = []
Expand Down
6 changes: 5 additions & 1 deletion relay-kafka/src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -51,14 +51,16 @@ pub enum KafkaTopic {
Spans,
/// Feedback events topic.
Feedback,
/// Items topic
Items,
}

impl KafkaTopic {
/// Returns iterator over the variants of [`KafkaTopic`].
/// It will have to be adjusted if the new variants are added.
pub fn iter() -> std::slice::Iter<'static, Self> {
use KafkaTopic::*;
static TOPICS: [KafkaTopic; 14] = [
static TOPICS: [KafkaTopic; 15] = [
Events,
Attachments,
Transactions,
Expand All @@ -73,6 +75,7 @@ impl KafkaTopic {
OurLogs,
Spans,
Feedback,
Items,
];
TOPICS.iter()
}
Expand Down Expand Up @@ -138,6 +141,7 @@ define_topic_assignments! {
monitors: (KafkaTopic::Monitors, "ingest-monitors", "Monitor check-ins."),
spans: (KafkaTopic::Spans, "snuba-spans", "Standalone spans without a transaction."),
feedback: (KafkaTopic::Feedback, "ingest-feedback-events", "Feedback events topic."),
items: (KafkaTopic::Items, "snuba-items", "Items topic."),
}

/// Configuration for a "logical" topic/datasink that Relay should forward data into.
Expand Down
Loading