/v2/db-status — проверка DNS и подключения к PG. Версия 0.1.18

This commit is contained in:
2026-07-09 00:00:30 +04:00
parent 9dec159e3d
commit a3aaeef5d1
3 changed files with 18 additions and 2 deletions
+16
View File
@@ -65,6 +65,22 @@ function createV2Router({ generateCsrfToken, doubleCsrfProtection } = {}) {
}
});
// ── GET /v2/db-status — проверка подключения к PG (для отладки) ─────
router.get('/db-status', async (req, res) => {
try {
const { pool } = require('./src/db');
const dns = require('dns').promises;
const host = process.env.DB_HOST || 'localhost';
const ips = await dns.resolve4(host).catch(() => ['dns-failed']);
const start = Date.now();
await pool.query('SELECT 1 AS ok');
const result = { ok: true, db_host: host, resolved_ips: ips, query_ms: Date.now() - start };
return res.json(result);
} catch (e) {
return res.json({ ok: false, error: e.message, db_host: process.env.DB_HOST || 'unknown' });
}
});
// ── GET /v2/iam-gateway-test — сравнение API (только админ) ────────
router.get('/iam-gateway-test', resolveContext, async (req, res) => {
if (!req.canAdmin) return res.status(403).send('Доступ запрещён');