<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Experience vital RUM: OpenPipeline drop CSP violations removes from user.events but not from dt.frontend.error.count in Real User Monitoring</title>
    <link>https://community.dynatrace.com/t5/Real-User-Monitoring/Experience-vital-RUM-OpenPipeline-drop-CSP-violations-removes/m-p/305222#M7478</link>
    <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;We monitor a high-traffic e-commerce web frontend. The site sits behind a CDN that injects a Content-Security-Policy-Report-Only header for script monitoring. As a result, the RUM JavaScript captures a large number of CSP violations. Almost none of them are actually enforced:&lt;/P&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;This noise inflates the error rate in Experience Vitals (CSP violations show up at roughly 2–4K/min), and it makes the real errors hard to see.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What we need&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;We want to exclude report-only CSP violations (csp.disposition == "report") from Grail and from the frontend error KPIs. We want to keep the enforced ones, because they are the only violations that actually impact users.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What we configured&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In OpenPipeline → User events:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;A dynamic route in first position, with the matching condition characteristics.has_csp_violation == true and csp.disposition == "report", pointing to a dedicated pipeline.&lt;/LI&gt;
&lt;LI&gt;In that pipeline, a single processing stage with a &lt;EM&gt;Drop record&lt;/EM&gt; processor.&lt;BR /&gt;&lt;BR /&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;What we observe&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The drop works on the event side. In the error detail view (e.g. a report-only violation on one of our first-party URLs), occurrences stop exactly when the pipeline was activated (~11:30). DQL on user.events confirms the report-only events are no longer stored.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AurelienGravier_2-1791799683556.png"&gt;&lt;img src="https://community.dynatrace.com/t5/image/serverpage/image-id/34415i88073DF42ADF68FB/image-size/large?v=v2&amp;amp;px=999" alt="AurelienGravier_2-1791799683556.png" title="AurelienGravier_2-1791799683556.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The metric dt.frontend.error.count (error.type == "csp") is not affected. The Experience Vitals &lt;EM&gt;Performance → Error rate → CSP rule violation&lt;/EM&gt; chart keeps the same level (2–4K/min) after 11:30.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AurelienGravier_1-1791799561005.png"&gt;&lt;img src="https://community.dynatrace.com/t5/image/serverpage/image-id/34411iF600077FB5FEAA45/image-size/large?v=v2&amp;amp;px=999" alt="AurelienGravier_1-1791799561005.png" title="AurelienGravier_1-1791799561005.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Questions&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Is dt.frontend.error.count extracted before or independently of OpenPipeline routing and processing for user events? Is it expected that a drop processor doesn’t affect it?&lt;/LI&gt;
&lt;LI&gt;Is there a supported way to exclude report-only CSP violations from this metric and from the Experience Vitals error rate?&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;If not, would the recommended approach be to build our own error-rate metric (e.g. a metric extraction in OpenPipeline filtered on csp.disposition == "enforce") and use it for dashboards and alerting?&lt;span class="lia-unicode-emoji" title=":downcast_face_with_sweat:"&gt;😓&lt;/span&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Thanks in advance for any insight!&lt;/P&gt;</description>
    <pubDate>Mon, 12 Oct 2026 11:38:39 GMT</pubDate>
    <dc:creator>AurelienGravier</dc:creator>
    <dc:date>2026-10-12T11:38:39Z</dc:date>
    <item>
      <title>Experience vital RUM: OpenPipeline drop CSP violations removes from user.events but not from dt.frontend.error.count</title>
      <link>https://community.dynatrace.com/t5/Real-User-Monitoring/Experience-vital-RUM-OpenPipeline-drop-CSP-violations-removes/m-p/305222#M7478</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;We monitor a high-traffic e-commerce web frontend. The site sits behind a CDN that injects a Content-Security-Policy-Report-Only header for script monitoring. As a result, the RUM JavaScript captures a large number of CSP violations. Almost none of them are actually enforced:&lt;/P&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;This noise inflates the error rate in Experience Vitals (CSP violations show up at roughly 2–4K/min), and it makes the real errors hard to see.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What we need&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;We want to exclude report-only CSP violations (csp.disposition == "report") from Grail and from the frontend error KPIs. We want to keep the enforced ones, because they are the only violations that actually impact users.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What we configured&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In OpenPipeline → User events:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;A dynamic route in first position, with the matching condition characteristics.has_csp_violation == true and csp.disposition == "report", pointing to a dedicated pipeline.&lt;/LI&gt;
&lt;LI&gt;In that pipeline, a single processing stage with a &lt;EM&gt;Drop record&lt;/EM&gt; processor.&lt;BR /&gt;&lt;BR /&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;What we observe&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The drop works on the event side. In the error detail view (e.g. a report-only violation on one of our first-party URLs), occurrences stop exactly when the pipeline was activated (~11:30). DQL on user.events confirms the report-only events are no longer stored.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AurelienGravier_2-1791799683556.png"&gt;&lt;img src="https://community.dynatrace.com/t5/image/serverpage/image-id/34415i88073DF42ADF68FB/image-size/large?v=v2&amp;amp;px=999" alt="AurelienGravier_2-1791799683556.png" title="AurelienGravier_2-1791799683556.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The metric dt.frontend.error.count (error.type == "csp") is not affected. The Experience Vitals &lt;EM&gt;Performance → Error rate → CSP rule violation&lt;/EM&gt; chart keeps the same level (2–4K/min) after 11:30.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="AurelienGravier_1-1791799561005.png"&gt;&lt;img src="https://community.dynatrace.com/t5/image/serverpage/image-id/34411iF600077FB5FEAA45/image-size/large?v=v2&amp;amp;px=999" alt="AurelienGravier_1-1791799561005.png" title="AurelienGravier_1-1791799561005.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Questions&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Is dt.frontend.error.count extracted before or independently of OpenPipeline routing and processing for user events? Is it expected that a drop processor doesn’t affect it?&lt;/LI&gt;
&lt;LI&gt;Is there a supported way to exclude report-only CSP violations from this metric and from the Experience Vitals error rate?&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;If not, would the recommended approach be to build our own error-rate metric (e.g. a metric extraction in OpenPipeline filtered on csp.disposition == "enforce") and use it for dashboards and alerting?&lt;span class="lia-unicode-emoji" title=":downcast_face_with_sweat:"&gt;😓&lt;/span&gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Thanks in advance for any insight!&lt;/P&gt;</description>
      <pubDate>Mon, 12 Oct 2026 11:38:39 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Real-User-Monitoring/Experience-vital-RUM-OpenPipeline-drop-CSP-violations-removes/m-p/305222#M7478</guid>
      <dc:creator>AurelienGravier</dc:creator>
      <dc:date>2026-10-12T11:38:39Z</dc:date>
    </item>
  </channel>
</rss>

