You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[kafka_actions] Base64-encode binary headers and support header filtering (DataDog#23106)
* [kafka_actions] Base64-encode binary headers and support header filtering
Binary Kafka headers were displayed as unhelpful `<binary, N bytes>` placeholders.
Now they are base64-encoded with a `<base64>` prefix so the actual data is visible.
Header filtering is now supported in both filter systems:
- jq-style: `.headers.dbmOrgId == "2"`
- MessageFilter: `field: "header.dbmOrgId", operator: "eq", value: "2"`
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Remove unnecessary MessageFilter header filtering
MessageFilter is not used anywhere in the codebase. Only the jq-style
filter in check.py is used, so header filtering only needs to be there.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Use lazy dict for filter context to preserve partial deserialization
The filter context was eagerly accessing deserialized_msg.key and
deserialized_msg.value, defeating the lazy deserialization. Now uses
_LazyMessageDict which only triggers deserialization when the filter
actually accesses a field (e.g., filtering on .headers won't
deserialize key/value).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Add changelog entry for header improvements
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments