feat(log): color log
This commit is contained in:
7
package-lock.json
generated
7
package-lock.json
generated
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "rats-search",
|
"name": "rats-search",
|
||||||
"version": "0.26.2",
|
"version": "0.27.0",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@ -1964,6 +1964,11 @@
|
|||||||
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
|
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"ansi-256-colors": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-256-colors/-/ansi-256-colors-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-kQ3lDvzHwJ49gvL4er1rcAwYgYo="
|
||||||
|
},
|
||||||
"ansi-align": {
|
"ansi-align": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz",
|
||||||
|
@ -111,6 +111,7 @@
|
|||||||
"buildweb": "node src/background/webpack.js"
|
"buildweb": "node src/background/webpack.js"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"ansi-256-colors": "^1.1.0",
|
||||||
"bencode": "^2.0.0",
|
"bencode": "^2.0.0",
|
||||||
"bitfield": "^2.0.0",
|
"bitfield": "^2.0.0",
|
||||||
"compare-versions": "^3.1.0",
|
"compare-versions": "^3.1.0",
|
||||||
|
@ -78,25 +78,44 @@ if (!fs.existsSync(app.getPath("userData"))){
|
|||||||
const logFile = fs.createWriteStream(app.getPath("userData") + '/rats.log', {flags : 'w'});
|
const logFile = fs.createWriteStream(app.getPath("userData") + '/rats.log', {flags : 'w'});
|
||||||
const logStdout = process.stdout;
|
const logStdout = process.stdout;
|
||||||
|
|
||||||
|
const colors = require('ansi-256-colors');
|
||||||
|
const stringHashCode = (str) => {
|
||||||
|
let hash = 0, i, chr;
|
||||||
|
if (str.length === 0)
|
||||||
|
return hash;
|
||||||
|
for (i = 0; i < str.length; i++) {
|
||||||
|
chr = str.charCodeAt(i);
|
||||||
|
hash = ((hash << 5) - hash) + chr;
|
||||||
|
hash |= 0; // Convert to 32bit integer
|
||||||
|
}
|
||||||
|
return hash;
|
||||||
|
};
|
||||||
|
|
||||||
console.log = (...d) => {
|
console.log = (...d) => {
|
||||||
const date = (new Date).toLocaleTimeString()
|
const date = (new Date).toLocaleTimeString()
|
||||||
logFile.write(`[${date}] ` + util.format(...d) + '\n');
|
logFile.write(`[${date}] ` + util.format(...d) + '\n');
|
||||||
logStdout.write(util.format(...d) + '\n');
|
logStdout.write(util.format(...d) + '\n');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
global.logT = (type, ...d) => {
|
||||||
|
const date = (new Date).toLocaleTimeString()
|
||||||
|
logFile.write(`[${date}] [${type}] ` + util.format(...d) + '\n');
|
||||||
|
logStdout.write(colors.fg.codes[Math.abs(stringHashCode(type)) % 256] + `[${type}]` + colors.reset + ' ' + util.format(...d) + '\n');
|
||||||
|
}
|
||||||
|
|
||||||
// print os info
|
// print os info
|
||||||
console.log('Rats', app.getVersion())
|
logT('system', 'Rats', app.getVersion())
|
||||||
console.log('Platform:', os.platform())
|
logT('system', 'Platform:', os.platform())
|
||||||
console.log('Arch:', os.arch())
|
logT('system', 'Arch:', os.arch())
|
||||||
console.log('OS Release:', os.release())
|
logT('system', 'OS Release:', os.release())
|
||||||
console.log('CPU:', os.cpus()[0].model)
|
logT('system', 'CPU:', os.cpus()[0].model)
|
||||||
console.log('CPU Logic cores:', os.cpus().length)
|
logT('system', 'CPU Logic cores:', os.cpus().length)
|
||||||
console.log('Total memory:', (os.totalmem() / (1024 * 1024)).toFixed(2), 'MB')
|
logT('system', 'Total memory:', (os.totalmem() / (1024 * 1024)).toFixed(2), 'MB')
|
||||||
console.log('Free memory:', (os.freemem() / (1024 * 1024)).toFixed(2), 'MB')
|
logT('system', 'Free memory:', (os.freemem() / (1024 * 1024)).toFixed(2), 'MB')
|
||||||
console.log('NodeJS:', process.version)
|
logT('system', 'NodeJS:', process.version)
|
||||||
|
|
||||||
if(portative)
|
if(portative)
|
||||||
console.log('portative compability')
|
logT('system', 'portative compability')
|
||||||
|
|
||||||
// handle promise rejections
|
// handle promise rejections
|
||||||
process.on('unhandledRejection', r => console.log('Rejection:', r));
|
process.on('unhandledRejection', r => console.log('Rejection:', r));
|
||||||
|
Reference in New Issue
Block a user