У меня есть elasti c поисковое соединение в моем коде, как показано ниже.
const config = require('../../config/index');
const logger = require('winston');
var elasticsearch = require('elasticsearch');
var elasticClient;
var state = {
connection: null,
}
exports.connect = function (done) {
try {
logger.info("elasticsearch 000");
if (state.connection) return done()
elasticClient = new elasticsearch.Client({
host: config.elasticSearch.url,
log: 'info'
});
state.connection = elasticClient;
logger.info("elasticsearch connected on url : ", config.elasticSearch.url);
done()
} catch (e) {
logger.info("elasticsearch connect exception ", e)
}
}
exports.get = function () {
return state.connection
}
Я использую это соединение таким образом ...
function Update(_id, data, callback) {
elasticClient.get().update({
index: indexName,
type: tablename,
id: _id,
retry_on_conflict: 5,
body: {
doc: data,
doc_as_upsert: true
}
}, (err, results) => {
if (err) {
console.log("= = = = [elasticClient Update err]= = = = =", err);
}
return callback(err, results)
})
}
Проблема: Когда я вызываю эту функцию update
, это не так возвращая любые данные ... И я получил эту ошибку ...
error : StatusCodeError: Request Timeout after 30000ms
/node_modules/elasticsearch/src/lib/transport.js:397:9
Примечание: Для Elasti c Поиск соединения, я использую Amazon Elasti c Сервис поиска и я передаю его конечную точку VP C.
Версия узла: 12.14.1
Elasticsearch version 6.3
Пакет. json:"asticsearch ":" 16.6.0"