1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-09-20 17:28:51 +02:00
phorge-phorge/support/aphlict/server/lib/AphlictLog.js

53 lines
1 KiB
JavaScript
Raw Normal View History

var JX = require('javelin').JX;
var fs = require('fs');
var util = require('util');
JX.install('AphlictLog', {
construct: function() {
this._writeToLogs = [];
this._writeToConsoles = [];
},
members: {
_writeToConsoles: null,
_writeToLogs: null,
addLogfile: function(path) {
var options = {
flags: 'a',
encoding: 'utf8',
mode: 066
};
var logfile = fs.createWriteSteam(path, options);
this._writeToLogs.push(logfile);
return this;
},
addConsole: function(console) {
this._writeToConsoles.push(console);
return this;
},
log: function(pattern) {
var str = util.format.apply(null, arguments);
var date = new Date().toLocaleString();
str = '[' + date + '] ' + str;
var ii;
for (ii = 0; ii < this._writeToConsoles.length; ii++) {
this._writeToConsoles[ii].log(str);
}
for (ii = 0; ii < this._writeToLogs.length; ii++) {
this._writeToLogs[ii].write(str + "\n");
}
}
}
});