Neanderthal Pudding Mix

    http-aws-es
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/http-aws-es package

    6.0.0 • Public • Published

    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

    Install

    npm i http-aws-es

    DownloadsWeekly Downloads

    56,100

    Version

    6.0.0

    License

    MIT

    Unpacked Size

    16.3 kB

    Total Files

    16

    Last publish

    Collaborators

    • thedeveloper