Better logdir handling
This commit is contained in:
parent
df15ad07a5
commit
d891ca374b
11
src/logs.py
11
src/logs.py
@ -20,9 +20,8 @@ log = logging.getLogger(__name__)
|
|||||||
|
|
||||||
class LogSetup:
|
class LogSetup:
|
||||||
|
|
||||||
def __init__(self, BASE_DIR: Path):
|
def __init__(self, logs_dir: Path):
|
||||||
self.BASE_DIR = BASE_DIR
|
self.logs_dir = logs_dir
|
||||||
self.LOGS_DIR = BASE_DIR / "logs/"
|
|
||||||
|
|
||||||
def _open_file(self) -> TextIO:
|
def _open_file(self) -> TextIO:
|
||||||
"""
|
"""
|
||||||
@ -30,7 +29,7 @@ class LogSetup:
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
# Create the logs directory if it doesnt exist
|
# Create the logs directory if it doesnt exist
|
||||||
self.LOGS_DIR.mkdir(exist_ok=True)
|
self.logs_dir.mkdir(exist_ok=True)
|
||||||
|
|
||||||
# Create a generator to generate a unique filename
|
# Create a generator to generate a unique filename
|
||||||
timestamp = datetime.now().strftime(LOG_FILENAME_FORMAT_PREFIX)
|
timestamp = datetime.now().strftime(LOG_FILENAME_FORMAT_PREFIX)
|
||||||
@ -39,7 +38,7 @@ class LogSetup:
|
|||||||
# Find a filename that doesn't already exist and return it
|
# Find a filename that doesn't already exist and return it
|
||||||
for filename in filenames:
|
for filename in filenames:
|
||||||
try:
|
try:
|
||||||
return (self.LOGS_DIR / filename).open("x", encoding="utf-8")
|
return (self.logs_dir / filename).open("x", encoding="utf-8")
|
||||||
except FileExistsError:
|
except FileExistsError:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
@ -48,7 +47,7 @@ class LogSetup:
|
|||||||
Search through the logs directory and delete any expired log files.
|
Search through the logs directory and delete any expired log files.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
for path in self.LOGS_DIR.glob('*.txt'):
|
for path in self.logs_dir.glob('*.txt'):
|
||||||
prefix = path.stem.split('_')[0]
|
prefix = path.stem.split('_')[0]
|
||||||
try:
|
try:
|
||||||
log_date = datetime.strptime(prefix, LOG_FILENAME_FORMAT_PREFIX)
|
log_date = datetime.strptime(prefix, LOG_FILENAME_FORMAT_PREFIX)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user