Просмотр исходного кода

added gauge metrics for number of open socket.io http and https
connections

Henry Oswald 12 лет назад
Родитель
Сommit
9a81f85b41
1 измененных файлов с 13 добавлено и 0 удалено
  1. 13 0
      services/web/app/coffee/Features/ServerAdmin/AdminController.coffee

+ 13 - 0
services/web/app/coffee/Features/ServerAdmin/AdminController.coffee

@@ -1,3 +1,4 @@
+metrics = require("metrics-sharelatex")
 logger = require('logger-sharelatex')
 _ = require('underscore')
 User = require('../../models/User').User
@@ -15,6 +16,18 @@ projectEntityHandler = require('../Project/ProjectEntityHandler')
 TpdsPollingBackgroundTasks = require("../ThirdPartyDataStore/TpdsPollingBackgroundTasks")
 EditorRealTimeController = require("../Editor/EditorRealTimeController")
 
+oneMinInMs = 60 * 1000
+
+updateOpenConnetionsMetrics = ()->
+	metrics.gauge "open_connections.socketio", require("../../infrastructure/Server").io?.sockets?.clients()?.length
+	metrics.gauge "open_connections.http", _.size(require('http').globalAgent?.sockets)
+	metrics.gauge "open_connections.https", _.size(require('https').globalAgent?.sockets)
+	setTimeout updateOpenConnetionsMetrics, oneMinInMs
+
+setTimeout updateOpenConnetionsMetrics, oneMinInMs
+
+
+
 module.exports = AdminController =
 
 	index : (req, res)=>