Node.js: eseguire il logging degli errori su file

In Node.js possiamo eseguire il logging degli errori su file.

Node.js di Gabriele Romanato

In Node.js possiamo eseguire il logging degli errori su file.

Installiamo il modulo per le date:


npm install dateformat --save

Quindi definiamo la seguente funzione:


'use strict';

const log = (data, prefix = 'info') => {
    const fs = require('fs');
    const df = require('dateformat');
    let now = new Date();
    let fname = prefix + '_' + df(now, 'yyyy-mm-dd-HH-MM-ss') + '.json';
    let logFile = fs.createWriteStream('./logs/' + fname);
    logFile.write(JSON.stringify(data, null, 2));
    logFile.end();
};

Usiamo la funzione in questo modo:


'use strict';

const app = require('express')();
const users = require('./models/users');

app.get('/users', async (req, res) => {
    try {
        let results = await users.find();
        res.send(results);
    } catch(err) {
        log(err, 'error_find_users');
        res.sendStatus(500);
    }
});

Commenti