From 58a0fae815e26c32f2b934a0d036de31ec891da1 Mon Sep 17 00:00:00 2001 From: Mykola Golub Date: Sun, 25 Nov 2018 12:38:48 +0200 Subject: [PATCH] mgr/crash: group by process name in 'ceph crash json_report' It is almost the same for daemons like osd or mon, but much better for 'client' daemons like rgw or rbd-mirror. Signed-off-by: Mykola Golub --- src/pybind/mgr/crash/module.py | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/pybind/mgr/crash/module.py b/src/pybind/mgr/crash/module.py index ae817096b987..98a735d9e52a 100644 --- a/src/pybind/mgr/crash/module.py +++ b/src/pybind/mgr/crash/module.py @@ -164,16 +164,10 @@ class Module(MgrModule): report = defaultdict(lambda: 0) cutoff = datetime.datetime.utcnow() - datetime.timedelta(hours=hours) for _, meta in self.timestamp_filter(lambda ts: ts >= cutoff): - try: - etype = meta["entity_name"] - etype, _ = etype.split(".") - etype = "unknown" if not etype else etype - except KeyError: - etype = "unknown" - except (ValueError, AttributeError): - etype = str(etype) - pass - report[etype] += 1 + pname = meta.get("process_name", "unknown") + if not pname: + pname = "unknown" + report[pname] += 1 return 0, '', json.dumps(report) -- 2.47.3