
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
loggin-js-express
Advanced tools
An express middleware for loggin-js
npm install express-loggin-js --save
// Require the logging library
const logging = require('loggin-js');
// Require the express middleware
const loggingMW = require('express-loggin-js');
To create a loggin-js middleware is as easy as calling the available .logger
function. You can create a default one by calling it without any arguments, additionally it also accepts a set of options defined bellow, here is a usage example:
const app = express();
app.use(logginMW.logger({
color: true,
loggers: [loggin.Loggers.ConsoleLogger]
}));
app.get('/hello', function (req, res) {
// Logger is attached to the response to lert you use it within the routes
res.logger.debug('Logger from within the response!');
res.send({
message: 'Hello world!'
});
});
Options:
logger accepts an object containing some options, it extends options from loggin.Loggers.Options, and adds a couple of custom ones.
interface LoggerOptions = {
/* Loggin'JS Options */
color?: boolean; // Should the logger be colored
lineNumbers?: boolean; // Should the logger output line numbers
level?: number|string|loggin.Severity; // Set the logger level
channel?: string; // Set the channel for the logger, defaults to filename
formatter: string; // Set the logger formatter
/* Custom Options */
loggers: loggin.Loggers.Logger[]; // List of loggers to pack
msg: string|function; // Template or function to get the log message
showRaw: boolean; // Show raw request
ignore(req, res): boolean; // Ignore routes
}
To create an ERROR middleware is also really easy, just call .errorLogger
instead. It accepts the same options as .logger
const app = express();
app.get('/hello', function (req, res) {
// Logger is attached to the response to lert you use it within the routes
res.logger.debug('Logger from within the response!');
res.send({
message: 'Hello world!'
});
});
// Notice it's placed after routes and other app.use calls
app.use(logginMW.errorLogger({
color: true,
loggers: [loggin.Loggers.ConsoleLogger]
}));
Options:
errorLogger accepts an object containing some options, it extends options from loggin.Loggers.Options, and adds a couple of custom ones.
interface ErrorLoggerOptions = {
/* Loggin'JS Options */
color?: boolean; // Should the logger be colored
lineNumbers?: boolean; // Should the logger output line numbers
level?: number|string|loggin.Severity; // Set the logger level
channel?: string; // Set the channel for the logger, defaults to filename
formatter: string; // Set the logger formatter
/* Custom Options */
loggers: loggin.Loggers.Logger[]; // List of loggers to pack
msg: string|function; // Template or function to get the log message
showRaw?: boolean; // Show raw request
ignore?(req, res): boolean; // Ignore routes
}
If you found a bug or like to leave a feature request, please leave an issue and we will take care of it.
Just make sure it's not already filed.
Hi there, if you like the project don't hesitate in collaborating (if you like to), submit a pull request, post an issue, ...
Any help or ideas are apreciated!
FAQs
Express middleware for loggin-js
The npm package loggin-js-express receives a total of 2 weekly downloads. As such, loggin-js-express popularity was classified as not popular.
We found that loggin-js-express demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.