diff --git a/loop/middlewares.js b/loop/middlewares.js index f98694c..cd7511e 100644 --- a/loop/middlewares.js +++ b/loop/middlewares.js @@ -84,6 +84,10 @@ function logMetrics(req, res, next) { action: action }; + if (req.headers.hasOwnProperty("x-loop-addon-ver")) { + line.loopAddonVersion = req.headers["x-loop-addon-ver"]; + } + if (req.hasOwnProperty("callUrlData")) { line.calleeId = req.callUrlData.userMac; line.callerId = req.user; diff --git a/test/middlewares_test.js b/test/middlewares_test.js index 060c3ec..ee81859 100644 --- a/test/middlewares_test.js +++ b/test/middlewares_test.js @@ -106,6 +106,24 @@ describe("metrics middleware", function() { }); }); + it("should log the add-on version to heka", function(done) { + supertest(app) + .get(apiPrefix + '/with-metrics-middleware') + .set("x-loop-addon-ver", "1.3") + .send({'action': 'join'}) + .expect(200) + .end(function(err) { + if (err) throw err; + var logged = logs[0]; + + expect(logged.op).to.eql('request.summary'); + expect(logged.code).to.eql(200); + expect(logged.path).to.eql('/with-metrics-middleware'); + expect(logged.loopAddonVersion).to.eql("1.3"); + done(); + }); + }); + it("should log room status details", function (done) { supertest(app) .get(apiPrefix + '/with-metrics-middleware')