D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
cllvectl
/
Filename :
log.py
back
Copy
# Module for logging in subprocess. Process related info (call stack) is logged # to simplify investigation of lveclt hangings # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2024 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT # Base module for logging in subprocess # # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2024 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import logging from cllvectl.base_subprocess_log import get_log_level, init_subprocess_logger as base_init_subprocess_logger DEFAULT_LOG_FORMAT = '%(asctime)s - %(name)s - %(levelname)s - %(message)s' LVECTL_SUBPROCESS_LOG_FILENAME = '/var/log/cloudlinux/lvectl-subprocess.log' LVECTL_LOG_FILENAME = '/var/log/cloudlinux/lvectl.log' def get_subprocess_logger(name: str, file_name: str = LVECTL_SUBPROCESS_LOG_FILENAME) -> logging.Logger: """Get ordinary synchronous logger instance :param str name: logger name :param str file_name: log file, defaults to LVECTL_LOG_FILENAME :return logging.Logger: logger instance """ return base_init_subprocess_logger(name, file_name) def get_synchronous_logger(name: str, file_name: str = LVECTL_LOG_FILENAME): logger = logging.getLogger(name) fh = logging.FileHandler(file_name) fh.setFormatter(logging.Formatter(DEFAULT_LOG_FORMAT)) log_level = get_log_level(file_name) fh.setLevel(log_level) logger.addHandler(fh) logger.setLevel(log_level) return logger