将代理运行时写入到工作区 S3 的 gzip 压缩 JSONL日志批处理检索。项目范围由路由 ID 路径参数承载,而组织则派生自该项目。
查询参数
-
工作区标识符
-
RFC3339 开始时间(默认:1 小时前;范围不得超过 6 小时)
-
RFC3339 结束时间(默认:现在;范围不得超过 6 小时)
-
最大条目数(默认500,最大为 5000)
-
来自上一个响应的不透明分页游标
-
日志级别完全匹配,以逗号或空格分隔(DEBUG、INFO、WARNING、ERROR;也接受警告/错误别名)。先前最低严重性过滤的重大更改:level=INFO 现在仅返回 INFO,而不是 INFO+WARNING+ERROR。
-
按执行ID筛选(精确匹配)
-
按会话ID筛选(精确匹配)
-
要完全匹配的源,以逗号或空格分隔(stdout、stderr、Python-Logging、Node-Logging)
-
要完全匹配的服务,以逗号或空格分隔(代理执行运行时、工具执行程序;也接受代理/工具别名)
-
消息或启动ID上不区分大小写的子字符串匹配
-
排序顺序:asc(默认,最早的在前)或 desc(最新的在前)
-
仅以单页形式返回最新条目(与游标互斥)
GET /api/v1/projects/{id}/agent-logs
curl \
--request GET 'https://agentengine.mongodb.com/api/v1/projects/{id}/agent-logs?workspace_id=string' \
--header "Authorization: $API_KEY"
响应示例 (406)
操作不可用
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
"error": 406,
"errorCode": "UNACCEPTABLE_MEDIA_TYPE",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
"error": 406,
"errorCode": "UNSUPPORTED_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
响应示例 (406)
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
响应示例 (200)
{
"hasMore": true,
"logs": [
{
"bootId": "string",
"executionId": "string",
"fields": {},
"level": "string",
"logger": "string",
"message": "string",
"podName": "string",
"service": "string",
"sessionId": "string",
"source": "string",
"tenantId": "string",
"timestamp": "string",
"traceId": "string",
"workspaceId": "string"
}
],
"nextCursor": "string"
}
响应示例 (200)
{
"hasMore": true,
"logs": [
{
"bootId": "string",
"executionId": "string",
"fields": {},
"level": "string",
"logger": "string",
"message": "string",
"podName": "string",
"service": "string",
"sessionId": "string",
"source": "string",
"tenantId": "string",
"timestamp": "string",
"traceId": "string",
"workspaceId": "string"
}
],
"nextCursor": "string"
}
响应示例 (400)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (400)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (403)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (403)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (404)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (404)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (429)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (429)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (500)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (500)
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (503)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
响应示例 (503)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}