Эх сурвалжийг харах

Merge pull request #13214 from overleaf/bg-add-socket-leak-detection-to-all-services

add socket leak detection to all services

GitOrigin-RevId: 9481222258b796ca8c3b50cdd7ce60c05f0f9f61
Eric Mc Sween 3 жил өмнө
parent
commit
c625fef364

+ 2 - 0
services/chat/app/js/server.js

@@ -13,6 +13,8 @@ metrics.initialize('chat')
 logger.initialize('chat')
 logger.initialize('chat')
 metrics.open_sockets.monitor()
 metrics.open_sockets.monitor()
 
 
+metrics.leaked_sockets.monitor(logger)
+
 export async function createServer() {
 export async function createServer() {
   const app = express()
   const app = express()
 
 

+ 1 - 0
services/clsi/app.js

@@ -18,6 +18,7 @@ const Path = require('path')
 
 
 Metrics.open_sockets.monitor(true)
 Metrics.open_sockets.monitor(true)
 Metrics.memory.monitor(logger)
 Metrics.memory.monitor(logger)
+Metrics.leaked_sockets.monitor(logger)
 
 
 const ProjectPersistenceManager = require('./app/js/ProjectPersistenceManager')
 const ProjectPersistenceManager = require('./app/js/ProjectPersistenceManager')
 const OutputCacheManager = require('./app/js/OutputCacheManager')
 const OutputCacheManager = require('./app/js/OutputCacheManager')

+ 1 - 0
services/docstore/app.js

@@ -23,6 +23,7 @@ logger.initialize('docstore')
 if (Metrics.event_loop != null) {
 if (Metrics.event_loop != null) {
   Metrics.event_loop.monitor(logger)
   Metrics.event_loop.monitor(logger)
 }
 }
+Metrics.leaked_sockets.monitor(logger)
 Metrics.open_sockets.monitor()
 Metrics.open_sockets.monitor()
 
 
 const app = express()
 const app = express()

+ 1 - 0
services/filestore/app.js

@@ -27,6 +27,7 @@ Metrics.memory.monitor(logger)
 if (Metrics.event_loop) {
 if (Metrics.event_loop) {
   Metrics.event_loop.monitor(logger)
   Metrics.event_loop.monitor(logger)
 }
 }
+Metrics.leaked_sockets.monitor(logger)
 
 
 app.use(function (req, res, next) {
 app.use(function (req, res, next) {
   Metrics.inc('http-request')
   Metrics.inc('http-request')

+ 1 - 0
services/history-v1/app.js

@@ -29,6 +29,7 @@ logger.initialize('history-v1')
 Metrics.open_sockets.monitor()
 Metrics.open_sockets.monitor()
 Metrics.injectMetricsRoute(app)
 Metrics.injectMetricsRoute(app)
 app.use(Metrics.http.monitor(logger))
 app.use(Metrics.http.monitor(logger))
+Metrics.leaked_sockets.monitor(logger)
 
 
 // We may have fairly large JSON bodies when receiving large Changes. Clients
 // We may have fairly large JSON bodies when receiving large Changes. Clients
 // may have to handle 413 status codes and try creating files instead of sending
 // may have to handle 413 status codes and try creating files instead of sending

+ 1 - 0
services/project-history/app/js/server.js

@@ -16,6 +16,7 @@ if (Settings.sentry.dsn) {
 Metrics.initialize('project-history')
 Metrics.initialize('project-history')
 Metrics.event_loop.monitor(logger)
 Metrics.event_loop.monitor(logger)
 Metrics.memory.monitor(logger)
 Metrics.memory.monitor(logger)
+Metrics.leaked_sockets.monitor(logger)
 Metrics.open_sockets.monitor()
 Metrics.open_sockets.monitor()
 
 
 // log updates as truncated strings
 // log updates as truncated strings

+ 1 - 0
services/real-time/app.js

@@ -6,6 +6,7 @@ const async = require('async')
 const logger = require('@overleaf/logger')
 const logger = require('@overleaf/logger')
 logger.initialize('real-time')
 logger.initialize('real-time')
 Metrics.event_loop.monitor(logger)
 Metrics.event_loop.monitor(logger)
+Metrics.leaked_sockets.monitor(logger)
 Metrics.open_sockets.monitor()
 Metrics.open_sockets.monitor()
 
 
 const express = require('express')
 const express = require('express')

+ 1 - 0
services/spelling/app/js/server.js

@@ -12,6 +12,7 @@ if (Settings.sentry?.dsn != null) {
   logger.initializeErrorReporting(Settings.sentry.dsn)
   logger.initializeErrorReporting(Settings.sentry.dsn)
 }
 }
 metrics.memory.monitor(logger)
 metrics.memory.monitor(logger)
+metrics.leaked_sockets.monitor(logger)
 metrics.open_sockets.monitor()
 metrics.open_sockets.monitor()
 
 
 export const app = express()
 export const app = express()

+ 1 - 0
services/web/app.js

@@ -34,6 +34,7 @@ http.globalAgent.maxSockets = Settings.limits.httpGlobalAgentMaxSockets
 https.globalAgent.maxSockets = Settings.limits.httpsGlobalAgentMaxSockets
 https.globalAgent.maxSockets = Settings.limits.httpsGlobalAgentMaxSockets
 
 
 metrics.memory.monitor(logger)
 metrics.memory.monitor(logger)
+metrics.leaked_sockets.monitor(logger)
 metrics.open_sockets.monitor()
 metrics.open_sockets.monitor()
 
 
 const Server = require('./app/src/infrastructure/Server')
 const Server = require('./app/src/infrastructure/Server')