116 lines
3.4 KiB
Python
116 lines
3.4 KiB
Python
import os
|
|
from logging.config import dictConfig
|
|
|
|
lastinfo_path = "logs/lastinfo.log"
|
|
lastdebug_path = "logs/lastdebug.log"
|
|
info_path = "logs/info.log"
|
|
warn_path = "logs/warning.log"
|
|
|
|
if not os.path.exists("logs"):
|
|
os.makedirs("logs")
|
|
try:
|
|
os.remove(lastinfo_path)
|
|
except OSError:
|
|
pass
|
|
try:
|
|
os.remove(lastdebug_path)
|
|
except OSError:
|
|
pass
|
|
|
|
|
|
def is_docker():
|
|
path = "/proc/self/cgroup"
|
|
status = os.path.exists("/.dockerenv") or os.path.isfile(path) and any("docker" in line for line in open(path))
|
|
return status
|
|
|
|
|
|
if is_docker() is False or os.environ.get("VERBOSE_LOGGING", "FALSE") == "TRUE":
|
|
logging_mode = "Verbose "
|
|
LOGGING_CONFIG = {
|
|
"version": 1,
|
|
"disable_existing_loggers": True,
|
|
"loggers": {
|
|
"": {
|
|
"level": "DEBUG",
|
|
"handlers": ["console", "all_warning", "all_info", "last_info", "last_debug"],
|
|
},
|
|
},
|
|
"handlers": {
|
|
"console": {
|
|
"level": "WARNING",
|
|
"formatter": "fmt",
|
|
"class": "logging.StreamHandler",
|
|
"stream": "ext://sys.stdout",
|
|
},
|
|
"all_warning": {
|
|
"level": "WARNING",
|
|
"formatter": "fmt",
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": warn_path,
|
|
"maxBytes": 1048576,
|
|
"backupCount": 10,
|
|
},
|
|
"all_info": {
|
|
"level": "INFO",
|
|
"formatter": "fmt",
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": info_path,
|
|
"maxBytes": 1048576,
|
|
"backupCount": 10,
|
|
},
|
|
"last_info": {
|
|
"level": "INFO",
|
|
"formatter": "fmt",
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": lastinfo_path,
|
|
"maxBytes": 1048576,
|
|
},
|
|
"last_debug": {
|
|
"level": "DEBUG",
|
|
"formatter": "fmt",
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": lastdebug_path,
|
|
"maxBytes": 1048576,
|
|
},
|
|
},
|
|
"formatters": {
|
|
"fmt": {"format": "%(asctime)s-%(levelname)s-%(name)s-%(process)d::%(module)s|%(lineno)s:: %(message)s"},
|
|
},
|
|
}
|
|
else:
|
|
logging_mode = ""
|
|
LOGGING_CONFIG = {
|
|
"version": 1,
|
|
"disable_existing_loggers": True,
|
|
"loggers": {
|
|
"": {
|
|
"level": "DEBUG",
|
|
"handlers": ["console", "all_warning"],
|
|
},
|
|
},
|
|
"handlers": {
|
|
"console": {
|
|
"level": "WARNING",
|
|
"formatter": "fmt",
|
|
"class": "logging.StreamHandler",
|
|
"stream": "ext://sys.stdout",
|
|
},
|
|
"all_warning": {
|
|
"level": "WARNING",
|
|
"formatter": "fmt",
|
|
"class": "logging.handlers.RotatingFileHandler",
|
|
"filename": warn_path,
|
|
"maxBytes": 1048576,
|
|
"backupCount": 10,
|
|
},
|
|
},
|
|
"formatters": {
|
|
"fmt": {"format": "%(asctime)s-%(levelname)s-%(name)s-%(process)d::%(module)s|%(lineno)s:: %(message)s"},
|
|
},
|
|
}
|
|
dictConfig(LOGGING_CONFIG)
|
|
import logging
|
|
|
|
logger = logging.getLogger(__name__)
|
|
logger.warning(f"***{logging_mode}Logging Started***")
|