aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/controllers/api/v1/requests.js
diff options
context:
space:
mode:
authorChocobozzz <florian.bigard@gmail.com>2016-09-19 21:33:46 +0200
committerChocobozzz <florian.bigard@gmail.com>2016-09-19 21:33:46 +0200
commitd3cd34be2fd03ea79145dfa8eb16e82d2e23191b (patch)
tree8db702444c4b72cec9de25efb2da5df0aa51cfce /server/controllers/api/v1/requests.js
parent2e92c10b6cdb32e5170aab0b4c0ff3e4c27e30d5 (diff)
downloadPeerTube-d3cd34be2fd03ea79145dfa8eb16e82d2e23191b.tar.gz
PeerTube-d3cd34be2fd03ea79145dfa8eb16e82d2e23191b.tar.zst
PeerTube-d3cd34be2fd03ea79145dfa8eb16e82d2e23191b.zip
Server: add requests stats endpoint
Diffstat (limited to 'server/controllers/api/v1/requests.js')
-rw-r--r--server/controllers/api/v1/requests.js38
1 files changed, 38 insertions, 0 deletions
diff --git a/server/controllers/api/v1/requests.js b/server/controllers/api/v1/requests.js
new file mode 100644
index 000000000..6018bb40c
--- /dev/null
+++ b/server/controllers/api/v1/requests.js
@@ -0,0 +1,38 @@
1'use strict'
2
3const express = require('express')
4const mongoose = require('mongoose')
5
6const constants = require('../../../initializers/constants')
7const middlewares = require('../../../middlewares')
8const admin = middlewares.admin
9const oAuth = middlewares.oauth
10
11const Request = mongoose.model('Request')
12
13const router = express.Router()
14
15router.get('/stats',
16 oAuth.authenticate,
17 admin.ensureIsAdmin,
18 getStatsRequests
19)
20
21// ---------------------------------------------------------------------------
22
23module.exports = router
24
25// ---------------------------------------------------------------------------
26
27function getStatsRequests (req, res, next) {
28 Request.list(function (err, requests) {
29 if (err) return next(err)
30
31 const remainingMilliSeconds = constants.REQUESTS_INTERVAL - (Date.now() % constants.REQUESTS_INTERVAL)
32
33 return res.json({
34 requests: requests,
35 remainingMilliSeconds: remainingMilliSeconds
36 })
37 })
38}