私はアプリケーションにwinstonのログを導入しています。すべての情報やエラーレベルのログをwinstonの.info
と.error
に置き換えたいと思います。これまでのところ、app.listenコールバックから情報メッセージを記録しようとした時以外はすべて動作します。私はこれをやってみましたウィンストンinfo
ログでserver.js
でconsole.log
を交換したいと思います明示app.listenコールバックとしてログメッセージ
const app = require('./src/appStartup');
const appPort = process.env.PORT;
app().listen(appPort,() => {
console.log('Info message here');
});
:ロガーは、私が持っている私のserver.js
ファイルで
const app = require('express')();
const co = require('co');
const cors = require('cors');
const winston = require('winston');
const loggerTimeFormat =() => (new Date()).toLocaleTimeString();
const winstonLogger = new winston.Logger({
transports: [
new winston.transports.Console({
timestamp: loggerTimeFormat,
}),
],
});
module.exports = function appStartup() {
co(function* services() {
app.db = mongo.connect();
app.use(cors());
app.set('logger', winstonLogger);
}).catch((e) => {
console.error(e);
});
return app;
};
を定義している
appStartup.js
ファイル:
const app = require('./src/appStartup');
const appPort = process.env.PORT;
const appObj = app();
appObj.listen(appPort, (appObj.get('logger')) => {
logger.info('Info message here');
});
それが正しい構文であるかどうかわかりませんが、appObj
のParsing error: Assigned to rvalue
はappObj.get('logger')
になります。どのように私はこの仕事をすることができますどのようなアイデア?
ロガー呼び出しに誤字があるようです。あなたはlogger.infoを持っていませんが、ロガーだけです。 – Sri
@Sriはい、それは問題を解決しませんでしたが、それは誤植でした。 – user988544