为指定应用创建 ServiceTask(堆转储或 LiveDebug 诊断任务)
接口说明
为指定工作空间下的应用创建一个服务任务。
常见用途:
heapdump:触发 JVM 堆转储
LiveDebug Probe:对目标方法动态插桩(日志、快照、指标、Span 等)
LiveDebug Command:一次性主动探查(OGNL、反编译、线程/内存信息等)
LiveDebug Code Replace:代码热替换
创建成功后返回 taskId,后续可通过 GetServiceTask / ListServiceTask / DeleteServiceTask 管理任务。LiveDebug 任务创建后会同步配置到 ConfigServer。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
调试
授权信息
请求语法
POST /serviceTask/{workspace}/{serviceId}/task HTTP/1.1
路径参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| workspace |
string |
是 |
工作空间名称。例如 default-cms- |
default-cms-1672753017899339-cn-hangzhou |
| serviceId |
string |
是 |
应用/服务 ID(pid)。 |
ggxw4lnjuz@f2fd3a6265a254a052afb |
请求参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| body |
object |
否 |
创建任务请求体 |
|
| ip |
string |
是 |
目标实例 IP。可选;未指定时部分任务可按实例范围(如 instanceIds)匹配。堆转储场景通常需要指定。 |
10.0.0.1 |
| type |
string |
否 |
任务类型,必填。支持:heapdump(堆转储);LiveDebug Probe:live_debug_log_probe、live_debug_snapshot_probe、live_debug_metric_probe、live_debug_span_probe、live_debug_span_tag_probe;LiveDebug Command:live_debug_inspect_object、live_debug_search_type、live_debug_search_method、live_debug_decompile、live_debug_get_thread_info、live_debug_get_runtime_info、live_debug_get_memory_info、live_debug_evaluate_expression、live_debug_modify_logger_level;LiveDebug 代码热替换:live_debug_code_replace。 |
live_debug_log_probe |
| taskConfig |
string |
否 |
任务配置,JSON 字符串,长度不超过 65536。LiveDebug 类型必填。使用扁平 JSON 结构,直接传单个命令/探针对象,不要用 commands/probes 数组包裹。Probe 示例(动态日志):{"probeType":"LOG","language":"java","target":{"typeName":"com.example.UserService","methodName":"getUser","location":"exit","instanceIds":[""]},"action":{"type":"LOG","template":"userId=${args[0]}","templateSegments":[{"type":"TEXT","value":"userId="},{"type":"EXPRESSION","value":"args[0]"]},"ttl":"1h","captureCount":100}。Command 示例(OGNL):{"commandType":"EVALUATE_EXPRESSION","language":"java","params":{"expression":"@java.lang.System@getProperty("java.home")"},"instanceIds":[""]}。注意:Command 类型顶层必须包含 instanceIds;Probe 的 instanceIds 放在 target 内。METRIC 探针 action.metricType 可选 COUNTER/GAUGE/HISTOGRAM/SUMMARY,Java Agent 仅支持 COUNTER、GAUGE。 |
{"probeType":"LOG","language":"java","target":{"typeName":"com.example.service.UserServiceImpl","methodName":"findById","location":"exit","instanceIds":["*"]},"action":{"type":"LOG","template":"userId=${args[0]} cost=${durationMs}ms","templateSegments":[{"type":"TEXT","value":"userId="},{"type":"EXPRESSION","value":"args[0]"},{"type":"TEXT","value":" cost="},{"type":"EXPRESSION","value":"durationMs"},{"type":"TEXT","value":"ms"}]},"ttl":"1h","captureCount":100} |
请求包含路径参数 workspace、serviceId,以及 Body 中的 type、ip、taskConfig。
返回参数
|
名称 |
类型 |
描述 |
示例值 |
|
object |
创建成功响应 |
||
| requestId |
string |
请求 ID |
A1B2C3D4-E5F6-7890-ABCD-EF1234567890 |
| taskId |
string |
创建成功的任务 ID,后续查询/删除使用该 ID |
a1b2c3d4-e5f6-7890-abcd-ef1234567890 |
返回请求 ID 与创建成功的任务 ID。
示例
正常返回示例
JSON格式
{
"requestId": "A1B2C3D4-E5F6-7890-ABCD-EF1234567890",
"taskId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
错误码
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。