client-perfmon-node
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

PerfMon Microservice Client SDK for Node.js / ES2017

This is a Node.js client SDK for service-perfmon microservice. It provides an easy to use abstraction over communication protocols:

  • HTTP/REST client
  • Seneca client (see http://www.senecajs.org)
  • Direct client for monolythic deployments
  • Null client to be used in testing

This client SDK also contains Direct, REST and Seneca loggers that allow to directly log into the microservice.

Quick Links:

Install

Add dependency to the client SDK into package.json file of your project

{
    ...
    "dependencies": {
        ....
        "client-perfmon-node": "^1.0.*",
        ...
    }
}

Then install the dependency using npm tool

# Install new dependencies
npm install

# Update already installed dependencies
npm update

Use

Inside your code get the reference to the client SDK

var sdk = new require('client-perfmon-node');

Define client configuration parameters that match configuration of the microservice external API

// Client configuration
var config = {
    connection: {
        protocol: 'http',
        host: 'localhost', 
        port: 8080
    }
};

Instantiate the client and open connection to the microservice

// Create the client instance
var client = sdk.PerfMonHttpClientV1(config);

// Connect to the microservice
try {
    await client.open(null);
    // Work with the microservice
    ...
} catch(err) {
    console.error('Connection to the microservice failed');
    console.error(err);
}

Now the client is ready to perform operations

// Write counter
let event = await client.writeCounter(
    null,
    { 
        type: 'restart',
        source: 'server 1',
        counter: 'Server restarted'
    }
);
var now = new Date();

// Get counters
let page = await client.readCounters(
    null,
    {
        from: new Date(now.getTime() - 24 * 3600 * 1000),
        to: now,
        source: 'server 1'
    },
    {
        total: true,
        skip: 0, 
        take: 100
    }
);

Acknowledgements

This client SDK was created and currently maintained by Sergey Seroukhov.

Package Sidebar

Install

npm i client-perfmon-node

Weekly Downloads

0

Version

1.1.0

License

MIT

Unpacked Size

122 kB

Total Files

107

Last publish

Collaborators

  • pipdeveloper