Monitor Cloudflare Workers Traces and Logs with SigNoz

SigNoz Cloud - This page applies to SigNoz Cloud editions.
Self-Host - This page applies to self-hosted SigNoz editions.

Cloudflare Workers ships traces and logs directly to SigNoz using built-in OTLP export. Configure destinations in the Workers Observability dashboard and enable them in your Wrangler config. No code changes required.

Requires Workers Paid plan or higher. OTLP export is in beta. Tracing is billed beyond the 10 million monthly inclusion. Check Cloudflare's current pricing. Metrics export is not currently supported.

Prerequisites

Configure OTLP Export

Create destinations

  1. Open Workers Observability in your Cloudflare dashboard.

  2. Go to Destinations and click Add destination. Create a traces destination:

  • Name: signoz-traces
  • Type: Traces
  • OTLP Endpoint: https://ingest.<region>.signoz.cloud:443/v1/traces
  • Headers: signoz-ingestion-key: <your-ingestion-key>

Click Save.

Creating a traces destination in Cloudflare Workers Observability
Traces destination configured for SigNoz
  1. Click Add destination again. Create a logs destination:
  • Name: signoz-logs
  • Type: Logs
  • OTLP Endpoint: https://ingest.<region>.signoz.cloud:443/v1/logs
  • Headers: signoz-ingestion-key: <your-ingestion-key>

Click Save.

Creating a logs destination in Cloudflare Workers Observability
Logs destination configured for SigNoz

Verify these values:

Configure Wrangler

Add an observability block to your Wrangler config. Use the destination names you created above:

{
  "observability": {
    "traces": {
      "enabled": true,
      "destinations": ["signoz-traces"],
      "head_sampling_rate": 0.05,
      "persist": false
    },
    "logs": {
      "enabled": true,
      "destinations": ["signoz-logs"],
      "head_sampling_rate": 0.6,
      "persist": false
    }
  }
}

Destination names are case-sensitive and must match what you saved in the dashboard.

Key options:

  • head_sampling_rate: fraction of requests to sample (0.0 to 1.0). The values above match Cloudflare's recommended defaults. Set to 1 temporarily to validate data is flowing, then reduce.
  • persist: false sends data only to SigNoz. Set to true to also store data in Cloudflare's dashboard (Cloudflare charges apply separately).

Skip the logs block if you only need traces, or skip traces if you only need logs.

Deploy

wrangler deploy

Send traffic to your Worker. Data appears in SigNoz within a few minutes.

Validate

  • Traces: Open Traces in SigNoz. Spans from your Worker carry attributes like worker_name and script_name.
  • Logs: Open Logs in SigNoz. Trigger console.log() in your Worker. Log entries appear with the same worker_name attribute.

Check delivery status under Workers Observability → Destinations in your Cloudflare dashboard:

StatusMeaning
Last: n minutes agoDelivering successfully
Never runNo traffic yet, or sampling rate is 0
ErrorEndpoint URL or ingestion key is wrong

Troubleshooting

Destination shows Error

Recheck:

  • OTLP endpoint region — see SigNoz regions
  • Signal path: traces use /v1/traces, logs use /v1/logs. Wrong path silently drops data.
  • signoz-ingestion-key header value — copy it fresh from SigNoz settings

Destination shows Never run

Send traffic to your Worker. If it stays at Never run after requests arrive:

  • Confirm enabled: true in your Wrangler config (wrangler.jsonc or wrangler.toml)
  • Confirm the destination name in destinations matches the dashboard name exactly (case-sensitive)
  • Confirm head_sampling_rate is greater than 0

Traces appear but logs do not (or vice versa)

Each signal needs its own destination. Verify you created separate destinations for Traces type and Logs type, and that each wrangler.jsonc block references the correct destination name.

Sampling rate too low

Set head_sampling_rate: 1 temporarily to confirm data flows end to end, then reduce to your target rate.

Limitations

  • No metrics: OTLP export covers traces and logs only. Metrics are not supported.
  • Workers Paid required: the Workers free plan does not support OTLP export destinations.
  • Beta billing: OTLP export is in beta. Check Cloudflare's current pricing for current rates.
  • Logs scope: only application logs (console.log() output and system-generated logs) are exported. See supported telemetry types for the full list.

Next Steps

Get Help

If you need help with the steps in this topic, please reach out to us on SigNoz Community Slack.

If you are a SigNoz Cloud user, please use in product chat support located at the bottom right corner of your SigNoz instance or contact us at cloud-support@signoz.io.

Last updated: June 15, 2026

Edit on GitHub

Was this page helpful?

Your response helps us improve this page.