npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

norman-logging

v0.3.0

Published

Norman logging library

Downloads

6

Readme

Norman Logging component

#http logging configuration

It is possible to customize http logging through the "http" section of the logging configuration. This sections contains the following properties, sub-sections

##logMode Property wich may take the following values

  • "response" mode creates a single log entry per request (at the end of the request processing)
  • "both" mode creates an additional log entry at the beginnning of the request processing

##logLevel Sub-section to control the log level for the request and the response (based on its status).

  • request log level of request log entry in both mode, debug by default
  • info log level for all 1xx responses, debug by default
  • success log level for all 2xx responses, info by default
  • redirect log level for all 3xx responses, info by default
  • clientError log level for all 4xx responses, warn by default
  • error log level for all 5xx responses, error by default
  • <status code> log level for a particular status code. Default configuration contains a "404": "info"

##request Sub-section to select request properties to log. A given property will be logged if the corresponding property in the sub-section exists with a truthy value (e.g. true or 1). Supported properties are

  • host returns the request.host property. In BUILD, express has been enhanced in order to leverage X-Forwarded-Host or X-ProxyBaseURL request headers if "trust proxy" settings is on.
  • httpVersion
  • ip returns the request.ip property. Express sets this property leveraging the X-Forwarded-For header if "trust proxy" settings is on. (not yet available)
  • method
  • protocol returns the request.protocol property. In BUILD, express has been enhanced in order to leverage X-Forwarded-Proto or X-ProxyBaseURL request headers if "trust proxy" settings is on.
  • remoteAddress
  • url

##response Sub-section to select response properties to log. A given property will be logged if the corresponding property in the sub-section exists with a truthy value (e.g. true or 1). Supported properties are

  • responseTime
  • status

##requestHeaders Sub-section to select request headers to log. A given header will be logged if the corresponding property in the sub-section exists with a truthy value (e.g. true or 1).

If a truthy "*" property is defined, all headers will be logged except those which are explicitly defined with a falsy value.

Authorization and Cookie headers will never be logged.

##responseHeaders Sub-section to select response headers to log. A given header will be logged if the corresponding property in the sub-section exists with a truthy value (e.g. true or 1).

If a truthy "*" property is defined, all headers will be logged except those which are explicitly defined with a falsy value.

Set-Cookie header will never be logged.