diff --git a/BUILDING.md b/BUILDING.md index e477d46863f..86cf17aef23 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -58,6 +58,7 @@ file a new issue. * [Configuring OpenSSL config appname](#configure-openssl-appname) * [Building Node.js with FIPS-compliant OpenSSL](#building-nodejs-with-fips-compliant-openssl) * [Building Node.js with Temporal support](#building-nodejs-with-temporal-support) +* [Building Node.js with Perfetto support](#building-nodejs-with-perfetto-support) * [Building Node.js with external core modules](#building-nodejs-with-external-core-modules) * [Unix/macOS](#unixmacos-4) * [Windows](#windows-5) @@ -1083,6 +1084,23 @@ a warning is printed and Temporal support is disabled. Passing both options to `configure.py` is an error. +## Building Node.js with Perfetto support + +Trace events are recorded in JSON by default. Pass `--with-perfetto` to +`configure.py` to record them in the [Perfetto](https://perfetto.dev/) protobuf +format instead: + +```bash +./configure --with-perfetto +``` + +The Perfetto SDK ships in `deps/perfetto`, so no additional dependency is +needed. + +Such a build writes Perfetto protobuf traces instead of JSON, so the default +trace file name becomes `node_trace.${rotation}.pftrace` and the files can be +opened in . It does not support JSON traces output. + ## Building Node.js with external core modules It is possible to specify one or more JavaScript text files to be bundled in