cat 异常检测器 API
编辑cat 异常检测器 API
编辑cat API 仅供用户通过命令行或 Kibana 控制台使用。不 适合应用程序使用。对于应用程序使用,请使用 获取异常检测作业统计信息 API。
返回关于异常检测作业的配置和使用信息。
先决条件
编辑路径参数
编辑-
<job_id>
- (可选,字符串) 异常检测作业的标识符。
查询参数
编辑-
allow_no_match
-
(可选,布尔值) 指定在请求时要执行的操作
- 包含通配符表达式,并且没有作业匹配。
- 包含
_all
字符串或没有标识符,并且没有匹配项。 - 包含通配符表达式,并且只有部分匹配项。
默认值为
true
,当没有匹配项时返回一个空的jobs
数组,当有部分匹配项时返回结果的子集。如果此参数为false
,当没有匹配项或只有部分匹配项时,请求将返回404
状态码。 -
bytes
- (可选,字节大小单位) 用于显示字节值的单位。
-
format
- (可选,字符串) HTTP accept header 的简短版本。有效值包括 JSON、YAML 等。
-
h
-
(可选,字符串) 要显示的列名称的逗号分隔列表。
如果您不指定要包含的列,API 将返回默认列。如果您显式指定一个或多个列,它将仅返回指定的列。
有效列为
-
assignment_explanation
,ae
- 仅对于打开的异常检测作业,包含与选择用于运行作业的节点相关的消息。
-
buckets.count
,bc
,bucketsCount
- (默认) 作业生成的存储桶结果数。
-
buckets.time.exp_avg
,btea
,bucketsTimeExpAvg
- 所有存储桶处理时间的指数移动平均值,以毫秒为单位。
-
buckets.time.exp_avg_hour
,bteah
,bucketsTimeExpAvgHour
- 在 1 小时时间窗口内计算的存储桶处理时间的指数加权移动平均值,以毫秒为单位。
-
buckets.time.max
,btmax
,bucketsTimeMax
- 所有存储桶处理时间中的最大值,以毫秒为单位。
-
buckets.time.min
,btmin
,bucketsTimeMin
- 所有存储桶处理时间中的最小值,以毫秒为单位。
-
buckets.time.total
,btt
,bucketsTimeTotal
- 所有存储桶处理时间的总和,以毫秒为单位。
-
data.buckets
,db
,dataBuckets
- 已处理的存储桶数。
-
data.earliest_record
,der
,dataEarliestRecord
- 最早的按时间顺序排列的输入文档的时间戳。
-
data.empty_buckets
,deb
,dataEmptyBuckets
- 不包含任何数据的存储桶数。如果您的数据包含许多空存储桶,请考虑增加您的
bucket_span
或使用对数据中的间隙具有容错性的函数,例如mean
、non_null_sum
或non_zero_count
。 -
data.input_bytes
,dib
,dataInputBytes
- 发布到异常检测作业的输入数据字节数。
-
data.input_fields
,dif
,dataInputFields
- 发布到异常检测作业的输入文档中的字段总数。此计数包括未在分析中使用的字段。但是,请注意,如果您正在使用数据馈送,它仅从检索到的文档中提取所需的字段,然后再将其发布到作业。
-
data.input_records
,dir
,dataInputRecords
- 发布到异常检测作业的输入文档数。
-
data.invalid_dates
,did
,dataInvalidDates
- 输入文档中缺少日期字段或无法解析的日期的数量。
-
data.last
,dl
,dataLast
- 根据服务器时间,最后一次分析数据的时间戳。
-
data.last_empty_bucket
,dleb
,dataLastEmptyBucket
- 最后一个不包含任何数据的存储桶的时间戳。
-
data.last_sparse_bucket
,dlsb
,dataLastSparseBucket
- 被认为是稀疏的最后一个存储桶的时间戳。
-
data.latest_record
,dlr
,dataLatestRecord
- 最新的按时间顺序排列的输入文档的时间戳。
-
data.missing_fields
,dmf
,dataMissingFields
-
缺少异常检测作业配置为分析的字段的输入文档数。仍会处理缺少字段的输入文档,因为并非所有字段都可能丢失。
如果您正在使用数据馈送或以 JSON 格式将数据发布到作业,则高的
missing_field_count
通常并不表示数据问题。它不一定是引起关注的原因。 -
data.out_of_order_timestamps
,doot
,dataOutOfOrderTimestamps
- 时间戳按时间顺序先于当前异常检测存储桶的开始时间并偏移延迟窗口的输入文档数。此信息仅在您通过使用 发布数据 API 向异常检测作业提供数据时适用。由于作业要求时间序列数据按时间顺序升序排列,因此这些乱序的文档将被丢弃。
-
data.processed_fields
,dpf
,dataProcessedFields
- 异常检测作业处理的所有文档中的字段总数。只有在检测器配置对象中指定的字段才会计入此计数。时间戳不包括在此计数中。
-
data.processed_records
,dpr
,dataProcessedRecords
- (默认) 异常检测作业处理的输入文档数。此值包括缺少字段的文档,因为仍然会分析它们。如果您使用数据馈送并在搜索查询中进行聚合,则
processed_record_count
是处理的聚合结果数,而不是 Elasticsearch 文档数。 -
data.sparse_buckets
,dsb
,dataSparseBuckets
- 与预期数据点数相比,包含少量数据点的存储桶数。如果您的数据包含许多稀疏的存储桶,请考虑使用更长的
bucket_span
。 -
forecasts.memory.avg
,fmavg
,forecastsMemoryAvg
- 与异常检测作业相关的预测的平均内存使用量(以字节为单位)。
-
forecasts.memory.max
,fmmax
,forecastsMemoryMax
- 与异常检测作业相关的预测的最大内存使用量(以字节为单位)。
-
forecasts.memory.min
,fmmin
,forecastsMemoryMin
- 与异常检测作业相关的预测的最小内存使用量(以字节为单位)。
-
forecasts.memory.total
,fmt
,forecastsMemoryTotal
- 与异常检测作业相关的预测的总内存使用量(以字节为单位)。
-
forecasts.records.avg
,fravg
,forecastsRecordsAvg
- 为与异常检测作业相关的预测写入的
model_forecast
文档的平均数量。 -
forecasts.records.max
,frmax
,forecastsRecordsMax
- 为与异常检测作业相关的预测写入的
model_forecast
文档的最大数量。 -
forecasts.records.min
,frmin
,forecastsRecordsMin
- 为与异常检测作业相关的预测写入的
model_forecast
文档的最小数量。 -
forecasts.records.total
,frt
,forecastsRecordsTotal
- 为与异常检测作业相关的预测写入的
model_forecast
文档的总数。 -
forecasts.time.avg
,ftavg
,forecastsTimeAvg
- 与异常检测作业相关的预测的平均运行时间(以毫秒为单位)。
-
forecasts.time.max
,ftmax
,forecastsTimeMax
- 与异常检测作业相关的预测的最大运行时间(以毫秒为单位)。
-
forecasts.time.min
,ftmin
,forecastsTimeMin
- 与异常检测作业相关的预测的最小运行时间(以毫秒为单位)。
-
forecasts.time.total
,ftt
,forecastsTimeTotal
- 与异常检测作业相关的预测的总运行时间(以毫秒为单位)。
-
forecasts.total
,ft
,forecastsTotal
- (默认) 当前可用于作业的单个预测的数量。值
1
或更大表示存在预测。 -
id
- (默认) 异常检测作业的标识符。
-
model.bucket_allocation_failures
,mbaf
,modelBucketAllocationFailures
- 由于模型内存不足,新传入数据中的实体未处理的存储桶数。这种情况也由
hard_limit: memory_status
属性值表示。 -
model.by_fields
,mbf
,modelByFields
- 模型分析的
by
字段值的数量。此值是作业中所有检测器的累积值。 -
model.bytes
,mb
,modelBytes
- (默认)模型使用的内存字节数。这是自上次模型持久化以来的最大值。如果作业已关闭,则此值表示最新大小。
-
model.bytes_exceeded
、mbe
、modelBytesExceeded
- 上次分配失败时超出内存使用上限的字节数。
-
model.categorization_status
、mcs
、modelCategorizationStatus
-
作业分类的状态。包含以下值之一
-
ok
:分类执行情况良好(或者根本没有使用)。 -
warn
:分类检测到类别分布,表明输入数据不适合分类。问题可能包括:只有一个类别、超过 90% 的类别是罕见的、类别数量大于分类文档数量的 50%、没有频繁匹配的类别,或超过 50% 的类别已失效。
-
-
model.categorized_doc_count
、mcdc
、modelCategorizedDocCount
- 已分类字段的文档数量。
-
model.dead_category_count
、mdcc
、modelDeadCategoryCount
- 由分类创建的类别数量,这些类别将永远不会再次分配,因为另一个类别的定义使其成为失效类别的超集。(失效类别是分类方式的副作用,因为分类没有事先的训练。)
-
model.failed_category_count
、mdcc
、modelFailedCategoryCount
- 分类想要创建新类别但由于作业已达到其
model_memory_limit
而无法创建的次数。此计数不会跟踪哪些特定类别创建失败。因此,您不能使用此值来确定错过的唯一类别数量。 -
model.frequent_category_count
、mfcc
、modelFrequentCategoryCount
- 与超过 1% 的分类文档匹配的类别数量。
-
model.log_time
、mlt
、modelLogTime
- 根据服务器时间,收集模型统计信息时的时间戳。
-
model.memory_limit
、mml
、modelMemoryLimit
- 模型内存使用量的上限,在值增加时进行检查。
-
model.memory_status
、mms
、modelMemoryStatus
-
(默认)数学模型的状态,可以具有以下值之一
-
ok
:模型保持在配置的值以下。 -
soft_limit
:模型使用了超过配置内存限制的 60%,并且将修剪较旧的未使用模型以释放空间。此外,在分类作业中,将不再存储更多的类别示例。 -
hard_limit
:模型使用的空间超过了配置的内存限制。因此,并非所有传入数据都被处理。
-
-
model.output_memory_allocator_bytes
、momab
、modelOutputMemoryAllocatorBytes
- 用于输出异常检测作业文档的内存量(以字节为单位)。
-
model.over_fields
、mof
、modelOverFields
- 模型分析的
over
字段值的数量。此值是作业中所有检测器的累积值。 -
model.partition_fields
、mpf
、modelPartitionFields
- 模型分析的
partition
字段值的数量。此值是作业中所有检测器的累积值。 -
model.rare_category_count
、mrcc
、modelRareCategoryCount
- 仅与一个分类文档匹配的类别数量。
-
model.timestamp
、mt
、modelTimestamp
- 收集模型统计信息时最后一个记录的时间戳。
-
model.total_category_count
、mtcc
、modelTotalCategoryCount
- 由分类创建的类别数量。
-
node.address
、na
、nodeAddress
-
节点的网络地址。
包含运行作业的节点的属性。此信息仅适用于打开的作业。
-
node.ephemeral_id
、ne
、nodeEphemeralId
-
节点的临时 ID。
包含运行作业的节点的属性。此信息仅适用于打开的作业。
-
node.id
、ni
、nodeId
-
节点的唯一标识符。
包含运行作业的节点的属性。此信息仅适用于打开的作业。
-
node.name
、nn
、nodeName
-
节点名称。
包含运行作业的节点的属性。此信息仅适用于打开的作业。
-
opened_time
、ot
- 仅适用于打开的作业,作业已打开的经过时间。
-
state
、s
-
(默认)异常检测作业的状态,可以是以下值之一
-
closed
:作业成功完成,并且其模型状态已持久化。必须先打开作业,然后才能接受更多数据。 -
closing
:作业关闭操作正在进行中,尚未完成。正在关闭的作业无法接受更多数据。 -
failed
:由于错误,作业未成功完成。这种情况可能是由于输入数据无效、分析期间发生致命错误或外部交互(例如进程被 Linux 内存不足 (OOM) 终止)导致的。如果作业已不可逆转地失败,则必须强制关闭然后删除。如果可以更正数据馈送,则可以关闭作业,然后再重新打开。 -
opened
:该作业可用于接收和处理数据。 -
opening
:作业打开操作正在进行中,尚未完成。
-
-
-
帮助
- (可选,布尔值)如果为
true
,则响应包括帮助信息。默认为false
。 -
s
- (可选,字符串)用于对响应进行排序的列名或列别名的逗号分隔列表。
-
时间
- (可选,时间单位)用于显示时间值的单位。
-
v
- (可选,布尔值)如果为
true
,则响应包括列标题。默认为false
。
示例
编辑resp = client.cat.ml_jobs( h="id,s,dpr,mb", v=True, ) print(resp)
response = client.cat.ml_jobs( h: 'id,s,dpr,mb', v: true ) puts response
const response = await client.cat.mlJobs({ h: "id,s,dpr,mb", v: "true", }); console.log(response);
GET _cat/ml/anomaly_detectors?h=id,s,dpr,mb&v=true
id s dpr mb high_sum_total_sales closed 14022 1.5mb low_request_rate closed 1216 40.5kb response_code_rates closed 28146 132.7kb url_scanning closed 28146 501.6kb