agentscope-ai / agentscope-ai/agentscope

[Feature]: 在AgentScope2.0中恢复对业务函数的trace能力支持

Đang mở
#1,706 2 bình luận 1 reaction 1 người được giao Được @DavdGao nhận Xem trên GitHub
stale-issue
Ngôn ngữ chính
Python
Star
31.6k
Fork
3.5k
Merge trung bình
1 ngày 16 giờ
Pull request đã merge (30 ngày)
103

Mô tả

## 问题概述

在 AgentScope 1.0 中,我们可以通过函数级链路追踪能力(例如 `@trace`)对自己编写的业务方法进行埋点,从而把自定义业务逻辑也纳入完整链路中。

在从 1.0 升级到 2.0 后,我们发现 tracing 已经迁移到了 `middleware/_tracing` 目录下,当前主要覆盖的是 AgentScope 内置主链路。

这导致我们原本可以被追踪的自定义业务方法,在 2.0 中无法继续用同样方式接入链路。

## 当前行为

根据目前 2.0 的实现,内置 tracing middleware 主要覆盖以下主链路:

- agent reply
- model call
- tool execution

但看起来暂时没有官方提供的能力来追踪用户自己定义的业务函数/方法,也没有类似 1.0 中 `@trace` 这种函数级链路能力。

## 期望行为

希望 AgentScope 2.0 后续能够提供官方支持的自定义业务方法链路能力,例如以下任一形式:

- 恢复类似 `@trace` 的装饰器能力
- 提供一套官方文档说明,指导如何将自定义业务函数接入现有 tracing 体系

## 为什么这很重要

这对于从 1.0 升级到 2.0 的用户来说,是一个比较明显的兼容性缺口:

- AgentScope 1.0 支持对自定义业务方法做链路追踪
- AgentScope 2.0 当前主要支持基于 middleware 的主链路 tracing

升级之后,我们原有的端到端可观测性链路变得不完整,业务侧自定义逻辑无法继续纳入统一追踪。

## 我们的使用场景

我们的使用场景不只是 Agent / Model / Tool 的编排,还会在这些流程外包裹很多业务侧自定义逻辑。

在 1.0 中,这些业务方法可以一起进入 tracing 链路;
但在 2.0 中,目前只能采集 AgentScope 主链路,无法覆盖我们自己的业务函数,导致升级后链路连续性被破坏。

## 补充说明

我们已经在官方群里咨询过,得到的反馈是:

- 2.0 的 tracing 已经改成 middleware 方式
- 当前暂时不支持对自定义业务方法做链路采集
- 建议到 GitHub 提 issue 反馈这个需求

希望后续版本能考虑补充这部分能力,感谢。

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.