Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

keymetrics-agent

Package Overview
Dependencies
Maintainers
3
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

keymetrics-agent

Keymetrics Agent Daemon

  • 0.4.0
  • latest
  • npm
  • Socket score

Version published
Maintainers
3
Created
Source

Keymetrics agent

This module is used in PM2 to communicate with Keymetrics's servers.

Transporters

Two transporters are available now, AxonTransporter and WebsocketTransporter.

AxonTransporter is using axon pub-emitter to send data (PushInteractor) to interaction server and nssocket to receive data from reverse interaction server.

WebsocketTransporter is using websocket to send and receive data from websocket server.

Launch

Using daemon

To launch using daemon you need to run :

node src/InteractorDaemon.js

Before, you need to set this environements' vars

KeyValue
KEYMETRICS_NODEWhere bucket's endpoints will be resolved
PM2_SECRET_KEYBucket's secret key
PM2_PUBLIC_KEYBucket's public key
PM2_MACHINE_NAMEMachine name
PM2_VERSIONPM2 Version

Using client

You can use src/InteractorClient.js and method launchAndInteract with constants as first argument (empty object is authorized), options as second argument which is an object with key secret_key, public_key, machine_name and callback as third argument.

const InteractorClient = require('keymetrics-agent/src/InteractorClient')

InteractorClient.launchAndInteract({}, {
  secret_key: '',
  public_key: '',
  machine_name: ''
}, (err, msg) => {
})

Configuration

To configure this agent you can use config.json.

Default

By default AxonTransporter is enabled and using push and reverse bucket's endpoint. You can override this endpoints with AGENT_PUSH_ENDPOINT and AGENT_REVERSE_ENDPOINT environements' vars

By default WebsocketTransporter is disabled, you can enabled it with AGENT_TRANSPORT_WEBSOCKET environement's var, it's using websocket bucket's endpoint but you can override it with AGENT_WEBSOCKET_ENDPOINT environement's var.

Transporters

Into this configuration you can put transporter name as key and for values, two keys are available enabled and endpoints.

The enabled key is using to disable or enable transporter.

The endpoints key can be a string or an object. It depends on what the connect method of the transporter needs. If you set a string, the connect method will be called with endpoint's value or raw value if no endpoint is matched. For objects, the connect method will be called with this object, and value of the keys will be replaced by endpoint's value or raw value if no endpoint is matched.

Release

To release a new version, first install gren :

yarn global add github-release-notes

Push a commit in github with the new version you want to release :

git commit -am "version: major|minor|patch bump to X.X.X"

Care for the versionning, we use the semver versioning currently. Please be careful about the version when pushing a new package.

Then tag a version with git :

git tag -s vX.X.X

Push the tag into github (this will trigger the publish to npm) :

git push origin vX.X.X

To finish update the changelog of the release on github with gren (be sure that gren has selected the right tags):

gren release -o -D commits

Keywords

FAQs

Package last updated on 30 Apr 2018

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc