Class MetricsQueryAsyncClient

java.lang.Object
com.azure.monitor.query.MetricsQueryAsyncClient

public final class MetricsQueryAsyncClient extends Object
The asynchronous client for querying Azure Monitor metrics.

Instantiating an asynchronous Metrics query Client

 MetricsQueryAsyncClient metricsQueryAsyncClient = new MetricsQueryClientBuilder()
         .credential(tokenCredential)
         .buildAsyncClient();
 
  • Method Details

    • queryResource

      public Mono<MetricsQueryResult> queryResource(String resourceUri, List<String> metricsNames)
      Returns all the Azure Monitor metrics requested for the resource.

      Query metrics for an Azure resource

       Mono<MetricsQueryResult> response = metricsQueryAsyncClient
               .queryResource("{resource-id}", Arrays.asList("{metric-1}", "{metric-2}"));
      
       response.subscribe(result -> {
           for (MetricResult metricResult : result.getMetrics()) {
               System.out.println("Metric name " + metricResult.getMetricName());
               metricResult.getTimeSeries().stream()
                       .flatMap(timeSeriesElement -> timeSeriesElement.getValues().stream())
                       .forEach(metricValue ->
                               System.out.println("Time stamp: " + metricValue.getTimeStamp() + "; Total:  "
                                       + metricValue.getTotal()));
           }
       });
       
      Parameters:
      resourceUri - The resource URI for which the metrics is requested.
      metricsNames - The names of the metrics to query.
      Returns:
      A time-series metrics result for the requested metric names.
    • queryResourceWithResponse

      public Mono<Response<MetricsQueryResult>> queryResourceWithResponse(String resourceUri, List<String> metricsNames, MetricsQueryOptions options)
      Returns all the Azure Monitor metrics requested for the resource.
      Parameters:
      resourceUri - The resource URI for which the metrics is requested.
      metricsNames - The names of the metrics to query.
      options - Options to filter the query.
      Returns:
      A time-series metrics result for the requested metric names.
    • listMetricNamespaces

      public PagedFlux<MetricNamespace> listMetricNamespaces(String resourceUri, OffsetDateTime startTime)
      Lists all the metrics namespaces created for the resource URI.
      Parameters:
      resourceUri - The resource URI for which the metrics namespaces are listed.
      startTime - The returned list of metrics namespaces are created after the specified start time.
      Returns:
      A paged collection of metrics namespaces.
    • listMetricDefinitions

      public PagedFlux<MetricDefinition> listMetricDefinitions(String resourceUri)
      Lists all the metrics definitions created for the resource URI.
      Parameters:
      resourceUri - The resource URI for which the metrics definitions are listed.
      Returns:
      A paged collection of metrics definitions.
    • listMetricDefinitions

      public PagedFlux<MetricDefinition> listMetricDefinitions(String resourceUri, String metricsNamespace)
      Lists all the metrics definitions created for the resource URI.
      Parameters:
      resourceUri - The resource URI for which the metrics definitions are listed.
      metricsNamespace - The metrics namespace to which the listed metrics definitions belong.
      Returns:
      A paged collection of metrics definitions.