-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Rename e2c_logger to _logger and make INFO default level
- Loading branch information
1 parent
7798ca7
commit 35dae44
Showing
52 changed files
with
163 additions
and
361 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,77 +1,70 @@ | ||
from __future__ import annotations | ||
|
||
import logging | ||
import os | ||
from datetime import datetime, timezone | ||
|
||
|
||
DEBUG = logging.DEBUG | ||
INFO = logging.INFO | ||
WARNING = logging.WARNING | ||
ERROR = logging.ERROR | ||
CRITICAL = logging.CRITICAL | ||
|
||
DEFAULT_LOG_LEVEL = logging.DEBUG | ||
DEFAULT_LOG_LEVEL = logging.INFO | ||
DEFAULT_LOG_DIR = "e2c_logs" | ||
DEFAULT_LOG = f"{DEFAULT_LOG_DIR}/e2c_root_log-{datetime.now(timezone.utc).strftime('%Y%m%d_%H%M%S_%f')}.log" | ||
DEFAULT_LOGPATH = f"{DEFAULT_LOG_DIR}/e2c_root_log-{datetime.now(timezone.utc).strftime('%Y%m%d_%H%M%S_%f')}.log" | ||
|
||
# Logger message and date formats. | ||
MSGFMT = "%(asctime)s_%(msecs)03d:%(levelname)s:%(name)s:%(funcName)s:%(message)s" | ||
DATEFMT = "%Y%m%d_%H%M%S" | ||
|
||
|
||
def e2c_logger( | ||
name=None, | ||
logfilename=DEFAULT_LOG, | ||
log_level=None, | ||
to_console=False, | ||
to_logfile=False, | ||
propagate=False, | ||
def _logger( | ||
name: str | None = None, | ||
log_filename: str = DEFAULT_LOGPATH, | ||
log_level: int = DEFAULT_LOG_LEVEL, | ||
to_console: bool = False, | ||
to_logfile: bool = False, | ||
propagate: bool = False, | ||
): | ||
"""Return a root or named logger with variable configuration. | ||
Parameters | ||
---------- | ||
name : str | ||
name : str | None | ||
The name displayed for the logger in messages. | ||
If name == None or name == "__main__", the root logger is returned | ||
logfilename : str | ||
If logfile handling is requested, any logfile may be specified, or else | ||
the default (e2c_logs/dflt_log-{datetime.now(timezone.utc).strftime('%Y%m%d_%H%M%S_%f')}.log) is used. | ||
log_level : int | ||
One of { logging.DEBUG (default), logging.INFO, logging.WARNING, logging.ERROR, logging.CRITICAL } | ||
as defined in the module "logging". | ||
log_filename : str | ||
If logfile handling is requested, any logfile may be specified. | ||
log_level : LogLevel | ||
Either logging.DEBUG (10), logging.INFO (20), logging.WARNING (30), | ||
logging.ERROR (40), logging.CRITICAL (50), by default logging.INFO. | ||
to_console : boolean | ||
If True, a logging.StreamHandler is supplied. Default = False | ||
If True, a logging.StreamHandler is supplied, by default False. | ||
to_logfile : boolean | ||
If True, a logging.FileHandler is supplied. Default = False. | ||
If True, a logging.FileHandler is supplied, by default False. | ||
propagate : boolean | ||
If True, messages logged are propagated to the root logger. Default = False. | ||
If True, messages logged are propagated to the root logger, by default | ||
False. | ||
""" | ||
if to_logfile: | ||
dn = os.path.dirname(logfilename) | ||
dn = os.path.dirname(log_filename) | ||
if len(dn) and not os.path.exists(dn): | ||
os.makedirs(dn) | ||
|
||
if name == None or name == "__main__": | ||
logger = logger.root | ||
if name is None or name == "__main__": | ||
# FIXME: F821 Undefined name `logger` | ||
logger = logger.root # noqa: F821 | ||
else: | ||
logger = logging.getLogger(name) | ||
|
||
logger.propagate = propagate | ||
|
||
if log_level == None: | ||
log_level = DEFAULT_LOG_LEVEL | ||
|
||
logger.setLevel(log_level) | ||
|
||
logger.handlers = [] | ||
|
||
msgfmt = "%(asctime)s_%(msecs)03d:%(levelname)s:%(name)s:%(funcName)s:%(message)s" | ||
datefmt = "%Y%m%d_%H%M%S" | ||
|
||
if to_console: | ||
logStreamHandler = logging.StreamHandler() | ||
logStreamHandler.setFormatter(logging.Formatter(msgfmt, datefmt=datefmt)) | ||
logStreamHandler.setFormatter(logging.Formatter(MSGFMT, datefmt=DATEFMT)) | ||
logger.addHandler(logStreamHandler) | ||
|
||
if to_logfile: | ||
logFileHandler = logging.FileHandler(logfilename) | ||
logFileHandler.setFormatter(logging.Formatter(msgfmt, datefmt=datefmt)) | ||
logFileHandler = logging.FileHandler(log_filename) | ||
logFileHandler.setFormatter(logging.Formatter(MSGFMT, datefmt=DATEFMT)) | ||
logger.addHandler(logFileHandler) | ||
|
||
return logger |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.