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

api-logs

v1.0.4

Published

Logger middleware for api request and response in express framework

Downloads

23

Readme

api-logs

This package helps you to log HTTP requests in Express Node.js application.

Installation

npm install --save api-logs

Usage

You can intialize the instance of the api-logs and then use it as a middleware in your application. By default this module will print logs in a console and create a log file in root directory if you don't pass any parameters, but you can control the console log printing based on the env key in the options as shown below.

Please note that this env key will have an array of environments as value. These environments will be compared with process.env.NODE_ENV variable.

Parameters Table

| Name | Default | Description | |:------:|:------:|:------| | env | all | array of environments for which you want to print the console logs. example ['dev', 'uat'] etc | | logdir | . | path of the log directory, by default it will create file in the root dir. example logs, var/logs/api-logs etc | | maxExecTime | 60000 | maximum execution time for any service after which you want to log warnings. | | responseBody | false | should be true if you want to enable logging of a response body | | maxFiles | 7 | Number of days after which the file will be deleted |

using api-logs without any options argument

var app = require('express')();
var apiLogs = require('api-logs');

app.use(apiLogs());
    
app.get('/', function(req, res){
	res.send('Hello from api-logs');
});

app.listen(8080);

using api-logs with options argument

If you want to restrict logging to perticular environments, you can pass it in the options

var app = require('express')();
var apiLogs = require('api-logs');

let apilogOptions = {
    env: ['dev', 'uat'],
    logdir: 'logs',
	maxExecTime: 60000
};

app.use(apiLogs(apilogOptions));
    
app.get('/', function(req, res){
	res.send('Hello from api-logs');
});

app.listen(8080);

Sample output

console output

api-logs sample output

log file output

api-logs sample output