<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Full-Stack on Tarragon</title><link>https://tarrragon.github.io/blog/tags/full-stack/</link><description>Recent content in Full-Stack on Tarragon</description><generator>Hugo -- gohugo.io</generator><language>zh-TW</language><copyright>Tarragon (CC BY 4.0)</copyright><lastBuildDate>Fri, 19 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://tarrragon.github.io/blog/tags/full-stack/index.xml" rel="self" type="application/rss+xml"/><item><title>Datadog RUM</title><link>https://tarrragon.github.io/blog/monitoring/06-commercial-comparison/datadog-rum/</link><pubDate>Fri, 19 Jun 2026 00:00:00 +0000</pubDate><guid>https://tarrragon.github.io/blog/monitoring/06-commercial-comparison/datadog-rum/</guid><description>&lt;blockquote>
&lt;p>&lt;strong>跟 Backend 04 的分工&lt;/strong>：本文從 client-side RUM 角度說明 Datadog 的全棧追蹤、四種 RUM 事件與 session replay。Server-side 的 APM 平台治理（agent 配置、成本治理、OTel 相容遷移、從 New Relic 或 Grafana Stack 遷移）見 &lt;a href="https://tarrragon.github.io/blog/backend/04-observability/vendors/datadog/" data-link-title="Datadog" data-link-desc="All-in-one SaaS 觀測平台、APM / Logs / Metrics / RUM / Security">Backend 04 Datadog vendor page&lt;/a>。&lt;/p>&lt;/blockquote>
&lt;p>Datadog Real User Monitoring（RUM）從全棧 APM 的角度設計 client-side 監控。核心特徵是 client 端的使用者操作可以關聯到 server 端的 trace，形成從按鈕點擊到 database query 的完整請求鏈路。&lt;/p>
&lt;h2 id="全棧追蹤">全棧追蹤&lt;/h2>
&lt;p>Datadog RUM 的 SDK 在 HTTP 請求中自動注入 trace context header。Server 端的 Datadog APM agent 讀取 header，把 server 端的 trace 和 client 端的 action 關聯。&lt;/p>
&lt;p>這個能力在 debug「API 慢」的問題時特別有用 — 從 client 端看到「這個按鈕的回應時間 3 秒」，點進去看到 server 端的 trace 顯示「database query 佔了 2.8 秒」。自架方案和 Sentry 都做不到這個深度的跨層關聯。&lt;/p>
&lt;p>前提是 server 端也使用 Datadog APM。如果 server 端用其他 APM（New Relic、Elastic APM），client-server 的關聯需要自行實作或用 OpenTelemetry 橋接。&lt;/p>
&lt;h2 id="四種-rum-事件">四種 RUM 事件&lt;/h2>
&lt;p>Datadog RUM 收集四種事件，和自架方案的四類事件有對應關係（&lt;a href="https://tarrragon.github.io/blog/monitoring/01-mental-model/commercial-event-mapping/" data-link-title="商業方案的事件類型對應" data-link-desc="Sentry / Crashlytics / GA4 / Datadog RUM 各自如何對應四類事件 — 理解商業方案的分類邏輯才能正確接入">模組一 商業方案對應&lt;/a>）：&lt;/p>
&lt;p>&lt;strong>View&lt;/strong>：頁面或畫面的載入和離開。自動偵測 SPA 的 route 變換，對應 lifecycle 事件。&lt;/p>
&lt;p>&lt;strong>Action&lt;/strong>：使用者操作。自動捕獲 click、tap、scroll，可手動記錄自訂 action，對應 event 事件。&lt;/p>
&lt;p>&lt;strong>Error&lt;/strong>：JS exception、network error、自訂 error，對應 error 事件。&lt;/p>
&lt;p>&lt;strong>Long Task&lt;/strong>：執行時間超過 50ms 的任務（阻塞主執行緒），對應 metric 事件。&lt;/p>
&lt;h2 id="定價">定價&lt;/h2>
&lt;p>Datadog RUM 按 session 數計費（每個 session 是一次使用者訪問）。和 Sentry 按事件數計費不同 — session 計費讓成本更可預測（不會因為單次訪問觸發大量事件而費用暴增）。&lt;/p>
&lt;p>Datadog 的完整方案（RUM + APM + Logs + Infrastructure）費用較高，適合已經用 Datadog 做 server-side 監控的團隊。單獨用 RUM 而 server 端用其他方案，失去全棧追蹤的優勢。&lt;/p>
&lt;p>Datadog RUM 的全棧追蹤能力獨一無二，但如果只需要行為分析而非 APM，&lt;a href="https://tarrragon.github.io/blog/monitoring/06-commercial-comparison/mixpanel-amplitude/" data-link-title="Mixpanel / Amplitude" data-link-desc="行為分析專用方案 vs 通用監控的差異 — Mixpanel 和 Amplitude 的 funnel / cohort / retention 分析能力">Mixpanel / Amplitude&lt;/a> 是更輕量的選擇。和 &lt;a href="https://tarrragon.github.io/blog/monitoring/06-commercial-comparison/sentry-deep-dive/" data-link-title="Sentry 深入" data-link-desc="Error tracking &amp;#43; performance monitoring &amp;#43; session replay 的架構 — Sentry 從 error-first 出發如何擴展到全面可觀測性">Sentry&lt;/a> 的定位差異在於 Sentry 聚焦 error tracking、Datadog 聚焦全棧關聯。&lt;a href="https://tarrragon.github.io/blog/monitoring/06-commercial-comparison/self-hosted-vs-commercial/" data-link-title="自架 vs 商業的判斷決策表" data-link-desc="使用者數、網路範圍、功能需求、合規要求四個維度判斷該自架還是用商業方案">自架 vs 商業的判斷決策表&lt;/a>從使用者規模和功能需求維度做系統性比較。&lt;/p></description><content:encoded><![CDATA[<blockquote>
<p><strong>跟 Backend 04 的分工</strong>：本文從 client-side RUM 角度說明 Datadog 的全棧追蹤、四種 RUM 事件與 session replay。Server-side 的 APM 平台治理（agent 配置、成本治理、OTel 相容遷移、從 New Relic 或 Grafana Stack 遷移）見 <a href="/blog/backend/04-observability/vendors/datadog/" data-link-title="Datadog" data-link-desc="All-in-one SaaS 觀測平台、APM / Logs / Metrics / RUM / Security">Backend 04 Datadog vendor page</a>。</p></blockquote>
<p>Datadog Real User Monitoring（RUM）從全棧 APM 的角度設計 client-side 監控。核心特徵是 client 端的使用者操作可以關聯到 server 端的 trace，形成從按鈕點擊到 database query 的完整請求鏈路。</p>
<h2 id="全棧追蹤">全棧追蹤</h2>
<p>Datadog RUM 的 SDK 在 HTTP 請求中自動注入 trace context header。Server 端的 Datadog APM agent 讀取 header，把 server 端的 trace 和 client 端的 action 關聯。</p>
<p>這個能力在 debug「API 慢」的問題時特別有用 — 從 client 端看到「這個按鈕的回應時間 3 秒」，點進去看到 server 端的 trace 顯示「database query 佔了 2.8 秒」。自架方案和 Sentry 都做不到這個深度的跨層關聯。</p>
<p>前提是 server 端也使用 Datadog APM。如果 server 端用其他 APM（New Relic、Elastic APM），client-server 的關聯需要自行實作或用 OpenTelemetry 橋接。</p>
<h2 id="四種-rum-事件">四種 RUM 事件</h2>
<p>Datadog RUM 收集四種事件，和自架方案的四類事件有對應關係（<a href="/blog/monitoring/01-mental-model/commercial-event-mapping/" data-link-title="商業方案的事件類型對應" data-link-desc="Sentry / Crashlytics / GA4 / Datadog RUM 各自如何對應四類事件 — 理解商業方案的分類邏輯才能正確接入">模組一 商業方案對應</a>）：</p>
<p><strong>View</strong>：頁面或畫面的載入和離開。自動偵測 SPA 的 route 變換，對應 lifecycle 事件。</p>
<p><strong>Action</strong>：使用者操作。自動捕獲 click、tap、scroll，可手動記錄自訂 action，對應 event 事件。</p>
<p><strong>Error</strong>：JS exception、network error、自訂 error，對應 error 事件。</p>
<p><strong>Long Task</strong>：執行時間超過 50ms 的任務（阻塞主執行緒），對應 metric 事件。</p>
<h2 id="定價">定價</h2>
<p>Datadog RUM 按 session 數計費（每個 session 是一次使用者訪問）。和 Sentry 按事件數計費不同 — session 計費讓成本更可預測（不會因為單次訪問觸發大量事件而費用暴增）。</p>
<p>Datadog 的完整方案（RUM + APM + Logs + Infrastructure）費用較高，適合已經用 Datadog 做 server-side 監控的團隊。單獨用 RUM 而 server 端用其他方案，失去全棧追蹤的優勢。</p>
<p>Datadog RUM 的全棧追蹤能力獨一無二，但如果只需要行為分析而非 APM，<a href="/blog/monitoring/06-commercial-comparison/mixpanel-amplitude/" data-link-title="Mixpanel / Amplitude" data-link-desc="行為分析專用方案 vs 通用監控的差異 — Mixpanel 和 Amplitude 的 funnel / cohort / retention 分析能力">Mixpanel / Amplitude</a> 是更輕量的選擇。和 <a href="/blog/monitoring/06-commercial-comparison/sentry-deep-dive/" data-link-title="Sentry 深入" data-link-desc="Error tracking &#43; performance monitoring &#43; session replay 的架構 — Sentry 從 error-first 出發如何擴展到全面可觀測性">Sentry</a> 的定位差異在於 Sentry 聚焦 error tracking、Datadog 聚焦全棧關聯。<a href="/blog/monitoring/06-commercial-comparison/self-hosted-vs-commercial/" data-link-title="自架 vs 商業的判斷決策表" data-link-desc="使用者數、網路範圍、功能需求、合規要求四個維度判斷該自架還是用商業方案">自架 vs 商業的判斷決策表</a>從使用者規模和功能需求維度做系統性比較。</p>
]]></content:encoded></item></channel></rss>