@dwtechs/winstan-plugin-express-perf
v0.2.0
Published
Open source Express performance measurement plugin for Winstan library.
Downloads
51
Readme
Synopsis
Winstan-plugin-express-perf.js is an open source Express performance measurement plugin for Winstan library.
This plugin will log the time it took to process a request.
- no dependency
- Very lightweight
- Thoroughly tested
- Works in Javascript and Typescript
- Supports both CommonJS and ES Modules
- Tree-shaking friendly with named exports
- Written in Typescript
Support
- node: 22
This is the oldest targeted versions. The library should work properly on older versions of Node.js but we do not support it officially.
Installation
$ npm i @dwtechs/winstan-plugin-express-perfUsage
ES6 / TypeScript
import express from "express";
import { startTimer, endTimer } from '@dwtechs/winstan-plugin-express-perf';
const app = express();
app.use(express.json());
// performance measurement starts for any call to the following routes
app.use(startTimer);
app.use("/", route);
// Performance measurement ends
app.use(endTimer);CommonJS
const express = require("express");
const { startTimer, endTimer } = require('@dwtechs/winstan-plugin-express-perf');
const app = express();
app.use(express.json());
// performance measurement starts for any call to the following routes
app.use(startTimer);
app.use("/", route);
// Performance measurement ends
app.use(endTimer);Note that the plugin is standalone as it installs Winstan as a dependency. Of course you will usually need Winstan to log other things in you application.
Contributors
Winstan-plugin-express-perf.js is still in development and we would be glad to get all the help you can provide. To contribute please read contributor.md for detailed installation guide.
Stack
| Purpose | Choice | Motivation | | :-------------- | :------------------------------------------: | -------------------------------------------------------------: | | repository | Github | hosting for software development version control using Git | | package manager | npm | default node.js package manager | | language | TypeScript | static type checking along with the latest ECMAScript features | | module bundler | Rollup | advanced module bundler for ES6 modules | | unit testing | Jest | delightful testing with a focus on simplicity |
