Ejemplo n.º 1
0
        private async Task <ICollection <UsageObject> > GetMetricsApiUsage(TimeSpan history)
        {
            var metrics = await _azureMetricsApiClient.GetMetricsForWebsite(_websiteId, history);

            var res = new List <UsageObject>();

            foreach (var metric in metrics)
            {
                foreach (var result in metric.MetricValues.OrderBy(_ => _.Timestamp))
                {
                    res.Add(new UsageObject {
                        GraphiteCounterName = _websiteId.BuildGraphiteCounterName(WebsiteMetricsDataSource.MetricsApi, metric.Name, metric.Unit).ToString(),
                        Value     = result.Average.Value,
                        Timestamp = result.Timestamp.ToString("o")
                    });
                }
            }
            return(res);
        }
Ejemplo n.º 2
0
        internal async Task <ICollection <UsageObject> > GetUsageCollectionForWebsite(AzureWebsiteId websiteId, TimeSpan history, MetricsFilter filter)
        {
            var metrics = await _metricsApiClient.GetMetricsForWebsite(websiteId, history, filter);

            var res = new List <UsageObject>();

            foreach (var metric in metrics)
            {
                foreach (var result in metric.MetricValues.OrderBy(_ => _.Timestamp))
                {
                    res.Add(new UsageObject {
                        GraphiteCounterName = metric.Name + "." + metric.Unit,
                        Value     = result.Average.Value,
                        Timestamp = result.Timestamp.ToString("o")
                    });
                }
            }

            return(res);
        }