修复缓存管理器中的异常处理逻辑
- 将捕获的异常类型从 `TypeError` 和 `OSError` 修改为 `Exception`,以涵盖更多潜在错误。 - 增强日志记录,提供更清晰的类名和简化的错误信息,便于调试和问题追踪。
This commit is contained in:
@@ -107,9 +107,13 @@ class CacheManager:
|
||||
try:
|
||||
source_code = inspect.getsource(tool_class)
|
||||
code_hash = hashlib.md5(source_code.encode()).hexdigest()
|
||||
except (TypeError, OSError) as e:
|
||||
except Exception as e:
|
||||
code_hash = "unknown"
|
||||
logger.warning(f"无法获取 {tool_class.__name__} 的源代码,代码哈希将为 'unknown'。错误: {e}")
|
||||
# 获取更清晰的类名
|
||||
class_name = getattr(tool_class, '__name__', str(tool_class))
|
||||
# 简化错误信息
|
||||
error_msg = str(e).replace(str(tool_class), class_name)
|
||||
logger.warning(f"无法获取 {class_name} 的源代码,代码哈希将为 'unknown'。原因: {error_msg}")
|
||||
try:
|
||||
sorted_args = json.dumps(function_args, sort_keys=True)
|
||||
except TypeError:
|
||||
|
||||
Reference in New Issue
Block a user