云Id未在Node.js Elasticsearch客户端中设置正确的主机
我正在构建一个Node.js应用程序,以便将文档批量发送到Elastic.co上的Elasticsearch集群 以下是package.json:云Id未在Node.js Elasticsearch客户端中设置正确的主机,node.js,authentication,
elasticsearch,client,Node.js,Authentication,
elasticsearch,Client,我正在构建一个Node.js应用程序,以便将文档批量发送到Elastic.co上的Elasticsearch集群 以下是package.json: { "name": "bulk-dispatcher", "version": "1.0.0", "description": "", "main": "index.js",
{
"name": "bulk-dispatcher",
"version": "1.0.0",
"description": "",
"main": "index.js",
"type": "module",
"scripts": {
"start": "nodemon index.js"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"btoa": "^1.2.1",
"dotenv": "^9.0.0",
"elasticsearch": "^16.7.2",
"express": "^4.17.1",
"express-bearer-token": "^2.4.0",
"jwt-decode": "^3.1.2",
"querystring": "^0.2.1",
"rollbar": "^2.21.1",
"winston": "^3.3.3"
},
"devDependencies": {
"nodemon": "^2.0.7"
}
}
因此,您可以看到安装了dot.env和elasticsearch
我参考并使用了JS客户端连接到集群的示例,下面是代码:
import es from 'elasticsearch'
import dotenv from 'dotenv'
dotenv.config()
const client = new es.Client({
cloud: {
id: process.env.ELASTIC_CO_SCOTTIE_PROD_CLOUD_ID
},
auth: {
apiKey: {
id: process.env.ELASTIC_CO_API_KEY_ID,
api_key: process.env.ELASTIC_CO_API_KEY
}
}
})
export default client
我已验证process.env值是否正确;我们对PHP客户端使用相同的凭据,该客户端连接良好
当我尝试使用此客户端时,此错误显示:
POSThttp://localhost:9200/events/_search =>连接EConrefuse127.0.0.1:9200
现在,该错误显示它正在尝试连接到不存在的本地ES
Elasticsearch文档说,使用云id连接应该为集群设置合适的主机。显然,这并没有发生
你能看出我做错了什么吗
谢谢你的想法
问候,,
史蒂夫