From 18429ab06438d66a63241f45d6ab4bbd90e29867 Mon Sep 17 00:00:00 2001 From: bikegeek Date: Sun, 31 Mar 2024 16:35:20 -0600 Subject: [PATCH] create log directory if one doesn't already exist --- metplotpy/plots/util.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/metplotpy/plots/util.py b/metplotpy/plots/util.py index a5306b7a..ab94c2b4 100644 --- a/metplotpy/plots/util.py +++ b/metplotpy/plots/util.py @@ -13,9 +13,8 @@ __author__ = 'Minna Win' import argparse -from typing import Tuple import sys -import getpass +import os import logging import gc import re @@ -316,6 +315,13 @@ def get_common_logger(log_level, log_filename): currently in use by a plot type. ''' + # If directory for logfile doesn't exist, create it + log_dir = os.path.dirname(log_filename) + try: + os.makedirs(log_dir, exist_ok=True) + except OSError: + pass + # Supported log levels. log_level = log_level.upper() log_levels = {'DEBUG': logging.DEBUG, 'INFO': logging.INFO, @@ -338,7 +344,7 @@ def get_common_logger(log_level, log_filename): datefmt='%Y-%m-%d %H:%M:%S', filename=log_filename, filemode='w') - mpl_logger = logging.getLogger(name='matplotlib').setLevel(logging.CRITICAL) + logging.getLogger(name='matplotlib').setLevel(logging.CRITICAL) common_logger = logging.getLogger(__name__) f = cf() common_logger.addFilter(f)