@hexstudiosar/reqlogger
v0.6.1
Published
Middleware for request logging in a server.
Downloads
5
Maintainers
Readme
Logger Middleware
Middleware for request logging in a server.
Installation
npm install @hexstudiosar/reqlogger
Usage
const express = require('express');
const logger = require('@hexstudiosar/reqlogger');
const app = express();
// Add the request logging middleware
app.use(logger());
// Rest of your application configuration and routes
// ...
// Start the server
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Options
The middleware accepts an option for the log style. The available options are:
// 'inline': Inline log that displays all details in a single line.
app.use(logger('inline'));
/*
Output:
[15:30:45] GET /home 200 15ms 1750
*/
// 'minified': Minimal log that displays only essential request details.
app.use(logger('minified'));
/*
Output:
GET /home 200 15ms
*/
// 'agent': Log focused on agent information (IP, User Agent, Referer).
app.use(logger('agent'));
/*
Output:
[15:30:45] | AGENT LOG
IP: ::1
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Referer: Unknown
*/
// 'error': Inline log that displays only error requests details.
app.use(logger('error'));
/*
Output:
[15:30:45] GET /home6 404 9ms 143
*/
// 'default': Detailed log with all request details.
app.use(logger('default'));
/*
Output:
[15:30:45] | REQUEST LOG
Timestamp: 15:30:45
Method: GET
URL: /home
Status: 200
Time: 15ms
IP: ::1
Size: 1750
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Referer: Unknown
*/
If no logging style is specified, the default style will be used.
Custom option
By using this option, you can set a custom text to your log.
// 'custom': Use a custom style for the log.
app.use(logger('custom', {
style: ":timestamp :method :status" // Custom text
}));
/*
Output:
15:30:45 GET 200
*/
Use ; to set a specific color, use : to set a specific option.
Disponible customisation:
Options:
- :timestamp (Timestamp of request: HH:MM:SS).
- :method (Request method: GET, POST, PUT, DELETE, PATCH).
- :url (Request url: /route).
- :status (Request status code: 200, 304, 404, 500, etc).
- :time (Request total time: MSms).
- :ip (Request ip: XXX.XXX.XXX.XXX).
- :size (Request content length).
- :useragent (User agent browser).
- :referer (Referer URL).
Colors:
- ;reset (Reset color and markdown to default).
- ;bright (Bright text, can be reset by using ;reset).
- ;underscore (Underscore text, can be reset by using ;reset).
- ;yellow (Yellow text).
- ;green (Green text).
- ;blue (Blue text).
- ;red (Red text).
- ;cyan (Cyan text).
License
This project is licensed under the MIT License.