CI 整合效能分析
CI 整合效能分析是一項從建置管線自動收集效能遙測資料並偵測回退的功能。
- CI 建置 — 建立遊戲的建置
- 自動測試 — 自動執行預先定義的情境
- 遙測收集 — SDK 將效能資料傳送至 Framedash
- 比較分析 — 自動與前次建置進行效能比較
- 警報 — 當偵測到超過閾值的回退時發出通知
1. 在 CI 環境中設定 SDK
Section titled “1. 在 CI 環境中設定 SDK”初始化 SDK 時,從 CI 環境變數設定 build_id。
TelemetrySDK.Initialize( apiKey: Environment.GetEnvironmentVariable("FRAMEDASH_API_KEY"), buildId: Environment.GetEnvironmentVariable("CI_COMMIT_SHA"));if (auto* Subsystem = GetGameInstance()->GetSubsystem<UFramedashSubsystem>()){ FString ApiKey = FPlatformMisc::GetEnvironmentVariable(TEXT("FRAMEDASH_API_KEY")); FString BuildId = FPlatformMisc::GetEnvironmentVariable(TEXT("CI_COMMIT_SHA")); // 傳遞空字串給 EndpointUrl 以使用預設值 Subsystem->InitializeTelemetry(ApiKey, TEXT(""), BuildId);}2. 定義測試情境
Section titled “2. 定義測試情境”建立巡迴各地圖/區域的測試情境,以收集一致的資料。
3. 設定警報
Section titled “3. 設定警報”在儀表板中設定閾值:
- FPS 較前次建置下降 10% 以上
- 影格時間超過 33ms
- 記憶體使用量較前次建置增加 20% 以上
- Pull Request 效能檢查 — 在合併前偵測回退
- 每夜建置監控 — 每日自動進行建置效能分析
- 發布前品質閘門 — 封鎖未達效能標準的建置