Gal Hammer has uploaded a new change for review.
Change subject: Add qemu's memory usage to VM statistics. ......................................................................
Add qemu's memory usage to VM statistics.
Change-Id: Ibeb35759454c4a9b41e1303956267e93ca3545a0 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=799285 Signed-off-by: Gal Hammer ghammer@redhat.com --- M vdsm/config.py.in M vdsm/libvirtvm.py 2 files changed, 14 insertions(+), 1 deletion(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/06/9006/1
diff --git a/vdsm/config.py.in b/vdsm/config.py.in index df85e7e..ee1627b 100644 --- a/vdsm/config.py.in +++ b/vdsm/config.py.in @@ -111,6 +111,8 @@ ('vm_sample_net_interval', '5', None),
('vm_sample_net_window', '2', None), + + ('vm_sample_memory_interval', '2', None),
('trust_store_path', '@TRUSTSTORE@', 'Where the certificates and keys are situated.'), diff --git a/vdsm/libvirtvm.py b/vdsm/libvirtvm.py index 86e39a3..f76f35c 100644 --- a/vdsm/libvirtvm.py +++ b/vdsm/libvirtvm.py @@ -91,10 +91,13 @@ self._sampleNet, config.getint('vars', 'vm_sample_net_interval'), config.getint('vars', 'vm_sample_net_window'))) + self.sampleMem = (utils.AdvancedStatsFunction(self._sampleMem, + config.getint('vars', 'vm_sample_memory_interval')))
self.addStatsFunction( self.highWrite, self.updateVolumes, self.sampleCpu, - self.sampleDisk, self.sampleDiskLatency, self.sampleNet) + self.sampleDisk, self.sampleDiskLatency, self.sampleNet, + self.sampleMem)
def _highWrite(self): if not self._vm.isDisksStatsCollectionEnabled(): @@ -168,6 +171,14 @@ netSamples[nic.name] = self._vm._dom.interfaceStats(nic.name) return netSamples
+ def _sampleMem(self): + memUsage = {} + for line in open('/proc/%d/status' %(self.conf['pid'])): + var, value = line.strip().split()[0:2] + if var in ('VmSize:', 'VmRSS:', 'VmData:'): + memUsage[var[:-1]] = long(value) + return memUsage + def _diff(self, prev, curr, val): return prev[val] - curr[val]
-- To view, visit http://gerrit.ovirt.org/9006 To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange Gerrit-Change-Id: Ibeb35759454c4a9b41e1303956267e93ca3545a0 Gerrit-PatchSet: 1 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Gal Hammer ghammer@redhat.com