summaryrefslogtreecommitdiffstats
path: root/logger.py
diff options
context:
space:
mode:
authorPinapelz <yukais@pinapelz.com>2024-10-04 11:57:29 -0700
committerPinapelz <yukais@pinapelz.com>2024-10-04 11:57:46 -0700
commit274e2cb39841b71c1f1cc9e94b94c75f0ebed539 (patch)
treea84afe0a8da5beeb2d20f35d446ff425130f0754 /logger.py
parenta695e797d72ab3467b4bbd64eb5c9dbe6fea0111 (diff)
add logic to cut log file by half if exceeding 1000kb in 1 run
- should not ever happen but this is a failsafe
Diffstat (limited to 'logger.py')
-rw-r--r--logger.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/logger.py b/logger.py
index b636fd1..77cdad1 100644
--- a/logger.py
+++ b/logger.py
@@ -1,6 +1,7 @@
import time
from datetime import datetime
import pytz
+import os
def _get_datetime_string():
utc_now = datetime.now(pytz.timezone('UTC'))
@@ -30,4 +31,14 @@ class Logger:
def log(self, message: str):
with open(self.path, "a") as file:
- file.write(f"[{_get_datetime_string()}] {message}\n") \ No newline at end of file
+ self.check_log_size()
+ file.write(f"[{_get_datetime_string()}] {message}\n")
+
+ def check_log_size(self):
+ if os.path.getsize(self.path) > self.max_size_bytes:
+ with open(self.path, "r") as file:
+ lines = file.readlines()
+ with open(self.path, "w") as file:
+ file.writelines(lines[int(len(lines) / 2):])
+ file.write("Removed half of the log file due to size\n")
+
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage