Skip to content

This plug-in is used for function execution performance statistics. It calculates the execution time by injecting statistical code and finds slow functions.

License

Notifications You must be signed in to change notification settings

lzwme/feps-webpack-plugin

Repository files navigation

@lzwme/feps-webpack-plugin

@lzwme/feps-webpack-plugin

NPM version node version npm download GitHub issues GitHub forks GitHub stars minzipped size

简体中文-README_zh-CN.md

Function execution performance statistics

This plug-in is used for function execution performance statistics. It calculates the execution time by injecting statistical code and finds slow functions.

Getting Started

To begin, you'll need to install @lzwme/feps-webpack-plugin. For example:

pnpm install -D @lzwme/feps-webpack-plugin

Then add the plugin to your webpack config. For example:

webpack.config.js

// webpack.config.js

const path = require('path');
const webpack = require('webpack');
const FEPSPlugin = require('@lzwme/feps-webpack-plugin');

module.exports = {
  plugins: [
    new FEPSPlugin({
      // debug: true,
      // disabled: false,
      rootDir: __dirname,
      timeLimit: 50,
      logger: 'console.warn', // 'globalThis.logger.report',
      include: [/\.(tsx?|jsx?)$/],
      exclude: ['node_modules', /\.ignore\./],
    }),
  ],
};

Options

Name Type Default Description
debug {boolean} false debug for print details info
disabled {boolean} false Disable the plugin
rootDir {String} process.cwd() Project root directory
logger {String} console.warn Specifies the global method for printing slow function log information
timeLimit {Number} 50 Threshold value for the execution time of slow functions.
If the execution time is greater than this value, the global method specified by options.logger will be called
include {(String | RegExp)[]} [/(jsx?|tsx?)$/] Specifies a list of patterns that match files to be included in compilation
exclude {(String | RegExp)[]} ['node_modules'] Specifies a list of patterns that match files to be excluded from compilation
excludeNodeType {AnyNode[]} [] Specifies a list of ast node types that to be excluded

Examples

!yarn-dev.png

!webpack5-example.png

Development

git clone https://github.com/lzwme/feps-webpack-plugin.git
pnpm install

# start for examples/webpack5-example
pnpm run dev
# enable cache by filesystem
pnpm run dev --cache
# first delete the dist and cache directories
pnpm run dev --reset

License

@lzwme/feps-webpack-plugin is released under the MIT license.

该插件由志文工作室开发和维护。

About

This plug-in is used for function execution performance statistics. It calculates the execution time by injecting statistical code and finds slow functions.

Resources

License

Stars

Watchers

Forks

Packages

No packages published