Socket
Socket
Sign inDemoInstall

logfmt

Package Overview
Dependencies
Maintainers
1
Versions
41
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

logfmt - npm Package Compare versions

Comparing version 0.15.0 to 0.16.0

2

lib/logger.js

@@ -70,3 +70,5 @@ logfmt = require('../logfmt');

var old_log = this.log;
var old_stream = this.stream;
new_logfmt.log = function(data, stream){
if(stream == undefined) stream = old_stream;
data = data || {};

@@ -73,0 +75,0 @@ logdata = {};

22

lib/request_logger.js

@@ -1,3 +0,1 @@

var logfmt = require('../logfmt');
var commonFormatter = function(req, res){

@@ -22,4 +20,4 @@ if((typeof req.path) == 'function'){

"status": res.statusCode,
content_length: req.header('content-length'),
content_type: req.header('content-type'),
content_length: res.get('content-length'),
content_type: res.get('content-type'),
}

@@ -29,6 +27,6 @@ }

var immediateLogger = function(options, formatter){
var immediateLogger = function(logger, options, formatter){
return function(req, res, next){
var data = formatter(req, res);
logfmt.log(data);
logger.log(data);
next();

@@ -38,6 +36,6 @@ }

var timingLogger = function(options, formatter){
var timingLogger = function(logger, options, formatter){
return function(req, res, next){
var elapsed = options.elapsed || 'elapsed';
logfmt.time(elapsed, function(logger) {
logger.time(elapsed, function(logger) {
var end = res.end;

@@ -55,3 +53,5 @@ res.end = function(chunk, encoding) {

exports = module.exports = function(options, formatter){
exports.init = function(logger, options, formatter) {
this.logger = logger;
if(!formatter && !options){

@@ -72,5 +72,5 @@ formatter = commonFormatter;

if(options.immediate){
return immediateLogger(options, formatter);
return immediateLogger(logger, options, formatter);
}else{
return timingLogger(options, formatter);
return timingLogger(logger, options, formatter);
}

@@ -77,0 +77,0 @@ }

@@ -13,4 +13,2 @@ var logfmt = function(){

this.requestLogger = require('./lib/request_logger');
this.maxErrorLines = 10;

@@ -33,2 +31,9 @@

}
//Request Logger
var requestLogger = require('./lib/request_logger');
this.requestLogger = function(options, formatter){
return requestLogger.init(this, options, formatter);
}
this.requestLogger.commonFormatter = requestLogger.commonFormatter
}

@@ -35,0 +40,0 @@

{
"name": "logfmt",
"version": "0.15.0",
"description": "Key-Value log line parser",
"version": "0.16.0",
"description": "key=value logger and parser",
"main": "logfmt.js",

@@ -6,0 +6,0 @@ "scripts": {

@@ -49,2 +49,15 @@ var logfmt = require('../logfmt'),

})
test("works when a stream is not passed in", function(){
var logfmt2 = logfmt.namespace();
var mock_sink = new OutStream;
var data = '';
try {
logfmt2.log({"foo":"bar"});
data = 'success';
} catch (err) {
data = 'failure';
}
assert.equal('success', data);
})
})

@@ -56,2 +56,5 @@ var logfmt = require('../logfmt'),

var mockRes = {statusCode: 200}
mockRes.get = function(){
return 'foo';
}
var next = function(){

@@ -95,2 +98,6 @@ var actual = logfmt.parse(logfmt.stream.logline);

mockReq.ip = '1.0.0.1'
mockReq.header = function(h){
return 'foo'
}
var mockRes = {statusCode: 200}
var headers = {

@@ -100,6 +107,5 @@ "content-type": 'foo/foo',

}
mockReq.header = function(h){
mockRes.get = function(h){
return headers[h];
}
var mockRes = {statusCode: 200}
mockRes.end = function(data, encoding){}

@@ -128,2 +134,3 @@ var next = function(){

var mockRes = {statusCode: 200}
mockRes.get = function(){ return 'foo' }
var actual = logfmt.requestLogger.commonFormatter(mockReq, mockRes);

@@ -143,2 +150,5 @@ assert.equal('/bar', actual.path);

var mockRes = {statusCode: 200}
mockRes.get = function(){
return 'foo';
}
var actual = logfmt.requestLogger.commonFormatter(mockReq, mockRes);

@@ -148,2 +158,17 @@ assert.equal('10.0.1.1', actual.ip);

test("requestLogger works with namespace", function(done){
var mockReq = {method: 'GET'}
mockReq.header = function(){ return 'foo'; }
var mockRes = {statusCode: 200}
mockRes.get = function(){ return 'foo'; }
var next = function(){
var actual = logfmt.parse(logfmt.stream.logline);
assert.equal('namespacetest', actual.ns);
};
var logger = logfmt.namespace({ns:'namespacetest'}).requestLogger({immediate: true})
logger(mockReq, mockRes, next)
done()
})
})
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc