From c541868837a1c4421394de5dd1029d2619b5ac82 Mon Sep 17 00:00:00 2001 From: vince Date: Mon, 5 Feb 2018 15:10:21 +0100 Subject: [PATCH 1/2] feat: add flag to enable deep-monitoring --- bin/pm2 | 1 + lib/API/schema.json | 5 +++++ lib/ProcessContainer.js | 6 +++--- lib/ProcessContainerFork.js | 6 +++--- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/bin/pm2 b/bin/pm2 index feca91ee9..124a47aac 100755 --- a/bin/pm2 +++ b/bin/pm2 @@ -87,6 +87,7 @@ commander.version(pkg.version) .option('--sort ', 'sort process according to field\'s name') .option('--v8', 'enable v8 data collecting') .option('--event-loop-inspector', 'enable event-loop-inspector dump in pmx') + .option('--deep-monitoring', 'enable all monitoring tools (equivalent to --v8 --event-loop-inspector --trace') .usage('[cmd] app'); commander.on('--help', function() { diff --git a/lib/API/schema.json b/lib/API/schema.json index 97274d7af..a74b138e3 100644 --- a/lib/API/schema.json +++ b/lib/API/schema.json @@ -202,6 +202,11 @@ "boolean" ] }, + "deep_monitoring": { + "type": [ + "boolean" + ] + }, "increment_var": { "type": "string" }, diff --git a/lib/ProcessContainer.js b/lib/ProcessContainer.js index 81c1fb508..4360d6de6 100644 --- a/lib/ProcessContainer.js +++ b/lib/ProcessContainer.js @@ -32,10 +32,10 @@ delete process.env.pm2_env; if (process.env.pmx !== 'false') { require('pmx').init({ - transactions: (process.env.km_link === 'true' && process.env.trace === 'true') || false, + transactions: (process.env.km_link === 'true' && (process.env.trace === 'true' || process.env.deep_monitoring === 'true')) || false, http: process.env.km_link === 'true' || false, - v8: process.env.v8 === 'true' || false, - event_loop_dump: process.env['event_loop_inspector'] === 'true' || false + v8: process.env.v8 === 'true' || process.env.deep_monitoring === 'true' || false, + event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false }); } diff --git a/lib/ProcessContainerFork.js b/lib/ProcessContainerFork.js index fd992498f..a9b822857 100644 --- a/lib/ProcessContainerFork.js +++ b/lib/ProcessContainerFork.js @@ -6,10 +6,10 @@ // Inject custom modules if (process.env.pmx !== 'false') { require('pmx').init({ - transactions: (process.env.km_link === 'true' && process.env.trace === 'true') || false, + transactions: (process.env.km_link === 'true' && (process.env.trace === 'true' || process.env.deep_monitoring === 'true')) || false, http: process.env.km_link === 'true' || false, - v8: process.env.v8 === 'true' || false, - event_loop_dump: process.env['event_loop_inspector'] === 'true' || false + v8: process.env.v8 === 'true' || process.env.deep_monitoring === 'true' || false, + event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false }); } From 4d1bea5e0bbaab1f16f75d012bca25702cdff88e Mon Sep 17 00:00:00 2001 From: vmarchaud Date: Mon, 5 Feb 2018 17:40:27 +0100 Subject: [PATCH 2/2] feat: add deep_metrics to deep_monitoring flag --- lib/ProcessContainer.js | 3 ++- lib/ProcessContainerFork.js | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/ProcessContainer.js b/lib/ProcessContainer.js index 4360d6de6..db9540dd6 100644 --- a/lib/ProcessContainer.js +++ b/lib/ProcessContainer.js @@ -35,7 +35,8 @@ delete process.env.pm2_env; transactions: (process.env.km_link === 'true' && (process.env.trace === 'true' || process.env.deep_monitoring === 'true')) || false, http: process.env.km_link === 'true' || false, v8: process.env.v8 === 'true' || process.env.deep_monitoring === 'true' || false, - event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false + event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false, + deep_metrics: process.env.deep_monitoring === 'true' || false }); } diff --git a/lib/ProcessContainerFork.js b/lib/ProcessContainerFork.js index a9b822857..6d1b0cebb 100644 --- a/lib/ProcessContainerFork.js +++ b/lib/ProcessContainerFork.js @@ -9,7 +9,8 @@ if (process.env.pmx !== 'false') { transactions: (process.env.km_link === 'true' && (process.env.trace === 'true' || process.env.deep_monitoring === 'true')) || false, http: process.env.km_link === 'true' || false, v8: process.env.v8 === 'true' || process.env.deep_monitoring === 'true' || false, - event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false + event_loop_dump: process.env.event_loop_inspector === 'true' || process.env.deep_monitoring === 'true' || false, + deep_metrics: process.env.deep_monitoring === 'true' || false }); }