Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
95 lines (64 sloc) 2.55 KB

resurfaceio-logger-nodejs

© 2016-2019 Resurface Labs Inc.

Logging usage of Node.js cloud apps, with user privacy by design.

Contents

Dependencies

Requires Node.js 6.10.x or later. No other dependencies to conflict with your app.

Installing With npm

npm install resurfaceio-logger --save

Logging From Express Route

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: 'https://...',
    rules: 'include strict'
});

app.get('/', function (request, response) {
    response.render('pages/index', function (e, html) {
        response.status(200).send(html);
        logger.log(request, response, html);
    });
});

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: 'https://...', 
    rules: 'include strict'
});

// define routes

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.

API documentation

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 strict), but logging rules are easily customized to meet the needs of any application.

Logging rules documentation

You can’t perform that action at this time.