diff --git a/searx/__init__.py b/searx/__init__.py
index 71e00a49a..6aac98713 100644
--- a/searx/__init__.py
+++ b/searx/__init__.py
@@ -22,6 +22,7 @@ from os.path import realpath, dirname, join, abspath, isfile
 
 
 searx_dir = abspath(dirname(__file__))
+searx_parent_dir = abspath(dirname(dirname(__file__)))
 engine_dir = dirname(realpath(__file__))
 static_path = abspath(join(dirname(__file__), 'static'))
 settings, settings_load_message = searx.settings_loader.load_settings()
diff --git a/searx/metrics/error_recorder.py b/searx/metrics/error_recorder.py
index 2bf25fb0d..c5de008cc 100644
--- a/searx/metrics/error_recorder.py
+++ b/searx/metrics/error_recorder.py
@@ -5,7 +5,7 @@ from urllib.parse import urlparse
 from httpx import HTTPError, HTTPStatusError
 from searx.exceptions import (SearxXPathSyntaxException, SearxEngineXPathException, SearxEngineAPIException,
                               SearxEngineAccessDeniedException)
-from searx import logger
+from searx import logger, searx_parent_dir
 
 
 errors_per_engines = {}
@@ -117,6 +117,8 @@ def get_exception_classname(exc: Exception) -> str:
 def get_error_context(framerecords, exception_classname, log_message, log_parameters, secondary) -> ErrorContext:
     searx_frame = get_trace(framerecords)
     filename = searx_frame.filename
+    if filename.startswith(searx_parent_dir):
+        filename = filename[len(searx_parent_dir) + 1:]
     function = searx_frame.function
     line_no = searx_frame.lineno
     code = searx_frame.code_context[0].strip()