-{\r
- "name": "kiwiirc",\r
- "version": "0.8.2-dev",\r
- "description": "A hand-crafted webirc client",\r
- "homepage": "https://www.kiwiirc.com/",\r
- "preferGlobal": "true",\r
- "bin": { "kiwiirc": "./kiwi" },\r
- "repository" : {\r
- "type": "git",\r
- "url": "https://github.com/prawnsalad/KiwiIRC.git"\r
- },\r
- "scripts": {\r
- "postinstall": "node client/build.js"\r
- },\r
- "dependencies": {\r
- "node-static": "0.7.3",\r
- "uglify-js": "2.4.12",\r
- "engine.io": "0.7.9",\r
- "lodash": "2.4.1",\r
- "daemonize2": "0.4.2",\r
- "eventemitter2": "0.4.13",\r
- "ipaddr.js": "0.1.2",\r
- "socksjs": "0.4.4",\r
- "iconv-lite" : "0.2.11",\r
- "spdy": "1.19.1",\r
- "po2json": "0.2.3"\r
- }\r
-}\r
+{
+ "name": "kiwiirc",
+ "version": "0.8.2-dev",
+ "description": "A hand-crafted webirc client",
+ "homepage": "https://www.kiwiirc.com/",
+ "preferGlobal": "true",
+ "bin": {
+ "kiwiirc": "./kiwi"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/prawnsalad/KiwiIRC.git"
+ },
+ "scripts": {
+ "postinstall": "node client/build.js"
+ },
+ "dependencies": {
+ "node-static": "0.7.3",
+ "uglify-js": "2.4.12",
+ "engine.io": "0.7.9",
+ "lodash": "2.4.1",
+ "daemonize2": "0.4.2",
+ "eventemitter2": "0.4.13",
+ "ipaddr.js": "0.1.2",
+ "socksjs": "0.4.4",
+ "iconv-lite": "0.2.11",
+ "spdy": "1.19.1",
+ "po2json": "0.2.3",
+ "winston": "~0.7.2"
+ }
+}
var fs = require('fs'),
events = require('events'),
util = require('util'),
- path = require('path');
+ path = require('path'),
+ winston = require('winston');
var config_filename = 'config.js',
config_dirs = ['/etc/kiwiirc/', __dirname + '/../'],
this.manual_config_file = manual_config_file;
}
} catch (e) {
- console.log('An error occured parsing the config file ' + manual_config_file + ': ' + e.message);
+ //console.log('An error occured parsing the config file ' + manual_config_file + ': ' + e.message);
+ winston.error('An error occured parsing the config file %s: %s', manual_config_file, e.message);
process.exit(1);
}
} else {
- console.log('Could not find config file ' + manual_config_file);
+ //console.log('Could not find config file ' + manual_config_file);
+ winston.error('Could not find config file %s', manual_config_file);
process.exit(1);
}
} else {
case 'ENOENT': // No file/dir
break;
default:
- console.log('An error occured parsing the config file ' + config_dirs[i] + config_filename + ': ' + e.message);
+ //console.log('An error occured parsing the config file ' + config_dirs[i] + config_filename + ': ' + e.message);
+ winston.warn('An error occured parsing the config file %s%s: %s', config_dirs[i], config_filename, e.message);
return false;
}
continue;
-var net = require('net');
+var net = require('net'),
+ winston = require('winston');
var IdentdServer = module.exports = function(opts) {
});
server.on('listening', function() {
- console.log('Ident Server listening on ' + server.address().address + ':' + server.address().port);
+ var addr = server.address();
+ //console.log('Ident Server listening on ' + server.address().address + ':' + server.address().port);
+ winston.info('Ident Server listening on %s:%s', addr.address, addr.port);
});
util = require('util'),
dns = require('dns'),
_ = require('lodash'),
+ winston = require('winston'),
EventBinder = require('./eventbinder.js'),
IrcServer = require('./server.js'),
IrcCommands = require('./commands.js'),
if (!msg) {
// The line was not parsed correctly, must be malformed
- console.log("Malformed IRC line: " + line.replace(/^\r+|\r+$/, ''));
+ //console.log("Malformed IRC line: " + line.replace(/^\r+|\r+$/, ''));
+ winston.warn('Malformed IRC line: %s', line.replace(/^\r+|\r+$/, ''));
return;
}
var util = require('util'),
events = require('events'),
_ = require('lodash'),
+ winston = require('winston'),
IrcConnection = require('./connection.js').IrcConnection;
var State = function (client, save_state) {
});
con.on('error', function IrcConnectionError(err) {
- console.log('irc_connection error (' + hostname + '):', err);
+ //console.log('irc_connection error (' + hostname + '):', err);
+ winston.warn('irc_connection error (%s): %s', hostname, err);
return callback(err.message);
});
var fs = require('fs'),
_ = require('lodash'),
util = require('util'),
+ winston = require('winston'),
WebListener = require('./weblistener.js'),
config = require('./configuration.js'),
modules = require('./modules.js'),
log_file_name = __dirname + '/../' + log_file_name;
}
-
-
- console.log = function() {
- var logfile = fs.openSync(log_file_name, 'a'),
- out;
-
- out = util.format.apply(util, arguments);
-
- // Make sure we out somthing to log and we have an open file
- if (!out || !logfile) return;
-
- out += '\n';
- fs.writeSync(logfile, out, null);
-
- fs.closeSync(logfile);
- };
+ winston.add(winston.transports.File, { filename: log_file_name, json: false});
+ winston.remove(winston.transports.Console);
})();
}
// Make sure we have a valid config file and at least 1 server
if (!global.config || Object.keys(global.config).length === 0) {
- console.log('Couldn\'t find a valid config.js file (Did you copy the config.example.js file yet?)');
+ //console.log('Couldn\'t find a valid config.js file (Did you copy the config.example.js file yet?)');
+ winston.error('Couldn\'t find a valid config.js file (Did you copy the config.example.js file yet?)');
process.exit(1);
}
if ((!global.config.servers) || (global.config.servers.length < 1)) {
- console.log('No servers defined in config file');
+ //console.log('No servers defined in config file');
+ winston.error('No servers defined in config file');
process.exit(2);
}
if (global.config.module_dir) {
(global.config.modules || []).forEach(function (module_name) {
if (modules.load(module_name)) {
- console.log('Module ' + module_name + ' loaded successfuly');
+ //console.log('Module ' + module_name + ' loaded successfuly');
+ winston.info('Module %s loaded successfully', module_name);
} else {
- console.log('Module ' + module_name + ' failed to load');
+ //console.log('Module ' + module_name + ' failed to load');
+ winston.warn('Module %s failed to load', module_name);
}
});
}
serv.listen(server.port, server.address, server);
serv.on('listening', function() {
- console.log('Kiwi proxy listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
+ //console.log('Kiwi proxy listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
+ winston.info('Kiwi proxy listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
});
serv.on('socket_connected', function(pipe) {
});
wl.on('listening', function () {
- console.log('Listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
+ //console.log('Listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
+ winston.info('Listening on %s:%s %s SSL', server.address, server.port, (server.ssl ? 'with' : 'without'));
webListenerRunning();
});
wl.on('error', function (err) {
- console.log('Error listening on %s:%s: %s', server.address, server.port, err.code);
+ //console.log('Error listening on %s:%s: %s', server.address, server.port, err.code);
+ winston.info('Error listening on %s:%s: %s', server.address, server.port, err.code);
// TODO: This should probably be refactored. ^JA
webListenerRunning();
});
// Make sure Kiwi doesn't simply quit on an exception
process.on('uncaughtException', function (e) {
- console.log('[Uncaught exception] ' + e);
- console.log(e.stack);
+ //console.log('[Uncaught exception] ' + e);
+ //console.log(e.stack);
+ winston.error('[Uncaught exception] %s', e, {stack: e.stack});
});
process.on('SIGUSR1', function() {
if (config.loadConfig()) {
- console.log('New config file loaded');
+ //console.log('New config file loaded');
+ winston.info('New config file loaded');
} else {
- console.log("No new config file was loaded");
+ //console.log("No new config file was loaded");
+ winston.info('No new config file was loaded');
}
});
process.on('SIGUSR2', function() {
- console.log('Connected clients: ' + _.size(global.clients.clients).toString());
- console.log('Num. remote hosts: ' + _.size(global.clients.addresses).toString());
+ //console.log('Connected clients: ' + _.size(global.clients.clients).toString());
+ //console.log('Num. remote hosts: ' + _.size(global.clients.addresses).toString());
+ winston.info('Connected clients: %s', _.size(global.clients.clients));
+ winston.info('Num. remote hosts: %s', _.size(global.clients.addresses));
});
var engine = require('engine.io'),
- WebsocketRpc = require('./websocketrpc.js');
+ WebsocketRpc = require('./websocketrpc.js'),
events = require('events'),
http = require('http'),
https = require('https'),
_ = require('lodash'),
spdy = require('spdy'),
ipaddr = require('ipaddr.js'),
+ winston = require('winston'),
Client = require('./client.js').Client,
HttpHandler = require('./httphandler.js').HttpHandler,
rehash = require('./rehash.js');
if (request.headers[global.config.http_proxy_ip_header || 'x-forwarded-for']) {
// Check we're connecting from a whitelisted proxy
if (!global.config.http_proxies || !rangeCheck(address, global.config.http_proxies)) {
- console.log('Unlisted proxy:', address);
+ //console.log('Unlisted proxy:', address);
+ winston.info('Unlisted proxy: %s', address);
callback(null, false);
return;
}
var net = require('net'),\r
kiwiModules = require('../server/modules'),\r
ControlInterface = require('../server/controlinterface.js'),\r
- _ = require('lodash');\r
+ _ = require('lodash'),\r
+ winston = require('winston');\r
\r
var control_module = new kiwiModules.Module('Control');\r
\r
this.socket_closing = false;\r
\r
this.remoteAddress = this.socket.remoteAddress;\r
- console.log('Control connection from ' + this.socket.remoteAddress + ' opened');\r
+ //console.log('Control connection from ' + this.socket.remoteAddress + ' opened');\r
+ winston.info('Control connection from %s opened', this.socket.remoteAddress);\r
\r
this.bindEvents();\r
\r
this.unbindEvents();\r
this.socket = null;\r
\r
- console.log('Control connection from ' + this.remoteAddress + ' closed');\r
+ //console.log('Control connection from ' + this.remoteAddress + ' closed');\r
+ winston.info('Control connection from %s closed', this.remoteAddress);\r
};\r
\r
\r