
    h                     T    d dl Z d dlZdZg dZeZddedz  dede j                  fdZy)	    Nz4%(asctime)s - %(name)s - %(levelname)s - %(message)s)DEBUGINFOWARNINGERRORnamelevelreturnc                 N   t        j                  |       }t        j                  t        j                        }t        j
                  t              }|j                  |       |j                  |       |r|t        vr|j                  d|       d}|j                  |       |S )aA  
    Create and configures a logger for logging messages.

    Parameters
    ----------
        name (Optional[str]): The name of the logger. Defaults to None.
        level (DebugLevel): The logging level. Defaults to DebugLevel.DEBUG.

    Returns
    -------
        logging.Logger: The configured logger object.
    )r   z9Invalid logging level %s. Setting logging level to DEBUG.r   )r   )logging	getLoggerStreamHandlersysstdout	FormatterLOGGING_FORMATTERsetFormatter
addHandlerDebugLevelswarningsetLevel)r   r   loggerhandler	formatters        ./var/www/html/retail-simulation-api/app/log.py
get_loggerr      s     D)F##CJJ/G!!"34I#
gE,RTYZ
OO%O M    )Nr   )r   r   r   r   strDebugLevelTypeLoggerr    r   r   <module>r!      s?     
J  4S4Z ~ GNN r   