https://github.com/statsd/statsd
Revision dd99864886415d2191daf2f2e50e0d6a5c124e34 authored by Elliot Blackburn on 11 July 2019, 12:14:57 UTC, committed by Elliot Blackburn on 11 July 2019, 12:14:57 UTC
1 parent a2b9265
Tip revision: dd99864886415d2191daf2f2e50e0d6a5c124e34 authored by Elliot Blackburn on 11 July 2019, 12:14:57 UTC
update package.json version 0.8.4
update package.json version 0.8.4
Tip revision: dd99864
tcp.js
const net = require('net');
const fs = require('fs');
function rinfo(tcpstream, data) {
this.address = tcpstream.remoteAddress;
this.port = tcpstream.remotePort;
this.family = tcpstream.address() ? tcpstream.address().family : 'IPv4';
this.size = data.length;
}
exports.start = function(config, callback) {
const server = net.createServer(function(stream) {
stream.setEncoding('ascii');
let buffer = '';
stream.on('data', function(data) {
buffer += data;
const offset = buffer.lastIndexOf("\n");
if (offset > -1) {
const packet = buffer.slice(0, offset + 1);
buffer = buffer.slice(offset + 1);
callback(packet, new rinfo(stream, packet));
}
});
});
server.on('listening', function() {
config.socket && config.socket_mod && fs.chmod(config.socket, config.socket_mod);
});
process.on('exit', function() {
config.socket && fs.unlinkSync(config.socket);
});
server.listen(config.socket || config.port || 8125, config.address || undefined);
this.server = server;
return true;
};
Computing file changes ...