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; }
//Azure.WebSites.<websitename>.<slot>.WebsiteApi.<metricname>.<unit> //Azure.WebSites.<websitename>.<slot>.WebsiteApi.<metricname>.Percentage private IEnumerable<UsageObject> FromWebsiteUsageObjectEnumerable(AzureWebsiteId website) { yield return new UsageObject() { GraphiteCounterName = website.BuildGraphiteCounterName(WebsiteMetricsDataSource.WebsitesApi,Name,Unit).ToString(), Timestamp = DateTime.UtcNow.ToString("o"), Value = CurrentValue }; if(Limit <= 0) { yield break; } yield return new UsageObject() { GraphiteCounterName = website.BuildGraphiteCounterNamePercentage(WebsiteMetricsDataSource.WebsitesApi,Name).ToString(), Timestamp = DateTime.UtcNow.ToString("o"), Value = CurrentValue * 100 / Limit }; }
//Azure.WebSites.<websitename>.<slot>.WebsiteApi.<metricname>.<unit> //Azure.WebSites.<websitename>.<slot>.WebsiteApi.<metricname>.Percentage private IEnumerable <UsageObject> FromWebsiteUsageObjectEnumerable(AzureWebsiteId website) { yield return(new UsageObject() { GraphiteCounterName = website.BuildGraphiteCounterName(WebsiteMetricsDataSource.WebsitesApi, Name, Unit).ToString(), Timestamp = DateTime.UtcNow.ToString("o"), Value = CurrentValue }); if (Limit <= 0) { yield break; } yield return(new UsageObject() { GraphiteCounterName = website.BuildGraphiteCounterNamePercentage(WebsiteMetricsDataSource.WebsitesApi, Name).ToString(), Timestamp = DateTime.UtcNow.ToString("o"), Value = CurrentValue * 100 / Limit }); }
private Uri GetWebsiteUri(AzureWebsiteId azureWebsiteId) { return new Uri(string.Format("wadgraphes://subscription/{0}/websites/{1}/{2}", _subscriptionId, azureWebsiteId.Webspace, azureWebsiteId.Name)); }
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); }
internal async System.Threading.Tasks.Task <ICollection <WebsiteApiMetricsData> > GetWebsiteUsage(AzureWebsiteId websiteId) { return(await _client.DoWebsiteWebServiceCall <WebsiteApiMetricsData[]>(websiteId.ResourceId + "/usages")); }
public AzureWebsiteUsage(AzureWebsiteId websiteId, AzureMetricsApiClient metricsApiClient, AzureWebsitesMetricsApiClient azureWebsitesMetricsClient) { _websiteId = websiteId; _azureMetricsApiClient = metricsApiClient; _websitesMetricsClient = azureWebsitesMetricsClient; }
internal async System.Threading.Tasks.Task<ICollection<MetricValueSet>> GetMetricsForWebsite(AzureWebsiteId websiteId, TimeSpan history,MetricsFilter filter) { return await GetMetricsForResourceId(websiteId.ResourceId,history,filter); }
internal System.Threading.Tasks.Task<ICollection<MetricValueSet>> GetMetricsForWebsite(AzureWebsiteId websiteId, TimeSpan history) { return GetMetricsForWebsite(websiteId,history,MetricsFilter.None); }
internal async System.Threading.Tasks.Task <ICollection <MetricValueSet> > GetMetricsForWebsite(AzureWebsiteId websiteId, TimeSpan history, MetricsFilter filter) { return(await GetMetricsForResourceId(websiteId.ResourceId, history, filter)); }
private Uri GetWebsiteUri(AzureWebsiteId azureWebsiteId) { return(new Uri(string.Format("wadgraphes://subscription/{0}/websites/{1}/{2}", _subscriptionId, azureWebsiteId.Webspace, azureWebsiteId.Name))); }
internal ICollection<UsageObject> ToUsageObjects(AzureWebsiteId forWebsiteId) { return FromWebsiteUsageObjectEnumerable(forWebsiteId).ToList(); }
internal async System.Threading.Tasks.Task<ICollection<WebsiteApiMetricsData>> GetWebsiteUsage(AzureWebsiteId websiteId) { return await _client.DoWebsiteWebServiceCall<WebsiteApiMetricsData[]>(websiteId.ResourceId + "/usages"); }
public Task<ICollection<UsageObject>> GetWebsitesUsageForWebsite(string webspace, string websiteName,TimeSpan history, params string[] filters) { var websiteId = new AzureWebsiteId(websiteName,webspace); return new AzureWebsitesUsageClient(_client,_credentials).GetUsageCollectionForWebsite(websiteId,history, MetricsFilter.FromRegexes(filters)); }
internal ICollection <UsageObject> ToUsageObjects(AzureWebsiteId forWebsiteId) { return(FromWebsiteUsageObjectEnumerable(forWebsiteId).ToList()); }
public Task <ICollection <UsageObject> > GetWebsitesUsageForWebsite(string webspace, string websiteName, TimeSpan history, params string[] filters) { var websiteId = new AzureWebsiteId(websiteName, webspace); return(new AzureWebsitesUsageClient(_client, _credentials).GetUsageCollectionForWebsite(websiteId, history, MetricsFilter.FromRegexes(filters))); }
public AzureWebsiteUsage(AzureWebsiteId websiteId,AzureMetricsApiClient metricsApiClient,AzureWebsitesMetricsApiClient azureWebsitesMetricsClient) { _websiteId = websiteId; _azureMetricsApiClient =metricsApiClient; _websitesMetricsClient = azureWebsitesMetricsClient; }
internal System.Threading.Tasks.Task <ICollection <MetricValueSet> > GetMetricsForWebsite(AzureWebsiteId websiteId, TimeSpan history) { return(GetMetricsForWebsite(websiteId, history, MetricsFilter.None)); }