refactor: improve logging setup and format across multiple modules for consistency

This commit is contained in:
zurdi
2025-05-08 22:17:53 +00:00
parent b3d341bc11
commit 49ad99d5e7
6 changed files with 16 additions and 23 deletions

View File

@@ -15,6 +15,9 @@ LIGHTMAGENTA = Fore.LIGHTMAGENTA_EX
RESET = Fore.RESET
RESET_ALL = Style.RESET_ALL
common_log_format = f"{GREEN}INFO{RESET}:\t {BLUE}[RomM]{LIGHTMAGENTA}[worker]{CYAN}[%(asctime)s] {RESET_ALL}%(message)s"
common_date_format = "%Y-%m-%d %H:%M:%S"
def should_strip_ansi() -> bool:
"""Determine if ANSI escape codes should be stripped."""
@@ -74,7 +77,7 @@ class Formatter(logging.Formatter):
logging.CRITICAL: f"{RED}{level}{dots}{identifier_critical}{date}{msg}",
}
log_fmt = formats.get(record.levelno)
formatter = logging.Formatter(fmt=log_fmt, datefmt="%Y-%m-%d %H:%M:%S")
formatter = logging.Formatter(fmt=log_fmt, datefmt=common_date_format)
return formatter.format(record)

View File

@@ -9,9 +9,10 @@ log = logging.getLogger("romm")
log.setLevel(LOGLEVEL)
# Define stdout handler
stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setFormatter(Formatter())
log.addHandler(stdout_handler)
if not log.hasHandlers():
stdout_handler = logging.StreamHandler(sys.stdout)
stdout_handler.setFormatter(Formatter())
log.addHandler(stdout_handler)
# Hush passlib warnings
logging.getLogger("passlib").setLevel(logging.ERROR)

View File

@@ -1,12 +1,10 @@
import logging
import sentry_sdk
from config import (
ENABLE_SCHEDULED_RESCAN,
ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB,
SENTRY_DSN,
)
from logger.formatter import BLUE, CYAN, GREEN, LIGHTMAGENTA, RESET, RESET_ALL
from logger.logger import log
from tasks.scan_library import scan_library_task
from tasks.tasks import tasks_scheduler
from tasks.update_switch_titledb import update_switch_titledb_task
@@ -14,15 +12,13 @@ from utils import get_version
sentry_sdk.init(dsn=SENTRY_DSN, release=f"romm@{get_version()}")
# Set up custom logging
log_format = f"{GREEN}INFO{RESET}:\t {BLUE}[RomM]{LIGHTMAGENTA}[%(module)s]{CYAN}[%(asctime)s] {RESET_ALL}%(message)s"
logging.basicConfig(format=log_format, datefmt="%Y-%m-%d %H:%M:%S")
if __name__ == "__main__":
# Initialize the tasks
if ENABLE_SCHEDULED_RESCAN:
log.info("Starting scheduled rescan")
scan_library_task.init()
if ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB:
log.info("Starting scheduled update switch titledb")
update_switch_titledb_task.init()
# Start the scheduler
tasks_scheduler.run()

View File

@@ -1,4 +1,3 @@
import logging
import os
from datetime import timedelta
@@ -13,7 +12,6 @@ from config.config_manager import config_manager as cm
from endpoints.sockets.scan import scan_platforms
from handler.database import db_platform_handler
from handler.scan_handler import ScanType
from logger.formatter import BLUE, CYAN, GREEN, LIGHTMAGENTA, RESET, RESET_ALL
from logger.logger import log
from rq.job import Job
from tasks.tasks import tasks_scheduler
@@ -23,7 +21,7 @@ from watchdog.observers import Observer
sentry_sdk.init(
dsn=SENTRY_DSN,
release="romm@" + get_version(),
release=f"romm@{get_version()}",
)
path = (
@@ -32,10 +30,6 @@ path = (
else LIBRARY_BASE_PATH
)
# Set up custom logging
log_format = f"{GREEN}INFO{RESET}:\t {BLUE}[RomM]{LIGHTMAGENTA}[%(module)s]{CYAN}[%(asctime)s] {RESET_ALL}%(message)s"
logging.basicConfig(format=log_format, datefmt="%Y-%m-%d %H:%M:%S")
class EventHandler(FileSystemEventHandler):
"""Filesystem event handler"""

View File

@@ -3,7 +3,7 @@ import logging
import sentry_sdk
from config import SENTRY_DSN
from handler.redis_handler import redis_client
from logger.formatter import BLUE, CYAN, GREEN, LIGHTMAGENTA, RESET, RESET_ALL
from logger.formatter import common_date_format, common_log_format
from rq import Queue, Worker
from utils import get_version
@@ -14,9 +14,8 @@ sentry_sdk.init(
release=f"romm@{get_version()}",
)
# Set up custom logging
log_format = f"{GREEN}INFO{RESET}:\t {BLUE}[RomM]{LIGHTMAGENTA}[%(module)s]{CYAN}[%(asctime)s] {RESET_ALL}%(message)s"
logging.basicConfig(format=log_format, datefmt="%Y-%m-%d %H:%M:%S")
# Set up custom logging for Worker logging
logging.basicConfig(format=common_log_format, datefmt=common_date_format)
if __name__ == "__main__":
# Start the worker

View File

@@ -64,7 +64,7 @@ http {
#INFO: [nginx][2023-11-14 09:20:29] 127.0.0.1 - -"GET / HTTP/1.1" 500 177 "-" "Mozilla/5.0 (X11; Linux x86_64)"rt=0.000 uct="-" uht="-" urt="-"
log_format romm_logs 'INFO: [RomM][nginx][$date $time] $remote_addr | $http_x_forwarded_for | '
'$request_method $server_protocol $request_uri $status $body_bytes_sent | '
'$request_method $request_uri | $status | $body_bytes_sent | '
'$browser $os | $request_time';
access_log /dev/stdout romm_logs;