diff --git a/backend/agents.py b/backend/agents.py index 1e5ebee..10788c9 100644 --- a/backend/agents.py +++ b/backend/agents.py @@ -10,6 +10,15 @@ from ks_search_tool import general_search, general_search_async, global_fuzzy_keyword_search from retrieval import get_retriever +import logging + +# Configure logger +logger = logging.getLogger(__name__) +if not logger.handlers: + _h = logging.StreamHandler() + _h.setFormatter(logging.Formatter("%(asctime)s [%(levelname)s] %(name)s: %(message)s")) + logger.addHandler(_h) + logger.setLevel(logging.INFO) # LLM (Gemini) client setup try: @@ -576,8 +585,6 @@ async def handle_chat(self, session_id: str, query: str, reset: bool = False) -> if len(self.chat_history[session_id]) > 20: self.chat_history[session_id] = self.chat_history[session_id][-20:] return response_text - except Exception as e: - print(f"Error in handle_chat: {e}") - import traceback - traceback.print_exc() - return "I encountered an error. Please try again." \ No newline at end of file + except Exception: + logger.exception("Error in handle_chat") + return "I'm sorry, I encountered an internal server error and cannot process your request right now." diff --git a/backend/package-lock.json b/backend/package-lock.json new file mode 100644 index 0000000..dfb18f1 --- /dev/null +++ b/backend/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "backend", + "lockfileVersion": 3, + "requires": true, + "packages": {} +}