mirror of
https://github.com/Chocobozzz/PeerTube.git
synced 2025-10-04 10:19:35 +02:00
Server: add requests stats endpoint
This commit is contained in:
parent
2e92c10b6c
commit
d3cd34be2f
6 changed files with 199 additions and 7 deletions
|
@ -7,12 +7,14 @@ const router = express.Router()
|
|||
const clientsController = require('./clients')
|
||||
const podsController = require('./pods')
|
||||
const remoteController = require('./remote')
|
||||
const requestsController = require('./requests')
|
||||
const usersController = require('./users')
|
||||
const videosController = require('./videos')
|
||||
|
||||
router.use('/clients', clientsController)
|
||||
router.use('/pods', podsController)
|
||||
router.use('/remote', remoteController)
|
||||
router.use('/requests', requestsController)
|
||||
router.use('/users', usersController)
|
||||
router.use('/videos', videosController)
|
||||
router.use('/*', badRequest)
|
||||
|
|
38
server/controllers/api/v1/requests.js
Normal file
38
server/controllers/api/v1/requests.js
Normal file
|
@ -0,0 +1,38 @@
|
|||
'use strict'
|
||||
|
||||
const express = require('express')
|
||||
const mongoose = require('mongoose')
|
||||
|
||||
const constants = require('../../../initializers/constants')
|
||||
const middlewares = require('../../../middlewares')
|
||||
const admin = middlewares.admin
|
||||
const oAuth = middlewares.oauth
|
||||
|
||||
const Request = mongoose.model('Request')
|
||||
|
||||
const router = express.Router()
|
||||
|
||||
router.get('/stats',
|
||||
oAuth.authenticate,
|
||||
admin.ensureIsAdmin,
|
||||
getStatsRequests
|
||||
)
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
module.exports = router
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
function getStatsRequests (req, res, next) {
|
||||
Request.list(function (err, requests) {
|
||||
if (err) return next(err)
|
||||
|
||||
const remainingMilliSeconds = constants.REQUESTS_INTERVAL - (Date.now() % constants.REQUESTS_INTERVAL)
|
||||
|
||||
return res.json({
|
||||
requests: requests,
|
||||
remainingMilliSeconds: remainingMilliSeconds
|
||||
})
|
||||
})
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue