/usr/local/lib/node_modules/pm2/node_modules/@pm2/agent
NameSizeModeActions
node_modules/-0755rm
src/-0755rm
.mocharc.yml2440644editdlrm
bun.lockb483520755editdlrm
config.js7020644editdlrm
constants.js31430644editdlrm
index.js550644editdlrm
LICENSE345220644editdlrm
package.json8710644editdlrm
README.md24970644editdlrm
Edit: /usr/local/lib/node_modules/pm2/node_modules/@pm2/agent/README.md (2497B)
# pm2-io-agent This module is used by [PM2](https://github.com/Unitech/pm2) to communicate with [PM2.io](https://pm2.io/plus)'s servers. ## Transporters WebsocketTransporter is using [websocket](https://github.com/websockets/ws) 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 these environment vars | Key | Value | |------------------|-------------------------------------------| | KEYMETRICS_NODE | Where bucket's endpoints will be resolved | | PM2_SECRET_KEY | Bucket's secret key | | PM2_PUBLIC_KEY | Bucket's public key | | PM2_MACHINE_NAME | Machine name | | PM2_VERSION | PM2 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. ```js 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.