add _request_ event to print basic request information

This commit is contained in:
Roman Shtylman
2018-04-03 22:16:32 -07:00
parent db22a4efe0
commit 2372ec22cc
4 changed files with 22 additions and 17 deletions

View File

@@ -77,7 +77,6 @@ Tunnel.prototype._establish = function(info) {
info.local_host = opt.local_host;
info.local_port = opt.port;
info.debug_logs = opt.debug_logs;
var tunnels = self.tunnel_cluster = TunnelCluster(info);
@@ -124,6 +123,10 @@ Tunnel.prototype._establish = function(info) {
tunnels.open();
});
tunnels.on('request', function(info) {
self.emit('request', info);
});
// establish as many tunnels as allowed
for (var count = 0 ; count < info.max_conn ; ++count) {
tunnels.open();

View File

@@ -30,8 +30,6 @@ TunnelCluster.prototype.open = function() {
var local_host = opt.local_host || 'localhost';
var local_port = opt.local_port;
var debug_logs = opt.debug_logs;
debug('establishing tunnel %s:%s <> %s:%s', local_host, local_port, remote_host, remote_port);
// connection to localtunnel server
@@ -116,15 +114,12 @@ TunnelCluster.prototype.open = function() {
}
remote.on('data', function(data) {
if (debug_logs) {
var match = data.toString().match(/^(\w+) (\S+)/);
if (match) {
console.log(
new Date().toString(),
`method=${match[1]}`,
`path=${match[2]}`
);
}
const match = data.toString().match(/^(\w+) (\S+)/);
if (match) {
self.emit('request', {
method: match[1],
path: match[2],
});
}
});