Skip to content

Commit 61b173c

Browse files
committed
Include connection ID in debug output
1 parent 24d0a25 commit 61b173c

File tree

6 files changed

+95
-13
lines changed

6 files changed

+95
-13
lines changed

Changes.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ you spot any mistakes.
66

77
## HEAD
88

9+
* Include connection ID in debug output
910
* Update `bignumber.js` to 4.1.0
1011
* Update `readable-stream` to 2.3.4
1112

lib/protocol/Protocol.js

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -437,11 +437,16 @@ Protocol.prototype.destroy = function() {
437437
};
438438

439439
Protocol.prototype._debugPacket = function(incoming, packet) {
440-
var headline = (incoming)
440+
var connection = this._connection;
441+
var headline = incoming
441442
? '<-- '
442443
: '--> ';
443444

444-
headline = headline + packet.constructor.name;
445+
if (connection && connection.threadId !== null) {
446+
headline += '(' + connection.threadId + ') ';
447+
}
448+
449+
headline += packet.constructor.name;
445450

446451
// check for debug packet restriction
447452
if (Array.isArray(this._config.debug) && this._config.debug.indexOf(packet.constructor.name) === -1) {

test/unit/connection/test-debug-exclude.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ var connection = common.createConnection({
55
port : common.fakeServerPort
66
});
77

8+
var tid = 0;
89
var server = common.createFakeServer();
910

1011
server.listen(common.fakeServerPort, function (err) {
@@ -22,12 +23,16 @@ server.listen(common.fakeServerPort, function (err) {
2223
assert.ifError(err);
2324
assert.equal(messages.length, 3);
2425
assert.deepEqual(messages, [
25-
'<-- OkPacket',
26-
'--> ComPingPacket',
27-
'<-- OkPacket'
26+
'<-- (1) OkPacket',
27+
'--> (1) ComPingPacket',
28+
'<-- (1) OkPacket'
2829
]);
2930

3031
connection.destroy();
3132
server.destroy();
3233
});
3334
});
35+
36+
server.on('connection', function (conn) {
37+
conn.handshake({ threadId: ++tid });
38+
});

test/unit/connection/test-debug-parser-error.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ var assert = require('assert');
22
var common = require('../../common');
33
var connection = common.createConnection({debug: true, port: common.fakeServerPort});
44

5+
var tid = 0;
56
var server = common.createFakeServer();
67

78
server.listen(common.fakeServerPort, function (err) {
@@ -21,10 +22,10 @@ server.listen(common.fakeServerPort, function (err) {
2122
assert.deepEqual(messages, [
2223
'<-- HandshakeInitializationPacket',
2324
'--> ClientAuthenticationPacket',
24-
'<-- OkPacket',
25-
'--> ComQueryPacket',
26-
'<-- ResultSetHeaderPacket',
27-
'<-- FieldPacket'
25+
'<-- (1) OkPacket',
26+
'--> (1) ComQueryPacket',
27+
'<-- (1) ResultSetHeaderPacket',
28+
'<-- (1) FieldPacket'
2829
]);
2930

3031
connection.destroy();
@@ -33,7 +34,7 @@ server.listen(common.fakeServerPort, function (err) {
3334
});
3435

3536
server.on('connection', function(conn) {
36-
conn.handshake();
37+
conn.handshake({ threadId: ++tid });
3738
conn.on('query', function(packet) {
3839
switch (packet.sql) {
3940
case 'SELECT value FROM stuff':

test/unit/connection/test-debug.js

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ var assert = require('assert');
22
var common = require('../../common');
33
var connection = common.createConnection({debug: true, port: common.fakeServerPort});
44

5+
var tid = 0;
56
var server = common.createFakeServer();
67

78
server.listen(common.fakeServerPort, function (err) {
@@ -21,12 +22,16 @@ server.listen(common.fakeServerPort, function (err) {
2122
assert.deepEqual(messages, [
2223
'<-- HandshakeInitializationPacket',
2324
'--> ClientAuthenticationPacket',
24-
'<-- OkPacket',
25-
'--> ComPingPacket',
26-
'<-- OkPacket'
25+
'<-- (1) OkPacket',
26+
'--> (1) ComPingPacket',
27+
'<-- (1) OkPacket'
2728
]);
2829

2930
connection.destroy();
3031
server.destroy();
3132
});
3233
});
34+
35+
server.on('connection', function (conn) {
36+
conn.handshake({ threadId: ++tid });
37+
});

test/unit/pool/test-debug.js

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
var assert = require('assert');
2+
var common = require('../../common');
3+
var pool = common.createPool({debug: true, port: common.fakeServerPort});
4+
5+
var tid = 0;
6+
var server = common.createFakeServer();
7+
8+
server.listen(common.fakeServerPort, function (err) {
9+
assert.ifError(err);
10+
11+
var messages = [];
12+
13+
console.log = function (str) {
14+
if (typeof str === 'string' && str.length !== 0) {
15+
messages.push(str);
16+
}
17+
};
18+
19+
pool.getConnection(function (err, conn1) {
20+
assert.ifError(err);
21+
conn1.query('SELECT 1', function (err) {
22+
assert.ifError(err);
23+
pool.getConnection(function (err, conn2) {
24+
assert.ifError(err);
25+
conn2.query('SELECT 1', function (err) {
26+
assert.ifError(err);
27+
conn1.release();
28+
conn2.release();
29+
pool.end(function (err) {
30+
assert.ifError(err);
31+
assert.equal(messages.length, 20);
32+
assert.deepEqual(messages, [
33+
'<-- HandshakeInitializationPacket',
34+
'--> ClientAuthenticationPacket',
35+
'<-- (1) OkPacket',
36+
'--> (1) ComQueryPacket',
37+
'<-- (1) ResultSetHeaderPacket',
38+
'<-- (1) FieldPacket',
39+
'<-- (1) EofPacket',
40+
'<-- (1) RowDataPacket',
41+
'<-- (1) EofPacket',
42+
'<-- HandshakeInitializationPacket',
43+
'--> ClientAuthenticationPacket',
44+
'<-- (2) OkPacket',
45+
'--> (2) ComQueryPacket',
46+
'<-- (2) ResultSetHeaderPacket',
47+
'<-- (2) FieldPacket',
48+
'<-- (2) EofPacket',
49+
'<-- (2) RowDataPacket',
50+
'<-- (2) EofPacket',
51+
'--> (1) ComQuitPacket',
52+
'--> (2) ComQuitPacket'
53+
]);
54+
55+
server.destroy();
56+
});
57+
});
58+
});
59+
});
60+
});
61+
});
62+
63+
server.on('connection', function (conn) {
64+
conn.handshake({ threadId: ++tid });
65+
});

0 commit comments

Comments
 (0)