Skip to main content
The OpenTelemetry Collector forwards logs and traces to Bronto via OTLP/HTTP. This page covers Collector configuration only. For installation instructions, see the OpenTelemetry Collector documentation. For SDK-based instrumentation, see Brontoโ€™s language-specific OpenTelemetry guides.

Getting your data into the Collector

The Collector only forwards the telemetry it receives โ€” deploying it does not automatically discover your logs. If youโ€™ve configured the Collector but arenโ€™t seeing all the logs you expect, the source usually hasnโ€™t been wired up to send data to it yet. There are two categories of source:
  • Application logs and traces โ€” instrument your application with the OpenTelemetry SDK so it exports OTLP to the Collector (or directly to Bronto). See Ingest OpenTelemetry data for per-language setup. Alternatively, point the filelog receiver at the log files your application already writes.
  • Infrastructure and service logs โ€” each source has its own setup. See Ingesting Infrastructure and Database Logs for the full list (Kubernetes, Docker, NGINX, databases, message brokers, and more), and Collecting Windows OS Logs for Windows Event Log and IIS.
The receiver examples on this page show the Collector-side plumbing; the source guides above show what each source emits and where it writes its logs.

Endpoints

Use the endpoints for your Bronto region: The OTel Collector routes logs and traces to the correct dataset and collection automatically using the service.name and service.namespace resource attributes. Only the API key header is required; the rest are optional overrides:

Logs and traces

Run both pipelines through a single Collector. Tail log files via the filelog receiver, accept OTLP traces from your applications via the otlp receiver, and ship each signal to its own Bronto exporter.
/etc/otel/config.yaml
The service.name and service.namespace resource attributes are used by Bronto to route logs to the correct dataset and collection. You can override them with the x-bronto-dataset and x-bronto-collection headers. For more on tracing โ€” including SDK-based export โ€” see Send Traces to Bronto.

Logs only

If you only need to forward logs, drop the OTLP receiver and traces pipeline.
/etc/otel/config.yaml

Windows hosts

On Windows, the filelog receiver picks up file-based logs (IIS, SQL Server, application files), but most platform and service diagnostics are written to the Windows Event Log and need the Windows-only windowseventlog receiver instead. See Collecting Windows OS Logs for the receiver configuration, the event channels worth collecting, XPath filtering for noisy channels, Windows filelog gotchas (UTF-16 encoding, multi-line stack traces), and running the Collector as a Windows service.

Parsing unstructured logs

Rather than building parser operators in the Collector for unstructured text, ship raw log lines to Bronto and use the Bronto Custom Parser to extract structured fields server-side. The Custom Parser uses LLMs to generate parsers automatically and ships with built-in support for Apache, IIS, HAProxy, Syslog, key-value, and custom formats โ€” no regex maintenance required.

Kubernetes

For Kubernetes deployments, install the Collector using the OpenTelemetry Helm chart.
Use the x-bronto-collection header to identify the cluster (e.g. cluster1-prod-us-east-1). Bronto infers dataset/service names from log attributes and span resources, so per-service routing is handled automatically.
values.yaml
The k8sattributes processor enriches logs and traces with pod, namespace, and node metadata. See the OpenTelemetry Demo Kubernetes deployment guide for further context on backend configuration.

Verify delivery

Once your configuration is applied and the Collector is restarted:

Further reading