Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
good-influx
Advanced tools
InfluxDB broadcasting for Good process monitor, based on good-http. It can write to HTTP or UDP Telegraf endpoints.
Good Influx
will format your Good data according to the InfluxDB Line Protocol.
good-influx
is a write stream used to send events to InfluxDB endpoints in batches. If your endpoint
is http://
or https://
, it makes a "POST" request with a plain-text payload to the supplied endpoint
. It will make a final "POST" request to the endpoint to flush the rest of the data on "finish".
If the supplied endpoint
is a udp://
endpoint then good-influx
will send the stats via UDP. This may improve application performance since UDP does not wait for a response. Though it does fail silently, so you run the risk that your stats are failing to record and you don't know about it.
const Hapi = require('hapi');
const server = new Hapi.Server();
server.connection();
const options = {
ops: {
interval: 1000
},
reporters: {
// Send only 'ops' events to InfluxDB
influx: [{
module: 'good-squeeze',
name: 'Squeeze',
args: [{ ops: '*' }]
}, {
module: 'good-influx',
args: ['http://localhost:8086/write?db=good', {
threshold: 10,
metadata: {
serviceName: 'SuperAwesomeService',
dataCenter: 'Banff'
}
}]
}]
}
};
server.register({
register: require('good'),
options: options
}, (err) => {
if (err) {
console.error(err);
} else {
server.start(() => {
console.info('Server started at ' + server.info.uri);
});
}
});
Creates a new GoodInflux object where:
endpoint
- full path to remote server's InfluxDB HTTP API end point to transmit InfluxDB statistics (e.g. http://localhost:8086/write?db=good
)config
- configuration object (Optional)
[threshold]
- number of events to hold before transmission. Defaults to 5
. Set to 0
to have every event start transmission instantly.
5
will be set to 5
. Why? Because if UDP packets get too big they fail to transmit.[errorThreshold]
- number of erroring message sends to tolerate before the plugin fails. Default is 0.[wreck]
- configuration object to pass into wreck
. Defaults to { timeout: 60000, headers: {} }
. content-type
is always "text/plain".[udpType]
- UDP type; defaults to udp4
. Probably not necessary to change, but more documentation is available on the NodeJS Dgram Documentation[metadata]
- arbitrary information you would like to add to your InfluxDB stats. This helps you query InfluxDB for the statistics you want.time | host | pid | error | id | method | url |
---|
time | host | pid | data | tags |
---|
Each Ops event from the Hapi Good plugin is separated out into 5 events for InfluxDB. Why? Because ops
events are multilayered, so we can't capture the full information in one event.
Standard tags: host,pid, metadata (optional)
event | numEvents | tags | fields |
---|---|---|---|
ops | 1 | Standard | os.cpu1m, os.cpu5m, os.cpu15m, os.freemem, os.totalmem, os.uptime, os.totalmem, proc.delay, proc.heapTotal, proc.heapUsed, proc.rss, proc.uptime |
ops_requests | 1 per port | Standard + port | requestsTotal, requestsDisconnects, requests200* -- one field for each status code |
ops_concurrents | 1 per port | Standard + port | concurrents |
ops_responseTimes | 1 per port | Standard + port | avg, max |
ops_sockets | 1 | Standard | httpTotal, httpsTotal |
time | host | pid | data | id | method | path | tags |
---|
time | host | pid | httpVersion | id | instance | labels | method | path | query |
---|
referer | remoteAddress | responseTime | statusCode | userAgent |
---|
FAQs
InfluxDB broadcasting for Good process monitor
The npm package good-influx receives a total of 1 weekly downloads. As such, good-influx popularity was classified as not popular.
We found that good-influx 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
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.