所以我有一个现有的索引。我关闭它以更新设置,然后重新打开。
client.indices.putSettings({
index: 'myindex',
type: 'mytype',
body: {
'_ttl': {
"enabled" : true,
'default': '1m'
}
}
})
.then(function (result) {
console.log('result', result)
})
然后我创建一个新文档来查看ttl是否实际工作但它不起作用。
我从索引中看到的
对我做错了什么的想法?
答案 0 :(得分:1)
_ttl
应直接在映射类型上设置,而不是在索引上设置,因此您要使用putMapping
而不是putSettings
。
client.indices.putMapping({
index: 'myindex',
type: 'mytype',
body: {
'mytype': {
'_ttl': {
"enabled" : true,
'default': '1m'
}
}
}
})
.then(function (result) {
console.log('result', result)
})
这相当于这个REST调用:
curl -XPUT 'http://localhost:9200/myindex/_mapping/mytype' -d '{
"mytype": {
"_ttl": {
"enabled": true, "default": "1m"
}
}
}'