HM-57. Собираются два типа данные: серверные ошибки и пара запрос-ответ пользователю апи. Серверные ошибки расширены доп полями в том числе дата ошибки. Появилась возможность очищать логи
This commit is contained in:
@ -1,8 +1,8 @@
|
||||
import {Controller, Get, Header} from '@nestjs/common';
|
||||
import {ApiTags, ApiResponse} from '@nestjs/swagger';
|
||||
import {Controller, Get, Header, Req, NotFoundException, Delete, Options, HttpCode} from '@nestjs/common';
|
||||
import {ApiTags, ApiResponse, ApiParam} from '@nestjs/swagger';
|
||||
import {LogsService} from './logs.service';
|
||||
import {ALLOW_ORIGIN_ALL, COLLECTION_LOGS} from 'src/consts';
|
||||
import {Log, LogRequest} from './logs.schema';
|
||||
import {ALLOW_ORIGIN_ALL, COLLECTION_LOGS, LOG_TYPE, ALLOW_METHOD, ALLOW_CREDENTIALS, CONTENT_LENGTH, ALLOW_HEADERS} from 'src/consts';
|
||||
import {ClienLogRequest, ClientLog, ServerLog} from './logs.schema';
|
||||
|
||||
@Controller(COLLECTION_LOGS)
|
||||
@ApiTags(COLLECTION_LOGS)
|
||||
@ -11,15 +11,48 @@ export class LogsController {
|
||||
private readonly logsService: LogsService
|
||||
) {}
|
||||
|
||||
@Get()
|
||||
@Get('/client')
|
||||
@Header(...ALLOW_ORIGIN_ALL)
|
||||
@ApiResponse({
|
||||
status: 200,
|
||||
description: 'Возвращает список всех логов',
|
||||
type: [LogRequest],
|
||||
type: [ClienLogRequest]
|
||||
})
|
||||
async findAll(): Promise<Log[]> {
|
||||
const logsList = await this.logsService.findAll();
|
||||
return logsList;
|
||||
async findAllClientLogs(): Promise<ClientLog[]> {
|
||||
return await this.logsService.findAllClientLogs();
|
||||
}
|
||||
|
||||
@Delete('/client')
|
||||
@Header(...ALLOW_ORIGIN_ALL)
|
||||
async clearAllClientLogs(): Promise<[]> {
|
||||
return await this.logsService.clearLogsByType(LOG_TYPE.CLIENT);
|
||||
}
|
||||
|
||||
@Get('/server')
|
||||
@Header(...ALLOW_ORIGIN_ALL)
|
||||
@ApiResponse({
|
||||
status: 200,
|
||||
description: 'Возвращает список всех логов',
|
||||
type: [ClienLogRequest]
|
||||
})
|
||||
async findAllServerLogs(): Promise<ServerLog[]> {
|
||||
return await this.logsService.findAllServerLogs();
|
||||
}
|
||||
|
||||
@Delete('/server')
|
||||
@Header(...ALLOW_ORIGIN_ALL)
|
||||
async clearAllServerLogs(): Promise<[]> {
|
||||
return await this.logsService.clearLogsByType(LOG_TYPE.SERVER);
|
||||
}
|
||||
|
||||
@Options()
|
||||
@Header(...ALLOW_ORIGIN_ALL)
|
||||
@Header(...ALLOW_METHOD)
|
||||
@Header(...ALLOW_CREDENTIALS)
|
||||
@Header(...CONTENT_LENGTH)
|
||||
@Header(...ALLOW_HEADERS)
|
||||
@HttpCode(204)
|
||||
async options(): Promise<string> {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user