Server IP : 66.29.132.122 / Your IP : 18.221.80.42 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/self/root/proc/thread-self/root/proc/thread-self/root/proc/self/root/proc/thread-self/root/proc/self/root/proc/self/root/proc/self/root/proc/self/root/opt/cloudlinux/venv/lib64/python3.11/site-packages/ssa/modules/ |
Upload File : |
# -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT """ This module contains a base class including methods, common for SSA Request Processor and SSA Decision Maker """ from typing import Tuple from datetime import date from ..configuration import load_configuration class Common: """ Base SSA module class """ def __init__(self): self.config = self.load_conf() def __getattr__(self, item): """ All undefined attributes, e.g. - domains_number - urls_number - correlation_coefficient - correlation - request_number - time are queried in config. Others would be empty """ conf = getattr(self, 'config') return conf.get(item, '') @property def non_url_fields(self) -> set: return {'domain_total_reqs', 'is_a_wordpress_domain'} @property def configured_ignores(self) -> list: """ Render configured ignore list """ elements = self.ignore_list.split(',') return [i.strip() for i in elements if i.strip()] def is_ignored(self, _url: str) -> bool: """ Check if given URL matches ignore list """ gen_check = (ign in _url for ign in self.configured_ignores) return any(gen_check) @staticmethod def load_conf() -> dict: """ Load configuration """ return load_configuration()