获取转换统计信息 API编辑

检索转换的使用信息。

请求编辑

GET _transform/<transform_id>/_stats

GET _transform/<transform_id>,<transform_id>/_stats

GET _transform/_stats

GET _transform/_all/_stats

GET _transform/*/_stats

先决条件编辑

需要以下权限

  • 集群: monitor_transformtransform_user 内置角色授予此权限)
  • 目标索引: readview_index_metadata

描述编辑

您可以使用逗号分隔的标识符列表或通配符表达式,在一个 API 请求中获取多个转换的统计信息。您可以使用 _all 获取所有转换的统计信息,方法是将 * 指定为 <transform_id>,或者省略 <transform_id>

路径参数编辑

<transform_id>
(可选,字符串)转换的标识符。它可以是转换标识符或通配符表达式。如果您未指定其中一个选项,则 API 将返回所有转换的信息。

查询参数编辑

allow_no_match

(可选,布尔值)指定在请求

  • 包含通配符表达式且没有匹配的转换时该怎么做。
  • 包含 _all 字符串或没有标识符且没有匹配项时该怎么做。
  • 包含通配符表达式并且只有部分匹配时该怎么做。

默认值为 true,当没有匹配项时返回一个空的 transforms 数组,当有部分匹配项时返回结果的子集。

如果此参数为 false,则当没有匹配项或只有部分匹配项时,请求将返回 404 状态代码。

from
(可选,整数)跳过指定数量的转换。默认值为 0
size
(可选,整数)指定要获取的最大转换数。默认值为 100

响应正文编辑

API 返回转换的统计信息对象数组,这些对象按 id 值按升序排序。所有这些属性均为信息性属性;您无法更新它们的值。

checkpointing

(对象)包含有关 检查点 的统计信息。

checkpointing 的属性
changes_last_detected_at
(日期)上次在源索引中检测到更改的时间戳。
last

(对象)包含有关上次完成的检查点的统计信息。

last 的属性
checkpoint
(整数)检查点的序列号。
time_upper_bound_millis
(日期)使用基于时间的同步时,此时间戳表示检查点中包含的数据的上限。
timestamp_millis
(日期)检查点的时间戳,指示检查点的创建时间。
last_search_time
(日期)上次在源索引中搜索的时间戳。仅当转换正在运行时,才会显示此字段。
next

(对象)包含有关当前正在进行的下一个检查点的统计信息。仅当转换 stateindexing 时,才会显示此对象。

next 的属性
checkpoint
(整数)检查点的序列号。
checkpoint_progress
(对象)包含有关检查点进度的统计信息。例如,它列出了 total_docsdocs_remainingpercent_completedocs_processeddocs_indexed。此信息仅适用于批处理转换和连续转换的第一个检查点。
time_upper_bound_millis
(日期)使用基于时间的同步时,此时间戳表示检查点中包含的数据的上限。
timestamp_millis
(日期)检查点的时间戳,指示检查点的创建时间。
operations_behind
(整数)已在源索引上发生但尚未应用于目标索引的操作数。较高的数字可能表示转换无法跟上。
health

(对象)此转换的运行状况指标。

health 的属性
status

(字符串)此转换的运行状况状态。状态为

  • green:转换运行状况良好。
  • unknown:无法确定转换的运行状况。
  • yellow:转换的功能处于降级状态,可能需要修复以避免运行状况变为 red
  • red:转换遇到中断或不可用。
issues

(可选,数组)如果返回非健康状态,则包含转换问题列表。

issues 的属性
issue
(字符串)问题的描述。
details
(可选,字符串)有关问题的详细信息。
count
(整数)自问题开始以来发生的次数。
first_occurrence
(可选,日期)此问题首次发生的时间戳。
id
(字符串)转换的标识符。
node

(对象)仅针对已启动的转换,启动转换所在的节点。

node 的属性
attributes
(对象)节点的属性列表。
ephemeral_id
(字符串)节点临时 ID。
id
(字符串)节点的唯一标识符。例如,“0-o0tOoRTwKFZifatTWKNw”。
name
(字符串)节点名称。例如,0-o0tOo
transport_address
(字符串)接受传输 HTTP 连接的主机和端口。例如,127.0.0.1:9300
reason
(字符串)如果转换处于 failed 状态,则此属性提供有关失败原因的详细信息。
state

(字符串)转换的状态,可以是以下值之一

  • aborting:转换正在中止。
  • failed:转换失败。有关失败的更多信息,请查看 reason 字段。
  • indexing:转换正在积极处理数据并创建新文档。
  • started:转换正在运行,但未积极索引数据。
  • stopped:转换已停止。
  • stopping:转换正在停止。
stats

(对象)提供有关转换的统计信息的 object。

stats 的属性
delete_time_in_ms
(长整型)花费在删除上的时间(以毫秒为单位)。
documents_deleted
(长整型)由于此转换的保留策略而从目标索引中删除的文档数。
documents_indexed
(长整型)已为转换索引到目标索引中的文档数。
documents_processed
(长整型)已从转换的源索引处理的文档数。
exponential_avg_checkpoint_duration_ms
(双精度浮点型)检查点持续时间的指数移动平均值(以毫秒为单位)。
exponential_avg_documents_indexed
(双精度浮点型)已索引的新文档数量的指数移动平均值。
exponential_avg_documents_processed
(双精度浮点型)已处理文档数量的指数移动平均值。
index_failures
(长整型)索引失败次数。
index_time_in_ms
(长整型)花费在索引上的时间(以毫秒为单位)。
index_total
(长整型)索引操作次数。
pages_processed
(长整型)已处理的搜索或批量索引操作数。文档是批量处理的,而不是单独处理的。
processing_time_in_ms
(长整型)花费在处理结果上的时间(以毫秒为单位)。
processing_total
(长整型)处理操作次数。
search_failures
(长整型)搜索失败次数。
search_time_in_ms
(长整型)花费在搜索上的时间(以毫秒为单位)。
search_total
(长整型)对转换的源索引执行的搜索操作次数。
trigger_count
(长整型)调度程序触发转换的次数。例如,调度程序触发转换索引器以 frequency 属性 中指定的间隔检查更新或提取新数据。

响应代码编辑

404(缺少资源)
如果 allow_no_matchfalse,则此代码表示没有与请求匹配的资源,或者只有部分匹配请求的资源。

示例编辑

以下示例跳过前五个转换,并最多获取十个结果的使用信息

response = client.transform.get_transform(
  transform_id: '_stats',
  from: 5,
  size: 10
)
puts response
GET _transform/_stats?from=5&size=10

以下示例获取转换的使用信息

response = client.transform.get_transform_stats(
  transform_id: 'ecommerce-customer-transform'
)
puts response
GET _transform/ecommerce-customer-transform/_stats

API 返回以下结果

{
  "count" : 1,
  "transforms" : [
    {
      "id" : "ecommerce-customer-transform",
      "state" : "started",
      "node" : {
        "id" : "cpTIGMsVQ8Gqwqlxxxxxxx",
        "name" : "my.home",
        "ephemeral_id" : "5-L21nFsQxxxxxxxxxx-xx",
        "transport_address" : "127.0.0.1:9300",
        "attributes" : { }
      },
      "stats" : {
        "pages_processed" : 78,
        "documents_processed" : 6027,
        "documents_indexed" : 68,
        "documents_deleted": 22,
        "delete_time_in_ms": 214,
        "trigger_count" : 168,
        "index_time_in_ms" : 412,
        "index_total" : 20,
        "index_failures" : 0,
        "search_time_in_ms" : 353,
        "search_total" : 78,
        "search_failures" : 0,
        "processing_time_in_ms" : 8,
        "processing_total" : 78,
        "exponential_avg_checkpoint_duration_ms" : 97.30637923893185,
        "exponential_avg_documents_indexed" : 2.2064915040974062,
        "exponential_avg_documents_processed" : 179.89419945785045
      },
      "checkpointing" : {
        "last" : {
          "checkpoint" : 20,
          "timestamp_millis" : 1585344558220,
          "time_upper_bound_millis" : 1585344498220
        },
        "changes_last_detected_at" : 1585344558219
      },
      "health": {
        "status": "green"
      }
    }
  ]
}