Generate HTML based on information gathered with mdb(1) from a node.js core dump
JavaScript CSS
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
assets
examples
lib
.gitignore
README.md
corevis.js
index.html.ejs
package.json

README.md

corevis

Generate HTML based on information gathered with mdb(1) from a node.js core dump

Example: http://us-east.manta.joyent.com/devops@voxer.com/public/corevis/example.html

Installation

[sudo] npm install -g corevis

Usage

At Voxer, we use commands similar to the ones below to ensure that all core dumps go to a specific directory

mkdir /core
coreadm -g /core/core.%f.%p -G all -e global -d process -e global-setid -d proc-setid -I all -e log

Run any of the examples to generate a core dump, then use corevis to make an HTML file with analysis.

[root@test1 ~/node-corevis]# node examples/big-objects.js
pid 9986
Abort (core dumped)
[root@test1 ~/node-corevis]# ./corevis.js /core/core.node.9986 > example.html
> loading /core/core.node.9986... 147ms
> getting status... 896ms
> loading v8... 66ms
> getting stack trace... 37ms
> finding jsobjects (this can take a while)... 13585ms
> calling ::jsprint -a on all objects found... 21975ms
> analyzing data... 631ms
> loading assets... 15ms
> generating HTML... 167ms
> killing mdb... 10ms
> done. took 37.53 seconds...

CLI Usage

Usage: corevis [options] <node coredump>

Generate HTML based on information gathered with mdb(1) from
a node.js core dump

Examples
    $ corevis core.node.1234 > vis.html
    $ corevis --load /var/tmp/v8-new.so core.node.1234 > vis.html

Options
  -h, --help       print this message and exit
  -l, --load <v8>  argument to pass to `::load` in mdb(1), defaults to "v8"
  -u, --updates    check npm for available updates to this program
  -v, --version    print the version number and exit

License

MIT License