用于node.js应用的在终端的遥测仪表板
用于node.js应用的在终端的遥测仪表板,实时确定在你的终端Node进程发生了什么。
Node.js 调试/剖析
共3855Star
详细介绍
nodejs-dashboard
Telemetry dashboard for node.js apps from the terminal!
Determine in realtime what's happening inside your node process from the terminal. No need to instrument code to get the deets. Also splits stderr/stdout to help spot errors sooner.
Getting Started
Install
The preferred method is global install but can optionally be placed locally as well.
% npm install -g nodejs-dashboard
Add the reporting module
There are a couple patterns for including nodejs-dashboard
in your code. This module isn't designed for production use and should be limited to development environments.
Including via code
From within a dev.index.js
script or other dev entry point simply require the nodejs-dashboard
module.
// dev.index.js
require("nodejs-dashboard");
require("./index");
Next update your package.json
to launch the dashboard:
...
"scripts": {
"dev": "nodejs-dashboard node dev.index.js"
}
...
Including via preload argument
This method utilizes Node's -r
flag to introduce the nodejs-dashboard
module. In this setup no code modifications are required. This is functionally equivalent to the above example.
Update your package.json
with the new script:
...
"scripts": {
"dev": "nodejs-dashboard -- node -r nodejs-dashboard index.js"
}
...
Caveats
If your app requires additional arguments you'll need to pass the --
flag to your script. For example:
...
"scripts": {
"dev": "nodejs-dashboard -- node -m=false --bar=true index.js"
}
...
But I want to use something else to launch my app!
Most CLI interfaces provide a mechanism for launching other tools. If you're looking to use something like nodemon or babel checkout the exec options provided by the CLI.
% nodemon --exec "nodejs-dashboard babel-node" src/index.js
Launch your app
Once you've completed these steps run the following in your terminal:
% npm run dev
What options does nodejs-dashboard support?
Usage: nodejs-dashboard [options] -- [node] [script] [arguments]
Options:
-h, --help output usage information
-V, --version output the version number
-p, --port [port] Socket listener port
-e, --eventdelay [ms] Minimum threshold for event loop reporting, default 10ms
--port
Under the hood the dashboard utilizes SocketIO with a default port of 9838
. If this conflicts with an existing service you can optionally change this value.
--eventdelay
This tunes the minimum threshold for reporting event loop delays. The default value is 10ms
. Any delay below this value will be reported at 0
.
To gracefully exit and terminate the spawned process use one of: Ctrl + C
, Q
, or ESC
.
-
11727 Star
-
11745 Star
-
8245 Star
-
47 Star
-
25 Star
-
10176 Star
-
1288 Star
-
712 Star