1 import { ClientLogCreate, HttpStatusCode, ServerLogLevel } from '@shared/models'
2 import { AbstractCommand, OverrideCommandOptions } from '../shared'
4 export class LogsCommand extends AbstractCommand {
6 createLogClient (options: OverrideCommandOptions & { payload: ClientLogCreate }) {
7 const path = '/api/v1/server/logs/client'
9 return this.postBodyRequest({
13 fields: options.payload,
15 defaultExpectedStatus: HttpStatusCode.NO_CONTENT_204
19 getLogs (options: OverrideCommandOptions & {
22 level?: ServerLogLevel
25 const { startDate, endDate, tagsOneOf, level } = options
26 const path = '/api/v1/server/logs'
28 return this.getRequestBody<any[]>({
32 query: { startDate, endDate, level, tagsOneOf },
34 defaultExpectedStatus: HttpStatusCode.OK_200
38 getAuditLogs (options: OverrideCommandOptions & {
42 const { startDate, endDate } = options
44 const path = '/api/v1/server/audit-logs'
46 return this.getRequestBody({
50 query: { startDate, endDate },
52 defaultExpectedStatus: HttpStatusCode.OK_200