check connection db

This commit is contained in:
2025-10-20 10:21:24 +07:00
parent c772b7a9df
commit 8761f1e07e
2 changed files with 33 additions and 0 deletions

20
app.js
View File

@@ -8,6 +8,7 @@ const helmet = require("helmet");
const compression = require("compression");
const unknownEndpoint = require("./middleware/unKnownEndpoint");
const { handleError } = require("./helpers/error");
const { checkConnection } = require("./config");
const app = express();
@@ -24,6 +25,25 @@ app.use("/api", routes);
app.get("/", (req, res) =>
res.send("<h1 style='text-align: center'>HAHALO</h1>")
);
app.get("/check-db", async (req, res) => {
try {
const isConnected = await checkConnection();
res.json({
success: isConnected,
message: isConnected
? "Koneksi database OK"
: "Koneksi database gagal",
});
} catch (error) {
res.status(500).json({
success: false,
message: "Terjadi kesalahan saat cek koneksi database",
error: error.message,
});
}
});
app.use(unknownEndpoint);
app.use(handleError);

View File

@@ -28,6 +28,18 @@ const poolPromise = new sql.ConnectionPool(config)
process.exit(1);
});
async function checkConnection() {
try {
const pool = await poolPromise;
await pool.request().query('SELECT 1 AS isConnected');
console.log('🔍 SQL Server terkoneksi dengan baik');
return true;
} catch (error) {
console.error('⚠️ Gagal cek koneksi SQL Server:', error);
return false;
}
}
/**
* Wrapper query (auto konversi $1 → @p1)
*/
@@ -223,6 +235,7 @@ async function generateKode(prefix, tableName, columnName) {
}
module.exports = {
checkConnection,
query,
buildFilterQuery,
buildStringOrIlike,