【发布时间】:2015-03-14 22:22:31
【问题描述】:
我积极使用脚本进行评分和汇总。我不知道的一件事是如何从脚本中发出日志。我尝试了 console.log ,但没有成功。请让我知道,我如何从我的 groovy 脚本中发出日志。
【问题讨论】:
我积极使用脚本进行评分和汇总。我不知道的一件事是如何从脚本中发出日志。我尝试了 console.log ,但没有成功。请让我知道,我如何从我的 groovy 脚本中发出日志。
【问题讨论】:
这可以通过访问全局 Elasticsearch 记录器实例来完成。 下面给出了它的常规示例 您也应该能够为 javascript 和其他脚本语言做类似的事情。
import org.elasticsearch.common.logging.*;
ESLogger logger=ESLoggerFactory.getLogger('myscript');
logger.info('This is a log message');
因此,当您进行术语聚合时,您可以执行以下操作 -
"aggregations": {
"debug":{
"terms":{
"script":"import org.elasticsearch.common.logging.*; ESLogger logger=ESLoggerFactory.getLogger('myscript'); logger.info('This is a log message'); return doc['myField'].value;"
}
}
}
来自 Elasticsearch 的一些好人针对某个问题提供了很好的文档。
链接-https://github.com/elasticsearch/elasticsearch/issues/9068
我还举了一些例子here。
【讨论】: