Skip to main content
Version: 3.5.0

Changelog

note

Please see the upgrade guide for guidance on upgrading from the preview version.

Version 3.5 includes major improvements to observability, through the introduction of a new message system between system components.

Agent Changes

  • Agents gain an additional API for communication with Pipes, which by default listens on 127.0.0.1:4041.
    • This setting can be controlled via:
      • The command line option --agent-api-bind-address, or
      • The environment variable HOTROD_AGENT_API_BIND_ADDRESS
    • The default bind address is 127.0.0.1:4041 on Agents, and 127.0.0.1:3041 the Server Agent

Server Changes

  • Server Agent changes
    • The Server now always includes the Server Agent, where previously it was an optional Server feature
    • The Server Agent has been renamed:
      • previously, Hotrod Server Agent (with ID hotrod-server-agent)
      • now Built-In Agent (with ID built-in-agent)
      • When upgrading a Server, the previous name and id will be retained for backwards compatibility
    • The built-in Agent's default setting for it's existing Pipe API changed from 127.0.0.1:4040 to 127.0.0.1:3040
      • This change avoids port conflicts with default settings when an Agent is co-located with the Server process on the same host

Pipe Language & Runtime Changes

Inputs and Outputs

  • The new internal-messages input introduces a powerful capability to subscribe to various telemetry events generated by the Server, Agents and Pipes.

  • The new message output allows for generating custom events, which can be subscribed to with the new internal-messages input

  • The s3 and azure-blob inputs:

    • support a new preprocessors option, which enables:
      • handling gzip-compressed input objects
      • handling parquet-encoded input objects
      • automatically applying either of the above, depending on file extensions (.gz or .parquet)
    • supports a new fingerprinting-db-path option which allows customizing the path of the YAML state file
  • The s3 and azure-blob outputs:

    • support a new preprocessors option, which supports compression of output objects with gzip
    • support a new input-field option
  • The file output supports a new append-to-existing option, for appending data to existing files

  • The http-poll and scuba inputs support a new timeout parameter, for controlling the timeout on HTTP requests

  • New: initial MQTT client and virtual broker support (authentication or TLS not yet available)

  • The kafka input and output support a new config option for specifying rdkafka configuration parameters

  • The azure-monitor output supports a new time_generated_field option

  • The scuba input now supports specifying either a query response id or BQL query

  • The azure-monitor input now has improved feedback from errors

  • The splunk-hec output supports a new remove option that can remove certain default fields from the output payload

  • The splunk-hec output supports new index and index-field metadata options

Actions

  • A new LUA method, batch_number(), is available in the script action and other actions that can evaluate LUA expressions

    • This method returns the last batch number of a Pipe's output, or 1 if the Pipe's output doesn't use batch mode
    • This feature should not be used for generating output file or object names; timing differences in processing between Pipe actions and outputs may cause unpredictable behaviour, due to timing differences in the processing of actions and output components of Pipes.
  • The add action supports a new jsonpath-fields option, which allows for extracting data using JSONPath expressions

  • The transaction action supports a new combined-payload option, which combines collected events into a single event and concatenate payloads

  • The transaction action now supports looking for transaction start and end markers

  • The filter action gets a new option to drop empty JSON (nil, arrays, strings, etc)

  • The collapse action now has improved handling for the creation of CSV data