improve logging : create logs dir if it doesn't exist, use log dir relative to path, add shebang in app.js to allow starting the app.js as a bin, make longjohn enable only if NODE_ENV == 'dev', make "craftyjs" a binary installed with package when npm install -g

This commit is contained in:
Romain Beaumont 2015-08-30 07:58:47 +02:00
parent d9bfdbf59f
commit 8c06acf155
4 changed files with 28 additions and 9 deletions

2
app.js
View file

@ -1,3 +1,5 @@
#!/usr/bin/env node
var mcServer=require("./index");
var settings = require('./config/settings');

View file

@ -4,7 +4,9 @@ var util = require('util');
var path = require('path');
var requireIndex = require('requireindex');
var serverPlugins = requireIndex(path.join(__dirname, 'lib', 'serverPlugins'));
require("longjohn");
if (process.env.NODE_ENV === 'dev'){
require('longjohn');
}
module.exports = {
createMCServer:createMCServer

View file

@ -1,6 +1,7 @@
var fs = require('fs');
var timeStarted = Math.floor(new Date() / 1000).toString();
var path = require('path');
var mkdirp = require('mkdirp');
module.exports=inject;
@ -16,18 +17,28 @@ function inject(serv,settings)
log('[INFO]: Server listening on port', port);
});
var logFile=path.join("logs",timeStarted + ".log");
function log(message) {
if (settings.logging == true) {
fs.appendFile(path.join(__dirname,'..','..',"logs",timeStarted + ".log") , message + "\n", function (err) {
});
}
if (!settings.logging) return;
fs.appendFile(logFile, message + "\n",function(err){
if (err) console.log(err);
});
}
function createLog() {
fs.writeFile(path.join(__dirname,'..','..',"logs",timeStarted + ".log"), "[INFO]: Started logging...\n",
function (err, data) {
if (err) return console.log(err);
if (!settings.logging) return;
mkdirp("logs", function(err) {
if(err)
{
console.log(err);
return;
}
fs.writeFile(logFile, "[INFO]: Started logging...\n",
function (err) {
if (err) console.log(err);
});
});
}

View file

@ -10,6 +10,9 @@
"email": "romain.rom1@gmail.com"
}
],
"bin": {
"craftyjs": "./app.js"
},
"scripts": {
"test": "mocha --reporter spec"
},
@ -26,7 +29,8 @@
"vec3": "0.1.3",
"requireindex": "~1.0.0",
"prismarine-block": "0.1.0",
"minecraft-data": "0.7.0"
"minecraft-data": "0.7.0",
"mkdirp":"0.5.1"
},
"repository": {
"type": "git",