pep8 and friends
* add default logging NullHandler * fix indentation mismatch * rename control to calls to better point out its purpose * rename class to EjabberdApiCalls to better point out it purpose * changed get_nodes to an internal support method
This commit is contained in:
parent
d36dbe03c8
commit
71440b7a8f
3
api.py
3
api.py
|
@ -1,9 +1,8 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
import logging
|
||||
import re
|
||||
|
||||
from packaging import version
|
||||
logging.getLogger(__name__).addHandler(logging.NullHandler())
|
||||
|
||||
|
||||
class EjabberdApi:
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import logging
|
||||
import re
|
||||
|
||||
from packaging import version
|
||||
|
||||
from api import EjabberdApi
|
||||
|
||||
class EjabberdCtl(EjabberdApi):
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class EjabberdApiCalls(EjabberdApi):
|
||||
@property
|
||||
def verstring(self):
|
||||
if self._login is not None:
|
||||
|
@ -23,7 +25,7 @@ class EjabberdCtl(EjabberdApi):
|
|||
raise SystemExit(17)
|
||||
|
||||
# return parsed version string
|
||||
logging.debug(f"fetch version: {tmp}")
|
||||
log.debug(f"fetched version string: {tmp}")
|
||||
return version.parse(tmp)
|
||||
|
||||
return None
|
||||
|
@ -75,22 +77,22 @@ class EjabberdCtl(EjabberdApi):
|
|||
|
||||
def fetch_registered_count(self, vhost=None):
|
||||
if vhost is None:
|
||||
result = self.cmd("stats", {"name":"registeredusers"})
|
||||
result = self.cmd("stats", {"name": "registeredusers"})
|
||||
if "stat" in result:
|
||||
return result["stat"]
|
||||
else:
|
||||
result = self.cmd("stats_host", {"name":"registeredusers", "host": vhost})
|
||||
result = self.cmd("stats_host", {"name": "registeredusers", "host": vhost})
|
||||
if "stat" in result:
|
||||
return result["stat"]
|
||||
|
||||
def fetch_muc_count(self, vhost=None, muc_host="conference"):
|
||||
host = "global"
|
||||
if vhost is not None:
|
||||
if self.verstring.major >= 19:
|
||||
host = '.'.join([muc_host, vhost])
|
||||
else:
|
||||
host = vhost
|
||||
result = self.cmd("muc_online_rooms", {"host": host})
|
||||
if "rooms" in result:
|
||||
return len(result["rooms"])
|
||||
return len(result)
|
||||
host = "global"
|
||||
if vhost is not None:
|
||||
if self.verstring.major >= 19:
|
||||
host = '.'.join([muc_host, vhost])
|
||||
else:
|
||||
host = vhost
|
||||
result = self.cmd("muc_online_rooms", {"host": host})
|
||||
if "rooms" in result:
|
||||
return len(result["rooms"])
|
||||
return len(result)
|
|
@ -3,10 +3,10 @@
|
|||
import datetime
|
||||
import logging
|
||||
|
||||
from control import EjabberdCtl
|
||||
from calls import EjabberdApiCalls
|
||||
|
||||
|
||||
class EjabberdCleanup(EjabberdCtl):
|
||||
class EjabberdCleanup(EjabberdApiCalls):
|
||||
def __init__(self, url, login, api):
|
||||
super().__init__(url, login, api)
|
||||
self.ignore_hosts = []
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
import ipaddress
|
||||
|
||||
from control import EjabberdCtl
|
||||
from calls import EjabberdApiCalls
|
||||
|
||||
# rfc6052: IPv6 Addressing of IPv4/IPv6 Translators
|
||||
nat64 = ipaddress.ip_network("64:ff9b::/96")
|
||||
|
||||
|
||||
class EjabberdMetrics(EjabberdCtl):
|
||||
class EjabberdMetrics(EjabberdApiCalls):
|
||||
"""
|
||||
class to fetch metrics per xmlrpc
|
||||
"""
|
||||
|
@ -190,7 +190,7 @@ class EjabberdMetrics(EjabberdCtl):
|
|||
|
||||
return data
|
||||
|
||||
def get_nodes(self):
|
||||
def _get_nodes(self):
|
||||
if not hasattr(self, "_nodes"):
|
||||
self._nodes = self.fetch_nodes()
|
||||
return self._nodes
|
||||
|
@ -224,7 +224,7 @@ class EjabberdMetrics(EjabberdCtl):
|
|||
data["vhosts"] = vhosts
|
||||
|
||||
nodes = {}
|
||||
for node in self.get_nodes():
|
||||
for node in self._get_nodes():
|
||||
nodes[node] = self.get_node_metrics(node)
|
||||
|
||||
data["online_client_by_ipversion"] = self.get_online_client_by_ipversion()
|
||||
|
|
Loading…
Reference in New Issue