mirror of
https://github.com/karpathy/nanochat.git
synced 2026-02-26 05:20:26 +00:00
add resusable file logger helper method
This commit is contained in:
parent
d4cc96d749
commit
2801dc341b
|
|
@ -38,12 +38,32 @@ class ColoredFormatter(logging.Formatter):
|
|||
|
||||
def setup_default_logging():
|
||||
handler = logging.StreamHandler()
|
||||
handler.setLevel(logging.INFO)
|
||||
handler.setFormatter(ColoredFormatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
|
||||
logging.basicConfig(
|
||||
level=logging.INFO,
|
||||
handlers=[handler]
|
||||
)
|
||||
|
||||
def setup_file_logger(logger_name, filename, level=logging.DEBUG, formatter=None):
|
||||
clean_name = os.path.basename(filename)
|
||||
if clean_name != filename or not clean_name:
|
||||
raise ValueError(f"Invalid log filename provided: {filename}")
|
||||
if not clean_name.endswith(".log"):
|
||||
clean_name += ".log"
|
||||
logs_dir = get_logs_dir()
|
||||
path = os.path.join(logs_dir, clean_name)
|
||||
|
||||
handler = logging.FileHandler(path, mode="w")
|
||||
handler.setLevel(level)
|
||||
handler.setFormatter(
|
||||
formatter
|
||||
or ColoredFormatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
|
||||
)
|
||||
logger = logging.getLogger(logger_name)
|
||||
logger.addHandler(handler)
|
||||
return path
|
||||
|
||||
setup_default_logging()
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user