0

i have problem when i try make log for everytime date change it make new file and stop log when end date , for example

20200709_Chatlog.txt for

2020-07-09  21:56:12:91 - connect   null
2020-07-09  21:56:15:952 - a user connected

20200710_Chatlog.txt for

2020-07-10  21:56:12:91 - connect   null
2020-07-10  21:56:15:952 - a user connected

but my file is always overwrite in the same file date like this 20200709_Chatlog.txt

2020-07-09  21:56:12:91 - connect   null
2020-07-09  21:56:15:952 - a user connected
2020-07-10  21:56:12:91 - connect   null
2020-07-10  21:56:15:952 - a user connected

, but everytime i restart the server new file created my code is

function addZero(i) {
  if (i < 10) {
    i = "0" + i;
  }
  return i;
}

function logDate(){
    var d = new Date();
    var yy = addZero(d.getFullYear());
    var mm = addZero(d.getMonth() + 1);
    var dd = addZero(d.getDate());
    var h = addZero(d.getHours());
    var m = addZero(d.getMinutes());
    var s = addZero(d.getSeconds());
    var ms = addZero(d.getMilliseconds(), 3);
    var tanggal = "";
    
    return tanggal =  +yy+ "-" +mm+ "-" +dd+ "  " +h+ ":" +m+ ":" +s+ ":" +ms + " ";
}

function fileDate(){
    var d = new Date();
    var yy = addZero(d.getFullYear());
    var mm = addZero(d.getMonth() + 1);
    var dd = addZero(d.getDate());
    var tanggal = "";
    
    return tanggal =  +yy+ "" +mm+ "" +dd+ "_";
}

var fs = require('fs');
var util = require('util');
var logFile = fs.createWriteStream(fileDate()+'Chatlog.txt', { flags: 'a' });   // 'w' to truncate 
var logStdout = process.stdout;


console.log = function () {
  logFile.write(logDate()+" - " + util.format.apply(null, arguments)+ '\n');
  logStdout.write(logDate()+" - " + util.format.apply(null, arguments) + '\n');
}
console.error = console.log;

am i do something wrong, please help , and thanks for helping , sorry if my english bad

Lulut
  • 109
  • 9

0 Answers0