fix: healthz всегда 200, страница показывает реальный статус БД
This commit is contained in:
@@ -16,19 +16,22 @@ app.use(express.static(path.join(__dirname, 'public')));
|
|||||||
// Парсинг форм
|
// Парсинг форм
|
||||||
app.use(express.urlencoded({ extended: true }));
|
app.use(express.urlencoded({ extended: true }));
|
||||||
|
|
||||||
// Health check (для nubes_nodejs)
|
// Health check — всегда 200 если сервер жив.
|
||||||
app.get('/healthz', async (req, res) => {
|
// Статус БД проверяется отдельно.
|
||||||
try {
|
app.get('/healthz', (req, res) => {
|
||||||
await checkConnection();
|
res.status(200).send('OK');
|
||||||
res.status(200).send('OK');
|
|
||||||
} catch (e) {
|
|
||||||
res.status(500).send('DB error');
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Главная страница
|
// Главная — показывает реальный статус БД
|
||||||
app.get('/', (req, res) => {
|
app.get('/', async (req, res) => {
|
||||||
res.render('index', { title: 'IP WhiteList' });
|
let dbStatus = 'неизвестно';
|
||||||
|
try {
|
||||||
|
await checkConnection();
|
||||||
|
dbStatus = 'подключена';
|
||||||
|
} catch (e) {
|
||||||
|
dbStatus = 'ошибка: ' + e.message;
|
||||||
|
}
|
||||||
|
res.render('index', { title: 'IP WhiteList', dbStatus });
|
||||||
});
|
});
|
||||||
|
|
||||||
// Не падаем если БД недоступна — healthcheck покажет статус
|
// Не падаем если БД недоступна — healthcheck покажет статус
|
||||||
|
|||||||
+1
-1
@@ -8,6 +8,6 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1><%= title %></h1>
|
<h1><%= title %></h1>
|
||||||
<p>Сервис работает. БД подключена.</p>
|
<p>Сервис работает. БД: <strong><%= dbStatus %></strong></p>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user