我正在使用elasticsearch 1.3.4和groovy。我想要做的是在弹性搜索查询中使用脚本:
{
"size": 0,
"query": {
"bool": {
"must": [
{
"range": {
"@timestamp": {
"gte": "2014-12-08T03:40:00.000Z",
"lte": "2014-12-08T03:40:59.999Z"
}
}
}
],
"must_not": []
}
},
"facets": {
"myFacet": {
"terms": {
"script": "doc['@field1'].value + ':' + doc['@field2'].value"
}
}
}
}
由于某种原因,字段名称以at符号开头。问题是groovy将at符号视为特殊字符(http://groovy.codehaus.org/Operators)。来自groovy的错误消息:
嵌套:GroovyScriptCompilationException [MultipleCompilationErrorsException [startup failed:\ nScript78.groovy:1:无法解析类字段,无法找到注释类\ n @
因此,可以使用" @"开始使用字段进行常规工作。登录?
答案 0 :(得分:1)