forked from ddrilling/AsbCloudServer
60 lines
1.8 KiB
C#
60 lines
1.8 KiB
C#
using AsbCloudApp.Data;
|
||
using System;
|
||
using System.Collections.Generic;
|
||
|
||
namespace AsbCloudApp.Services;
|
||
|
||
/// <summary>
|
||
/// Отслеживание и сбор статистики по запросам
|
||
/// </summary>
|
||
public interface IRequerstTrackerService
|
||
{
|
||
/// <summary>
|
||
/// Регистрирует новый запрос
|
||
/// </summary>
|
||
/// <param name="requestLog"></param>
|
||
void RegisterRequest(RequestLogDto requestLog);
|
||
|
||
/// <summary>
|
||
/// Регистрирует новый запрос, вызвавший ошибку на сервере
|
||
/// </summary>
|
||
/// <param name="requestLog"></param>
|
||
/// <param name="ex"></param>
|
||
void RegisterRequestError(RequestLogDto requestLog, Exception ex);
|
||
|
||
/// <summary>
|
||
/// все зарегистрированные запросы
|
||
/// </summary>
|
||
/// <param name="take"></param>
|
||
/// <returns></returns>
|
||
IEnumerable<RequestLogDto> GetAll(int? take);
|
||
|
||
/// <summary>
|
||
/// запросы которые выполнялись быстро
|
||
/// </summary>
|
||
/// <param name="take"></param>
|
||
/// <returns></returns>
|
||
IEnumerable<RequestLogDto> GetFast(int? take);
|
||
|
||
/// <summary>
|
||
/// запросы, которые выполнялись медленно
|
||
/// </summary>
|
||
/// <param name="take"></param>
|
||
/// <returns></returns>
|
||
IEnumerable<RequestLogDto> GetSlow(int? take);
|
||
|
||
/// <summary>
|
||
/// запросы, которые завершились ошибкой
|
||
/// </summary>
|
||
/// <param name="take"></param>
|
||
/// <returns></returns>
|
||
IEnumerable<RequestLogDto> GetError(int? take);
|
||
|
||
/// <summary>
|
||
/// Статистика посещений пользователей
|
||
/// </summary>
|
||
/// <param name="take"></param>
|
||
/// <returns></returns>
|
||
IEnumerable<RequestLogUserDto> GetUsersStat(int? take);
|
||
}
|