logger: make logs less spammy.
This commit is contained in:
parent
31bceddfa5
commit
6ed877c06c
@ -246,7 +246,7 @@ ConfirmStats.prototype.addTX = function addTX(height, val) {
|
|||||||
var bucketIndex = this.bucketMap.search(val);
|
var bucketIndex = this.bucketMap.search(val);
|
||||||
var blockIndex = height % this.unconfTX.length;
|
var blockIndex = height % this.unconfTX.length;
|
||||||
this.unconfTX[blockIndex][bucketIndex]++;
|
this.unconfTX[blockIndex][bucketIndex]++;
|
||||||
this.logger.debug('estimatefee: Adding tx to %s.', this.type);
|
this.logger.spam('estimatefee: Adding tx to %s.', this.type);
|
||||||
return bucketIndex;
|
return bucketIndex;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -454,7 +454,7 @@ PolicyEstimator.prototype.removeTX = function removeTX(hash) {
|
|||||||
var item = this.map[hash];
|
var item = this.map[hash];
|
||||||
|
|
||||||
if (!item) {
|
if (!item) {
|
||||||
this.logger.debug(
|
this.logger.spam(
|
||||||
'estimatefee: Mempool tx %s not found.',
|
'estimatefee: Mempool tx %s not found.',
|
||||||
utils.revHex(hash));
|
utils.revHex(hash));
|
||||||
return;
|
return;
|
||||||
@ -528,7 +528,7 @@ PolicyEstimator.prototype.processTX = function processTX(entry, current) {
|
|||||||
rate = entry.getRate();
|
rate = entry.getRate();
|
||||||
priority = entry.getPriority(height);
|
priority = entry.getPriority(height);
|
||||||
|
|
||||||
this.logger.debug('estimatefee: Processing mempool tx %s.', entry.tx.rhash);
|
this.logger.spam('estimatefee: Processing mempool tx %s.', entry.tx.rhash);
|
||||||
|
|
||||||
if (fee === 0 || this.isPriPoint(rate, priority)) {
|
if (fee === 0 || this.isPriPoint(rate, priority)) {
|
||||||
this.map[hash] = {
|
this.map[hash] = {
|
||||||
@ -542,9 +542,8 @@ PolicyEstimator.prototype.processTX = function processTX(entry, current) {
|
|||||||
bucketIndex: this.feeStats.addTX(height, rate)
|
bucketIndex: this.feeStats.addTX(height, rate)
|
||||||
};
|
};
|
||||||
this.mapSize++;
|
this.mapSize++;
|
||||||
this.logger.debug('estimatefee: Rate: %d.', this.estimateFee());
|
|
||||||
} else {
|
} else {
|
||||||
this.logger.debug('estimatefee: Not adding tx %s.', entry.tx.rhash);
|
this.logger.spam('estimatefee: Not adding tx %s.', entry.tx.rhash);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -646,6 +645,8 @@ PolicyEstimator.prototype.processBlock = function processBlock(height, entries,
|
|||||||
this.logger.debug('estimatefee: Done updating estimates'
|
this.logger.debug('estimatefee: Done updating estimates'
|
||||||
+ ' for %d confirmed entries. New mempool map size %d.',
|
+ ' for %d confirmed entries. New mempool map size %d.',
|
||||||
entries.length, this.mapSize);
|
entries.length, this.mapSize);
|
||||||
|
|
||||||
|
this.logger.debug('estimatefee: Rate: %d.', this.estimateFee());
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -59,7 +59,8 @@ Logger.levels = {
|
|||||||
error: 1,
|
error: 1,
|
||||||
warning: 2,
|
warning: 2,
|
||||||
info: 3,
|
info: 3,
|
||||||
debug: 4
|
debug: 4,
|
||||||
|
spam: 5
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -71,7 +72,8 @@ Logger.colors = {
|
|||||||
error: '1;31',
|
error: '1;31',
|
||||||
warning: '1;33',
|
warning: '1;33',
|
||||||
info: '94',
|
info: '94',
|
||||||
debug: '90'
|
debug: '90',
|
||||||
|
spam: '90'
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -195,6 +197,26 @@ Logger.prototype.debug = function debug() {
|
|||||||
this.log('debug', args);
|
this.log('debug', args);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Output a log to the `spam` log level.
|
||||||
|
* @param {String|Object} obj
|
||||||
|
* @param {...Object} args
|
||||||
|
*/
|
||||||
|
|
||||||
|
Logger.prototype.spam = function spam() {
|
||||||
|
var i, args;
|
||||||
|
|
||||||
|
if (this.level < Logger.levels.spam)
|
||||||
|
return;
|
||||||
|
|
||||||
|
args = new Array(arguments.length);
|
||||||
|
|
||||||
|
for (i = 0; i < args.length; i++)
|
||||||
|
args[i] = arguments[i];
|
||||||
|
|
||||||
|
this.log('spam', args);
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Output a log to the desired log level.
|
* Output a log to the desired log level.
|
||||||
* Note that this bypasses the level check.
|
* Note that this bypasses the level check.
|
||||||
|
|||||||
@ -374,7 +374,7 @@ Mempool.prototype.limitOrphans = function limitOrphans() {
|
|||||||
hash = orphans[i];
|
hash = orphans[i];
|
||||||
orphans.splice(i, 1);
|
orphans.splice(i, 1);
|
||||||
|
|
||||||
this.logger.debug('Removing orphan %s from mempool.', utils.revHex(hash));
|
this.logger.spam('Removing orphan %s from mempool.', utils.revHex(hash));
|
||||||
|
|
||||||
this.removeOrphan(hash);
|
this.removeOrphan(hash);
|
||||||
}
|
}
|
||||||
@ -859,7 +859,7 @@ Mempool.prototype.addUnchecked = function addUnchecked(entry, callback, force) {
|
|||||||
self.emit('error', err);
|
self.emit('error', err);
|
||||||
return next();
|
return next();
|
||||||
}
|
}
|
||||||
self.logger.debug('Resolved orphan %s in mempool.', entry.tx.rhash);
|
self.logger.spam('Resolved orphan %s in mempool.', entry.tx.rhash);
|
||||||
next();
|
next();
|
||||||
}, true);
|
}, true);
|
||||||
});
|
});
|
||||||
|
|||||||
@ -448,7 +448,7 @@ Peer.prototype.sendInv = function sendInv(items) {
|
|||||||
if (items.length === 0)
|
if (items.length === 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
this.logger.debug('Serving %d inv items to %s.',
|
this.logger.spam('Serving %d inv items to %s.',
|
||||||
items.length, this.hostname);
|
items.length, this.hostname);
|
||||||
|
|
||||||
for (i = 0; i < items.length; i += 50000) {
|
for (i = 0; i < items.length; i += 50000) {
|
||||||
@ -477,7 +477,7 @@ Peer.prototype.sendHeaders = function sendHeaders(items) {
|
|||||||
if (items.length === 0)
|
if (items.length === 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
this.logger.debug('Serving %d headers to %s.',
|
this.logger.spam('Serving %d headers to %s.',
|
||||||
items.length, this.hostname);
|
items.length, this.hostname);
|
||||||
|
|
||||||
for (i = 0; i < items.length; i += 2000) {
|
for (i = 0; i < items.length; i += 2000) {
|
||||||
@ -1607,7 +1607,7 @@ Peer.prototype._handleAddr = function _handleAddr(addrs) {
|
|||||||
for (i = 0; i < addrs.length; i++)
|
for (i = 0; i < addrs.length; i++)
|
||||||
this.addrFilter.add(addrs[i].host, 'ascii');
|
this.addrFilter.add(addrs[i].host, 'ascii');
|
||||||
|
|
||||||
this.logger.debug(
|
this.logger.info(
|
||||||
'Received %d addrs (hosts=%d, peers=%d) (%s).',
|
'Received %d addrs (hosts=%d, peers=%d) (%s).',
|
||||||
addrs.length,
|
addrs.length,
|
||||||
this.pool.hosts.length,
|
this.pool.hosts.length,
|
||||||
@ -1750,7 +1750,7 @@ Peer.prototype._handleInv = function _handleInv(items) {
|
|||||||
this.emit('txs', txs);
|
this.emit('txs', txs);
|
||||||
|
|
||||||
if (unknown != null) {
|
if (unknown != null) {
|
||||||
this.logger.debug(
|
this.logger.warning(
|
||||||
'Peer sent an unknown inv type: %d (%s).',
|
'Peer sent an unknown inv type: %d (%s).',
|
||||||
unknown, this.hostname);
|
unknown, this.hostname);
|
||||||
}
|
}
|
||||||
@ -1945,7 +1945,7 @@ Peer.prototype._handleGetBlockTxn = function _handleGetBlockTxn(req) {
|
|||||||
return done(err);
|
return done(err);
|
||||||
|
|
||||||
if (!block) {
|
if (!block) {
|
||||||
self.logger.info(
|
self.logger.debug(
|
||||||
'Peer sent getblocktxn for non-existent block (%s).',
|
'Peer sent getblocktxn for non-existent block (%s).',
|
||||||
self.hostname);
|
self.hostname);
|
||||||
self.setMisbehavior(100);
|
self.setMisbehavior(100);
|
||||||
@ -1953,7 +1953,7 @@ Peer.prototype._handleGetBlockTxn = function _handleGetBlockTxn(req) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (block.height < self.chain.tip.height - 15) {
|
if (block.height < self.chain.tip.height - 15) {
|
||||||
self.logger.info(
|
self.logger.debug(
|
||||||
'Peer sent a getblocktxn for a block > 15 deep (%s)',
|
'Peer sent a getblocktxn for a block > 15 deep (%s)',
|
||||||
self.hostname);
|
self.hostname);
|
||||||
return done();
|
return done();
|
||||||
@ -1977,7 +1977,7 @@ Peer.prototype._handleBlockTxn = function _handleBlockTxn(res) {
|
|||||||
var block = this.compactBlocks[res.hash];
|
var block = this.compactBlocks[res.hash];
|
||||||
|
|
||||||
if (!block) {
|
if (!block) {
|
||||||
this.logger.info('Peer sent unsolicited blocktxn (%s).', this.hostname);
|
this.logger.debug('Peer sent unsolicited blocktxn (%s).', this.hostname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1988,7 +1988,7 @@ Peer.prototype._handleBlockTxn = function _handleBlockTxn(res) {
|
|||||||
|
|
||||||
if (!block.fillMissing(res)) {
|
if (!block.fillMissing(res)) {
|
||||||
this.setMisbehavior(100);
|
this.setMisbehavior(100);
|
||||||
this.logger.info('Peer sent non-full blocktxn (%s).', this.hostname);
|
this.logger.warning('Peer sent non-full blocktxn (%s).', this.hostname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -896,14 +896,15 @@ Pool.prototype._handleBlock = function _handleBlock(block, peer, callback) {
|
|||||||
|
|
||||||
self.emit('chain-progress', self.chain.getProgress(), peer);
|
self.emit('chain-progress', self.chain.getProgress(), peer);
|
||||||
|
|
||||||
if (self.logger.level === 4 && self.chain.total % 20 === 0) {
|
if (self.logger.level >= 4 && self.chain.total % 20 === 0) {
|
||||||
self.logger.debug('Status:'
|
self.logger.debug('Status:'
|
||||||
+ ' ts=%s height=%d progress=%s'
|
+ ' ts=%s height=%d highest=%d progress=%s'
|
||||||
+ ' blocks=%d orphans=%d active=%d'
|
+ ' blocks=%d orphans=%d active=%d'
|
||||||
+ ' queue=%d target=%s peers=%d'
|
+ ' queue=%d target=%s peers=%d'
|
||||||
+ ' pending=%d highest=%d jobs=%d',
|
+ ' pending=%d jobs=%d',
|
||||||
utils.date(block.ts),
|
utils.date(block.ts),
|
||||||
self.chain.height,
|
self.chain.height,
|
||||||
|
self.chain.bestHeight,
|
||||||
(self.chain.getProgress() * 100).toFixed(2) + '%',
|
(self.chain.getProgress() * 100).toFixed(2) + '%',
|
||||||
self.chain.total,
|
self.chain.total,
|
||||||
self.chain.orphan.count,
|
self.chain.orphan.count,
|
||||||
@ -912,7 +913,6 @@ Pool.prototype._handleBlock = function _handleBlock(block, peer, callback) {
|
|||||||
block.bits,
|
block.bits,
|
||||||
self.peers.all.length,
|
self.peers.all.length,
|
||||||
self.chain.locker.pending.length,
|
self.chain.locker.pending.length,
|
||||||
self.chain.bestHeight,
|
|
||||||
self.chain.locker.jobs.length);
|
self.chain.locker.jobs.length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user