Troubleshoot log collection

Troubleshoot common issues when collecting logs with the Splunk Distribution of the OpenTelemetry Collector.

Use these steps to troubleshoot common log collection issues with the Splunk Distribution of the OpenTelemetry Collector.

To troubleshoot the health and performance of the Collector, see the OpenTelemetry Project troubleshooting docs. The OpenTelemetry docs include information about troubleshooting tools and debugging.

For more information on log collection, see:

A source isn't generating logs

Run the following commands to confirm that your source is generating logs:

Linux
BASH
tail -f /var/log/myTestLog.log
journalctl -u my-service.service -f
Windows
SHELL
Get-Content myTestLog.log

The Collector isn't configured properly

Do the following to check the Collector configuration:

  • Go to http://localhost:55679/debug/tracez to check zPages for samples. You might need to configure the endpoint.

  • Activate the debug exporter.

  • Run journalctl -u splunk-otel-collector.service -f to collect the logs for review.

  • Review Troubleshoot the Splunk OpenTelemetry Collector if you can't find what you need in the logs.

  • Generate logs manually by running these commands and see whether the Collector sends them:

    BASH
    echo "2021-03-17 02:14:44 +0000 [debug]: test" >>/var/log/syslog.log
    echo "2021-03-17 02:14:44 +0000 [debug]: test" | systemd-cat

Check Collector logs

Use the following commands to check Collector logs:

Linux

To follow Collector logs in real time, run the following command:

BASH
sudo journalctl -u splunk-otel-collector -f

To view the last 100 lines, run the following command:

BASH
sudo journalctl -u splunk-otel-collector -n 100
Windows

To view the last 100 Collector events, run the following command in PowerShell:

POWERSHELL
Get-WinEvent -FilterHashtable @{ LogName='Application'; ProviderName='splunk-otel-collector' } -MaxEvents 100

Common errors

Use the following sections to troubleshoot common errors from Linux and Windows log collection.

TLS error: x509 can't validate certificate for IP SANs

This error occurs when the HEC endpoint URL uses a raw IP address, such as https://10.x.x.x:8088/services/collector, but the server TLS certificate was issued for a hostname instead of an IP address. To resolve this issue, use the hostname in --splunk-platform-url.

If the server uses a self-signed certificate or an internal certificate authority (CA), add the CA to the system trust store on the Collector host so the certificate can be verified.

As a last resort in non-production environments, you can turn off TLS verification:

YAML
exporters:
  splunk_hec/logs:
    tls:
      insecure_skip_verify: true
Warning: Do not use insecure_skip_verify: true in production environments. This setting turns off certificate validation.

Exporting failed: context deadline exceeded

This error means the HEC endpoint accepted the connection but didn't respond before the client timeout expired. It often happens when the Splunk platform is under heavy load and can't process incoming data fast enough. The exporter retries requests. Data remains queued while queue capacity is available.

To give the Splunk platform more time to respond, increase the HTTP client timeout in splunk_logs_config_linux.yaml or splunk_logs_config_windows.yaml:

YAML
exporters:
  splunk_hec/logs:
    timeout: 30s

If retries fill the queue and cause backpressure, reduce log volume or deactivate high-traffic receivers.

No logs arrive in the Splunk platform

Use the following steps to troubleshoot missing logs for your operating system:

Linux
  1. Check that the Collector is running:

    BASH
    sudo systemctl status splunk-otel-collector
  2. Verify that the HEC token and URL are correct in /etc/otel/collector/splunk-otel-collector.conf.

  3. Confirm that the receiver is enabled in the pipeline. Check service.pipelines.logs/hec.receivers in the configuration.

  4. Look for export errors in the Collector logs.

  5. Check for common HEC errors, such as 401 Unauthorized for a bad token, 403 Forbidden for a deactivated token or wrong index, or 400 Bad Request for a malformed event.

Windows
  1. Check that the Collector service is running:

    POWERSHELL
    Get-Service -Name splunk-otel-collector
  2. Verify that the HEC token and URL are correct in the Collector service environment:

    POWERSHELL
    (Get-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\splunk-otel-collector').Environment
  3. Confirm that the receiver is enabled in the pipeline. Check service.pipelines in C:\ProgramData\Splunk\OpenTelemetry Collector\splunk_logs_config_windows.yaml.

  4. Look for export errors in the Collector logs.

  5. Check for common HEC errors, such as 401 Unauthorized for a bad token, 403 Forbidden for a deactivated token or wrong index, or 400 Bad Request for a malformed event.

  6. Restart the Collector service after making configuration changes:

    POWERSHELL
    Restart-Service splunk-otel-collector

The journald receiver produces no data

The Collector log shows the following error when the service user doesn't have systemd-journal group membership:

JSON
Jun 02 09:41:29 ip-10-236-24-112 otelcol[103201]: 2026-06-02T09:41:29.462Z error journald/input.go:98 journalctl command exited {"otelcol.component.id": "journald", "otelcol.component.kind": "receiver", "error": "exit status 1"}

Verify group membership:

BASH
groups splunk-otel-collector

If systemd-journal isn't listed, run the following commands:

BASH
sudo usermod -aG systemd-journal splunk-otel-collector
sudo systemctl restart splunk-otel-collector

Memory usage is above the soft limit

This log message means the memory_limiter processor is rejecting incoming data because memory usage exceeded the soft limit. The soft limit is derived from SPLUNK_MEMORY_LIMIT_MIB, which is 90% of SPLUNK_MEMORY_TOTAL_MIB.

To resolve the issue, try the following options:

  • Reduce the number of active receivers.

  • Lower queue_size on the Splunk HEC exporter.

  • Increase SPLUNK_MEMORY_TOTAL_MIB from the default 512 MB when your use case requires more memory. Modify splunk-otel-collector.conf and restart the Collector service.

If increasing SPLUNK_MEMORY_LIMIT_MIB doesn't resolve the issue, the Collector might be falling behind because of a throughput bottleneck, such as HEC or CPU capacity.

Unwanted profiling logs appear in Splunk Observability Cloud

By default, the Collector sends AlwaysOn Profiling data using the Splunk HEC exporter. To deactivate this see Turn off logs or profiling data.

Exclude log data in the Collector

Depending on its configuration, the Collector might collect and send logs to Splunk Observability Cloud through a logs pipeline that uses the Splunk HEC exporter. To deactivate this see Turn off logs or profiling data.

Send logs from the Collector to Splunk Cloud Platform or Splunk Enterprise

See Send logs to Splunk Cloud Platform or Splunk Enterprise.