elasticsearch 学习历程
2017-09-15 11:16
169 查看
今天需要使用java更新es的嵌套属性的值。 找了好久终于找到了对应的api。
原文地址 https://github.com/elastic/elasticsearch-lang-groovy/blob/master/src/test/java/org/elasticsearch/script/groovy/GroovyScriptSearchTests.java
原文地址 https://github.com/elastic/elasticsearch-lang-groovy/blob/master/src/test/java/org/elasticsearch/script/groovy/GroovyScriptSearchTests.java
public void handle(TraceLogMessage message) throws Exception { TraceLogDocument emptyTraceLog = new TraceLogDocument(); emptyTraceLog.date = message.date; emptyTraceLog.id = message.id; emptyTraceLog.app = message.app; emptyTraceLog.action = message.action; emptyTraceLog.result = message.result; emptyTraceLog.content = Lists.newArrayList(); StringBuilder script = new StringBuilder("ctx._source.content+=line"); if ("ERROR".equals(message.result)) script.append("; ctx._source.result=\"ERROR\""); // if log doc is created by WARN, ERROR should update result Map<String, String> params = Maps.newHashMap("line", message.content); UpdateRequest request = new UpdateRequest() .script(new Script(script.toString(), ScriptService.ScriptType.INLINE, null, params)) .upsert(JSON.toJSON(emptyTraceLog)); request.scriptedUpsert(true); traceType.update(message.id, request); }
相关文章推荐
- elasticsearch 学习历程之动态模板
- 全文检索学习历程目录结构(Lucene、ElasticSearch)
- elasticsearch学习历程之script 操作nest数组对象
- 分享下学习Kotlin的历程-构造函数/抽象类/枚举
- Elasticsearch学习系列之term和match查询
- asp.net2.0学习历程 菜鸟到中级程序员的飞跃 转自清清月儿
- [转载] 我的H.264学习历程
- <hadoop学习历程>--笔记心得4-HDFS文件读写流程
- Android学习历程--合理使用布局实现手机信息界面
- ElasticSearch 6.x 学习笔记:5.核心概念解读
- 学习历程之HTML四(表格)
- Spring学习历程---十分钟入门教程JdbcTemplate
- ACM学习历程—BZOJ2956 模积和(数论)
- TypeScript的学习历程4
- 从零开始 学习PHP的风雨历程
- 我的CCNP学习历程开始了
- ElasticSearch学习总结(三):查询总结
- 安卓学习历程-第五天
- 我的iOS学习历程 - OC第一天
- Android学习历程之四 Animation初识一