Ich kann mich nicht bei Morgan anmelden. Es werden keine Informationen in der Konsole protokolliert. Die Dokumentation sagt nicht, wie man es benutzt.
Ich möchte sehen, was eine Variable ist. Dies ist ein Code aus der response.js
Datei des ExpressJS-Frameworks:
var logger = require("morgan");
res.render = function(view, options, fn){
options = options || {};
var self = this;
var req = this.req;
var app = req.app;
// support callback function as second arg
if ('function' == typeof options) {
fn = options, options = {};
}
// merge res.locals
options._locals = self.locals;
// default callback to respond
fn = fn || function(err, str){
if (err) return req.next(err);
self.send(str);
};
// Here I want to see what fn is
// But it doesn't show me anything in console
// How to use it?
logger(fn);
// render
app.render(view, options, fn);
};
Wie benutzt man Morgan?
console.log()
Sie die Debug-Bibliothek nicht verwenden , sondern überall in Ihrem Code verwenden können und sich nicht darum kümmern müssen, sie in der Produktion zu entfernen. github.com/visionmedia/debugIch hatte vor dem gleichen Problem und stattdessen habe ich Winston verwendet. Wie oben erwähnt, dient Morgan der automatisierten Protokollierung von Anfragen / Antworten. Winston kann fast genauso konfiguriert werden wie log4Net / log4J, hat Schweregrade, verschiedene Streams, bei denen Sie sich anmelden können usw.
Beispielsweise:
npm install winston
Wenn Sie dann den folgenden Code irgendwo in Ihrer Anwendungsinitialisierung aufrufen:
Hinweis: Vor dem Aufrufen des obigen Codes ist winston.loggers leer, dh Sie haben noch keine Logger konfiguriert. Ähnlich wie bei den Log4Net / J XmlConfigure-Methoden müssen Sie sie zuerst aufrufen, um die Protokollierung zu starten.
Dann, später, wo immer Sie in Ihrem Anwendungsserver Code tun können:
Hoffentlich hilft das.
Weitere Informationen zur Dokumentation finden Sie unter: https://www.npmjs.com/package/winston
quelle
Morgan: - Morgan ist eine Middleware, mit deren Hilfe wir die Kunden identifizieren können, die auf unsere Anwendung zugreifen. Grundsätzlich ein Logger.
Um Morgan zu verwenden, müssen wir die folgenden Schritte ausführen: -
npm install --save morgan
Dadurch wird der Datei json.package Morgan hinzugefügt
var morgan = require('morgan');
3> // Schreibstrom erstellen (im Anhänge-Modus)
Hinweis: Stellen Sie sicher, dass Sie nicht blind über dem Lot liegen. Stellen Sie sicher, dass Sie alle Bedingungen haben, die Sie benötigen.
Oben wird automatisch eine access.log-Datei für Ihr Stammverzeichnis erstellt, sobald der Benutzer auf Ihre App zugreift.
quelle
Beispiel nodejs + express + morgan
quelle
In meinem Fall:
UPDATE: Ich habe Visual Studio-Code verwendet und musste diesen meiner Startkonfiguration hinzufügen
Vorschlag: Wenn Sie von einer IDE ausgeführt werden, führen Sie diese direkt über die Befehlszeile aus, um sicherzustellen, dass die IDE das Problem nicht verursacht.
quelle
console.log()
auch in die Standardausgabe geschrieben?Vielleicht möchten Sie versuchen, Mongo-Morgan-Ext zu verwenden
Die Verwendung ist:
Die erwartete Ausgabe ist
quelle
Die Verwendung von Morgan ist ziemlich einfach. Wie aus der Dokumentation hervorgeht , gibt es verschiedene Möglichkeiten, mit Morgan die gewünschte Ausgabe zu erzielen. Es wird mit vorkonfigurierten Protokollierungsmethoden geliefert, oder Sie können eine selbst definieren. Z.B.
Dies gibt Ihnen die Vorkonfiguration winzig. Sie werden in Ihrem Terminal feststellen, was es tut. Wenn Sie damit nicht zufrieden sind und mehr wollen, z. B. die Anforderungs-URL, dann kommen hier Token ins Spiel.
dann benutze es so:
Überprüfen Sie die Dokumentation, die dort hervorgehoben ist.
quelle