// 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'))