diff options
-rw-r--r-- | control.py | 10 | ||||
-rwxr-xr-x | metrics.py | 8 |
2 files changed, 15 insertions, 3 deletions
@@ -73,6 +73,16 @@ class EjabberdCtl(EjabberdApi): return result return result["s2s_outgoing"] + def fetch_uptime(self): + result = self.cmd("stats", {"name": "uptimeseconds"}) + if "stat" in result: + return result["stat"] + + def fetch_processes(self): + result = self.cmd("stats", {"name": "processes"}) + if "stat" in result: + return result["stat"] + def fetch_registered_count(self, vhost=None): if vhost is None: result = self.cmd("stats", {"name":"registeredusers"}) @@ -210,6 +210,10 @@ class EjabberdMetrics(EjabberdCtl): data = { "registered": self.get_registered(), "muc": self.get_muc(), + "s2s_in": self.get_s2s_in(), + "s2s_out": self.get_s2s_out(), + "uptime": self.fetch_uptime(), + "processes": self.fetch_processes(), "online_by_status": self.get_online_by_status(), "online_by_client": self.get_online_by_client(), "online_by_ipversion": self.get_online_by_ipversion(), @@ -229,9 +233,7 @@ class EjabberdMetrics(EjabberdCtl): data["online_client_by_ipversion"] = self.get_online_client_by_ipversion() data["nodes"] = nodes - - data["s2s_in"] = self.get_s2s_in() - data["s2s_out"] = self.get_s2s_out() + return data |