diff --git a/vhostmd.conf b/vhostmd.conf
index 271e821..8afd303 100644
--- a/vhostmd.conf
+++ b/vhostmd.conf
@@ -43,12 +43,18 @@ within the vm element.
VirtualizationVendor
- rpm -qi libvirt| grep Vendor: |awk '{print substr($0, index($0,$5)) }'
+
+ rpm -qi libvirt| grep Vendor: \
+ | gawk '{print substr($0, index($0,$5)) }'
+
VirtProductInfo
- virsh -r CONNECT version | grep API | gawk -F': ' '{print $2}'
+
+ virsh -r CONNECT version | grep API \
+ | gawk -F': ' '{print $2}'
+
@@ -58,61 +64,84 @@ within the vm element.
NumberOfPhysicalCPUsUtilized
- virsh -r CONNECT nodeinfo | grep 'CPU(s):' | gawk -F': +' '{print $2}'
+
+ virsh -r CONNECT nodeinfo | grep 'CPU(s):' \
+ | gawk -F': +' '{print $2}'
+
MemoryAllocatedToVirtualServers
- virsh -r CONNECT nodeinfo | grep 'Memory size:' | gawk -F' +' '{ printf "%d\n", $3/1024 }'
+
+ virsh -r CONNECT nodeinfo | grep 'Memory size:' \
+ | gawk -F' +' '{ printf "%d\n", $3/1024 }'
+
FreePhysicalMemory
- free|egrep -i '^[[:space:]]*(Mem:)' \
- |awk 'BEGIN { sum = 0; }
+ free|egrep -i '^[[:space:]]*(Mem:)' \
+ | gawk 'BEGIN { sum = 0; }
{ sum += $4; }
- END { printf "%10d\n", sum/1024; }'
+ END { printf "%d\n", sum/1024; }'
UsedPhysicalMemory
- free|egrep -i '^[[:space:]]*(Mem:)' \
- |awk 'BEGIN { sum = 0; }
+ free|egrep -i '^[[:space:]]*(Mem:)' \
+ | gawk 'BEGIN { sum = 0; }
{ sum += $3; }
- END { printf "%10d\n", sum/1024; }'
+ END { printf "%d\n", sum/1024; }'
FreeVirtualMemory
- free|egrep -i '^[[:space:]]*(Mem:|Swap:)' \
- |awk 'BEGIN { sum = 0; }
+ free|egrep -i '^[[:space:]]*(Mem:|Swap:)' \
+ | gawk 'BEGIN { sum = 0; }
{ sum += $4; }
- END { printf "%10d\n", sum/1024; }'
+ END { printf "%d\n", sum/1024; }'
UsedVirtualMemory
- free|egrep -i '^[[:space:]]*(Mem:|Swap:)' \
- |awk 'BEGIN { sum = 0; }
+ free|egrep -i '^[[:space:]]*(Mem:|Swap:)' \
+ | gawk 'BEGIN { sum = 0; }
{ sum += $3; }
- END { printf "%10d\n", sum/1024; }'
+ END { printf "%d\n", sum/1024; }'
PagedInMemory
- echo "$((`vmstat -s | gawk '/pages paged in/ {print $1}'` / 1024))"
+
+ vmstat -s | gawk 'BEGIN {
+ cmd = "getconf PAGESIZE";
+ cmd | getline pagesize;
+ close(cmd);
+ }
+ /pages swapped in/ {
+ printf "%d\n", $1 / 1024 * pagesize / 1024;
+ }'
+
-
PagedOutMemory
- echo "$((`vmstat -s | gawk '/pages paged out/ {print $1}'` / 1024))"
+
+ vmstat -s | gawk 'BEGIN {
+ cmd = "getconf PAGESIZE";
+ cmd | getline pagesize;
+ close(cmd);
+ }
+ /pages swapped out/ {
+ printf "%d\n", $1 / 1024 * pagesize / 1024;
+ }'
+
PageRates
@@ -123,32 +152,45 @@ within the vm element.
TotalCPUTime
- virsh -r CONNECT dominfo NAME | sed 's/: */:/' | \
- gawk -F: '/CPU time/ {print $2;}'
+
+ virsh -r CONNECT dominfo NAME | sed 's/: */:/' \
+ | gawk -F: '/CPU time/ {print $2;}'
+
NumberOfAssignedPhysicalCPUs
- virsh -r CONNECT dominfo NAME | grep 'CPU(s):' | gawk -F': +' '{print $2}'
+
+ virsh -r CONNECT dominfo NAME | grep 'CPU(s):' \
+ | gawk -F': +' '{print $2}'
+
PhysicalMemoryAllocatedToVirtualSystem
- virsh -r CONNECT dominfo NAME | grep 'Max memory:' | gawk -F' +' '{printf "%d\n", $3/1024}'
+
+ virsh -r CONNECT dominfo NAME | grep 'Max memory:' \
+ | gawk -F' +' '{printf "%d\n", $3/1024}'
+
diff --git a/vhostmd.spec b/vhostmd.spec
index 4a92a81..d67c77f 100644
--- a/vhostmd.spec
+++ b/vhostmd.spec
@@ -8,7 +8,7 @@
Summary: Virtualization host metrics daemon
Name: vhostmd
Version: 0.4
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2+
Group: System Environment/Daemons
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
@@ -183,6 +183,10 @@ exit 0
%changelog
+* Thu Dec 10 2009 Richard W.M. Jones - 0.4-2
+- Fix the PagedOutMemory and PagedInMemory stats to report MB instead
+ of pages (fixes supplied by Joachim Schneider).
+
* Wed Dec 9 2009 Richard W.M. Jones - 0.4-1
- vhostmd didn't chdir ("/") when daemonizing. Fixed in this 0.4 release.