@ramitos/flamegraph
v1.1.0
Published
Generates flamegraphs with Node.js or in the browser
Downloads
8
Maintainers
Readme
flamegraph
Generates flamegraphs with Node.js or in the browser.
cat instruments-callgraph.csv | flamegraph -t instruments > flamegraph.svg
Installation
npm install flamegraph
Usage
Requires Node.js version 0.11.13
or higher.
flamegraph <options>
Generates a flamegraph from the callgraph data of the given `inputtype` that is streamed into it.
OPTIONS:
--inputtype -t the type of callgraph 'instruments | perf | cpuprofile'
--file -f the input csv file (may also be piped)
--output -o the output svg file (may also be displayed in stdout)
--map -m a mapping / symbols file, named perf-<pid>.map, generated using node --perf-basic-prof
--fonttype font family used default: 'Verdana'
--fontsize base text size default: 12
--imagewidth max width, pixels default: 1200
--frameheight max height is dynamic default: 16.0
--fontwidth avg width relative to fontsize default: 0.59
--minwidth min function width, pixels default: 0.1
--countname what are the counts in the data? default: 'samples'
--colors color theme default: 'hot'
--bgcolor1 background color gradient start default: '#eeeeee'
--bgcolor2 background color gradient stop default: '#eeeeb0'
--timemax (override the) sum of the counts default: Infinity
--factor factor to scale counts by default: 1
--hash color by function name default: true
--titletext centered heading default: 'Flame Graph'
--nametype what are the names in the data? default: 'Function:'
--removenarrows removes narrow functions instead of adding a 'hidden' class default: true
--internals include internal functions default: false
--optimizationinfo include optimization indicators default: false
--help -h print this help message
EXAMPLE:
cat instruments-callgraph.csv | flamegraph -t instruments > flamegraph.svg
flamegraph -t instruments -f instruments-callgraph.csv -m perf-4499.map -o flamegraph.svg
The input data needs to be generated as follows:
API
generated with docme
Kudos
This library is an adaptation of @brendangregg's FlameGraph perl scripts.
License
MIT