index: added response logging
This commit is contained in:
parent
de4a87e5f8
commit
8280d7a628
24
lib/index.js
24
lib/index.js
@ -1,5 +1,6 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
|
var Writable = require('stream').Writable;
|
||||||
var bodyParser = require('body-parser');
|
var bodyParser = require('body-parser');
|
||||||
var BaseService = require('./service');
|
var BaseService = require('./service');
|
||||||
var inherits = require('util').inherits;
|
var inherits = require('util').inherits;
|
||||||
@ -10,6 +11,7 @@ var StatusController = require('./status');
|
|||||||
var MessagesController = require('./messages');
|
var MessagesController = require('./messages');
|
||||||
var UtilsController = require('./utils');
|
var UtilsController = require('./utils');
|
||||||
var CurrencyController = require('./currency');
|
var CurrencyController = require('./currency');
|
||||||
|
var morgan = require('morgan');
|
||||||
var bitcore = require('bitcore-lib');
|
var bitcore = require('bitcore-lib');
|
||||||
var _ = bitcore.deps._;
|
var _ = bitcore.deps._;
|
||||||
var $ = bitcore.util.preconditions;
|
var $ = bitcore.util.preconditions;
|
||||||
@ -85,8 +87,30 @@ InsightAPI.prototype.start = function(callback) {
|
|||||||
setImmediate(callback);
|
setImmediate(callback);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
InsightAPI.prototype.createLogInfoStream = function() {
|
||||||
|
var self = this;
|
||||||
|
|
||||||
|
function Log(options) {
|
||||||
|
Writable.call(this, options);
|
||||||
|
}
|
||||||
|
inherits(Log, Writable);
|
||||||
|
|
||||||
|
Log.prototype._write = function (chunk, enc, callback) {
|
||||||
|
self.node.log.info(chunk.slice(0, chunk.length - 1)); // remove new line and pass to logger
|
||||||
|
callback();
|
||||||
|
};
|
||||||
|
var stream = new Log();
|
||||||
|
|
||||||
|
return stream;
|
||||||
|
};
|
||||||
|
|
||||||
InsightAPI.prototype.setupRoutes = function(app) {
|
InsightAPI.prototype.setupRoutes = function(app) {
|
||||||
|
|
||||||
|
//Setup logging
|
||||||
|
var logFormat = ':remote-addr ":method :url" :status :res[content-length] :response-time ":user-agent" ';
|
||||||
|
var logStream = this.createLogInfoStream();
|
||||||
|
app.use(morgan(logFormat, {stream: logStream}));
|
||||||
|
|
||||||
app.use(bodyParser.urlencoded({extended: true}));
|
app.use(bodyParser.urlencoded({extended: true}));
|
||||||
|
|
||||||
//Enable CORS
|
//Enable CORS
|
||||||
|
|||||||
@ -66,6 +66,7 @@
|
|||||||
"body-parser": "^1.13.3",
|
"body-parser": "^1.13.3",
|
||||||
"lodash": "^2.4.1",
|
"lodash": "^2.4.1",
|
||||||
"lru-cache": "^4.0.1",
|
"lru-cache": "^4.0.1",
|
||||||
|
"morgan": "^1.7.0",
|
||||||
"request": "^2.64.0"
|
"request": "^2.64.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user