From 082cc270d3d5bc6cbfab32bd47496960915d4dcd Mon Sep 17 00:00:00 2001 From: wkadmin Date: Tue, 21 Oct 2025 18:22:34 +0000 Subject: [PATCH] Actualiser index.js --- index.js | 61 ++++++++++++++++++++++++-------------------------------- 1 file changed, 26 insertions(+), 35 deletions(-) diff --git a/index.js b/index.js index e4c85242..51bc6f78 100644 --- a/index.js +++ b/index.js @@ -1,43 +1,34 @@ -import express from 'express'; -import client from 'prom-client'; -import dotenv from 'dotenv'; +import express from "express"; +import client from "prom-client"; +import dotenv from "dotenv"; dotenv.config(); + const app = express(); -const PORT = process.env.PORT || 4000; +const port = process.env.PORT || 4000; -// --- Prometheus setup --- -const collectDefaultMetrics = client.collectDefaultMetrics; -collectDefaultMetrics(); // CPU, mémoire, etc. +// Middleware JSON +app.use(express.json()); -const httpRequestCounter = new client.Counter({ - name: 'http_requests_total', - help: 'Nombre total de requêtes HTTP reçues', - labelNames: ['method', 'route', 'status'], +// --- 🔹 Partie Prometheus --- +const register = new client.Registry(); + +// Collecte par défaut (CPU, mémoire, etc.) +client.collectDefaultMetrics({ register }); + +// Route /metrics pour Prometheus +app.get("/metrics", async (req, res) => { + res.set("Content-Type", register.contentType); + res.end(await register.metrics()); +}); +// --- 🔹 Fin Prometheus --- + +// Exemple de route API +app.get("/api", (req, res) => { + res.json({ message: "Bienvenue sur The Tip Top API!" }); }); -app.use((req, res, next) => { - res.on('finish', () => { - httpRequestCounter.inc({ - method: req.method, - route: req.route?.path || req.path, - status: res.statusCode, - }); - }); - next(); -}); - -// --- Ton API existante --- -app.get('/api', (req, res) => { - res.json({ message: 'API The Tip Top 🚀' }); -}); - -// --- Endpoint de métriques --- -app.get('/metrics', async (req, res) => { - res.set('Content-Type', client.register.contentType); - res.end(await client.register.metrics()); -}); - -app.listen(PORT, () => { - console.log(`🚀 Backend The Tip Top lancé sur le port ${PORT}`); +// Lancement du serveur +app.listen(port, () => { + console.log(`🚀 Backend The Tip Top lancé sur le port ${port}`); });