ok

Mini Shell

Direktori : /opt/cloudlinux/venv/lib/python3.11/site-packages/cllimits/cl_utils/
Upload File :
Current File : //opt/cloudlinux/venv/lib/python3.11/site-packages/cllimits/cl_utils/cloudlinux-limits.py

#!/opt/cloudlinux/venv/bin/python3 -bb
# -*- coding: utf-8 -*-

# cloudlinux-limits Utility to set/get any Cloudlinux limits
#
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2022 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT

# pylint: disable=import-outside-toplevel

import sys

from cllimits.lib.limits import CloudlinuxLimits
from clcommon.utils import is_root_or_exit


_PROFILING_REPORT_FILENSME = 'cloudlinux-limits-profiling.bin'
_ret_code = 0


def work():
    global _ret_code
    cll = CloudlinuxLimits()
    _ret_code = cll.run(sys.argv[1:])


def main():
    """
    Main run function
    """
    is_root_or_exit()
    is_profiling = '--profiling' in sys.argv
    if is_profiling:
        sys.argv.remove('--profiling')
        # Profiling mode
        profiler_log = _PROFILING_REPORT_FILENSME
        import profile
        profile.run('work()', profiler_log)
        print("Profiling end; result saved to " + profiler_log)
        # Profiler result decode
        import pstats
        p = pstats.Stats(profiler_log)
        print('--------------------------------------')
        print()
        # p.sort_stats('calls').print_stats(500)
        p.sort_stats('time').print_stats(500)
    else:
        # Work without profiler
        work()


if __name__ == "__main__":
    main()
    sys.exit(_ret_code)

Zerion Mini Shell 1.0