mirror of
https://github.com/bitinflow/localtunnel.git
synced 2026-03-13 13:35:54 +00:00
Add basic request logging functionality (#178)
This commit is contained in:
committed by
Roman Shtylman
parent
14cac6f6c8
commit
32fd1fdcbd
@@ -70,13 +70,14 @@ Tunnel.prototype._init = function(cb) {
|
||||
Tunnel.prototype._establish = function(info) {
|
||||
var self = this;
|
||||
var opt = self._opt;
|
||||
|
||||
|
||||
// increase max event listeners so that localtunnel consumers don't get
|
||||
// warning messages as soon as they setup even one listener. See #71
|
||||
self.setMaxListeners(info.max_conn + (EventEmitter.defaultMaxListeners || 10));
|
||||
|
||||
info.local_host = opt.local_host;
|
||||
info.local_port = opt.port;
|
||||
info.debug_logs = opt.debug_logs;
|
||||
|
||||
var tunnels = self.tunnel_cluster = TunnelCluster(info);
|
||||
|
||||
|
||||
@@ -30,6 +30,8 @@ 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
|
||||
@@ -113,6 +115,19 @@ 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]}`
|
||||
);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// tunnel is considered open when remote connects
|
||||
remote.once('connect', function() {
|
||||
self.emit('open', remote);
|
||||
|
||||
Reference in New Issue
Block a user