使用 Inngest and Trigger.dev job telemetry 傳送並驗證事件
在受控應用程式邊界使用 Inngest and Trigger.dev job telemetry,保持事件契約較小,並在建置聚合檢視之前驗證已知結果。
- 1
選擇結果
後台作業監控
- 2
定義合約
提供商、job_name、run_id、queue_name 和 trigger_type
- 3
在結果處發出
僅當需要嘗試級別分析時才發出嘗試事件,併發出一個單獨的終止事件,因此重試不會增加已完成的作業計數。
- 4
核實證據
Exercise a known fixture, then inspect job_completed for one correctly typed terminal row.
開始之前
開始之前
- 具有穩定函式、任務和執行識別符號的 Inngest 函式或 Trigger.dev 任務
- 觀察成功、耗盡重試和取消的生命週期掛鉤或終端處理程式
- 冪等副作用以及嘗試和最終執行結果之間的明確區別
交貨設定
安裝並初始化伺服器端
在僅伺服器程式碼中匯入 telemetry-sh 並使用 process.env.TELEMETRY_API_KEY 對其進行一次初始化。 將攝取憑據保留在瀏覽器包、客戶端可見的環境變數、原始碼控制、日誌和異常訊息之外。
npm安裝
npm install telemetry-sh- 1準備一個具有有限網路行為的可重用伺服器端交付客戶端。
- 2在成功、失敗、重試或超時邊界處新增結果事件。
- 3在啟用警示之前傳送受控裝置並檢查儲存的行。
片段
從一個結構化事件開始
在工作流程完成、失敗或重試的位置新增此形狀。然後從真實的欄位建置儀表板。
Inngest and Trigger.dev job telemetry事件
await telemetry.log("job_completed", {
provider: "inngest",
job_name: "sync_stripe_subscription",
run_id: runId,
queue_name: "billing",
attempt: 1,
status: "success",
duration_ms: 4120,
item_count: 37,
retry_exhausted: false,
release: process.env.APP_RELEASE,
});事件結構
提供商、job_name、run_id、queue_name 和 trigger_type
嘗試、狀態、duration_ms、scheduled_at、started_at 和 error_type
item_count、retry_exhausted、idempotency_outcome 和釋放
檢查設定
檢查站 1
僅當需要嘗試級別分析時才發出嘗試事件,併發出一個單獨的終止事件,因此重試不會增加已完成的作業計數。
檢查站 2
使用提供程式生命週期或失敗掛鉤進行耗盡重試;捕獲的步驟錯誤不一定是失敗的功能或任務。
檢查站 3
使用冪等裝置測試重放和重試行為,以便監控不會隱藏重複的副作用。
驗證
證明事件已到達
在演練已知的成功和失敗案例後執行此命令。如果您的最終事件契約與程式碼片段不同,請替換後備資料表名稱。
Inngest and Trigger.dev job telemetry 驗證查詢
SELECT *
FROM job_completed
ORDER BY timestamp_utc DESC
LIMIT 20;實施參考
在啟用新的生產路徑之前,請檢查事件合約、資料安全指南和上游主要文件。
在哪裡記錄事件
保持結果事件小且可恢復
該模式提供了
- 除了上游工作流程之外,還有一個有界的、SQL 就緒的結果。
- 用於儀表板、警示和跨事件關聯的穩定欄位。
- 用於驗證成功、失敗、重試和超時行為的夾具驅動路徑。
該模式不提供
- OTLP 匯出器、自動收集管道或詳細追蹤和診斷日誌的替代品。
- 僅因為有效負載包含事件 ID,所以僅傳送一次。
- 收集原始提供商有效負載、使用者內容、憑證或受監管資料的權限。
事件結構描述範例
此工作流程的事件結構描述
在將查詢或程式碼片段適應生產之前,請檢查行粒度、發出邊界、所需型別、隱私類、範例有效負載和驗證清單。
相關產品功能
繼續此工作流程 警示
將經過審查的可靠性查詢提升到擁有的閾值和回應工作流程中。
相關 SQL 查詢範例
更多 SQL 範例
針對此工作流程中的結構化欄位執行查詢,檢查範例結果,並將有用的答案轉換為儀表板或警示。
重建相關的工作流程時間線
在最近一次失敗的工作流程中,按順序發生了什麼?
開啟查詢範例測量後台作業重試和失敗率
哪些後台作業消耗的重試次數最多或仍然失敗?
開啟查詢範例使用 SQL 查詢停滯的後台作業
哪些作業已啟動但從未產生終止事件?
開啟查詢範例按作業測量佇列等待時間
哪些工作在工人開始之前等待的時間最長?
開啟查詢範例測量死信佇列成長
哪些佇列新增死信作業的速度比解決死信作業的速度快?
開啟查詢範例檢測錯過的 Cron 計劃
哪些預定作業的執行時間晚於記錄的時間間隔?
開啟查詢範例檢測後台作業重試風暴
目前哪些工作型別在重試上花費的工作量最多?
開啟查詢範例按實施系列瀏覽
比較相關整合模式
與此整合配對的範本
更多整合