
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
eventsgateway-client-node
Advanced tools
Node client for eventsgateway server.
npm install eventsgateway-client-node
Compatible with node 6+
const EventsGatewayClient = require('eventsgateway-client-node')
// config containing grpc server address and kafka topic
const config = {
"producer": {
"async": true, // if you want to use the async or sync dispatch
"maxRetries": 3, // (async-only) how many times to retry a dispatch if it fails
"retryIntervalMs": 1000, // (async-only) first wait time before a retry, formula => 2^retryNumber * retryInterval
"batchSize": 10, // (async-only) maximum number of messages to send in a batch
"lingerIntervalMs": 500, // (async-only) // how long to wait before sending messages, in the hopes of filling the batch
"waitIntervalMs": 1000 // polling interval to check whether all events were sent before shutting down
},
"grpc": {
"serveraddress": "localhost:9999",
"timeout": 500
},
"kafkatopic": "default-topic" // default topic to send messages
}
// initialize the client
const eventsgatewayclient = new EventsGatewayClient(config)
// send event to configured topic
// calls should be wrapped in a try/catch
try {
// async client, no need to await
this.app.eventsGatewayClient.send('pingEvent', { some: 'value' })
// sync client, block if you want to handle errors
await this.app.eventsGatewayClient.send('pingEvent', { some: 'value' })
} catch (err) {
// no need to log here, eventsGateway already logs failures
}
// send event to custom topic
try {
// no need to `await` async send, if you're using sync client, use `await`
// as well, and handle failures
// async client, no need to await
this.app.eventsGatewayClient.sendToTopic('pingEvent', 'my-topic', { some: 'value' })
// sync client, block if you want to handle errors
await this.app.eventsGatewayClient.sendToTopic('pingEvent', 'my-topic', { some: 'value' })
} catch (err) {}
Response time, success and error counters are exposed in a koa app.
// Prometheus metrics endpoint
// available at localhost:$EVENTSGATEWAY_PROMETHEUS_PORT
// defaults to localhost:9090
eventsgatewayclient.metrics.prometheus.listen() // blocking!
FAQs
Node client for eventsgateway server.
The npm package eventsgateway-client-node receives a total of 489 weekly downloads. As such, eventsgateway-client-node popularity was classified as not popular.
We found that eventsgateway-client-node demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

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.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.