public IActionResult GetMetricsByPercentileFromAgent([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime,
                                                             [FromRoute] Percentile percentile)
        {
            _logger.LogInformation($"Входные данные {fromTime} {toTime} {percentile}");

            var metrics = _repository.GetFromTo(fromTime, toTime);

            if (metrics == null)
            {
                return(Ok());
            }

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

            metrics = SortAndDeleteForPercentile(metrics, percentile);

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

            return(Ok($"По перцентилю {percentile} нагрузка не превышает {metrics.Max(metric => metric.Value)}%"));
        }
Ejemplo n.º 2
0
        public IActionResult GetByTimePeriod([FromRoute] TimeSpan fromTime)
        {
            _logger.LogInformation($"fromTime: {fromTime}");
            var metrics  = _cpuMetricsAgentRepository.GetByTimePeriod(fromTime);
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

            foreach (var metric in metrics)
            {
                response.Metrics.Add(_mapper.Map <CpuMetricDto>(metric));
            }
            return(Ok(response));
        }
Ejemplo n.º 3
0
        public IActionResult GetAll()
        {
            var metrics = _cpuMetricsAgentRepository.GetAll();

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(_mapper.Map <CpuMetricDto>(metric));
            }
            return(Ok(response));
        }
Ejemplo n.º 4
0
        public IActionResult GetAllMetrics()
        {
            IList <CpuMetricModel> metrics = _repository.GetAll();
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

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

            _logger.LogInformation($"Запрос всех метрик Cpu");

            return(Ok(response));
        }
Ejemplo n.º 5
0
        public IActionResult GetPeriod([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            var metrics = repository.GetPeriod(fromTime, toTime);

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(new CpuMetricDto {
                    Time = metric.Time, Value = metric.Value, Id = metric.Id
                });
            }

            return(Ok(response));
        }
Ejemplo n.º 6
0
        public IActionResult GetAll()
        {
            _logger.LogInformation($"Метод GetAll");
            IList <CpuMetrics> metrics = _repository.GetAll();
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricsDto>()
            };

            if (metrics != null)
            {
                foreach (var metric in metrics)
                {
                    response.Metrics.Add(_mapper.Map <CpuMetricsDto>(metric));
                }
            }
            return(Ok(response));
        }
Ejemplo n.º 7
0
        public IActionResult GetMetricsFromAgent([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            _logger.LogInformation($"Метод GetMetricsFromAgent fromTime {fromTime.DateTime} toTime {toTime.DateTime}");
            var metrics  = _repository.GetByTimeInterval(fromTime, toTime);
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricsDto>()
            };

            if (metrics != null)
            {
                foreach (var metric in metrics)
                {
                    response.Metrics.Add(_mapper.Map <CpuMetricsDto>(metric));
                }
            }
            return(Ok(response));
        }
Ejemplo n.º 8
0
        public IActionResult GetAll()
        {
            var metrics = repository.GetAll();

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(new CpuMetricDto {
                    Time = metric.Time, Value = metric.Value, Id = metric.Id
                });
            }

            return(Ok(response));
        }
Ejemplo n.º 9
0
        public IActionResult GetAll()
        {
            _logger.LogDebug("GetAll : без параметров");

            var metrics = _repository.GetAll();

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

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

            return(Ok(response));
        }
Ejemplo n.º 10
0
        public IActionResult GetMetrics([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            _logger.LogDebug($"GetMetrics : fromTime = {fromTime}; toTime = {toTime}");

            var metrics = _repository.GetInTimePeriod(fromTime, toTime);

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

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

            return(Ok(response));
        }
Ejemplo n.º 11
0
        public IActionResult GetMetricsByPercentileFromAgent(
            [FromRoute] DateTimeOffset fromTime,
            [FromRoute] DateTimeOffset toTime,
            [FromRoute] Percentile percentile)
        {
            var metrics          = _repository.GetByPeriodWithSorting(fromTime, toTime, "value");
            var percentileMetric = metrics.Cast <CpuMetric>().SingleOrDefault(i => i.Value == PercentileCalculator.Calculate(GetListValuesFromMetrics(metrics), (double)percentile / 100.0));
            var response         = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

            response.Metrics.Add(_mapper.Map <CpuMetricDto>(percentileMetric));

            _logger.LogInformation($"Запрос метрик Cpu персентиля = {percentile} за период c {fromTime} по {toTime}");

            return(Ok(response));
        }
Ejemplo n.º 12
0
        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));
        }
