resurfaceio-logger
v2.2.2
Published
Library for usage logging
Downloads
34
Readme
resurfaceio-logger-nodejs
Easily log API requests and responses to your own system of record.
Contents
Dependencies
Requires Node.js 10.x or later. No other dependencies to conflict with your app.
Installing With npm
npm install resurfaceio-logger --save
Logging From Express Middleware
After installing the module, add a HttpLoggerForExpress
instance to your app, after
any body parsers in use.
const express = require('express');
const app = express();
// add body parsers
const resurfaceio = require('resurfaceio-logger');
resurfaceio.HttpLoggerForExpress.add(app, {
url: 'http://localhost:4001/message',
rules: 'include debug'
});
// define routes
Logging From Koa Middleware
After installing the module, add a HttpLoggerForKoa
instance to your app, after
any body parsers in use.
const Koa = require('koa');
const app = new Koa();
// add body parsers
const resurfaceio = require('resurfaceio-logger');
resurfaceio.HttpLoggerForKoa.add(app, {
url: 'http://localhost:4001/message',
rules: 'include debug'
});
Logging From Apollo Server on Express
After installing the module, add a HttpLoggerForExpress
instance before calling applyMiddleware
.
const app = express();
const resurfaceio = require('resurfaceio-logger');
resurfaceio.HttpLoggerForExpress.add(app, {
url: 'http://localhost:4001/message',
rules: 'include debug'
});
const server = new ApolloServer({ ... });
server.applyMiddleware({ app });
Logging From Specific Express Routes
After installing the module, create a logger and call it from the routes of interest.
const express = require('express');
const app = express();
const resurfaceio = require('resurfaceio-logger');
const logger = new resurfaceio.HttpLogger({
url: 'http://localhost:4001/message',
rules: 'include debug'
});
app.get('/', function (request, response) {
response.render('pages/index', function (e, html) {
response.status(200).send(html);
resurfaceio.HttpMessage.send(logger, request, response, html);
});
});
Logging With API
Loggers can be directly integrated into your application using our API. This requires the most effort compared with the options described above, but also offers the greatest flexibility and control.
Protecting User Privacy
Loggers always have an active set of rules that control what data is logged
and how sensitive data is masked. All of the examples above apply a predefined set of rules (include debug
),
but logging rules are easily customized to meet the needs of any application.
Logging rules documentation
© 2016-2021 Resurface Labs Inc.