ノードの専門家ではなく、 log4js -nodeを使用するのはこれが初めてです。
Express を実行している nodejs サーバー上の log4js を使用して、エラー ログとコンソール ログのいずれかを log_file.log ファイルに書き込もうとしています。ここに私の設定ファイルがあります:`
{
"replaceConsole": true,
"appenders": [
{
"type": "file",
"filename":"log_file.log",
"maxLogSize":20480,
"backups": 3,
"category":"relative-logger"
},
{
"type":"logLevelFilter",
"level":"ERROR",
"appender":{
"type":"file",
"filename":"log_file.log"
}
},
{
"appender": {
"type": "smtp",
"recipients": "myemail@gmail.com",
"sender": "myemailadd@gmail.com",
"sendInterval": 60,
"transport": "SMTP",
"SMTP": {
"host": "localhost",
"port": 25
}
}
}]
}`
app.js ファイルでアプリケーションを要求する方法は次のとおりです。
var log4js = require("log4js");
log4js.configure("log_config.json")
logger = log4js.getLogger();
これでlog4jsに手動エラーを送信しています(これをコンソールに正常に記録できますが、log_fileを書き込むことはできません):
logger.error('A mandrill error occurred: ' + e.name + ' - ' + e.message);
そして、jog4js がアプリケーションの通常の ERROR メッセージをキャッチすることを願っています。
log4js に log_file.log にログを記録させるにはどうすればよいですか? smtpを処理するためにnodemailer 0.7、fyiをインストールしました。