mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
cli: add --heap-prof
flag available to NODE_OPTIONS
Fixes: https://github.com/nodejs/node/issues/54257 Signed-off-by: Juan José Arboleda <soyjuanarbol@gmail.com> PR-URL: https://github.com/nodejs/node/pull/54259 Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
This commit is contained in:
parent
61e52c8bd3
commit
78b72ca7ba
@ -3076,6 +3076,10 @@ one is included in the list below.
|
||||
* `--force-fips`
|
||||
* `--force-node-api-uncaught-exceptions-policy`
|
||||
* `--frozen-intrinsics`
|
||||
* `--heap-prof-dir`
|
||||
* `--heap-prof-interval`
|
||||
* `--heap-prof-name`
|
||||
* `--heap-prof`
|
||||
* `--heapsnapshot-near-heap-limit`
|
||||
* `--heapsnapshot-signal`
|
||||
* `--http-parser`
|
||||
|
@ -617,19 +617,23 @@ EnvironmentOptionsParser::EnvironmentOptionsParser() {
|
||||
"Start the V8 heap profiler on start up, and write the heap profile "
|
||||
"to disk before exit. If --heap-prof-dir is not specified, write "
|
||||
"the profile to the current working directory.",
|
||||
&EnvironmentOptions::heap_prof);
|
||||
&EnvironmentOptions::heap_prof,
|
||||
kAllowedInEnvvar);
|
||||
AddOption("--heap-prof-name",
|
||||
"specified file name of the V8 heap profile generated with "
|
||||
"--heap-prof",
|
||||
&EnvironmentOptions::heap_prof_name);
|
||||
&EnvironmentOptions::heap_prof_name,
|
||||
kAllowedInEnvvar);
|
||||
AddOption("--heap-prof-dir",
|
||||
"Directory where the V8 heap profiles generated by --heap-prof "
|
||||
"will be placed.",
|
||||
&EnvironmentOptions::heap_prof_dir);
|
||||
&EnvironmentOptions::heap_prof_dir,
|
||||
kAllowedInEnvvar);
|
||||
AddOption("--heap-prof-interval",
|
||||
"specified sampling interval in bytes for the V8 heap "
|
||||
"profile generated with --heap-prof. (default: 512 * 1024)",
|
||||
&EnvironmentOptions::heap_prof_interval);
|
||||
&EnvironmentOptions::heap_prof_interval,
|
||||
kAllowedInEnvvar);
|
||||
#endif // HAVE_INSPECTOR
|
||||
AddOption("--max-http-header-size",
|
||||
"set the maximum size of HTTP headers (default: 16384 (16KB))",
|
||||
|
@ -86,6 +86,18 @@ const difference = (setA, setB) => {
|
||||
return new Set([...setA].filter((x) => !setB.has(x)));
|
||||
};
|
||||
|
||||
// Remove heap prof options if the inspector is not enabled.
|
||||
// NOTE: this is for ubuntuXXXX_sharedlibs_withoutssl_x64, no SSL, no inspector
|
||||
// Refs: https://github.com/nodejs/node/pull/54259#issuecomment-2308256647
|
||||
if (!process.features.inspector) {
|
||||
[
|
||||
'--heap-prof-dir',
|
||||
'--heap-prof-interval',
|
||||
'--heap-prof-name',
|
||||
'--heap-prof',
|
||||
].forEach((opt) => documented.delete(opt));
|
||||
}
|
||||
|
||||
const overdocumented = difference(documented,
|
||||
process.allowedNodeEnvironmentFlags);
|
||||
assert.strictEqual(overdocumented.size, 0,
|
||||
|
Loading…
Reference in New Issue
Block a user