feat(ssr): вынести обработку SSR ошибок в отдельный файл

- Создан resources/js/ssr/errorHandler.js для логирования SSR ошибок
- SSR ошибки теперь записываются в storage/logs/ssr-errors.log
- Обновлён ssr.js с использованием кастомного error handler
- Добавлен storage/logs в .gitignore

Теперь SSR ошибки не засоряют основные логи приложения

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
F4ilji
2026-04-07 22:55:31 +05:00
co-authored by Qwen-Coder
parent d7c6d23a6b
commit bd28fc60d7
5 changed files with 73 additions and 6 deletions
+10 -2
View File
@@ -6,6 +6,7 @@ import { createSSRApp, h } from 'vue'
import { ZiggyVue } from '../../vendor/tightenco/ziggy/dist/vue.m';
import { default as Router } from '../../vendor/tightenco/ziggy/dist/index.m.js';
import { createRouteMixin } from './mixins/RouteMixin.js';
import { createSsrErrorHandler, logSsrError } from './ssr/errorHandler.js';
createServer(page =>
createInertiaApp({
@@ -20,7 +21,9 @@ createServer(page =>
render: () => h(App, props),
});
ssrApp.config.errorHandler = () => null;
// SSR error handler - logs to separate file
const ssrErrorHandler = createSsrErrorHandler();
ssrApp.config.errorHandler = ssrErrorHandler;
ssrApp.config.warnHandler = () => null;
const ziggyConfig = {
@@ -42,5 +45,10 @@ createServer(page =>
.use(plugin)
.use(ZiggyVue, ziggyConfig);
},
}),
}).catch(error => {
// Catch Inertia SSR errors and log them separately
logSsrError(error);
// Re-throw to maintain normal error flow
throw error;
})
);