2.1
+0800
nginx-2015.12.18
2015-12-18 16:08
根据doc,以下查询将解析为nginx-2015.12.18
curl -XGET 'localhost:9200/<nginx-{now/d}>/_search'
但实际上它给出了
{"error":{"root_cause":[{"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"<nginx-now","index":"<nginx-now"}],"type":"index_not_found_exception","reason":"no such index","resource.type":"index_or_alias","resource.id":"<nginx-now","index":"<nginx-now"},"status":404}
卷曲'localhost:9200 / _cat / indices?v'
⋊&GT; ~curl'localhost:9200 / _cat / indices?v'16:31:35
health status index pri rep docs.count docs.deleted store.size pri.store.size
yellow open nginx 5 1 18 0 120.7kb 120.7kb
yellow open wx-data-2015.12.18 5 1 2 0 9.6kb 9.6kb
yellow open nginx-2015.12.18 5 1 5 0 33kb 33kb
答案 0 :(得分:1)
事实证明,这是一个known issue,这就是@javanna所说的,
我们最初将此视为一个错误并修复它,但之后我们 发现修复程序引入了回归(#14177),这使我们成为了现实 退后一步。任何不应该用作路径的斜杠 uri中的分隔符应该被正确转义,并且尝试是错误的 并区分服务器端的不同斜杠 取决于它们周围的东西,启发式不会飞 (事实上它没有:))
我们将恢复初始修复,然后解决此问题 问题是转义网址中的'/',如下所示:curl -XGET
'localhost:9200/<logstash-{now%2Fd}>/animals/1'
。那将是有效的 并且首先不需要任何修复。
我还必须逃离{}
,这对我ES 2.0
curl -XGET 'localhost:9200/<nginx-\{now%2Fd\}>/_search'
这有帮助吗?