diff --git a/content/chapter-destinations/destination-syslog-ng-otlp/_index.md b/content/chapter-destinations/destination-syslog-ng-otlp/_index.md new file mode 100644 index 00000000..fef26d58 --- /dev/null +++ b/content/chapter-destinations/destination-syslog-ng-otlp/_index.md @@ -0,0 +1,55 @@ +--- +title: "syslog-ng-otlp(): Forward logs to another node using OpenTelemetry" +weight: 3950 +--- + + +Available in {{% param "product.abbrev" %}} version 4.4 and later. + +{{< include-headless "chunk/syslog-ng-otlp-intro.md" >}} + + + +## Options + +The `syslog-ng-otlp()` destination has the following options. + +{{< include-headless "chunk/grpc-authentication.md" >}} + +## batch-lines() + +| | | +| -------- | ------ | +| Type: | number | +| Default: | 0 | + +{{% include-headless "chunk/option-description-destination-batch-lines.md" %}} + +{{% include-headless "chunk/option-destination-batch-timeout.md" %}} + +{{< include-headless "chunk/option-destination-diskbuffer.md" >}} + +{{< include-headless "chunk/option-destination-hook.md" >}} + +{{% include-headless "chunk/option-destination-log-fifo-size.md" %}} + +{{% include-headless "chunk/option-persist-name.md" %}} + +{{% include-headless "chunk/option-destination-retries.md" %}} + +{{% include-headless "chunk/option-destination-throttle.md" %}} + +{{% include-headless "chunk/option-source-time-reopen.md" %}} + +## url() + +| | | +| -------- | -------------------------- | +| Type: | string | +| Default: | `localhost:9095` | + +*Description:* The URL of the {{% param "product.abbrev" %}} receiver. + +{{< include-headless "chunk/option-destination-threaded-workers.md" >}} diff --git a/content/chapter-sources/source-syslog-ng-otlp/_index.md b/content/chapter-sources/source-syslog-ng-otlp/_index.md new file mode 100644 index 00000000..9873849b --- /dev/null +++ b/content/chapter-sources/source-syslog-ng-otlp/_index.md @@ -0,0 +1,92 @@ +--- +title: "syslog-ng-otlp(): Receive logs from another node using OpenTelemetry" +weight: 3950 +--- + + + + + +## Options + +The `syslog-ng-otlp()` source has the following options. + +{{< include-headless "chunk/grpc-authentication.md" >}} + +## chain-hostnames() + +| | | +| ---------------- | ---------------- | +| Accepted values: | `yes`, `no` | +| Default: | `no` | + +*Description:* Enable or disable the chained hostname format. For details, see the [chain-hostnames() global option]({{< relref "/chapter-global-options/reference-options/_index.md#global-options-chain-hostnames" >}}). + +{{< include-headless "chunk/option-source-default-facility.md" >}} + +{{% include-headless "chunk/option-source-default-level-journal.md" %}} + +{{% include-headless "chunk/option-source-default-priority.md" %}} + +## dns-cache() + +| | | +| ---------------- | ---------------- | +| Accepted values: | `yes`, `no` | +| Default: | `no` | + +*Description:* Enable or disable DNS cache usage. + +{{< include-headless "chunk/option-source-ebpf.md" >}} + +{{< include-headless "chunk/option-source-flags.md" >}} + +{{< include-headless "chunk/option-source-host-override.md" >}} + +{{< include-headless "chunk/option-source-keep-hostname.md" >}} + +{{< include-headless "chunk/option-source-keep-timestamp.md" >}} + +{{% include-headless "chunk/option-source-file-log-iw-size.md" %}} + +{{< include-headless "chunk/option-source-log-prefix.md" >}} + +{{< include-headless "chunk/option-source-normalize-hostnames.md" >}} + +{{% include-headless "chunk/option-persist-name.md" %}} + +## port() + +| | | +| -------- | ------ | +| Type: | integer | +| Default: | | + + + +*Description:* The port number to bind to. + +{{% include-headless "chunk/option-source-program-override.md" %}} + +{{< include-headless "chunk/option-source-tags.md" >}} + +{{< include-headless "chunk/option-source-time-zone.md" >}} + +{{% include-headless "chunk/option-source-time-reopen.md" %}} + +{{< include-headless "chunk/option-source-use-dns.md" >}} + +{{< include-headless "chunk/option-source-use-fqdn.md" >}} diff --git a/content/headless/chunk/syslog-ng-otlp-intro.md b/content/headless/chunk/syslog-ng-otlp-intro.md new file mode 100644 index 00000000..aaa08f61 --- /dev/null +++ b/content/headless/chunk/syslog-ng-otlp-intro.md @@ -0,0 +1,24 @@ +--- +--- +The `syslog-ng-otlp()` source and destination allows you to transfer the internal representation of log messages between {{% param "product.abbrev" %}} instances using the OpenTelemetry protocol. Unlike the traditional [syslog-ng()]({{< relref "/chapter-destinations/destination-syslog-ng/_index.md" >}}) drivers that rely on simple TCP connections, `syslog-ng-otlp()` leverages the OpenTelemetry protocol for efficient and reliable log message transmission. + +The key benefits of the `syslog-ng-otlp()` drivers are: + +- scalability (via the `workers()` option), +- built-in application layer acknowledgement, +- support for Google service authentication (ADC or ALTS), and +- improved load balancing capabilities. + +To use it, configure a `syslog-ng-otlp()` destination on the sender node, and a `syslog-ng-otlp()` source on the receiver node, like this: + +```shell +destination d_syslog_ng_otlp { + syslog-ng-otlp(url("your-receiver-syslog-ng-instance:12346")); +}; +``` + +```shell +source s_syslog_ng_otlp { + syslog-ng-otlp(); +}; +```