From 5f0cb289c1d91513427ffdc8f646bc86516c2759 Mon Sep 17 00:00:00 2001 From: nico Date: Mon, 29 Jun 2020 11:03:49 +0200 Subject: black reformat * black reformatted the code --- cleanup.py | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) (limited to 'cleanup.py') diff --git a/cleanup.py b/cleanup.py index f66bea9..ee9def1 100755 --- a/cleanup.py +++ b/cleanup.py @@ -20,16 +20,16 @@ class EjabberdCleanup(EjabberdApiCalls): if self.dry: logging.warning(f"{user}@{host}: dry delete : {reason}") else: - self.cmd("unregister", {"host": host, "user": user}) + self.cmd("unregister", {"host": host, "user": user}) logging.warning(f"{user}@{host}: deleted - {reason}") def run_user(self, host, user): if self.skip_by_roster: - roster = self.cmd("get_roster",{"host": host, "user": user}) + roster = self.cmd("get_roster", {"host": host, "user": user}) if len(roster) > 0: logging.debug(f"{user}@{host}: skipped it has a roster") return - last = self.cmd("get_last",{"host": host, "user": user}) + last = self.cmd("get_last", {"host": host, "user": user}) if self.delete_not_login and last["status"] == "Registered but didn't login": self.delete_user(host, user, "not login") return @@ -37,14 +37,16 @@ class EjabberdCleanup(EjabberdApiCalls): last_stamp = last["timestamp"] lastdate = None try: - lastdate = datetime.datetime.strptime(last_stamp,"%Y-%m-%dT%H:%M:%SZ") + lastdate = datetime.datetime.strptime(last_stamp, "%Y-%m-%dT%H:%M:%SZ") except: try: - lastdate = datetime.datetime.strptime(last_stamp,"%Y-%m-%dT%H:%M:%S.%fZ") + lastdate = datetime.datetime.strptime(last_stamp, "%Y-%m-%dT%H:%M:%S.%fZ") except: logging.error(f"{user}@{host}: not able to parse '{last_stamp}'") return - if lastdate != None and lastdate-datetime.datetime.now() > datetime.timedelta(days=self.offline_since_days): + if lastdate != None and lastdate - datetime.datetime.now() > datetime.timedelta( + days=self.offline_since_days + ): self.delete_user(host, user, f"last seen @ {lastdate}") return @@ -53,7 +55,7 @@ class EjabberdCleanup(EjabberdApiCalls): if host in self.ignore_hosts: continue logging.info(f"run cleanup for host: {host}") - for user in self.cmd("registered_users",{"host": host}): + for user in self.cmd("registered_users", {"host": host}): if user in self.ignore_usernames: continue self.run_user(host, user) @@ -64,20 +66,20 @@ if __name__ == "__main__": # load config config = Config() - if config.get('debug', default=False): + if config.get("debug", default=False): logging.getLogger().setLevel(logging.DEBUG) # credentials and parameters - url = config.get('url', default='http://localhost:5280/api') - login = config.get('login', default=None) - api = config.get('api', default='rest') + url = config.get("url", default="http://localhost:5280/api") + login = config.get("login", default=None) + api = config.get("api", default="rest") # init handler cleaner = EjabberdCleanup(url, login, api) - cleaner.dry = config.get('cleaner_dry',default=False) - cleaner.ignore_hosts = config.get('cleaner_ignore_hosts',default=[]) - cleaner.ignore_usernames = config.get('cleaner_ignore_usernames',default=[]) - cleaner.skip_by_roster = config.get('cleaner_skip_by_roster',default=True) - cleaner.delete_not_login = config.get('cleaner_delete_not_login',default=True) - cleaner.offline_since_days = config.get('cleaner_offline_since_days', default=None) + cleaner.dry = config.get("cleaner_dry", default=False) + cleaner.ignore_hosts = config.get("cleaner_ignore_hosts", default=[]) + cleaner.ignore_usernames = config.get("cleaner_ignore_usernames", default=[]) + cleaner.skip_by_roster = config.get("cleaner_skip_by_roster", default=True) + cleaner.delete_not_login = config.get("cleaner_delete_not_login", default=True) + cleaner.offline_since_days = config.get("cleaner_offline_since_days", default=None) cleaner.run() -- cgit v1.2.3-54-g00ecf From 044e0334d2bfb9c4b076afc562e4fb3d17c7db20 Mon Sep 17 00:00:00 2001 From: nico Date: Mon, 29 Jun 2020 18:59:16 +0200 Subject: flake8 fixup * fix trailing/ leading whitespaces * fix None comparison to use is + add noqa ignore statements for the influx escape replacements + add noqa ignore statements around the bare excepts TODO: This is only a temporary fix for most of the bare excepts, we need further specify those. --- README.md | 6 +++--- api.py | 2 +- cleanup.py | 6 +++--- influx.py | 4 ++-- prometheus.py | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) (limited to 'cleanup.py') diff --git a/README.md b/README.md index 7cbd2cf..ac33b00 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ listen: acl: api: - user: + user: - "api_user@magicbroccoli.de" loopback: ip: @@ -59,7 +59,7 @@ acl: api_permissions: "api access": from: - - mod_http_api + - mod_http_api who: access: allow: @@ -81,7 +81,7 @@ configuration file should be located at `/etc/ejabberd-metrics.yml`. #### systemd service To properly operate the metrics exporter tools, we created some systemd service templates, to simplify the whole process. If the `ejabberd-metrics.yml` file is not accessible for the user`nobody:nogroup`, it is required to update the -`User` and `Group` definitions inside the service file. +`User` and `Group` definitions inside the service file. If a virtualenv is used, it is required to update the `Environment=PATH` to include the `venv/bin` directory created earlier. diff --git a/api.py b/api.py index 3372976..6b83d2b 100644 --- a/api.py +++ b/api.py @@ -53,6 +53,6 @@ class EjabberdApi: return fn(self._login, data) return fn(data) - except: + except: # noqa: E722 # this needs to be more specific return {} diff --git a/cleanup.py b/cleanup.py index ee9def1..671c466 100755 --- a/cleanup.py +++ b/cleanup.py @@ -38,13 +38,13 @@ class EjabberdCleanup(EjabberdApiCalls): lastdate = None try: lastdate = datetime.datetime.strptime(last_stamp, "%Y-%m-%dT%H:%M:%SZ") - except: + except: # noqa: E722 try: lastdate = datetime.datetime.strptime(last_stamp, "%Y-%m-%dT%H:%M:%S.%fZ") - except: + except: # noqa: E722 logging.error(f"{user}@{host}: not able to parse '{last_stamp}'") return - if lastdate != None and lastdate - datetime.datetime.now() > datetime.timedelta( + if lastdate is not None and lastdate - datetime.datetime.now() > datetime.timedelta( days=self.offline_since_days ): self.delete_user(host, user, f"last seen @ {lastdate}") diff --git a/influx.py b/influx.py index b51d8f5..9437831 100644 --- a/influx.py +++ b/influx.py @@ -21,8 +21,8 @@ class Influx: @staticmethod def _rmspace(key: str = None, value: (str, int) = None): try: - key = key.replace(" ", "\ ") - value = value.replace(" ", "\ ") + key = key.replace(" ", "\ ") # noqa: W605 + value = value.replace(" ", "\ ") # noqa: W605 except (TypeError, AttributeError): pass diff --git a/prometheus.py b/prometheus.py index 6d7bbe5..a526851 100755 --- a/prometheus.py +++ b/prometheus.py @@ -23,7 +23,7 @@ class DynamicMetricsHandler(BaseHTTPRequestHandler): registry = registry.restricted_registry(params["name[]"]) try: output = generate_latest(registry) - except: + except: # noqa: E722 self.send_error(500, "error generating metric output") raise self.send_response(200) -- cgit v1.2.3-54-g00ecf