Node.js 动态更改elasticsearch查询定义
因此,我试图从elastic中动态删除特定文档,并且希望使用一个函数,而不必硬编码我要查找的时间范围中的项目名称。见下面的代码:Node.js 动态更改elasticsearch查询定义,node.js,
elasticsearch,Node.js,
elasticsearch,因此,我试图从elastic中动态删除特定文档,并且希望使用一个函数,而不必硬编码我要查找的时间范围中的项目名称。见下面的代码: exports.cleanElastic = function(type, timeReference){ return new Promise (function (resolve, reject){ let dataOlderThan = "now-".concat(config.amountOfData); elastic
exports.cleanElastic = function(type, timeReference){
return new Promise (function (resolve, reject){
let dataOlderThan = "now-".concat(config.amountOfData);
elastic.deleteByQuery({
index: 'canary',
type: type,
body: {
query: {
range : {
START_TS: {
lte: dataOlderThan
}
}
}
}
},
如您所见,“START_TS”是我在本例中关心的日期字段的名称。项目并非总是如此。因此,我试图将“timeReference”或至少其“value”传递给查询读取“START\TS”的位置。如有任何建议,将不胜感激
谢谢,
Ryan我认为您要求的更多是将字符串转换为javascript 在rails中,我们使用如下方法来实现此目的
key_name = 'age'
hash = {
name: 'john',
key_name.to_sym => '23'
}
我认为您要求的更多是将字符串转换为javascript 在rails中,我们使用如下方法来实现此目的
key_name = 'age'
hash = {
name: 'john',
key_name.to_sym => '23'
}
那个timeReference变量是干什么的。你可以发布json对象的外观吗。timeReference变量只是一个当前包含“START\TS”的字符串。我希望在前进时将其更改为其他字符串,但它始终只有一个字符串。timeReference变量用于什么。你可以发布json对象的外观吗。timeReference变量只是一个当前包含“START\TS”的字符串。我希望在前进的过程中将其更改为其他字符串,但它始终只是一个字符串。