Sla (#6)
Tests / frontend-test (push) Successful in 1m15s

Co-authored-by: gorbenko.pavel <gorbenko.pavel@tansu.kz>
Reviewed-on: http://git.tnsu.kz/timur.gorodetskiy/request-portal/pulls/6
This commit was merged in pull request #6.
This commit is contained in:
2026-08-13 04:45:02 +00:00
parent 2e6e138e8d
commit 03182dbba4
18 changed files with 133 additions and 175 deletions
@@ -52,16 +52,26 @@ export function describeReason(reason: unknown): string {
}
}
function logError(kind: string, reason: unknown): void {
console.error(`${PREFIX} ${kind}: ${describeReason(reason)}`);
// Стек и объект — отдельными аргументами: так консоль браузера даёт
// раскрыть объект и перейти по стеку, а не показывает «[object Object]».
if (reason instanceof Error && reason.stack) console.error(`${PREFIX} Стек:`, reason.stack);
console.error(`${PREFIX} Причина целиком:`, reason);
}
export function installErrorLogging(): void {
if (installed) return;
installed = true;
window.addEventListener('unhandledrejection', (e: PromiseRejectionEvent) => {
const reason: unknown = e.reason;
console.error(`${PREFIX} Необработанная ошибка: ${describeReason(reason)}`);
// Стек и объект — отдельными аргументами: так консоль браузера даёт
// раскрыть объект и перейти по стеку, а не показывает «[object Object]».
if (reason instanceof Error && reason.stack) console.error(`${PREFIX} Стек:`, reason.stack);
console.error(`${PREFIX} Причина целиком:`, reason);
logError('Необработанная ошибка', e.reason);
});
// Синхронные ошибки страницы. Раньше их ловил ErrorOverlay ради углового
// уведомления; уведомление убрано (чужая ошибка со страницы SharePoint
// выглядела как поломка портала), а разбор нужен — поэтому он переехал сюда.
window.addEventListener('error', (e: ErrorEvent) => {
logError('Ошибка на странице', e.error || e.message);
});
}