diff --git a/config/_default/config.toml b/config/_default/config.toml index 9cacd25c..8ecc3ecb 100644 --- a/config/_default/config.toml +++ b/config/_default/config.toml @@ -72,7 +72,7 @@ description = "Documentation for AxoSyslog, the scalable security data processor # The version number for the version of the docs represented in this doc set. # Used in the "version-banner" partial to display a version number for the # current doc set. - version = "4.17.0" + version = "4.19.0" version_menu_canonicallinks = true # A link to latest version of the docs. Used in the "version-banner" partial to @@ -172,11 +172,11 @@ description = "Documentation for AxoSyslog, the scalable security data processor [params.product] name = "AxoSyslog" abbrev = "AxoSyslog" -version = "4.18" +version = "4.19" # techversion includes patch version number, needed for install/image commands # configversion is needed in the config file examples -techversion = "4.18.0" -configversion = "4.18" +techversion = "4.19.1" +configversion = "4.19" syslog-ng = "syslog-ng" selinux = "SELinux" apparmor = "AppArmor" diff --git a/content/chapter-sources/opentelemetry/_index.md b/content/chapter-sources/opentelemetry/_index.md index 3fa199d9..017355c5 100644 --- a/content/chapter-sources/opentelemetry/_index.md +++ b/content/chapter-sources/opentelemetry/_index.md @@ -41,6 +41,8 @@ log otel_forward_mode_alts { The `opentelemetry()` source ignores this option and uses the address of the OTLP peer as the HOST. +{{< include-headless "chunk/option-source-log-fetch-limit.md" >}} + {{< include-headless "chunk/option-source-file-log-iw-size.md" >}} ## `port()` {#port} diff --git a/content/chapter-sources/source-syslog-ng-otlp/_index.md b/content/chapter-sources/source-syslog-ng-otlp/_index.md index d06637cd..86c32ef7 100644 --- a/content/chapter-sources/source-syslog-ng-otlp/_index.md +++ b/content/chapter-sources/source-syslog-ng-otlp/_index.md @@ -71,7 +71,9 @@ The `syslog-ng-otlp()` source ignores this option and uses the hostname from the {{< include-headless "chunk/option-source-keep-timestamp.md" >}} -{{% include-headless "chunk/option-source-file-log-iw-size.md" %}} +{{< include-headless "chunk/option-source-log-fetch-limit.md" >}} + +{{< include-headless "chunk/option-source-file-log-iw-size.md" >}} {{< include-headless "chunk/option-source-log-prefix.md" >}} diff --git a/content/filterx/_index.md b/content/filterx/_index.md index d7ba83b4..073c2af6 100644 --- a/content/filterx/_index.md +++ b/content/filterx/_index.md @@ -411,7 +411,8 @@ For details, see {{% xref "/filterx/operator-reference.md" %}}. FilterX has the following built-in functions. - [`cache_json_file`]({{< relref "/filterx/function-reference.md#cache-json-file" >}}): Loads an external JSON file to lookup contextual information. -- [`dedup_metrics_labels`]({{< relref "/filterx/filterx-metrics/_index.md#metrics-labels" >}}): Deduplicate `metrics_labels` objects. +- [`dedup_metrics_labels`]({{< relref "/filterx/filterx-metrics/_index.md#dedup-metrics-labels" >}}): Deduplicate `metrics_labels` objects. +- [`dict_to_pairs`]({{< relref "/filterx/function-reference.md#dict-to-pairs" >}}): Convert dicts to list of pairs. - [`dpath`]({{< relref "/filterx/function-reference.md#dpath" >}}): Creates a nested path in a dictionary. - [`endswith`]({{< relref "/filterx/filterx-string-search/_index.md" >}}): Checks if a string ends with the specified value. - [`flatten`]({{< relref "/filterx/function-reference.md#flatten" >}}): Flattens the nested elements of an object. diff --git a/content/filterx/function-reference.md b/content/filterx/function-reference.md index c38476d2..a104312a 100644 --- a/content/filterx/function-reference.md +++ b/content/filterx/function-reference.md @@ -63,10 +63,32 @@ Usually, you use the [strptime](#strptime) FilterX function to create datetime v - When casting from a double, the double is the number of seconds elapsed since the UNIX epoch (00:00:00 UTC on 1 January 1970). (The part before the floating points is the seconds, the part after the floating point is the microseconds.) - When casting from a string, the string (for example, `1701350398.123000+01:00`) is interpreted as: `.+` -## dedup_metrics_labels +## dedup_metrics_labels {#dedup-metrics-labels} Deduplicate `metrics_labels` objects. For details, see {{% xref "/filterx/filterx-metrics/_index.md#metrics-labels" %}}. +## dict_to_pairs {#dict-to-pairs} + +Convert dicts to list of pairs. + +Usage: `dict_to_pairs(, , )` + +```shell +my_dict = { + "key_1": "value_1", + "key_2": "value_2", + "key_3": ["value_3", "value_4"], +}; + +my_list = dict_to_pairs(my_dict, "key", "value"); +# The value of my_list will be: +# [ +# {"key":"key_1","value":"value_1"}, +# {"key":"key_2","value":"value_2"}, +# {"key":"key_3","value":["value_3","value_4"]} +# ] +``` + ## dpath Available in {{< product >}} 4.17 and later. diff --git a/content/whats-new/_index.md b/content/whats-new/_index.md index 62e487d9..a28df3d1 100644 --- a/content/whats-new/_index.md +++ b/content/whats-new/_index.md @@ -6,6 +6,10 @@ weight: 10 {{< include-headless "banner-new-to-axosyslog.md" >}} +## Version 4.19 (2025-10-15) + +- The [`dict_to_pairs`]({{< relref "/filterx/function-reference.md#dict-to-pairs" >}}) FilterX function can convert a dictionary to a list of pairs. + ## Version 4.18 (2025-09-30) - You can now use macros and templates in the [`headers()` option]({{< relref "/chapter-destinations/configuring-destinations-http-nonjava/reference-destination-http-nonjava/_index.md#headers" >}}) of the `http()` destination to set the headers dynamically.