server.js 855 B

1234567891011121314151617181920212223242526
  1. import metrics from '@overleaf/metrics'
  2. import Settings from '@overleaf/settings'
  3. import logger from '@overleaf/logger'
  4. import express from 'express'
  5. import bodyParser from 'body-parser'
  6. import * as SpellingAPIController from './SpellingAPIController.js'
  7. import * as HealthCheckController from './HealthCheckController.js'
  8. metrics.initialize('spelling')
  9. logger.initialize('spelling')
  10. if (Settings.sentry?.dsn != null) {
  11. logger.initializeErrorReporting(Settings.sentry.dsn)
  12. }
  13. metrics.memory.monitor(logger)
  14. export const app = express()
  15. metrics.injectMetricsRoute(app)
  16. app.use(bodyParser.json({ limit: '2mb' }))
  17. app.use(metrics.http.monitor(logger))
  18. app.post('/user/:user_id/check', SpellingAPIController.check)
  19. app.get('/status', (req, res) => res.send({ status: 'spelling api is up' }))
  20. app.get('/health_check', HealthCheckController.healthCheck)