From 15fdf77be868dce817f5ec8a7837f2e642abc05b Mon Sep 17 00:00:00 2001 From: Jennie Robinson Faber Date: Sat, 4 Apr 2026 12:35:26 +0100 Subject: [PATCH] feat: add /api/health endpoint for uptime monitoring --- server/api/health.get.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 server/api/health.get.js diff --git a/server/api/health.get.js b/server/api/health.get.js new file mode 100644 index 0000000..5a3f7de --- /dev/null +++ b/server/api/health.get.js @@ -0,0 +1,19 @@ +import mongoose from 'mongoose' +import { connectDB } from '../utils/mongoose.js' + +export default defineEventHandler(async () => { + try { + await connectDB() + const dbState = mongoose.connection.readyState + // readyState: 0 = disconnected, 1 = connected, 2 = connecting, 3 = disconnecting + if (dbState !== 1) { + throw new Error('Database not connected') + } + return { status: 'ok', db: 'connected' } + } catch { + throw createError({ + statusCode: 503, + data: { status: 'error', db: 'disconnected' }, + }) + } +})