批次
/batches
路由提供有关异步操作批次的进度信息。
批次对象
{
"uid": 0,
"details": {
"receivedDocuments": 6,
"indexedDocuments": 6
},
"stats": {
"totalNbTasks": 1,
"status": {
"succeeded": 1
},
"types": {
"documentAdditionOrUpdate": 1
},
"indexUids": {
"INDEX_NAME": 1
}
},
"duration": "PT0.250518S",
"startedAt": "2024-12-10T15:20:30.18182Z",
"finishedAt": "2024-12-10T15:20:30.432338Z",
"progress": {
"steps": [
{
"currentStep": "extracting words",
"finished": 2,
"total": 9,
},
{
"currentStep": "document",
"finished": 30546,
"total": 31944,
}
],
"percentage": 32.8471
}
}
uid
类型: 整数
描述: 批次的唯一顺序标识符。从 0
开始,每次新补丁增加 1。
details
类型: 对象
描述: 批次中任务类型的基本信息。有关可能值的详尽列表,请查阅任务对象参考。
progress
类型: 对象
描述: 包含两个字段的对象:steps
和 percentage
。一旦 Meilisearch 完全处理完批次,其 progress
将设置为 null
。
steps
有关 Meilisearch 在此批次中执行的当前操作的信息。一个步骤可能包含多个子步骤。
名称 | 描述 |
---|---|
currentStep | 描述操作的字符串 |
total | 步骤中的操作总数 |
finished | Meilisearch 已完成的操作数 |
如果 Meilisearch 处理批次的时间超出预期,请监控 steps
数组。如果 steps
数组中最后一项的 finished
字段没有更新,则 Meilisearch 可能卡住了。
percentage
已完成操作的百分比,根据当前所有步骤和子步骤计算得出。此值是一个粗略的估计值,由于不同步骤的处理速度不同,因此可能并不总是反映批次的当前状态。
统计数据
类型: 对象
描述:关于批次中所有任务有效负载的详细信息。
totalNbTasks
批次中的任务数量。
状态
对象列出批次中每个任务的状态。包含五个键,其值对应于具有该状态的任务数量。
类型
包含批次中包含的任务类型
的列表。
indexUids
批次中任务数量的列表,按其影响的索引分隔。
持续时间
类型:字符串
描述:批次在processing
状态下花费的总时间,采用ISO 8601格式。当批次正在处理任务时,设置为null
startedAt
类型:字符串
描述:批次开始processing
的日期和时间,采用RFC 3339格式
finishedAt
类型:字符串
描述:任务完成processing
的日期和时间,无论任务是failed
、succeeded
还是canceled
,都以RFC 3339格式表示。
获取批次
列出所有批次,无论索引如何。批次对象包含在results
数组中。
批次始终按uid
降序返回。这意味着默认情况下,最近创建的批次对象会首先显示。
`/batches`参数和任务
/batches
的一些查询参数(例如uids
和statuses
)针对的是任务而不是批次。
例如,?uids=0
返回一个包含taskUid
等于0
的任务的批次,而不是batchUid
等于0
的批次。
查询参数
查询参数 | 默认值 | 描述 |
---|---|---|
uids | * (所有任务 uid) | 选择包含指定uid 的任务的批次。用逗号 (, ) 分隔多个任务 uid 。 |
batchUids | * (所有批次 uid) | 按其 uid 筛选批次。用逗号 (, ) 分隔多个批次 uid 。 |
indexUids | * (所有索引) | 选择包含影响指定索引的任务的批次。用逗号 (, ) 分隔多个 indexUids 。 |
statuses | * (所有状态) | 选择包含具有指定 status 的任务的批次。用逗号 (, ) 分隔多个任务 statuses 。 |
类型 | * (所有类型) | 选择包含具有指定 type 的任务的批次。用逗号 (, ) 分隔多个任务 types 。 |
limit | 20 | 要返回的批次数量 |
from | 上次创建的批次的uid | 返回的第一个批次的uid |
reverse | false | 如果为 true ,则按相反顺序返回结果,从最旧到最近 |
beforeEnqueuedAt | * (所有任务) | 选择包含具有指定 enqueuedAt 字段的任务的批次 |
beforeStartedAt | * (所有任务) | 选择包含具有指定 startedAt 字段的任务的批次 |
beforeFinishedAt | * (所有任务) | 选择包含具有指定 finishedAt 字段的任务的批次 |
afterEnqueuedAt | * (所有任务) | 选择包含具有指定 enqueuedAt 字段的任务的批次 |
afterStartedAt | * (所有任务) | 选择包含具有指定 startedAt 字段的任务的批次 |
afterFinishedAt | * (所有任务) | 选择包含具有指定 finishedAt 字段的任务的批次 |
响应
名称 | 类型 | 描述 |
---|---|---|
results | 数组 | 一个批次对象数组 |
total | 整数 | 与筛选器或查询匹配的批次总数 |
limit | 整数 | 返回的批次数量 |
from | 整数 | 返回的第一个批次的uid |
next | 整数 | 传递给 from 以查看下一“页”结果的值。当 next 的值为 null 时,没有更多任务可以查看 |
示例
curl \
-X GET 'https://127.0.0.1:7700/batches'
响应:200 Ok
{
"results": [
{
"uid": 2,
"details": {
"stopWords": [
"of",
"the"
]
},
"progress": null,
"stats": {
"totalNbTasks": 1,
"status": {
"succeeded": 1
},
"types": {
"settingsUpdate": 1
},
"indexUids": {
"INDEX_NAME": 1
}
},
"duration": "PT0.110083S",
"startedAt": "2024-12-10T15:49:04.995321Z",
"finishedAt": "2024-12-10T15:49:05.105404Z"
}
],
"total": 3,
"limit": 1,
"from": 2,
"next": 1
}
获取一个批次
获取单个批次。
路径参数
名称 | 类型 | 描述 |
---|---|---|
batch_uid * | 字符串 | 请求的批次的uid |
示例
curl \
-X GET 'https://127.0.0.1:7700/batches/BATCH_UID'
响应:200 Ok
{
"uid": 1,
"details": {
"receivedDocuments": 1,
"indexedDocuments": 1
},
"progress": null,
"stats": {
"totalNbTasks": 1,
"status": {
"succeeded": 1
},
"types": {
"documentAdditionOrUpdate": 1
},
"indexUids": {
"INDEX_NAME": 1
}
},
"duration": "PT0.364788S",
"startedAt": "2024-12-10T15:48:49.672141Z",
"finishedAt": "2024-12-10T15:48:50.036929Z"
}