﻿---
title: Troubleshooting EDOT Browser
description: Troubleshoot EDOT Browser telemetry export and common issues.
url: https://www.elastic.co/elastic/docs-builder/docs/3016/reference/opentelemetry/edot-sdks/browser/troubleshooting
products:
  - Elastic Cloud Serverless
  - Elastic Distribution of OpenTelemetry Browser (RUM)
  - Elastic Distribution of OpenTelemetry SDK
  - Elastic Observability
applies_to:
  - Serverless Observability projects: Generally available
  - Elastic Stack: Generally available
  - Elastic Distribution of OpenTelemetry Browser (RUM): Preview
---

# Troubleshooting EDOT Browser
If telemetry doesn't appear in Elastic Observability, try the following:
- Confirm the `otlpEndpoint` option points to your reverse proxy (not directly to Elastic Observability) and doesn't include signal paths like `/v1/traces`.
- Check the browser console for network errors or OpenTelemetry-related messages. Cross-Origin Resource Sharing (CORS) errors often mean the reverse proxy is not sending the right `Access-Control-Allow-Origin` or preflight response.
- Ensure the reverse proxy can reach your EDOT Collector or Elastic Cloud Managed OTLP endpoint. To do so, check proxy logs for connection or authorization failures.
- Ensure service name is set and doesn't contain special characters.
- Set `logLevel` to `debug` or `verbose` in the `startBrowserSdk` options to see detailed export and instrumentation output in the console.

If you use a Content Security Policy, ensure the proxy or OTLP endpoint domain is in the `connect-src` directive. For bundler or module resolution errors, refer to [OpenTelemetry for Real User Monitoring (RUM)](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/3016/solutions/observability/applications/otel-rum) and the general [OpenTelemetry ingest troubleshooting](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/3016/troubleshoot/ingest/opentelemetry) docs.

## Get in touch

If the troubleshooting steps above don't resolve your issue, you can reach the team through the [Elastic discuss forum](https://discuss.elastic.co/tags/c/observability/apm/58/rum) or by opening a GitHub issue. Use the following guidance to choose the right repo:
- **Open an issue in the [EDOT Browser repo](https://github.com/elastic/elastic-otel-rum-js/issues/new)** if the issue relates to:
  - EDOT Browser-specific behavior or configuration options (for example, `startBrowserSdk`, `otlpEndpoint`)
- Elastic-specific defaults or signal configuration
- EDOT Browser packaging or installation
- Sending data to Elastic Observability
- **Open an issue in the [OpenTelemetry JS repo](https://github.com/open-telemetry/opentelemetry-js/issues/new) or [JS contrib repo](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/new)** if the issue relates to:
  - A specific instrumentation (for example, `@opentelemetry/instrumentation-fetch`, `@opentelemetry/instrumentation-user-interaction`)
- OpenTelemetry SDK core behavior
- OpenTelemetry specification compliance


## Next steps

- Refer to [Known limitations](/elastic/docs-builder/docs/3016/reference/opentelemetry/edot-sdks/browser/supported-technologies#known-limitations) for what is not yet supported.
- Refer to [Set up EDOT Browser](https://www.elastic.co/elastic/docs-builder/docs/3016/reference/opentelemetry/edot-sdks/browser/setup), [Install the agent](https://www.elastic.co/elastic/docs-builder/docs/3016/reference/opentelemetry/edot-sdks/browser/install-agent), and [Proxy and CORS](https://www.elastic.co/elastic/docs-builder/docs/3016/reference/opentelemetry/edot-sdks/browser/proxy-cors) for installation and proxy configuration.
- For general OTLP ingest issues, refer to [OpenTelemetry ingest troubleshooting](https://docs-v3-preview.elastic.dev/elastic/docs-builder/docs/3016/troubleshoot/ingest/opentelemetry).