3.0.0-rc.8 • Published 8 months ago
@debugr/insaner v3.0.0-rc.8
Insaner plugin for Debugr
This plugin provides Debugr middleware for the Insaner web server.
With this middleware a new task will automatically be started for each
HTTP request that Insaner handles; additionally, both the HTTP request and
the HTTP response or any error which reaches Insaner error handling
will be automatically logged. If the HTTP response code is >= 500
(or >= 400 if the e4xx
option is set) the response will be logged
with the configured error level.
Installation
npm install --save @debugr/insaner
Usage
import { InsanerCollector } from '@debugr/insaner';
import { HttpServer, HttpRequest, HttpForbiddenError } from 'insaner';
import { Logger, LogLevel } from '@debugr/core';
import { ConsoleHandler } from '@debugr/console';
const globalContext = {
applicationName: 'example',
};
const logger = new Logger(globalContext, [
new ConsoleHandler({
threshold: LogLevel.INFO,
}),
new InsanerCollector(),
]);
const server = new HttpServer();
// allow the plugin to hook into the HTTP server
logger.getPlugin('insaner').install(server);
// apply your routes etc
server.router.post('/my-api', function(req, res) {
// ...
});
server.listen(8000);
Options
The InsanerCollector
constructor accepts an optional options
object
with the following keys as the first argument:
Option | Type | Default | Description |
---|---|---|---|
level | LogLevel | Logger.INFO | The level at which the request and response will be logged |
errorLevel | LogLevel | Logger.ERROR | The level at which error responses will be logged |
uncaughtLevel | LogLevel | options.errorLevel | The level at which uncaught errors which reach Insaner will be logged |
e4xx | boolean | false | Consider HTTP 4xx status code as an error response and log appropriately |
excludeHeaders | string[] | Redact the contents of the specified headers when logging; global setting for both request and response | |
request | object | Request-specific logging options | |
request.excludeHeaders | string[] | ['Authorization', 'Cookie'] | Redact the contents of the specified headers when logging; overrides global setting |
response | object | Response-specific logging options | |
response.excludeHeaders | string[] | ['Set-Cookie'] | Redact the contents of the specified headers when logging; overrides global setting |
3.0.0-rc.8
8 months ago
3.0.0-rc.7
9 months ago
3.0.0-rc.6
1 year ago
3.0.0-rc.5
1 year ago
3.0.0-rc.4
1 year ago
3.0.0-rc.2
2 years ago
3.0.0-rc.3
2 years ago
3.0.0-rc.1
2 years ago
2.0.2
2 years ago
2.0.1
2 years ago
2.0.0
2 years ago