diff --git a/services/docstore/app.coffee b/services/docstore/app.coffee index e41593cd4c..f81b4f3ea8 100644 --- a/services/docstore/app.coffee +++ b/services/docstore/app.coffee @@ -9,7 +9,6 @@ Path = require "path" Metrics.initialize("docstore") logger.initialize("docstore") -Metrics.mongodb.monitor(Path.resolve(__dirname + "/node_modules/mongojs/node_modules/mongodb"), logger) Metrics.event_loop?.monitor(logger) app = express() diff --git a/services/docstore/app/coffee/MongoManager.coffee b/services/docstore/app/coffee/MongoManager.coffee index fe6f06e8cb..a39c8fb4d9 100644 --- a/services/docstore/app/coffee/MongoManager.coffee +++ b/services/docstore/app/coffee/MongoManager.coffee @@ -1,4 +1,6 @@ {db, ObjectId} = require "./mongojs" +logger = require 'logger-sharelatex' +metrics = require 'metrics-sharelatex' module.exports = MongoManager = @@ -67,4 +69,41 @@ module.exports = MongoManager = $set: version: version }, { upsert: true - }, callback \ No newline at end of file + }, callback + + +metrics.timeAsyncMethod( + MongoManager, 'findDoc', + 'MongoManager.findDoc', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'getProjectsDocs', + 'MongoManager.getProjectsDocs', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'getArchivedProjectDocs', + 'MongoManager.getArchivedProjectDocs', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'upsertIntoDocCollection', + 'MongoManager.upsertIntoDocCollection', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'markDocAsArchived', + 'MongoManager.markDocAsArchived', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'getDocVersion', + 'MongoManager.getDocVersion', + logger +) +metrics.timeAsyncMethod( + MongoManager, 'setDocVersion', + 'MongoManager.setDocVersion', + logger +) diff --git a/services/docstore/test/unit/coffee/MongoManagerTests.coffee b/services/docstore/test/unit/coffee/MongoManagerTests.coffee index b65de2cde9..29ca1e958b 100644 --- a/services/docstore/test/unit/coffee/MongoManagerTests.coffee +++ b/services/docstore/test/unit/coffee/MongoManagerTests.coffee @@ -11,6 +11,7 @@ describe "MongoManager", -> "./mongojs": db: @db = { docs: {}, docOps: {} } ObjectId: ObjectId + 'metrics-sharelatex': {timeAsyncMethod: sinon.stub()} @project_id = ObjectId().toString() @doc_id = ObjectId().toString() @callback = sinon.stub() @@ -151,4 +152,4 @@ describe "MongoManager", -> .should.equal true it "should call the callback", -> - @callback.called.should.equal true \ No newline at end of file + @callback.called.should.equal true