Socket
Socket
Sign inDemoInstall

sails-hook-apianalytics

Package Overview
Dependencies
24
Maintainers
2
Versions
12
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

sails-hook-apianalytics

Hook for advanced logging of API requests to a Sails.js server.


Version published
Maintainers
2
Weekly downloads
1,837
decreased by-8.33%

Weekly downloads

Readme

Source

sails-hook-apianalytics

A Sails hook for logging detailed request metadata and monitoring your API.

This hook is for Sails v1 and up, and it also maintains backwards compatibility for Sails <=v0.12. But be aware that it provides much richer default logging for requests handled via actions2 (which is only available in Sails v1).

Install

From your sails app:

$ npm install sails-hook-apianalytics --save

That's it! Next time you lift, and then send a request to the server, you should see stuff getting logged.

It will look something like this:

screenshot of output

Configuration

This hook works pretty well for most use cases out of the box.

Optionally, you can customize this hook in a few different ways by configuring sails.config.apianalytics.

For instance, you might create config/apianalytics.js:

// `config/apianalytics.js`

module.exports = {

  apianalytics: {

    /**
     * An array of route addresses to monitor.
     *
     * (e.g. [ 'GET /foo/bar', 'POST /foo', 'all /admin/*' ])
     *
     * Defaults to logging all POST, PATCH, PUT, DELETE requests, and all
     * GET requests except for those that appear to be for assets
     * (i.e. using "GET r|^((?![^?]*\\/[^?\\/]+\\.[^?\\/]+(\\?.*)?).)*$|")
     */
    routesToLog: [
      // If you want to log everything- including requests for assets, use the following:
      '/*'
    ],

    /**
     * Request parameters which should NEVER be logged.
     * If seen, they will be replaced with "*REDACTED*"
     *
     * (e.g. "password")
     *
     * > WARNING:
     * > This is a SHALLOW check of request body, querystring, and route path parameters.
     * > Deeply nested properties with these names are not redacted.
     */
    dontLogParams: [
      'password',
      'token'
    ]
  }
};

Help

If you have further questions or are having trouble, click here.

Bugs   NPM version

To report a bug, click here.

Contributing

Please observe the guidelines and conventions laid out in the Sails project contribution guide when opening issues or submitting pull requests.

NPM info

License

MIT © 2013-2016 Mike McNeil

As for the Sails framework, it's free and open-source under the MIT License too.

Keywords

FAQs

Last updated on 15 Mar 2024

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc