Download the release on GitHub.
Features
Section titled “Features”Fix a potential crash in enrich --replace
Section titled “Fix a potential crash in enrich --replace”The enrich operator no longer crashes when it is used to replace a field value with a context value of a different type and the context is not able to provide a substitute for all inputs.
Implement the azure-log-analytics plugin
Section titled “Implement the azure-log-analytics plugin”The new azure-log-analytics operator makes it possible to upload events to
supported or custom tables in Microsoft Azure.
Make the parallel level in lookup configurable
Section titled “Make the parallel level in lookup configurable”The lookup operator gained a new --parallel <level> option controlling the
number of partitions the operator is allowed to open at once for retrospective
lookups. This can significantly increase performance at the cost of higher
resource usage. The option defaults to 3. To restore the previous behavior, set
the option to 1.
By @dominiklohmann in #4300.
Add the ttl to the /pipeline/list API
Section titled “Add the ttl to the /pipeline/list API”The /pipeline/list API now includes a new ttl field showing the TTL of the
pipeline. The remaining TTL moved from ttl_expires_in_ns to a remaining_ttl
field, aligning the output of the API with the show pipelines operator.
By @dominiklohmann in #4314.
Allow pip to write to stdout in venv creation
Section titled “Allow pip to write to stdout in venv creation”We fixed bug that caused python-pip to fail when creating the runtime environment for the python operator.
Add a rendered field to diagnostics
Section titled “Add a rendered field to diagnostics”Newly created diagnostics returned from the diagnostics now contain a
rendered field that contains a rendered form of the diagnostic. To restore the
previous behavior, use diagnostics | drop rendered.
By @dominiklohmann in #4290.
Fix healthcheck in docker-compose.yaml
Section titled “Fix healthcheck in docker-compose.yaml”context update <name> for lookup-table contexts now supports per-entry
timeouts. The --create-timeout <duration> option sets the time after which
lookup table entries expire, and the --update-timeout <duration> option sets
the time after which lookup table entries expire if they are not accessed.
Print Operator
Section titled “Print Operator”The print operator allows for printing record fields as strings with any
format.
By @balavinaithirthan in #4265.
Changes
Section titled “Changes”Remove built-in type aliases
Section titled “Remove built-in type aliases”The built-in type aliases timestamp and port for time and uint64,
respectively, no longer exist. They were an artifact of Tenzir from before it
supported schema inference in most parsers, and did not play well with many
operators when used together with inferred types from other parsers.
By @dominiklohmann in #4299.
Include hidden pipelines in show pipelines
Section titled “Include hidden pipelines in show pipelines”show pipelines now includes “hidden” pipelines run by the by the Tenzir
Platform or through the API. These pipelines usually run background jobs, so
they’re intentionally hidden from the /pipeline/list API.
By @dominiklohmann in #4309.
Bug Fixes
Section titled “Bug Fixes”Make ip == subnet and string == pattern commutative
Section titled “Make ip == subnet and string == pattern commutative”subnet == ip and pattern == string predicates now behave just like ip == subnet and string == pattern predicates.
By @dominiklohmann in #4280.
Fix start abort error message
Section titled “Fix start abort error message”Errors during pipeline startup are properly propagated instead of being replaced
by error: failed to run in some situations.
Add missing -X option for kafka saver
Section titled “Add missing -X option for kafka saver”The -X option for overriding configuration options for librdkafka now works
the kafka saver as well. Previously, the option was only exposed for the
loader, unlike advertised in the documentation.
By @dominiklohmann in #4317.
Tone down execution node backoff behavior
Section titled “Tone down execution node backoff behavior”We fixed a regression that caused excess CPU usage for some operators when idle.
This was most visible with the subscribe, export, metrics, diagnostics,
lookup and enrich operators.
By @dominiklohmann in #4297.
Implement the azure-log-analytics plugin
Section titled “Implement the azure-log-analytics plugin”The https and related savers now signal an error when the saver-related
upload fails.
Fix using summarize … by x when x is of type null
Section titled “Fix using summarize … by x when x is of type null”The summarize operator no longer crashes when grpuping by a field of type
null, i.e., a field whose type could not be inferred because all of its values
were null.
By @dominiklohmann in #4289.