SIGN IN SIGN UP

feat(vrl): add `parse_dnstap` function (#21985)

* feat(vrl): add `parse_dnstap` function

This adds `parse_dnstap` function, which should produce the exact same output as the `dnstap`
source. While it is possible to parse dnstap data manually using `parse_proto`, this ensures that
the exact same format is used. This makes it possible to delay dnstap parsing using `dnstap` source,
by making it produce raw data and then conditionally parsing it in transforms further down the line.
It also makes it possible to parse dnstap data from other sources.

* Add changelog entry

* Move DNSTAP parsing code to `lib/dnstap-parser`

* Add a better error on failed proto compilation for `dnstap-parser`

Co-authored-by: Pavlos Rontidis <pavlos.rontidis@gmail.com>

* Update lib/dnstap-parser/build.rs

Co-authored-by: Pavlos Rontidis <pavlos.rontidis@gmail.com>

* Move anyhow to workspace dependencies

* Update `parse_dnstap` query parse example

* Fix base64 regex pattern for spelling check action

* Update `buf.yaml` with new dnstap proto location

* Conditionally add `dnstap_parser` vrl functions if feature is enabled

* Ignore `dnstap.proto` in protobuf breaking checker

* Revert "Ignore `dnstap.proto` in protobuf breaking checker"

This reverts commit 2c1aea82ad76a59a319ea93b03f39e6dee92623f.

* Revert "Update `buf.yaml` with new dnstap proto location"

This reverts commit 9b2585481e74c197075b55729d478a3934e279bd.

* add proto to buf.yaml

* cue fmt

* Fix failing VRL and docs tests for `parse_dnstap`

---------

Co-authored-by: Pavlos Rontidis <pavlos.rontidis@gmail.com>
E
Ensar Sarajčić committed
792aeeae5c216288bc11b78185ecfb7184ac3ece
Parent: f6295e7
Committed by GitHub <noreply@github.com> on 1/2/2025, 8:47:57 PM