add /api/tunnels/:id/status endpoint

Provides connected_sockets information for a tunnel.
This commit is contained in:
Roman Shtylman
2018-05-16 16:41:05 -04:00
parent 317db73bdc
commit cf070d4ce9
7 changed files with 89 additions and 11 deletions

View File

@@ -12,6 +12,10 @@ class Client {
this.debug = Debug('lt:Client');
}
stats() {
return this.agent.stats();
}
handleRequest(req, res) {
this.debug('> %s', req.url);
const opt = {

View File

@@ -39,6 +39,12 @@ class TunnelAgent extends Agent {
this.closed = false;
}
stats() {
return {
connectedSockets: this.connectedSockets,
};
}
listen() {
const server = this.server;
if (this.started) {

View File

@@ -173,4 +173,11 @@ describe('TunnelAgent', () => {
});
assert.equal(err.message, 'foo');
});
it('should return stats', async () => {
const agent = new TunnelAgent();
assert.deepEqual(agent.stats(), {
connectedSockets: 0,
});
});
});