From 7c1d5521edd5c1afa626a011edf98f6abf00abf6 Mon Sep 17 00:00:00 2001 From: Ian Gregory Date: Tue, 10 May 2016 10:34:30 +0100 Subject: [PATCH] Improve portability when fetching process memory - use ps rather than the proc filesystem --- mysqltuner.pl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mysqltuner.pl b/mysqltuner.pl index ed02151..deb0b25 100755 --- a/mysqltuner.pl +++ b/mysqltuner.pl @@ -1088,15 +1088,15 @@ sub is_open_port { sub get_process_memory { my $pid = shift; - return 0 unless -f "/proc/$pid/status"; - my @pdata = grep { /RSS:/ } get_file_contents "/proc/$pid/status"; - map { s/.*RSS:\s*(\d+)\s*kB\s*$/$1*1024/ge } @pdata; - return $pdata[0]; + my @mem = `ps -p $pid -o rss`; + return 0 if scalar @mem != 2; + return $mem[1]*1024; } sub get_other_process_memory { - my @procs = `ps -eo pid,cmd`; + my @procs = `ps -eaxo pid,command`; map { + s/.*PID.*//; s/.*mysqld.*//; s/.*\[.*\].*//; s/^\s+$//g;