Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

TheDeveloper/http-aws-es

Repository files navigation

Deprecated

Newer version available at aws-elasticsearch-js for more recent versions of Elasticsearch and elasticsearch-js.


Connection handler for Amazon ES

Makes elasticsearch-js compatible with Amazon ES. It uses the aws-sdk to make signed requests to an Amazon ES endpoint.

Installation

# Install the connector, elasticsearch client and aws-sdk
npm install --save http-aws-es aws-sdk elasticsearch

Usage

// create an elasticsearch client for your Amazon ES
let es = require('elasticsearch').Client({
 hosts: [ 'https://amazon-es-host.us-east-1.es.amazonaws.com' ],
 connectionClass: require('http-aws-es')
});

Region + Credentials

The connector uses aws-sdk's default behaviour to obtain region + credentials from your environment. If you would like to set these manually, you can set them on aws-sdk:

let AWS = require('aws-sdk');
AWS.config.update({
 credentials: new AWS.Credentials(accessKeyId, secretAccessKey),
 region: 'us-east-1'
});

Options

let options = {
 hosts: [], // array of amazon es hosts (required)
 connectionClass: require('http-aws-es'), // use this connector (required)
 awsConfig: new AWS.Config({ region }), // set an aws config e.g. for multiple clients to different regions
 httpOptions: {} // set httpOptions on aws-sdk's request. default to aws-sdk's config.httpOptions
};
let es = require('elasticsearch').Client(options);

Test

npm test
# test against a real endpoint
AWS_PROFILE=your-profile npm run integration-test -- --endpoint https://amazon-es-host.us-east-1.es.amazonaws.com --region us-east-1

AltStyle によって変換されたページ (->オリジナル) /