public IActionResult GetMetricsFromAgentByPercentille([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime, [FromRoute] Percentile percentile)
        {
            _logger.LogInformation($"Запрос метрики CPU с {fromTime} по {toTime}, перцентиле {percentile}");
            var metrics = _repository.GetByDatePeriod(fromTime, toTime);

            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

            foreach (var metric in metrics)
            {
                response.Metrics.Add(_mapper.Map <CpuMetricDto>(metric));
            }

            var result = JsonSerializer.Serialize <AllCpuMetricsResponse>(response);

            return(Ok(result));
        }
Beispiel #2
0
        public IActionResult GetMetricsFromAgent([FromRoute] int agentId, [FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            _logger.LogInformation($"Запрос метрики CPU с агента {agentId} с {fromTime} по {toTime}");

            DateTimeOffset timeFrom = fromTime.UtcDateTime;
            DateTimeOffset timeto   = toTime.UtcDateTime;

            var metrics = _repository.GetByDatePeriod(agentId, timeFrom, timeto);

            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetric>()
            };

            foreach (var metric in metrics)
            {
                response.Metrics.Add((CpuMetric)_mapper.Map <CpuMetric>(metric));
            }

            return(Ok(response));
        }