fix(web-probe): classify observer refresh aborts (#765)
Co-authored-by: Codex <codex@noreply.local>
This commit is contained in:
@@ -3523,7 +3523,7 @@ function buildRuntimeAlerts(samples, control, network, consoleEvents, errors) {
|
||||
const consoleAlerts = consoleEvents
|
||||
.filter((item) => /error|warning|warn|assert/iu.test(String(item?.type || "")) || isDiagnosticText(item?.text))
|
||||
.map((item) => consoleAlertEvent(item, promptTimes));
|
||||
const significantConsoleAlerts = consoleAlerts.filter((item) => !isBenignLongLivedStreamClosureAlert(item));
|
||||
const significantConsoleAlerts = consoleAlerts.filter((item) => !isBenignLongLivedStreamClosureAlert(item) && !isObserverRefreshClosureAlert(item, observerRefreshTimes));
|
||||
const pageErrors = errors.map((item) => ({
|
||||
ts: item.ts ?? null,
|
||||
promptIndex: promptIndexForTs(promptTimes, item.ts),
|
||||
@@ -3804,10 +3804,11 @@ function isBenignLongLivedStreamClosureAlert(event) {
|
||||
}
|
||||
|
||||
function isObserverRefreshClosureAlert(event, observerRefreshTimes) {
|
||||
if (!["/v1/workbench/events", "/v1/web-performance"].includes(String(event?.urlPath || ""))) return false;
|
||||
const urlPath = String(event?.urlPath || "");
|
||||
if (!["/v1/workbench/events", "/v1/web-performance"].includes(urlPath) && !/^\/v1\/workbench\/traces\/[^/]+\/events$/u.test(urlPath)) return false;
|
||||
if (event.status !== null && event.status !== undefined && Number(event.status) > 0) return false;
|
||||
const text = String(event.failureKind || event.errorPreview || event.preview || "");
|
||||
if (!/ERR_NETWORK_CHANGED|ERR_ABORTED|net::ERR_NETWORK_CHANGED|net::ERR_ABORTED|aborted|network changed/iu.test(text)) return false;
|
||||
if (!/ERR_NETWORK_CHANGED|ERR_ABORTED|ERR_INCOMPLETE_CHUNKED_ENCODING|ERR_INVALID_CHUNKED_ENCODING|net::ERR_NETWORK_CHANGED|net::ERR_ABORTED|aborted|network changed|incomplete chunked|invalid chunked/iu.test(text)) return false;
|
||||
const ts = Date.parse(String(event.ts || ""));
|
||||
return Number.isFinite(ts) && observerRefreshTimes.some((refreshTs) => Math.abs(ts - refreshTs) <= 8000);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user