修复缓存管理器中的异常处理逻辑
- 将捕获的异常类型从 `TypeError` 和 `OSError` 修改为 `Exception`,以涵盖更多潜在错误。 - 增强日志记录,提供更清晰的类名和简化的错误信息,便于调试和问题追踪。
This commit is contained in:
committed by
Windpicker-owo
parent
6568ea49da
commit
04b6b20189
@@ -132,9 +132,13 @@ class CacheManager:
|
|||||||
try:
|
try:
|
||||||
source_code = inspect.getsource(tool_class)
|
source_code = inspect.getsource(tool_class)
|
||||||
code_hash = hashlib.md5(source_code.encode()).hexdigest()
|
code_hash = hashlib.md5(source_code.encode()).hexdigest()
|
||||||
except (TypeError, OSError) as e:
|
except Exception as e:
|
||||||
code_hash = "unknown"
|
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:
|
try:
|
||||||
sorted_args = json.dumps(function_args, sort_keys=True)
|
sorted_args = json.dumps(function_args, sort_keys=True)
|
||||||
except TypeError:
|
except TypeError:
|
||||||
|
|||||||
Reference in New Issue
Block a user