diff --git a/server/logger.py b/server/logger.py new file mode 100644 index 0000000..1245e98 --- /dev/null +++ b/server/logger.py @@ -0,0 +1,35 @@ +import logging +import sys + +def setup_logger(): + """Sets up a custom logger for the application.""" + # Get the logger + logger = logging.getLogger("CityBuilder") + logger.setLevel(logging.DEBUG) + + # Prevent adding duplicate handlers if this function is called multiple times + if logger.hasHandlers(): + logger.handlers.clear() + + # Create a formatter to define the log message format + formatter = logging.Formatter( + '%(asctime)s - %(name)s - [%(levelname)s] - %(message)s', + datefmt='%Y-%m-%d %H:%M:%S' + ) + + # Create a handler to output log messages to the console (stdout) + stream_handler = logging.StreamHandler(sys.stdout) + stream_handler.setFormatter(formatter) + + # Add the handler to the logger + logger.addHandler(stream_handler) + + # Optional: To log to a file, uncomment the following lines + # file_handler = logging.FileHandler("server.log") + # file_handler.setFormatter(formatter) + # logger.addHandler(file_handler) + + return logger + +# Create and export the logger instance +logger = setup_logger()