NodeJS ExpressJS - how, um Fehler zu protokollieren, die für die Produktion server?

Wie kann ich melden Sie alle Fehler von ExpressJS-apps in einer Datei?

Ich weiß, ich kann mich einloggen, einen Schlanken Rahmen einfach mit monolog:

$app->get('/tickets', function (Request $request, Response $response) {
    $this->logger->addInfo("Something interesting happened");

    $mapper = new Simon\TicketMapper($this->db);
    $tickets = $mapper->getTickets();

    $response->getBody()->write(var_export($tickets, true));
    return $response;
});

In Ausdrücken, die ich in der Regel melden Sie den Fehler-Konsole für Entwicklung:

Model.findOne(options, function(err, doc) {

    var output = {};
    if (err) {
        console.log("Error retrieving doc: " + err);
    }

Aber in meinem Produktion server, ich brauche eine hilfreiche log-Datei, wenn die app schief geht.

Irgendwelche Ideen?

In Express app.js, hat es dieser:

//development error handler
//will print stacktrace
if (app.get('env') === 'development') {

  app.use(function(err, req, res, next) {
    res.status(err.status || 500);
    res.render('error', {
        message: err.message,
        error: err
    });
  });

}

//production error handler
//no stacktraces leaked to user
app.use(function(err, req, res, next) {
    res.status(err.status || 500);
    res.render('error', {
        message: err.message,
        error: {}
    });
});

Aber wie schalte ich die Produktion auf? Ist es das gleiche wie monolog, die ich brauche?

InformationsquelleAutor laukok | 2017-03-27
Schreibe einen Kommentar