活動合約
查詢期望的欄位
| 欄位 | 型別 | 為什麼存在 |
|---|---|---|
| timestamp_utc | Timestamp | 資源完成時間。 |
| resource_host | Utf8 | 批准的主機名,不帶路徑或查詢值。 |
| resource_type | Utf8 | 指令碼、樣式表、影象、獲取或其他有界類。 |
| duration_ms | Float64 | 資源持續時間。 |
| transfer_bytes | Int64 | 傳輸回應位元組(如果可用)。 |
| status | Utf8 | 成功、失敗或被阻止。 |
DataFusion SQL
複製查詢
sql
SELECT
resource_host,
resource_type,
COUNT(*) AS resources,
approx_percentile_cont(duration_ms, 0.95) AS p95_duration_ms,
SUM(transfer_bytes) AS transfer_bytes,
SUM(CASE WHEN status <> 'success' THEN 1 ELSE 0 END) AS failures
FROM frontend_resource_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY resource_host, resource_type
HAVING COUNT(*) >= 20
ORDER BY p95_duration_ms DESC, failures DESC;此只讀查詢是針對空型別資料表計劃和執行的 阿帕奇 DataFusion 45.2.0。確定性樣本輸出是綜合的並單獨審查;根據您自己的資料驗證欄位型別、閾值和業務定義。 閱讀測試方法。
查詢結果
按主機劃分的 p95 資源持續時間
與第一方提取組相比,分析指令碼速度較慢且失敗的頻率更高。
analytics.example
1,820 ms
comparison 42 ms
api.example
910 ms
comparison 18 ms
| resource_host | resource_type | resources | p95_duration_ms | transfer_bytes | failures |
|---|---|---|---|---|---|
| analytics.example | script | 2,140 | 1,820 | 68,480,000 | 42 |
| api.example | fetch | 8,210 | 910 | 124,200,000 | 18 |
綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。
SQL 是如何工作的
- 1主機和型別保留所有權,而不儲存完整的資源 URL。
- 2尾部持續時間顯示第三方間歇性緩慢。
- 3傳輸的位元組有助於區分延遲和有效負載成長。
需要決定的邊緣情況
- 跨源計時詳細資訊取決於瀏覽器策略。
- 快取的資源需要單獨的解釋。
- 切勿儲存簽名的 URL、查詢字串或使用者特定的路徑。
推薦儀表板
- 酒吧:p95_duration_ms(按主機)
- 趨勢:按資源型別劃分的故障
- 資料表:transfer_bytes(按批准的主機)
讓查詢範例發揮作用
相關埋點和指南
繼續分析
在真實事件中執行它
建立資料表,調整欄位並儲存結果
免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。