From 89eb55a1ff82df496f63b2f83c6f6671db61d9d6 Mon Sep 17 00:00:00 2001 From: Francesco Novy Date: Wed, 15 Nov 2023 09:42:44 +0100 Subject: [PATCH] ref(replay): Add further logging to network body parsing --- .../replay/src/coreHandlers/util/networkUtils.ts | 2 ++ packages/replay/src/coreHandlers/util/xhrUtils.ts | 13 +++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/packages/replay/src/coreHandlers/util/networkUtils.ts b/packages/replay/src/coreHandlers/util/networkUtils.ts index f75ecf0f9bc9..be7b0d193d3d 100644 --- a/packages/replay/src/coreHandlers/util/networkUtils.ts +++ b/packages/replay/src/coreHandlers/util/networkUtils.ts @@ -78,6 +78,8 @@ export function getBodyString(body: unknown): string | undefined { __DEBUG_BUILD__ && logger.warn('[Replay] Failed to serialize body', body); } + __DEBUG_BUILD__ && logger.info('[Replay] Skipping network body because of body type', body); + return undefined; } diff --git a/packages/replay/src/coreHandlers/util/xhrUtils.ts b/packages/replay/src/coreHandlers/util/xhrUtils.ts index b11f8575e2ad..264090084cd9 100644 --- a/packages/replay/src/coreHandlers/util/xhrUtils.ts +++ b/packages/replay/src/coreHandlers/util/xhrUtils.ts @@ -135,15 +135,24 @@ function getResponseHeaders(xhr: XMLHttpRequest): Record { } function _getXhrResponseBody(xhr: XMLHttpRequest): string | undefined { + // We collect errors that happen, but only log them if we can't get any response body + const errors: unknown[] = []; + try { return xhr.responseText; - } catch {} // eslint-disable-line no-empty + } catch (e) { + errors.push(e); + } // Try to manually parse the response body, if responseText fails try { const response = xhr.response; return getBodyString(response); - } catch {} // eslint-disable-line no-empty + } catch (e) { + errors.push(e); + } + + __DEBUG_BUILD__ && logger.warn('[Replay] Failed to get xhr response body', ...errors); return undefined; }