Use core/stats in memtop and syscalls analysis
authorAntoine Busque <abusque@efficios.com>
Tue, 22 Dec 2015 03:53:25 +0000 (22:53 -0500)
committerAntoine Busque <abusque@efficios.com>
Thu, 11 Feb 2016 18:58:52 +0000 (13:58 -0500)
Signed-off-by: Antoine Busque <abusque@efficios.com>
lttnganalyses/core/memtop.py
lttnganalyses/core/syscalls.py

index ce6b79bdfbaa64c6a0fc031d8273b24b42d96683..5e1ee6097182f81309393722fbb1941abeeba6f0 100644 (file)
@@ -20,6 +20,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
+from . import stats
 from .analysis import Analysis
 
 
@@ -70,18 +71,13 @@ class Memtop(Analysis):
         self.tids[tid].freed_pages += 1
 
 
-class ProcessMemStats():
+class ProcessMemStats(stats.Process):
     def __init__(self, pid, tid, comm):
-        self.pid = pid
-        self.tid = tid
-        self.comm = comm
+        super().__init__(pid, tid, comm)
+
         self.allocated_pages = 0
         self.freed_pages = 0
 
-    @classmethod
-    def new_from_process(cls, proc):
-        return cls(proc.pid, proc.tid, proc.comm)
-
     def reset(self):
         self.allocated_pages = 0
         self.freed_pages = 0
index cf2bd1960b74b11dd67bf996f863a094bcb7005e..eceed1ce34a4d3fa51893223ccb8ae7c4a8c2e3d 100644 (file)
@@ -20,6 +20,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
+from . import stats
 from .analysis import Analysis
 
 
@@ -36,6 +37,7 @@ class SyscallsAnalysis(Analysis):
         self.total_syscalls = 0
 
     def reset(self):
+        # FIXME why no reset?
         pass
 
     def _process_syscall_exit(self, **kwargs):
@@ -62,18 +64,16 @@ class SyscallsAnalysis(Analysis):
         self.total_syscalls += 1
 
 
-class ProcessSyscallStats():
+class ProcessSyscallStats(stats.Process):
     def __init__(self, pid, tid, comm):
-        self.pid = pid
-        self.tid = tid
-        self.comm = comm
+        super().__init__(pid, tid, comm)
+
         # indexed by syscall name
         self.syscalls = {}
         self.total_syscalls = 0
 
-    @classmethod
-    def new_from_process(cls, proc):
-        return cls(proc.pid, proc.tid, proc.comm)
+    def reset(self):
+        pass
 
 
 class SyscallStats():
This page took 0.02532 seconds and 5 git commands to generate.