DD.WellWorkover.Cloud/AsbCloudApp/Services/IRequestTracker.cs
2024-08-19 10:01:07 +05:00

60 lines
1.8 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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);
}