diff options
-rw-r--r-- | calls.py | 36 |
1 files changed, 26 insertions, 10 deletions
@@ -22,6 +22,7 @@ class EjabberdApiCalls(EjabberdApi): except AttributeError: # emtpy response or None obj + log.warning("nodename not found on split") raise SystemExit(17) except IndexError: @@ -50,6 +51,7 @@ class EjabberdApiCalls(EjabberdApi): tmp = ver_str.findall(status)[0] # raise SystemExit code 17 if no status message is received except TypeError: + log.warning("ver sting not parsed") raise SystemExit(17) # return parsed version string @@ -93,25 +95,39 @@ class EjabberdApiCalls(EjabberdApi): def fetch_s2s_in(self): result = self.cmd("incoming_s2s_number", {}) - if "s2s_incoming" not in result: - return result - return result["s2s_incoming"] + if isinstance(result, dict): + if "s2s_incoming" in result: + return result["s2s_incoming"] + log.warning("fetch_s2s_in: error empty result " + str(result)) + return 0 + return result def fetch_s2s_out(self): result = self.cmd("outgoing_s2s_number", {}) - if "s2s_outgoing" not in result: - return result - return result["s2s_outgoing"] + if isinstance(result, dict): + if "s2s_outgoing" in result: + return result["s2s_outgoing"] + log.warning("fetch_s2s_out: error empty result " + str(result)) + return 0 + return result def fetch_uptime(self): result = self.cmd("stats", {"name": "uptimeseconds"}) - if "stat" in result: - return result["stat"] + if isinstance(result, dict): + if "stat" in result: + return result["stat"] + log.warning("uptime: error empty result " + str(result)) + return 0 + return result def fetch_processes(self): result = self.cmd("stats", {"name": "processes"}) - if "stat" in result: - return result["stat"] + if isinstance(result, dict): + if "stat" in result: + return result["stat"] + log.warning("processes: error empty result " + str(result)) + return 0 + return result def fetch_registered_count(self, vhost=None): if vhost is None: |