测试 Grok 模式 API
编辑测试 Grok 模式 API
编辑在文本行上测试 Grok 模式,另请参见 Grokking grok。
请求
编辑GET _text_structure/test_grok_pattern
POST _text_structure/test_grok_pattern
描述
编辑测试 Grok 模式 API 允许您在一个或多个文本行上执行 Grok 模式。它会返回这些行是否与模式匹配,以及匹配子字符串的偏移量和长度。
查询参数
编辑-
ecs_compatibility
- (可选,字符串) 与符合 ECS 的 Grok 模式兼容的模式。使用此参数指定在结构查找器创建 Grok 模式时是否使用 ECS Grok 模式代替旧模式。有效值为
disabled
和v1
。默认值为disabled
。
请求体
编辑-
grok_pattern
- (必填,字符串) 在文本行上运行的 Grok 模式。
-
text
- (必填,字符串数组) 要在其上运行 Grok 模式的文本行。
示例
编辑resp = client.text_structure.test_grok_pattern( grok_pattern="Hello %{WORD:first_name} %{WORD:last_name}", text=[ "Hello John Doe", "this does not match" ], ) print(resp)
response = client.text_structure.test_grok_pattern( body: { grok_pattern: 'Hello %{WORD:first_name} %{WORD:last_name}', text: [ 'Hello John Doe', 'this does not match' ] } ) puts response
const response = await client.textStructure.testGrokPattern({ grok_pattern: "Hello %{WORD:first_name} %{WORD:last_name}", text: ["Hello John Doe", "this does not match"], }); console.log(response);
GET _text_structure/test_grok_pattern { "grok_pattern": "Hello %{WORD:first_name} %{WORD:last_name}", "text": [ "Hello John Doe", "this does not match" ] }
API 返回以下响应
{ "matches": [ { "matched": true, "fields": { "first_name": [ { "match": "John", "offset": 6, "length": 4 } ], "last_name": [ { "match": "Doe", "offset": 11, "length": 3 } ] } }, { "matched": false } ] }