From 57d003e98df91ebb1c79e653b54289b56dd3a1a0 Mon Sep 17 00:00:00 2001 From: Mikhail Trubnikov Date: Tue, 12 Dec 2023 16:28:46 +1000 Subject: [PATCH] feat(api): redis exporter -> prometheus --- PARR.API/Contracts/V1/ApiRoutes.cs | 5 ++++ .../Statistics/StatRobotHistoryController.cs | 26 +++++++++++++++++++ docker-compose.yml | 14 ++++++++++ 3 files changed, 45 insertions(+) create mode 100644 PARR.API/Controllers/V1/Statistics/StatRobotHistoryController.cs diff --git a/PARR.API/Contracts/V1/ApiRoutes.cs b/PARR.API/Contracts/V1/ApiRoutes.cs index 870afec2..f3cfe01b 100644 --- a/PARR.API/Contracts/V1/ApiRoutes.cs +++ b/PARR.API/Contracts/V1/ApiRoutes.cs @@ -177,6 +177,11 @@ namespace PARR.API.Contracts.V1 public const string Get = BaseStat + "/robot-statuses/"; } + public static class StatRobotHistory + { + public const string Get = BaseStat + "/robot-histories/"; + } + #endregion } diff --git a/PARR.API/Controllers/V1/Statistics/StatRobotHistoryController.cs b/PARR.API/Controllers/V1/Statistics/StatRobotHistoryController.cs new file mode 100644 index 00000000..93c2ad0f --- /dev/null +++ b/PARR.API/Controllers/V1/Statistics/StatRobotHistoryController.cs @@ -0,0 +1,26 @@ +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using PARR.API.Contracts.V1; +using PARR.API.Controllers.V1.Base; +using PARR.Constants; + +namespace PARR.API.Controllers.V1.Statistics +{ + /// + /// Статистика по истории робота + /// + [Authorize(Roles = ParrRoles.Administrator.Role)] + public class StatRobotHistoryController : BaseApiController + { + /// + /// Статистика истории роботов + /// + /// + [HttpGet(ApiRoutes.StatRobotHistory.Get)] + public async Task Get() + { + //todo: + return Ok(); + } + } +} diff --git a/docker-compose.yml b/docker-compose.yml index bda82373..96102e63 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -41,6 +41,20 @@ services: networks: parr-network: + # REDIS TO PROMETHEUS + redis-exporter: + image: oliver006/redis_exporter + ports: + - 9121:9121 + restart: unless-stopped + environment: + REDIS_ADDR: "parr-redis:6379" + REDIS_USER: null + REDIS_PASSWORD: ParrP@ssPtk202MMdevDvs + deploy: + replicas: 1 + networks: + parr-network: # #REDIS # parr-redis: