Socket
Book a DemoInstallSign in
Socket

@trigo/atrix-elasticsearch

Package Overview
Dependencies
Maintainers
3
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@trigo/atrix-elasticsearch

Elasticsearch intigration into atrix microservice framework

Source
npmnpm
Version
0.4.3
Version published
Weekly downloads
0
Maintainers
3
Weekly downloads
 
Created
Source

Greenkeeper badge NSP Status

atrix-elasticsearch

Elasticsearch plugin for the atrix miscroservice framework

Features

  • Connection setup
  • connect to multiple nodes

Installation

# install atrix
npm install -S @trigo/atrix

# install elasticsearch plugin
npm install -S @trigo/atrix-elasticsearch

# No need to install elasticsearch itself!

Configuraton & Usage

handlers/GET.js

module.exports = async (req, reply, service) => {
    // access elasticseracg for connection "m1"
    const cient = service.dataConnections.m1.client;
		
		// fetch info from cluster complete 
		// client API docs: https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/index.html
		const info = await client.info(); 
		
		// send to callee
		reply(info);
}
		

index.js

'use strict';

const atrix = require('@trigo/atrix');
const path = require('path');

const svc = new atrix.Service('mongoose', {
    endpoints: {
        http: {
            // declare port to bind
      port: 3007,

      // the directory containing the handler files
      handlerDir: `${__dirname}/handlers`,
    },
  },
    // declare a dataSource config section
    dataSource: {
        // name of the data source
        m1: {
            // type of data connection
            type: 'elasticsearch',
            // connection configuration
            config: 
                // database connection string, sommaseperated to connnect several nodes
                connectionString: 'http://es-01:9200,http://es-02:9200',
            },
        },
        m2: {
            type: 'mongoose',
            config: {
                modelFactory: path.join(__dirname, './models/factory'),
                connectionString: 'localhost:27017/test-atrix-mongoose-m2',
            },
        },
    },
});

// register service in atrix
atrix.addService(svc);

// setup http endpoint
svc.endpoints.add('http');

// start service. 
// This will wait for the elasticsearch connection to be available waits for cluster state 'yellow' before starting up. 
svc.start();

FAQs

Package last updated on 25 Oct 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts