diff --git a/CHANGELOG.md b/CHANGELOG.md index 46ed4fa004..c7d7f6e5b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,8 @@ **Internal**: - Emit the `quantity` field for outcomes of events. This field describes the total size in bytes for attachments or the event count for all other categories. A separate outcome is emitted for attachments in a rejected envelope, if any, in addition to the event outcome. ([#942](https://github.com/getsentry/relay/pull/942)) +- Add experimental metrics ingestion without bucketing or pre-aggregation. ([#948](https://github.com/getsentry/relay/pull/948)) +- Skip serializing some null values in frames interface. ([#944](https://github.com/getsentry/relay/pull/944)) - Add experimental metrics ingestion with bucketing and pre-aggregation. ([#948](https://github.com/getsentry/relay/pull/948), [#952](https://github.com/getsentry/relay/pull/952), [#958](https://github.com/getsentry/relay/pull/958), [#966](https://github.com/getsentry/relay/pull/966), [#969](https://github.com/getsentry/relay/pull/969)) - Change HTTP response for upstream timeouts from 502 to 504. ([#859](https://github.com/getsentry/relay/pull/859)) - Add rule id to outcomes coming from transaction sampling. ([#953](https://github.com/getsentry/relay/pull/953)) diff --git a/py/CHANGELOG.md b/py/CHANGELOG.md index c57e12cb1f..261275452e 100644 --- a/py/CHANGELOG.md +++ b/py/CHANGELOG.md @@ -2,6 +2,7 @@ ## Unreleased +- Skip serializing some null values in frames interface. ([#944](https://github.com/getsentry/relay/pull/944)) - Make request url scrubbable. ([#955](https://github.com/getsentry/relay/pull/955)) ## 0.8.4 diff --git a/relay-general/src/protocol/stacktrace.rs b/relay-general/src/protocol/stacktrace.rs index 6e77958986..c2d4869b42 100644 --- a/relay-general/src/protocol/stacktrace.rs +++ b/relay-general/src/protocol/stacktrace.rs @@ -76,9 +76,11 @@ pub struct Frame { pub abs_path: Annotated, /// Line number within the source file, starting at 1. + #[metastructure(skip_serialization = "null")] pub lineno: Annotated, /// Column number within the source file, starting at 1. + #[metastructure(skip_serialization = "null")] pub colno: Annotated, /// Which platform this frame is from. @@ -93,6 +95,7 @@ pub struct Frame { pub pre_context: Annotated>, /// Source code of the current line (`lineno`). + #[metastructure(skip_serialization = "null")] pub context_line: Annotated, /// Source code of the lines after `lineno`. @@ -104,6 +107,7 @@ pub struct Frame { /// /// Setting this attribute to `false` causes the frame to be hidden/collapsed by default and /// mostly ignored during issue grouping. + #[metastructure(skip_serialization = "null")] pub in_app: Annotated, /// Mapping of local variables and expression names that were available in this frame. @@ -113,9 +117,11 @@ pub struct Frame { /// Auxiliary information about the frame that is platform specific. #[metastructure(omit_from_schema)] + #[metastructure(skip_serialization = "empty")] pub data: Annotated, /// (C/C++/Native) Start address of the containing code module (image). + #[metastructure(skip_serialization = "null")] pub image_addr: Annotated, /// (C/C++/Native) An optional instruction address for symbolication. @@ -124,15 +130,18 @@ pub struct Frame { /// If this is set and a known image is defined in the /// [Debug Meta Interface]({%- link _documentation/development/sdk-dev/event-payloads/debugmeta.md -%}), /// then symbolication can take place. + #[metastructure(skip_serialization = "null")] pub instruction_addr: Annotated, /// Defines the addressing mode for addresses. + #[metastructure(skip_serialization = "empty")] pub addr_mode: Annotated, /// (C/C++/Native) Start address of the frame's function. /// /// We use the instruction address for symbolication, but this can be used to calculate /// an instruction offset automatically. + #[metastructure(skip_serialization = "null")] pub symbol_addr: Annotated, /// (C/C++/Native) Used for native crashes to indicate how much we can "trust" the instruction_addr