formations/developpement/securite_web/ressources/demo-app/app.js

29 lines
910 B
JavaScript

// Voir https://github.com/siimon/prom-client
const client = require('prom-client');
// Voir http://expressjs.com/
const express = require('express')
// Création de notre application Web
const app = express()
// On collecte les métriques proposées par défaut par le module 'prom-client'
const collectDefaultMetrics = client.collectDefaultMetrics;
collectDefaultMetrics({ timeout: 5000 }); // Récolte toutes les 5s
// Définition des métriques
const helloWorldCounter = new client.Counter({
name: 'demoapp_hello_world',
help: 'Total de requêtes sur la page "Hello World"'
});
app.get('/', (req, res) => {
helloWorldCounter.inc()
res.send('Hello World!')
})
// On expose les métriques de notre récolteur sur /metrics
app.get('/metrics', (req, res) => res.send(client.register.metrics()))
// On écoute sur le port 0.0.0.0:3000
app.listen(3000, () => console.log('listening on port 3000'))