chore(log_entry): add getters for datetime attributes

This commit is contained in:
2026-08-03 13:40:16 +02:00
parent 10602be7a3
commit b8c8af6dda
+10 -7
View File
@@ -2,7 +2,7 @@ import re
from dataclasses import dataclass from dataclasses import dataclass
from datetime import datetime from datetime import datetime
from logwatcher import DATETIME_FORMAT, FRENCH_TIMEZONE from logwatcher import DATETIME_FORMAT
from logwatcher.config import ( from logwatcher.config import (
DATE_TIME_PATTERN, DATE_TIME_PATTERN,
ERROR_MESSAGE_PATTERN, ERROR_MESSAGE_PATTERN,
@@ -31,8 +31,11 @@ class LogEntry:
def get_full_message(self): def get_full_message(self):
return self.raw_line return self.raw_line
def get_start_time(self): def get_start_time(self) -> str:
return datetime.strftime(DATETIME_FORMAT, tz=FRENCH_TIMEZONE) return self.start_time.strftime(DATETIME_FORMAT)
def get_error_time(self) -> str:
return self.error_time.strftime(DATETIME_FORMAT)
def __post_init__(self): def __post_init__(self):
""" """
@@ -44,14 +47,14 @@ class LogEntry:
if not re.search(MDC_SERVER_NAME_PATTERN, self.mdc_server_name): if not re.search(MDC_SERVER_NAME_PATTERN, self.mdc_server_name):
raise ValueError(f"MDC server name '{self.mdc_server_name}' must be in format {MDC_SERVER_NAME_PATTERN}.") raise ValueError(f"MDC server name '{self.mdc_server_name}' must be in format {MDC_SERVER_NAME_PATTERN}.")
if not re.search(DATE_TIME_PATTERN, self.start_time.strftime(DATETIME_FORMAT)): if not re.search(DATE_TIME_PATTERN, self.get_start_time()):
raise ValueError(f"Start time '{self.start_time}' must be in format {DATE_TIME_PATTERN}.") raise ValueError(f"Start time '{self.get_start_time()}' must be in format {DATE_TIME_PATTERN}.")
if not re.search(STORE_NAME_PATTERN, self.store_name): if not re.search(STORE_NAME_PATTERN, self.store_name):
raise ValueError(f"Store name '{self.store_name}' must be a string with only alphanumeric characters, '-', '_', or ' '.") raise ValueError(f"Store name '{self.store_name}' must be a string with only alphanumeric characters, '-', '_', or ' '.")
if not re.search(DATE_TIME_PATTERN, self.error_time.strftime(DATETIME_FORMAT)): if not re.search(DATE_TIME_PATTERN, self.get_error_time()):
raise ValueError(f"Error time '{self.error_time}' must be in format {DATE_TIME_PATTERN}.") raise ValueError(f"Error time '{self.get_error_time()}' must be in format {DATE_TIME_PATTERN}.")
if not re.search(ERROR_MESSAGE_PATTERN, self.error_message): if not re.search(ERROR_MESSAGE_PATTERN, self.error_message):
raise ValueError("No error message found.") raise ValueError("No error message found.")