2
0
mirror of https://expo.survex.com/repositories/troggle/.git synced 2026-02-28 18:25:24 +00:00

trying to fix logging on server

This commit is contained in:
2026-02-14 19:54:14 +00:00
parent 4659519791
commit 900d46fc3a
2 changed files with 17 additions and 4 deletions

View File

@@ -70,7 +70,7 @@ def spider(request, path):
"""These are simple filename filters set in urls.py that we know we don't have any of in troggle,
e.g. urls ending in "_edit_edit" or .php
"""
return logger404(request, path)
return logger404(request, path, "BOGUS PATH ATTACK")
# return redirect("/?#") # so that suffixes applied by spider are no longer part of the url
def map(request):
@@ -300,7 +300,7 @@ def logger404(request, path, e=None):
logmsg = f"[{meta['REMOTE_ADDR']:>15}] '/{path}' FILE NOT FOUND 404"
logger.warning(logmsg)
else:
logmsg = f"[{meta['REMOTE_ADDR']:>15}] '/{path}' EXCEPTION:'{e}'"
logmsg = f"[{meta['REMOTE_ADDR']:>15}] '/{path}' '{e}'"
logger.warning(logmsg)
return render(request, "pagenotfound.html", {"path": path}, status=404)
@@ -355,7 +355,7 @@ def expopage(request, path):
except FileNotFoundError as e:
return logger404(request, path)
except Exception as e:
return logger404(request, path, e)
return logger404(request, path, f"EXCEPTION {e}")
def getmimetype(path):

View File

@@ -88,6 +88,11 @@ class RequireDevServerTrue(logging.Filter):
PRIMARY_LOG_DIR = Path("/var/log/troggle")
FALLBACK_LOG_DIR = Path("/home/psargent/var-log-troggle")
log_filename = "troggle.log"
if DEVSERVER:
logging_class = "logging.handlers.RotatingFileHandler"
else:
logging_class = "logging.handlers.RotatingFileHandler"
def get_valid_log_path():
try:
@@ -99,6 +104,14 @@ def get_valid_log_path():
except (PermissionError, OSError):
FALLBACK_LOG_DIR.mkdir(parents=True, exist_ok=True)
return FALLBACK_LOG_DIR / log_filename
except Exception as e:
FALLBACK_LOG_DIR.mkdir(parents=True, exist_ok=True)
logpath = FALLBACK_LOG_DIR / log_filename
with logpath.open(mode="a", encoding="utf-8") as lp:
stamp = datetime.now().isoformat(sep=' ', timespec='seconds')
lp.write(f"{stamp} [000.000.000.000] /var/log/troggle.log EXCEPTION IN SETTING LOG DIR '{e}'\n")
return logpath
final_log_path = get_valid_log_path()
@@ -129,7 +142,7 @@ LOGGING = {
"handlers": {
"file": {
"level": "WARNING",
"class": "logging.handlers.RotatingFileHandler",
"class": logging_class,
"filename": final_log_path,
"maxBytes": 1024 * 1024 * 5,
"backupCount": 5,