forked from Rockachopa/Timmy-time-dashboard
This commit is contained in:
@@ -22,6 +22,14 @@ logger = logging.getLogger(__name__)
|
||||
# In-memory dedup cache: hash -> last_seen timestamp
|
||||
_dedup_cache: dict[str, datetime] = {}
|
||||
|
||||
_error_recorder = None
|
||||
|
||||
|
||||
def register_error_recorder(fn):
|
||||
"""Register a callback for recording errors to session log."""
|
||||
global _error_recorder
|
||||
_error_recorder = fn
|
||||
|
||||
|
||||
def _stack_hash(exc: Exception) -> str:
|
||||
"""Create a stable hash of the exception type + traceback locations.
|
||||
@@ -220,17 +228,14 @@ def capture_error(
|
||||
logger.warning("Bug report notification error: %s", exc)
|
||||
pass
|
||||
|
||||
# 4. Record in session logger
|
||||
try:
|
||||
from timmy.session_logger import get_session_logger
|
||||
|
||||
session_logger = get_session_logger()
|
||||
session_logger.record_error(
|
||||
error=f"{type(exc).__name__}: {str(exc)}",
|
||||
context=source,
|
||||
)
|
||||
except Exception as exc:
|
||||
logger.warning("Bug report session logging error: %s", exc)
|
||||
pass
|
||||
# 4. Record in session logger (via registered callback)
|
||||
if _error_recorder is not None:
|
||||
try:
|
||||
_error_recorder(
|
||||
error=f"{type(exc).__name__}: {str(exc)}",
|
||||
context=source,
|
||||
)
|
||||
except Exception as log_exc:
|
||||
logger.warning("Bug report session logging error: %s", log_exc)
|
||||
|
||||
return task_id
|
||||
|
||||
Reference in New Issue
Block a user