我开始使用 Kibana 中的 Canvas 部分-并使用 Elasticsearch SQL 来检索数据。
我想做的是检索几个值的计数;我需要将某些值分组在一起-以相同字母开头的值。
我的SQL查询如下:
SELECT
(SELECT COUNT(*) FROM logs WHERE status LIKE 'missingValue%'),
(SELECT COUNT(*) FROM logs WHERE status LIKE 'errorValue%'),
(SELECT COUNT(*) FROM logs WHERE status='exactErrorValue'),
(SELECT COUNT(*) FROM logs WHERE status='anotherExactErrorValue')
我测试此查询时,using SQL and a little database, it works
现在,我想在画布的某个元素内完成这项工作。我选择一个水平条形图来表示它。
这是我的elasticsearch SQL查询:
SELECT
(SELECT COUNT(*) FROM "monitoring-func-*"
WHERE status LIKE 'missingValue%'),
(SELECT COUNT(*) FROM "monitoring-func-*"
WHERE status LIKE 'errorValue%'),
(SELECT COUNT(*) FROM "monitoring-func-*"
WHERE status='exactErrorValue'),
(SELECT COUNT(*) FROM "monitoring-func-*"
WHERE status='anotherExactErrorValue')
我得到这个错误:
{
"error": {
"message": "[essql] > Unexpected error from Elasticsearch: [unresolved_exception] Invalid call to nullable on an unresolved object ScalarSubquery[With[{}]
\\_Project[[?COUNT(?*)]]
\\_Filter[(status) REGEX (LikePattern)#5139]
\\_UnresolvedRelation[[][index=monitoring-func-*],null,Unknown index [monitoring-func-*]],5142] AS ?"
}
}
看到“未知索引” ,我首先认为通配符是问题所在。
但事实并非如此,在我的其他Elasticsearch查询中都很好。
关于子查询 ,多个SELECT 的东西,Elasticsearch SQL处理不好吗? 我没有找到任何资源或主题,但是也许我搜索的方式错误。