Merge pull request #189 from matiu/bug/sticky
better logs + init db after sticky
This commit is contained in:
commit
355290040a
10
bws.js
10
bws.js
|
@ -6,6 +6,11 @@ var ExpressApp = require('./lib/expressapp');
|
||||||
var WsApp = require('./lib/wsapp');
|
var WsApp = require('./lib/wsapp');
|
||||||
var config = require('./config');
|
var config = require('./config');
|
||||||
var sticky = require('sticky-session');
|
var sticky = require('sticky-session');
|
||||||
|
var log = require('npmlog');
|
||||||
|
log.debug = log.verbose;
|
||||||
|
log.disableColor();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var port = process.env.BWS_PORT || config.port || 3232;
|
var port = process.env.BWS_PORT || config.port || 3232;
|
||||||
|
@ -24,24 +29,25 @@ if (config.https) {
|
||||||
}
|
}
|
||||||
|
|
||||||
var start = function() {
|
var start = function() {
|
||||||
var app = ExpressApp.start(config);
|
|
||||||
var server;
|
var server;
|
||||||
|
|
||||||
if (config.cluster) {
|
if (config.cluster) {
|
||||||
server = sticky(clusterInstances, function() {
|
server = sticky(clusterInstances, function() {
|
||||||
|
var app = ExpressApp.start(config);
|
||||||
var server = config.https ? serverModule.createServer(serverOpts, app) :
|
var server = config.https ? serverModule.createServer(serverOpts, app) :
|
||||||
serverModule.Server(app);
|
serverModule.Server(app);
|
||||||
WsApp.start(server, config);
|
WsApp.start(server, config);
|
||||||
return server;
|
return server;
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
var app = ExpressApp.start(config);
|
||||||
server = config.https ? serverModule.createServer(serverOpts, app) :
|
server = config.https ? serverModule.createServer(serverOpts, app) :
|
||||||
serverModule.Server(app);
|
serverModule.Server(app);
|
||||||
WsApp.start(server, config);
|
WsApp.start(server, config);
|
||||||
}
|
}
|
||||||
server.listen(port, function(err) {
|
server.listen(port, function(err) {
|
||||||
if (err) console.log('ERROR: ', err);
|
if (err) console.log('ERROR: ', err);
|
||||||
console.log('Bitcore Wallet Service running on port ' + port);
|
log.info('Bitcore Wallet Service running on port ' + port);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -37,17 +37,18 @@ function getTransactionsInsight(url, addresses, from, to, cb) {
|
||||||
if (_.isNumber(to)) qs.push('to=' + to);
|
if (_.isNumber(to)) qs.push('to=' + to);
|
||||||
|
|
||||||
var url = url + '/api/addrs/txs' + (qs.length > 0 ? '?' + qs.join('&') : '');
|
var url = url + '/api/addrs/txs' + (qs.length > 0 ? '?' + qs.join('&') : '');
|
||||||
|
var args = {
|
||||||
request({
|
|
||||||
method: "POST",
|
method: "POST",
|
||||||
url: url,
|
url: url,
|
||||||
json: {
|
json: {
|
||||||
addrs: [].concat(addresses).join(',')
|
addrs: [].concat(addresses).join(',')
|
||||||
}
|
},
|
||||||
}, function(err, res, txs) {
|
};
|
||||||
|
|
||||||
|
request(args, function(err, res, txs) {
|
||||||
if (err || res.statusCode != 200) return cb(err || res);
|
if (err || res.statusCode != 200) return cb(err || res);
|
||||||
// NOTE: Whenever Insight breaks communication with bitcoind, it returns invalid data but no error code.
|
// NOTE: Whenever Insight breaks communication with bitcoind, it returns invalid data but no error code.
|
||||||
if (!_.isArray(txs) || (txs.length != _.compact(txs).length)) return cb(new Error('Could not retrieve transactions from blockchain'));
|
if (!_.isArray(txs) || (txs.length != _.compact(txs).length)) return cb(new Error('Could not retrieve transactions from blockchain. Request was:' + JSON.stringify(args)));
|
||||||
|
|
||||||
return cb(null, txs);
|
return cb(null, txs);
|
||||||
});
|
});
|
||||||
|
|
|
@ -3,12 +3,14 @@
|
||||||
var _ = require('lodash');
|
var _ = require('lodash');
|
||||||
var async = require('async');
|
var async = require('async');
|
||||||
var log = require('npmlog');
|
var log = require('npmlog');
|
||||||
|
|
||||||
var express = require('express');
|
var express = require('express');
|
||||||
var querystring = require('querystring');
|
var querystring = require('querystring');
|
||||||
var bodyParser = require('body-parser')
|
var bodyParser = require('body-parser')
|
||||||
|
|
||||||
var WalletService = require('./server');
|
var WalletService = require('./server');
|
||||||
|
|
||||||
|
log.disableColor();
|
||||||
log.debug = log.verbose;
|
log.debug = log.verbose;
|
||||||
log.level = 'debug';
|
log.level = 'debug';
|
||||||
|
|
||||||
|
@ -52,7 +54,9 @@ ExpressApp.start = function(opts) {
|
||||||
// TODO access.log
|
// TODO access.log
|
||||||
//var accessLogStream = fs.createWriteStream(__dirname + '/access.log', {flags: 'a'})
|
//var accessLogStream = fs.createWriteStream(__dirname + '/access.log', {flags: 'a'})
|
||||||
//app.use(morgan('combined', {stream: accessLogStream}))
|
//app.use(morgan('combined', {stream: accessLogStream}))
|
||||||
app.use(require('morgan')('dev'));
|
// app.use(require('morgan')('dev'));
|
||||||
|
|
||||||
|
app.use(require('morgan')(':remote-addr :date[iso] ":method :url" :status :res[content-length] :response-time ":user-agent" '));
|
||||||
} else {
|
} else {
|
||||||
log.level = 'silent';
|
log.level = 'silent';
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@ var $ = require('preconditions').singleton();
|
||||||
var _ = require('lodash');
|
var _ = require('lodash');
|
||||||
var log = require('npmlog');
|
var log = require('npmlog');
|
||||||
log.debug = log.verbose;
|
log.debug = log.verbose;
|
||||||
|
log.disableColor();
|
||||||
|
|
||||||
var LocalLock = require('./locallock');
|
var LocalLock = require('./locallock');
|
||||||
var RemoteLock = require('locker');
|
var RemoteLock = require('locker');
|
||||||
|
|
|
@ -4,6 +4,7 @@ var $ = require('preconditions').singleton();
|
||||||
var async = require('async');
|
var async = require('async');
|
||||||
var log = require('npmlog');
|
var log = require('npmlog');
|
||||||
log.debug = log.verbose;
|
log.debug = log.verbose;
|
||||||
|
log.disableColor();
|
||||||
|
|
||||||
var WalletUtils = require('bitcore-wallet-utils');
|
var WalletUtils = require('bitcore-wallet-utils');
|
||||||
var Bitcore = WalletUtils.Bitcore;
|
var Bitcore = WalletUtils.Bitcore;
|
||||||
|
|
|
@ -9,6 +9,7 @@ var $ = require('preconditions').singleton();
|
||||||
var log = require('npmlog');
|
var log = require('npmlog');
|
||||||
var util = require('util');
|
var util = require('util');
|
||||||
log.debug = log.verbose;
|
log.debug = log.verbose;
|
||||||
|
log.disableColor();
|
||||||
|
|
||||||
var Wallet = require('./model/wallet');
|
var Wallet = require('./model/wallet');
|
||||||
var Copayer = require('./model/copayer');
|
var Copayer = require('./model/copayer');
|
||||||
|
@ -25,7 +26,7 @@ var Storage = function(opts) {
|
||||||
this.db = multilevel.client();
|
this.db = multilevel.client();
|
||||||
var con = net.connect(opts.multiLevel);
|
var con = net.connect(opts.multiLevel);
|
||||||
con.pipe(this.db.createRpcStream()).pipe(con);
|
con.pipe(this.db.createRpcStream()).pipe(con);
|
||||||
console.log('Connected to multilevel server at:', opts.multiLevel);
|
log.info('Using multilevel server:' + opts.multiLevel.host + ':' + opts.multiLevel.port);
|
||||||
} else {
|
} else {
|
||||||
this.db = levelup(opts.dbPath || './db/bws.db', {
|
this.db = levelup(opts.dbPath || './db/bws.db', {
|
||||||
valueEncoding: 'json'
|
valueEncoding: 'json'
|
||||||
|
|
Loading…
Reference in New Issue