1.1.6 • Published 6 years ago

@foko/http-aws-es v1.1.6

Weekly downloads
-
License
MIT
Repository
github
Last release
6 years ago

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. Define the Amazon ES config and the connection handler in the client configuration:

var es = require('elasticsearch').Client({
  hosts: 'https://amazon-es-host.us-east-1.es.amazonaws.com',
  connectionClass: require('http-aws-es'),
  amazonES: {
    region: 'us-east-1',
    accessKey: 'AKID',
    secretKey: 'secret'
  }
});

Pre-configured credentials can be fetched automatically (through AWS's getCredentials function) by specifying getCredentials: true in the amazonES object in place of accessKey and secretKey.

Alternatively you can pass in your own AWS Credentials object. This is particularly useful if running on AWS Lambda, since the appropriate credentials are already in the environment.

var myCredentials = new AWS.EnvironmentCredentials('AWS'); // Lambda provided credentials
var es = require('elasticsearch').Client({
  hosts: 'https://amazon-es-host.us-east-1.es.amazonaws.com',
  connectionClass: require('http-aws-es'),
  amazonES: {
    region: "us-east-1",
    credentials: myCredentials
  }
});