]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - shared/extra-utils/logs/logs-command.ts
Move typescript utils in its own directory
[github/Chocobozzz/PeerTube.git] / shared / extra-utils / logs / logs-command.ts
1 import { HttpStatusCode } from '@shared/models'
2 import { LogLevel } from '../../models/server/log-level.type'
3 import { AbstractCommand, OverrideCommandOptions } from '../shared'
4
5 export class LogsCommand extends AbstractCommand {
6
7 getLogs (options: OverrideCommandOptions & {
8 startDate: Date
9 endDate?: Date
10 level?: LogLevel
11 tagsOneOf?: string[]
12 }) {
13 const { startDate, endDate, tagsOneOf, level } = options
14 const path = '/api/v1/server/logs'
15
16 return this.getRequestBody<any[]>({
17 ...options,
18
19 path,
20 query: { startDate, endDate, level, tagsOneOf },
21 implicitToken: true,
22 defaultExpectedStatus: HttpStatusCode.OK_200
23 })
24 }
25
26 getAuditLogs (options: OverrideCommandOptions & {
27 startDate: Date
28 endDate?: Date
29 }) {
30 const { startDate, endDate } = options
31
32 const path = '/api/v1/server/audit-logs'
33
34 return this.getRequestBody({
35 ...options,
36
37 path,
38 query: { startDate, endDate },
39 implicitToken: true,
40 defaultExpectedStatus: HttpStatusCode.OK_200
41 })
42 }
43
44 }