adds scriptlog endpoint

This commit is contained in:
Florent Vilmart
2016-03-01 18:19:37 -05:00
parent 9cc7bd064c
commit 8e034dd9b0

View File

@@ -5,7 +5,12 @@ import * as middleware from "../middlewares";
export class LogsRouter extends PromiseRouter {
mountRoutes() {
this.route('GET','/logs', middleware.promiseEnforceMasterKeyAccess, req => { return this.handleGET(req); });
this.route('GET','/logs', (req) => {
return this.handleGET(req);
});
this.route('GET','/scriptlog', (req) => {
return this.handleScriptLog(req);
});
}
// Returns a promise for a {response} object.
@@ -16,16 +21,11 @@ export class LogsRouter extends PromiseRouter {
// order (optional) Direction of results returned, either “asc” or “desc”. Defaults to “desc”.
// size (optional) Number of rows returned by search. Defaults to 10
handleGET(req) {
if (!req.config || !req.config.loggerController) {
throw new Parse.Error(Parse.Error.PUSH_MISCONFIGURED, 'Logger adapter is not available.');
}
let from = req.query.from;
let until = req.query.until;
let size = req.query.size;
let order = req.query.order
let level = req.query.level;
const from = req.query.from;
const until = req.query.until;
const size = req.query.size;
const order = req.query.order
const level = req.query.level;
const options = {
from,
until,
@@ -37,6 +37,28 @@ export class LogsRouter extends PromiseRouter {
return req.config.loggerController
.getLogs(options)
.then(result => ({ response: result }));
level,
}
return this.getLogs(req, options);
}
handleScriptLog(req) {
const size = req.query.n;
const level = req.query.level;
return this.getLogs(req, { size, level });
}
getLogs(req, options) {
if (!req.config || !req.config.loggerController) {
throw new Parse.Error(Parse.Error.PUSH_MISCONFIGURED,
'Logger adapter is not availabe');
}
enforceSecurity(req.auth);
return req.config.loggerController.getLogs(options).then((result) => {
return Promise.resolve({
response: result
});
})
}
}