The Datadog RUM SDK can unintentionally collide with Snowplow tracking due to Access-Control-Allow-Headers restrictions on the Snowplow Collector. This can be resolved by updating the allowedTracingUrls parameter to target your non-Snowplow domains.
Verifying the problem
This problem manifests as an Access-Control-Allow-Headers CORS error when Datadog tracing attempts to run a preflight check on the tracking domain. Inspecting the errors in your browser Developer Console should allow you to confirm the problem.
Access to XMLHttpRequest at '<endpoint>' from origin '<origin>' has been blocked by CORS policy: Request header field traceparent is not allowed by Access-Control-Allow-Headers in preflight response.
Configuring the Datadog RUM SDK
Datadog provides the allowedTracingUrls initialization option so that you may restrict what domains are traced. This is an array of regex-supported values to limit the targeted domains.
You can find out more about this in the Datadog documentation.
If your Snowplow tracker is configured to use the get
eventMethod, ensure your regex doesn't unintentionally match tracking requests as the page domain is captured in the request string.