カテゴリ取得API
1つ以上のカテゴリの異常検出ジョブ結果を取得します。
リクエスト
GET _ml/anomaly_detectors/<job_id>/results/categories
GET _ml/anomaly_detectors/<job_id>/results/categories/<category_id>
前提条件
monitor_ml
クラスター権限が必要です。この権限は machine_learning_user
ビルトインロールに含まれています。
説明
categorization_field_name
がジョブ設定で指定されている場合、結果カテゴリの定義を表示できます。カテゴリ定義は、一致した一般的な用語を説明し、一致した値の例を含みます。
カテゴリ分析からの異常結果は、バケット、インフルエンサー、およびレコード結果として利用可能です。たとえば、結果は16:45にログメッセージカテゴリ11の異常なカウントがあったことを示すかもしれません。その後、そのカテゴリの説明と例を調べることができます。詳細については、ログメッセージの分類を参照してください。
パスパラメータ
<job_id>
- (必須、文字列) 異常検出ジョブの識別子。
<category_id>
- (オプション、長整数) ジョブ内で一意のカテゴリの識別子。カテゴリIDまたは
partition_field_value
を指定しない場合、APIはすべてのカテゴリに関する情報を返します。partition_field_value
のみを指定した場合、指定されたパーティションのすべてのカテゴリに関する情報を返します。
クエリパラメータ
from
- (オプション、整数) 指定された数のカテゴリをスキップします。デフォルトは
0
です。 partition_field_value
- (オプション、文字列) 指定されたパーティションのカテゴリのみを返します。
size
- (オプション、整数) 取得するカテゴリの最大数を指定します。デフォルトは
100
です。
リクエストボディ
リクエストボディ内で partition_field_value
クエリパラメータを指定することもできます。
page
page
のプロパティfrom
- (オプション、整数) 指定された数のカテゴリをスキップします。デフォルトは
0
です。 size
- (オプション、整数) 取得するカテゴリの最大数を指定します。デフォルトは
100
です。
レスポンスボディ
APIは、次のプロパティを持つカテゴリオブジェクトの配列を返します:
category_id
- (符号なし整数) カテゴリの一意の識別子。
category_id
は、パーティションごとの分類が有効になっている場合でも、ジョブレベルで一意です。 examples
- (配列) カテゴリに一致した実際の値の例のリスト。
grok_pattern
- [プレビュー] この機能は技術プレビュー中であり、将来のリリースで変更または削除される可能性があります。Elasticは問題を修正するために取り組みますが、技術プレビューの機能は公式GA機能のサポートSLAの対象ではありません。 (文字列) カテゴリに一致するメッセージからフィールドを抽出するためにLogstashまたはインジェストパイプラインで使用できるGrokパターン。このフィールドは実験的であり、将来のリリースで変更または削除される可能性があります。見つかったGrokパターンは最適ではありませんが、手動調整の良い出発点となることがよくあります。
job_id
- (文字列) 異常検出ジョブの識別子。
max_matching_length
(符号なし整数) カテゴリに一致したフィールドの最大長。値は、分析されていない類似フィールドの一致を可能にするために10%増加します。
partition_field_name
- (文字列) パーティションごとの分類が有効になっている場合、このプロパティは分類に使用されるフィールドを識別します。パーティションごとの分類が無効になっている場合は存在しません。
partition_field_value
- (文字列) パーティションごとの分類が有効になっている場合、このプロパティはカテゴリの
partition_field_name
の値を識別します。パーティションごとの分類が無効になっている場合は存在しません。 regex
- (文字列) カテゴリに一致する値を検索するために使用される正規表現。
terms
- (文字列) カテゴリの値に一致する一般的なトークンのスペース区切りリスト。
num_matches
- (長整数) このカテゴリに一致したメッセージの数。この数は、ジョブ
_flush
または_close
の後に最新の正確なカウントが保証されます。 preferred_to_categories
- (リスト) この現在のカテゴリが包含する
category_id
エントリのリスト。分類器によって処理される新しいメッセージは、このカテゴリに一致し、このリスト内のカテゴリには一致しません。このリストは、ジョブ_flush
または_close
の後に最新の正確なカテゴリリストが保証されます。
例
Python
resp = client.ml.get_categories(
job_id="esxi_log",
page={
"size": 1
},
)
print(resp)
Ruby
response = client.ml.get_categories(
job_id: 'esxi_log',
body: {
page: {
size: 1
}
}
)
puts response
Js
const response = await client.ml.getCategories({
job_id: "esxi_log",
page: {
size: 1,
},
});
console.log(response);
コンソール
GET _ml/anomaly_detectors/esxi_log/results/categories
{
"page":{
"size": 1
}
}
Js
{
"count": 11,
"categories": [
{
"job_id" : "esxi_log",
"category_id" : 1,
"terms" : "Vpxa verbose vpxavpxaInvtVm opID VpxaInvtVmChangeListener Guest DiskInfo Changed",
"regex" : ".*?Vpxa.+?verbose.+?vpxavpxaInvtVm.+?opID.+?VpxaInvtVmChangeListener.+?Guest.+?DiskInfo.+?Changed.*",
"max_matching_length": 154,
"examples" : [
"Oct 19 17:04:44 esxi1.acme.com Vpxa: [3CB3FB90 verbose 'vpxavpxaInvtVm' opID=WFU-33d82c31] [VpxaInvtVmChangeListener] Guest DiskInfo Changed",
"Oct 19 17:04:45 esxi2.acme.com Vpxa: [3CA66B90 verbose 'vpxavpxaInvtVm' opID=WFU-33927856] [VpxaInvtVmChangeListener] Guest DiskInfo Changed",
"Oct 19 17:04:51 esxi1.acme.com Vpxa: [FFDBAB90 verbose 'vpxavpxaInvtVm' opID=WFU-25e0d447] [VpxaInvtVmChangeListener] Guest DiskInfo Changed",
"Oct 19 17:04:58 esxi2.acme.com Vpxa: [FFDDBB90 verbose 'vpxavpxaInvtVm' opID=WFU-bbff0134] [VpxaInvtVmChangeListener] Guest DiskInfo Changed"
],
"grok_pattern" : ".*?%{SYSLOGTIMESTAMP:timestamp}.+?Vpxa.+?%{BASE16NUM:field}.+?verbose.+?vpxavpxaInvtVm.+?opID.+?VpxaInvtVmChangeListener.+?Guest.+?DiskInfo.+?Changed.*"
}
]
}