sanatan_ai / modules /db /logger_utils.py
vikramvasudevan's picture
Upload folder using huggingface_hub
768b4b6 verified
Raw
History Blame Contribute Delete
923 Bytes
import functools
import logging
import traceback
logger = logging.getLogger("tool_logger")
logger.setLevel(logging.INFO)
def log_tool_entry(func):
@functools.wraps(func)
def wrapper(*args, **kwargs):
# Clean up args/kwargs for cleaner logging (optional: truncate long strings)
clean_args = [str(a)[:100] + "..." if isinstance(a, str) and len(a) > 100 else a for a in args]
clean_kwargs = {k: (str(v)[:100] + "..." if isinstance(v, str) and len(v) > 100 else v) for k, v in kwargs.items()}
logger.info(f"🛠️ Tool Invoked: {func.__name__} | Args: {clean_args} | Kwargs: {clean_kwargs}")
try:
result = func(*args, **kwargs)
return result
except Exception as e:
tb = traceback.format_exc()
logger.error(f"❌ Tool Failed: {func.__name__} | Error: {e}\nTraceback:\n{tb}")
raise
return wrapper