Ejemplo n.º 13
0
        public IActionResult GetMetricsFromTimeToTime(
            [FromRoute] DateTimeOffset fromTime,
            [FromRoute] DateTimeOffset toTime)
        {
            IList <CpuMetricModel> metrics = _repository.GetMetricsFromTimeToTime(fromTime, toTime);
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

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

            _logger.LogInformation($"Запрос метрик Cpu FromTime = {fromTime} ToTime = {toTime}");

            return(Ok(response));
        }
Ejemplo n.º 14
0
        public IActionResult GetAll()
        {
            var metrics = repository.GetAll();

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(new CpuMetricDto {
                    Time = metric.Time.Minutes, Value = metric.Value, Id = metric.Id
                });
                _logger.LogInformation($"GetAll: Time - {metric.Time.Minutes}, Value - {metric.Value}");
            }

            return(Ok(response));
        }
Ejemplo n.º 15
0
        public IActionResult GetMetricsFromAgent(
            [FromRoute] DateTimeOffset fromTime,
            [FromRoute] DateTimeOffset toTime)
        {
            var metrics  = _repository.GetByPeriod(fromTime, toTime);
            var response = new AllCpuMetricsResponse()
            {
                Metrics = new List <CpuMetricDto>()
            };

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

            _logger.LogInformation($"Запрос метрик Cpu за период c {fromTime} по {toTime}");

            return(Ok(response));
        }
Ejemplo n.º 16
0
        public IActionResult GetMetrics([FromRoute] CpuMetricGetByIntervalRequest request)
        {
            _logger.LogDebug("Вызов метода. Параметры:" +
                             $" {nameof(request.FromTime)} = {request.FromTime}" +
                             $" {nameof(request.ToTime)} = {request.ToTime}");

            var metrics = _repository.GetByTimeInterval(request.FromTime, request.ToTime);

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

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

            return(Ok(response));
        }
Ejemplo n.º 17
0
        public IActionResult GetMetricsCpuByTimePeriod([FromBody] TimePeriod timePeriod)
        {
            var metrics = _repository.GetByTimePeriod(timePeriod);

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(new CpuMetricDto {
                    Time = metric.Time, Value = metric.Value, Id = metric.Id
                });
            }

            _logger.LogInformation($"All records of the period: {timePeriod.From} - {timePeriod.To} displayed successfully");

            return(Ok(response));
        }
Ejemplo n.º 18
0
        public IActionResult GetAll()
        {
            var metrics = _repository.GetAll();

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

            foreach (var metric in metrics)
            {
                response.Metrics.Add(new CpuMetricDto {
                    Time = metric.Time, Value = metric.Value, Id = metric.Id
                });
            }

            _logger.LogInformation($"All records were successfully displayed");

            return(Ok(response));
        }
Ejemplo n.º 19
0
        public IActionResult GetMetricsFromAgent([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            _logger.LogInformation($"Запрос метрики CPU с {fromTime} по {toTime}");

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


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

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

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

            return(Ok(response));
        }
Ejemplo n.º 20
0
        public IActionResult GetMetricsFromAgent([FromRoute] DateTimeOffset fromTime, [FromRoute] DateTimeOffset toTime)
        {
            _logger.LogInformation($"Входные данные {fromTime} {toTime}");

            var metrics = _repository.GetFromTo(fromTime, toTime);

            if (metrics == null)
            {
                return(Ok());
            }

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

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

            return(Ok(response));
        }