btrz-logger
Advanced tools
Comparing version 2.6.0 to 2.7.0
{ | ||
"name": "btrz-logger", | ||
"version": "2.6.0", | ||
"version": "2.7.0", | ||
"description": "A multi-transport logger", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -14,6 +14,27 @@ "use strict"; | ||
newBuf = newBuf.replace(/\[email\]=\b[\w\.-]+@[\w\.-]+\.\w{2,4}\b/g, "[email]=***@***.***"); | ||
return newBuf; | ||
} | ||
module.exports = { cleanUrlRawParameters } | ||
function cleanArgs(args) { | ||
const creditCardRegx = `(?:4[0-9]{12}(?:[0-9]{3})?|(?:5[1-5][0-9]{2}|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11}|6(?:011|5[0-9]{2})[0-9]{12})` | ||
const emailRegx = `(?:4[0-9]{12}(?:[0-9]{3})?|(?:5[1-5][0-9]{2}|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11}|6(?:011|5[0-9]{2})[0-9]{12})` | ||
let _args = []; | ||
if (!Array.isArray(args)) { | ||
return args; | ||
} | ||
try { | ||
_args = args.map((arg)=> { | ||
let newBuf = arg; | ||
newBuf = newBuf.replace(/\b[\w\.-]+@[\w\.-]+\.\w{2,4}\b/g, "regx.email.replaced"); | ||
newBuf = newBuf.replace(new RegExp(creditCardRegx, "gm"), "regx.ccnumber.replaced"); | ||
return newBuf; | ||
}) | ||
} catch (e) { | ||
// ignore errors | ||
} | ||
return _args; | ||
} | ||
module.exports = { cleanUrlRawParameters, cleanArgs } |
@@ -51,2 +51,4 @@ "use strict"; | ||
_args = logCleaner.cleanArgs(_args); | ||
let serialized = serialize([], _args), | ||
@@ -53,0 +55,0 @@ tokens = { |
@@ -8,4 +8,5 @@ "use strict"; | ||
let testString = ""; | ||
let testArgs; | ||
describe("cleanUrlRawParameter", (done) => { | ||
describe("cleanUrlRawParameters::cleanUrlRawParameter", (done) => { | ||
@@ -53,7 +54,61 @@ beforeEach(() => { | ||
}); | ||
}); | ||
describe("cleanArgs::clean_credit cards and emails", (done) => { | ||
it("should remove the (Visa credit card) on a given buffer", (done) => { | ||
testArgs = [`"ccnumber": "4111111111111111"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.not.include("4111111111111111"); | ||
expect(cleanBuffer[0]).to.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should remove the (MasterCard credit card) on a given buffer", (done) => { | ||
testArgs = [`"ccnumber": "2720111111111111"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.not.include("2720111111111111"); | ||
expect(cleanBuffer[0]).to.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should remove the (Amex credit card) on a given buffer", (done) => { | ||
testArgs = [`"ccnumber": "342011111111111"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.not.include("342011111111111"); | ||
expect(cleanBuffer[0]).to.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should remove the (Discover credit card) on a given buffer", (done) => { | ||
testArgs = [`"ccnumber": "6552011111111111"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.not.include("6552011111111111"); | ||
expect(cleanBuffer[0]).to.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should remove the (JCB credit card) on a given buffer", (done) => { | ||
testArgs = [`"ccnumber": "3512131415161718"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.not.include("3512131415161718"); | ||
expect(cleanBuffer[0]).to.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should not remove a number on a given buffer if it does not match a known cc format", (done) => { | ||
testArgs = [`"ccnumber": "8111111111111111"`]; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer[0]).to.include("8111111111111111"); | ||
expect(cleanBuffer[0]).to.not.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
it("should do nothing if args is not not an array (should always be an array)", (done) => { | ||
testArgs = `"ccnumber": "8111111111111111"`; | ||
let cleanBuffer = logCleaner.cleanArgs(testArgs); | ||
expect(cleanBuffer).to.include("8111111111111111"); | ||
expect(cleanBuffer).to.not.include("regx.ccnumber.replaced"); | ||
done(); | ||
}); | ||
}); | ||
}); |
30237
699