[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: storage.py
File is not writable. Editing disabled.
# -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import logging import typing T = typing.TypeVar('T') logger = logging.getLogger("cloudlinux-summary") class StatisticsDict(dict): """ Special class to store all metrics before sending it """ # a few values which should be return if we can't collect statistic for something module DEFAULT_RESULTS = { "str": "-42", "int": -42, "float": -42.0, "str_list": ["-42"], "int_list": [-42], "int_dict": { "-42": -42, }, "float_dict": { "-42": -42.0, }, "str_dict": { "-42": "-42", }, # Special default result. # Only for collecting of statistics about client's rpm packages "rpm_stat_list": [], } def evaluate_safe( self, func: typing.Callable[..., T], log_message: str | None ) -> tuple[bool, T]: """ Method for catching any exceptions while calling the passed function, logging them and returning None and success flag if an exception has been encountered. Returns a formatted result of the function call otherwise. :param func: function that should be called :param log_message: if given, it will be logged as exception message. """ try: result = func() except Exception as err: if log_message: logger.exception( '%s. Exception: "%s"', log_message, err, ) return False, None return True, result def add_metric( self, func: typing.Callable[..., T], type_of_result: str, name_of_metric: str, log_message: str | None ) -> None: """ Calls `evaluate_safe` and saves the result from it in the metric dictionary. :param log_message: if given, it will be logged as exception message. See method `evaluate_safe` for more details. """ success, result = self.evaluate_safe( func, log_message, ) if not success: result = self.DEFAULT_RESULTS[type_of_result] self[name_of_metric] = result
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: premium707.web-hosting.com
Server IP: 198.177.120.115
PHP Version: 8.1.34
Server Software: LiteSpeed
System: Linux premium707.web-hosting.com 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP Wed Mar 26 12:08:09 UTC 2025 x86_64
HDD Total: 97.87 GB
HDD Free: 76.3 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
No
git:
Yes
User Info
Username: urbaoubp
User ID (UID): 1252
Group ID (GID): 1257
Script Owner UID: 1252
Current Dir Owner: N/A