Class MetricServiceClient

  • All Implemented Interfaces:
    com.google.api.gax.core.BackgroundResource, AutoCloseable

    @Generated("by gapic-generator-java")
    public class MetricServiceClient
    extends Object
    implements com.google.api.gax.core.BackgroundResource
    Service Description: Manages metric descriptors, monitored resource descriptors, and time series data.

    This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
       MonitoredResourceDescriptorName name =
           MonitoredResourceDescriptorName.ofProjectMonitoredResourceDescriptorName(
               "[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]");
       MonitoredResourceDescriptor response =
           metricServiceClient.getMonitoredResourceDescriptor(name);
     }
     

    Note: close() needs to be called on the MetricServiceClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

    The surface of this class includes several types of Java methods for each of the API's methods:

    1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
    2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
    3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

    See the individual methods for example code.

    Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

    This class can be customized by passing in a custom instance of MetricServiceSettings to create(). For example:

    To customize credentials:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     MetricServiceSettings metricServiceSettings =
         MetricServiceSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     MetricServiceClient metricServiceClient = MetricServiceClient.create(metricServiceSettings);
     

    To customize the endpoint:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     MetricServiceSettings metricServiceSettings =
         MetricServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
     MetricServiceClient metricServiceClient = MetricServiceClient.create(metricServiceSettings);
     

    Please refer to the GitHub repository's samples for more quickstart code snippets.

    • Constructor Detail

      • MetricServiceClient

        protected MetricServiceClient​(MetricServiceSettings settings)
                               throws IOException
        Constructs an instance of MetricServiceClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.
        Throws:
        IOException
    • Method Detail

      • create

        public static final MetricServiceClient create​(MetricServiceSettings settings)
                                                throws IOException
        Constructs an instance of MetricServiceClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.
        Throws:
        IOException
      • create

        public static final MetricServiceClient create​(MetricServiceStub stub)
        Constructs an instance of MetricServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(MetricServiceSettings).
      • listMonitoredResourceDescriptors

        public final MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors​(com.google.api.resourcenames.ResourceName name)
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           for (MonitoredResourceDescriptor element :
               metricServiceClient.listMonitoredResourceDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMonitoredResourceDescriptors

        public final MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors​(OrganizationName name)
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           for (MonitoredResourceDescriptor element :
               metricServiceClient.listMonitoredResourceDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMonitoredResourceDescriptors

        public final MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors​(ProjectName name)
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           for (MonitoredResourceDescriptor element :
               metricServiceClient.listMonitoredResourceDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMonitoredResourceDescriptors

        public final MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors​(String name)
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           for (MonitoredResourceDescriptor element :
               metricServiceClient.listMonitoredResourceDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMonitoredResourceDescriptors

        public final MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse listMonitoredResourceDescriptors​(ListMonitoredResourceDescriptorsRequest request)
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMonitoredResourceDescriptorsRequest request =
               ListMonitoredResourceDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (MonitoredResourceDescriptor element :
               metricServiceClient.listMonitoredResourceDescriptors(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMonitoredResourceDescriptorsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListMonitoredResourceDescriptorsRequest,​MetricServiceClient.ListMonitoredResourceDescriptorsPagedResponse> listMonitoredResourceDescriptorsPagedCallable()
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMonitoredResourceDescriptorsRequest request =
               ListMonitoredResourceDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<MonitoredResourceDescriptor> future =
               metricServiceClient.listMonitoredResourceDescriptorsPagedCallable().futureCall(request);
           // Do something.
           for (MonitoredResourceDescriptor element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listMonitoredResourceDescriptorsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListMonitoredResourceDescriptorsRequest,​ListMonitoredResourceDescriptorsResponse> listMonitoredResourceDescriptorsCallable()
        Lists monitored resource descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMonitoredResourceDescriptorsRequest request =
               ListMonitoredResourceDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListMonitoredResourceDescriptorsResponse response =
                 metricServiceClient.listMonitoredResourceDescriptorsCallable().call(request);
             for (MonitoredResourceDescriptor element : response.getResourceDescriptorsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • getMonitoredResourceDescriptor

        public final com.google.api.MonitoredResourceDescriptor getMonitoredResourceDescriptor​(MonitoredResourceDescriptorName name)
        Gets a single monitored resource descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           MonitoredResourceDescriptorName name =
               MonitoredResourceDescriptorName.ofProjectMonitoredResourceDescriptorName(
                   "[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]");
           MonitoredResourceDescriptor response =
               metricServiceClient.getMonitoredResourceDescriptor(name);
         }
         
        Parameters:
        name - Required. The monitored resource descriptor to get. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/monitoredResourceDescriptors/[RESOURCE_TYPE]

        The `[RESOURCE_TYPE]` is a predefined type, such as `cloudsql_database`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMonitoredResourceDescriptor

        public final com.google.api.MonitoredResourceDescriptor getMonitoredResourceDescriptor​(String name)
        Gets a single monitored resource descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name =
               MonitoredResourceDescriptorName.ofProjectMonitoredResourceDescriptorName(
                       "[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
                   .toString();
           MonitoredResourceDescriptor response =
               metricServiceClient.getMonitoredResourceDescriptor(name);
         }
         
        Parameters:
        name - Required. The monitored resource descriptor to get. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/monitoredResourceDescriptors/[RESOURCE_TYPE]

        The `[RESOURCE_TYPE]` is a predefined type, such as `cloudsql_database`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMonitoredResourceDescriptor

        public final com.google.api.MonitoredResourceDescriptor getMonitoredResourceDescriptor​(GetMonitoredResourceDescriptorRequest request)
        Gets a single monitored resource descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           GetMonitoredResourceDescriptorRequest request =
               GetMonitoredResourceDescriptorRequest.newBuilder()
                   .setName(
                       MonitoredResourceDescriptorName.ofProjectMonitoredResourceDescriptorName(
                               "[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
                           .toString())
                   .build();
           MonitoredResourceDescriptor response =
               metricServiceClient.getMonitoredResourceDescriptor(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMonitoredResourceDescriptorCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetMonitoredResourceDescriptorRequest,​com.google.api.MonitoredResourceDescriptor> getMonitoredResourceDescriptorCallable()
        Gets a single monitored resource descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           GetMonitoredResourceDescriptorRequest request =
               GetMonitoredResourceDescriptorRequest.newBuilder()
                   .setName(
                       MonitoredResourceDescriptorName.ofProjectMonitoredResourceDescriptorName(
                               "[PROJECT]", "[MONITORED_RESOURCE_DESCRIPTOR]")
                           .toString())
                   .build();
           ApiFuture<MonitoredResourceDescriptor> future =
               metricServiceClient.getMonitoredResourceDescriptorCallable().futureCall(request);
           // Do something.
           MonitoredResourceDescriptor response = future.get();
         }
         
      • listMetricDescriptors

        public final MetricServiceClient.ListMetricDescriptorsPagedResponse listMetricDescriptors​(com.google.api.resourcenames.ResourceName name)
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           for (MetricDescriptor element :
               metricServiceClient.listMetricDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMetricDescriptors

        public final MetricServiceClient.ListMetricDescriptorsPagedResponse listMetricDescriptors​(OrganizationName name)
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           for (MetricDescriptor element :
               metricServiceClient.listMetricDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMetricDescriptors

        public final MetricServiceClient.ListMetricDescriptorsPagedResponse listMetricDescriptors​(ProjectName name)
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           for (MetricDescriptor element :
               metricServiceClient.listMetricDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMetricDescriptors

        public final MetricServiceClient.ListMetricDescriptorsPagedResponse listMetricDescriptors​(String name)
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           for (MetricDescriptor element :
               metricServiceClient.listMetricDescriptors(name).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMetricDescriptors

        public final MetricServiceClient.ListMetricDescriptorsPagedResponse listMetricDescriptors​(ListMetricDescriptorsRequest request)
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMetricDescriptorsRequest request =
               ListMetricDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (MetricDescriptor element :
               metricServiceClient.listMetricDescriptors(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listMetricDescriptorsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListMetricDescriptorsRequest,​MetricServiceClient.ListMetricDescriptorsPagedResponse> listMetricDescriptorsPagedCallable()
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMetricDescriptorsRequest request =
               ListMetricDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<MetricDescriptor> future =
               metricServiceClient.listMetricDescriptorsPagedCallable().futureCall(request);
           // Do something.
           for (MetricDescriptor element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listMetricDescriptorsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListMetricDescriptorsRequest,​ListMetricDescriptorsResponse> listMetricDescriptorsCallable()
        Lists metric descriptors that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListMetricDescriptorsRequest request =
               ListMetricDescriptorsRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListMetricDescriptorsResponse response =
                 metricServiceClient.listMetricDescriptorsCallable().call(request);
             for (MetricDescriptor element : response.getMetricDescriptorsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • getMetricDescriptor

        public final com.google.api.MetricDescriptor getMetricDescriptor​(MetricDescriptorName name)
        Gets a single metric descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           MetricDescriptorName name =
               MetricDescriptorName.ofProjectMetricDescriptorName("[PROJECT]", "[METRIC_DESCRIPTOR]");
           MetricDescriptor response = metricServiceClient.getMetricDescriptor(name);
         }
         
        Parameters:
        name - Required. The metric descriptor on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]

        An example value of `[METRIC_ID]` is `"compute.googleapis.com/instance/disk/read_bytes_count"`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMetricDescriptor

        public final com.google.api.MetricDescriptor getMetricDescriptor​(String name)
        Gets a single metric descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name =
               MetricDescriptorName.ofProjectMetricDescriptorName("[PROJECT]", "[METRIC_DESCRIPTOR]")
                   .toString();
           MetricDescriptor response = metricServiceClient.getMetricDescriptor(name);
         }
         
        Parameters:
        name - Required. The metric descriptor on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]

        An example value of `[METRIC_ID]` is `"compute.googleapis.com/instance/disk/read_bytes_count"`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMetricDescriptor

        public final com.google.api.MetricDescriptor getMetricDescriptor​(GetMetricDescriptorRequest request)
        Gets a single metric descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           GetMetricDescriptorRequest request =
               GetMetricDescriptorRequest.newBuilder()
                   .setName(
                       MetricDescriptorName.ofProjectMetricDescriptorName(
                               "[PROJECT]", "[METRIC_DESCRIPTOR]")
                           .toString())
                   .build();
           MetricDescriptor response = metricServiceClient.getMetricDescriptor(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getMetricDescriptorCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetMetricDescriptorRequest,​com.google.api.MetricDescriptor> getMetricDescriptorCallable()
        Gets a single metric descriptor. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           GetMetricDescriptorRequest request =
               GetMetricDescriptorRequest.newBuilder()
                   .setName(
                       MetricDescriptorName.ofProjectMetricDescriptorName(
                               "[PROJECT]", "[METRIC_DESCRIPTOR]")
                           .toString())
                   .build();
           ApiFuture<MetricDescriptor> future =
               metricServiceClient.getMetricDescriptorCallable().futureCall(request);
           // Do something.
           MetricDescriptor response = future.get();
         }
         
      • createMetricDescriptor

        public final com.google.api.MetricDescriptor createMetricDescriptor​(com.google.api.resourcenames.ResourceName name,
                                                                            com.google.api.MetricDescriptor metricDescriptor)
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           MetricDescriptor metricDescriptor = MetricDescriptor.newBuilder().build();
           MetricDescriptor response =
               metricServiceClient.createMetricDescriptor(name, metricDescriptor);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is: 4 projects/[PROJECT_ID_OR_NUMBER]
        metricDescriptor - Required. The new [custom metric](https://cloud.google.com/monitoring/custom-metrics) descriptor.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createMetricDescriptor

        public final com.google.api.MetricDescriptor createMetricDescriptor​(OrganizationName name,
                                                                            com.google.api.MetricDescriptor metricDescriptor)
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           MetricDescriptor metricDescriptor = MetricDescriptor.newBuilder().build();
           MetricDescriptor response =
               metricServiceClient.createMetricDescriptor(name, metricDescriptor);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is: 4 projects/[PROJECT_ID_OR_NUMBER]
        metricDescriptor - Required. The new [custom metric](https://cloud.google.com/monitoring/custom-metrics) descriptor.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createMetricDescriptor

        public final com.google.api.MetricDescriptor createMetricDescriptor​(ProjectName name,
                                                                            com.google.api.MetricDescriptor metricDescriptor)
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           MetricDescriptor metricDescriptor = MetricDescriptor.newBuilder().build();
           MetricDescriptor response =
               metricServiceClient.createMetricDescriptor(name, metricDescriptor);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is: 4 projects/[PROJECT_ID_OR_NUMBER]
        metricDescriptor - Required. The new [custom metric](https://cloud.google.com/monitoring/custom-metrics) descriptor.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createMetricDescriptor

        public final com.google.api.MetricDescriptor createMetricDescriptor​(String name,
                                                                            com.google.api.MetricDescriptor metricDescriptor)
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           MetricDescriptor metricDescriptor = MetricDescriptor.newBuilder().build();
           MetricDescriptor response =
               metricServiceClient.createMetricDescriptor(name, metricDescriptor);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is: 4 projects/[PROJECT_ID_OR_NUMBER]
        metricDescriptor - Required. The new [custom metric](https://cloud.google.com/monitoring/custom-metrics) descriptor.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createMetricDescriptor

        public final com.google.api.MetricDescriptor createMetricDescriptor​(CreateMetricDescriptorRequest request)
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateMetricDescriptorRequest request =
               CreateMetricDescriptorRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setMetricDescriptor(MetricDescriptor.newBuilder().build())
                   .build();
           MetricDescriptor response = metricServiceClient.createMetricDescriptor(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createMetricDescriptorCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateMetricDescriptorRequest,​com.google.api.MetricDescriptor> createMetricDescriptorCallable()
        Creates a new metric descriptor. The creation is executed asynchronously and callers may check the returned operation to track its progress. User-created metric descriptors define [custom metrics](https://cloud.google.com/monitoring/custom-metrics).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateMetricDescriptorRequest request =
               CreateMetricDescriptorRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setMetricDescriptor(MetricDescriptor.newBuilder().build())
                   .build();
           ApiFuture<MetricDescriptor> future =
               metricServiceClient.createMetricDescriptorCallable().futureCall(request);
           // Do something.
           MetricDescriptor response = future.get();
         }
         
      • deleteMetricDescriptor

        public final void deleteMetricDescriptor​(MetricDescriptorName name)
        Deletes a metric descriptor. Only user-created [custom metrics](https://cloud.google.com/monitoring/custom-metrics) can be deleted.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           MetricDescriptorName name =
               MetricDescriptorName.ofProjectMetricDescriptorName("[PROJECT]", "[METRIC_DESCRIPTOR]");
           metricServiceClient.deleteMetricDescriptor(name);
         }
         
        Parameters:
        name - Required. The metric descriptor on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]

        An example of `[METRIC_ID]` is: `"custom.googleapis.com/my_test_metric"`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteMetricDescriptor

        public final void deleteMetricDescriptor​(String name)
        Deletes a metric descriptor. Only user-created [custom metrics](https://cloud.google.com/monitoring/custom-metrics) can be deleted.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name =
               MetricDescriptorName.ofProjectMetricDescriptorName("[PROJECT]", "[METRIC_DESCRIPTOR]")
                   .toString();
           metricServiceClient.deleteMetricDescriptor(name);
         }
         
        Parameters:
        name - Required. The metric descriptor on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]/metricDescriptors/[METRIC_ID]

        An example of `[METRIC_ID]` is: `"custom.googleapis.com/my_test_metric"`.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteMetricDescriptor

        public final void deleteMetricDescriptor​(DeleteMetricDescriptorRequest request)
        Deletes a metric descriptor. Only user-created [custom metrics](https://cloud.google.com/monitoring/custom-metrics) can be deleted.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           DeleteMetricDescriptorRequest request =
               DeleteMetricDescriptorRequest.newBuilder()
                   .setName(
                       MetricDescriptorName.ofProjectMetricDescriptorName(
                               "[PROJECT]", "[METRIC_DESCRIPTOR]")
                           .toString())
                   .build();
           metricServiceClient.deleteMetricDescriptor(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteMetricDescriptorCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteMetricDescriptorRequest,​com.google.protobuf.Empty> deleteMetricDescriptorCallable()
        Deletes a metric descriptor. Only user-created [custom metrics](https://cloud.google.com/monitoring/custom-metrics) can be deleted.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           DeleteMetricDescriptorRequest request =
               DeleteMetricDescriptorRequest.newBuilder()
                   .setName(
                       MetricDescriptorName.ofProjectMetricDescriptorName(
                               "[PROJECT]", "[METRIC_DESCRIPTOR]")
                           .toString())
                   .build();
           ApiFuture<Empty> future =
               metricServiceClient.deleteMetricDescriptorCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • listTimeSeries

        public final MetricServiceClient.ListTimeSeriesPagedResponse listTimeSeries​(com.google.api.resourcenames.ResourceName name,
                                                                                    String filter,
                                                                                    TimeInterval interval,
                                                                                    ListTimeSeriesRequest.TimeSeriesView view)
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ResourceName name = ResourceName.of("[FOLDER]");
           String filter = "filter-1274492040";
           TimeInterval interval = TimeInterval.newBuilder().build();
           ListTimeSeriesRequest.TimeSeriesView view = ListTimeSeriesRequest.TimeSeriesView.forNumber(0);
           for (TimeSeries element :
               metricServiceClient.listTimeSeries(name, filter, interval, view).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name), organization or folder on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID] folders/[FOLDER_ID]

        filter - Required. A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:

        metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

        interval - Required. The time interval for which results should be returned. Only time series that contain data points in the specified interval are included in the response.
        view - Required. Specifies which information is returned about the time series.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTimeSeries

        public final MetricServiceClient.ListTimeSeriesPagedResponse listTimeSeries​(OrganizationName name,
                                                                                    String filter,
                                                                                    TimeInterval interval,
                                                                                    ListTimeSeriesRequest.TimeSeriesView view)
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           OrganizationName name = OrganizationName.of("[ORGANIZATION]");
           String filter = "filter-1274492040";
           TimeInterval interval = TimeInterval.newBuilder().build();
           ListTimeSeriesRequest.TimeSeriesView view = ListTimeSeriesRequest.TimeSeriesView.forNumber(0);
           for (TimeSeries element :
               metricServiceClient.listTimeSeries(name, filter, interval, view).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name), organization or folder on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID] folders/[FOLDER_ID]

        filter - Required. A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:

        metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

        interval - Required. The time interval for which results should be returned. Only time series that contain data points in the specified interval are included in the response.
        view - Required. Specifies which information is returned about the time series.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTimeSeries

        public final MetricServiceClient.ListTimeSeriesPagedResponse listTimeSeries​(ProjectName name,
                                                                                    String filter,
                                                                                    TimeInterval interval,
                                                                                    ListTimeSeriesRequest.TimeSeriesView view)
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           String filter = "filter-1274492040";
           TimeInterval interval = TimeInterval.newBuilder().build();
           ListTimeSeriesRequest.TimeSeriesView view = ListTimeSeriesRequest.TimeSeriesView.forNumber(0);
           for (TimeSeries element :
               metricServiceClient.listTimeSeries(name, filter, interval, view).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name), organization or folder on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID] folders/[FOLDER_ID]

        filter - Required. A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:

        metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

        interval - Required. The time interval for which results should be returned. Only time series that contain data points in the specified interval are included in the response.
        view - Required. Specifies which information is returned about the time series.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTimeSeries

        public final MetricServiceClient.ListTimeSeriesPagedResponse listTimeSeries​(String name,
                                                                                    String filter,
                                                                                    TimeInterval interval,
                                                                                    ListTimeSeriesRequest.TimeSeriesView view)
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           String filter = "filter-1274492040";
           TimeInterval interval = TimeInterval.newBuilder().build();
           ListTimeSeriesRequest.TimeSeriesView view = ListTimeSeriesRequest.TimeSeriesView.forNumber(0);
           for (TimeSeries element :
               metricServiceClient.listTimeSeries(name, filter, interval, view).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name), organization or folder on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER] organizations/[ORGANIZATION_ID] folders/[FOLDER_ID]

        filter - Required. A [monitoring filter](https://cloud.google.com/monitoring/api/v3/filters) that specifies which time series should be returned. The filter must specify a single metric type, and can additionally specify metric labels and other information. For example:

        metric.type = "compute.googleapis.com/instance/cpu/usage_time" AND metric.labels.instance_name = "my-instance-name"

        interval - Required. The time interval for which results should be returned. Only time series that contain data points in the specified interval are included in the response.
        view - Required. Specifies which information is returned about the time series.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTimeSeries

        public final MetricServiceClient.ListTimeSeriesPagedResponse listTimeSeries​(ListTimeSeriesRequest request)
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListTimeSeriesRequest request =
               ListTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setInterval(TimeInterval.newBuilder().build())
                   .setAggregation(Aggregation.newBuilder().build())
                   .setSecondaryAggregation(Aggregation.newBuilder().build())
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (TimeSeries element : metricServiceClient.listTimeSeries(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTimeSeriesPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTimeSeriesRequest,​MetricServiceClient.ListTimeSeriesPagedResponse> listTimeSeriesPagedCallable()
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListTimeSeriesRequest request =
               ListTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setInterval(TimeInterval.newBuilder().build())
                   .setAggregation(Aggregation.newBuilder().build())
                   .setSecondaryAggregation(Aggregation.newBuilder().build())
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<TimeSeries> future =
               metricServiceClient.listTimeSeriesPagedCallable().futureCall(request);
           // Do something.
           for (TimeSeries element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listTimeSeriesCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTimeSeriesRequest,​ListTimeSeriesResponse> listTimeSeriesCallable()
        Lists time series that match a filter. This method does not require a Workspace.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ListTimeSeriesRequest request =
               ListTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .setFilter("filter-1274492040")
                   .setInterval(TimeInterval.newBuilder().build())
                   .setAggregation(Aggregation.newBuilder().build())
                   .setSecondaryAggregation(Aggregation.newBuilder().build())
                   .setOrderBy("orderBy-1207110587")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListTimeSeriesResponse response =
                 metricServiceClient.listTimeSeriesCallable().call(request);
             for (TimeSeries element : response.getTimeSeriesList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • createTimeSeries

        public final void createTimeSeries​(ProjectName name,
                                           List<TimeSeries> timeSeries)
        Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           List<TimeSeries> timeSeries = new ArrayList<>();
           metricServiceClient.createTimeSeries(name, timeSeries);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        timeSeries - Required. The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each `TimeSeries` value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.

        The maximum number of `TimeSeries` objects per `Create` request is 200.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTimeSeries

        public final void createTimeSeries​(String name,
                                           List<TimeSeries> timeSeries)
        Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           List<TimeSeries> timeSeries = new ArrayList<>();
           metricServiceClient.createTimeSeries(name, timeSeries);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        timeSeries - Required. The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each `TimeSeries` value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.

        The maximum number of `TimeSeries` objects per `Create` request is 200.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTimeSeries

        public final void createTimeSeries​(CreateTimeSeriesRequest request)
        Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateTimeSeriesRequest request =
               CreateTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .addAllTimeSeries(new ArrayList<TimeSeries>())
                   .build();
           metricServiceClient.createTimeSeries(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTimeSeriesCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTimeSeriesRequest,​com.google.protobuf.Empty> createTimeSeriesCallable()
        Creates or adds data to one or more time series. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateTimeSeriesRequest request =
               CreateTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .addAllTimeSeries(new ArrayList<TimeSeries>())
                   .build();
           ApiFuture<Empty> future = metricServiceClient.createTimeSeriesCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • createServiceTimeSeries

        public final void createServiceTimeSeries​(ProjectName name,
                                                  List<TimeSeries> timeSeries)
        Creates or adds data to one or more service time series. A service time series is a time series for a metric from a Google Cloud service. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response. This endpoint rejects writes to user-defined metrics. This method is only for use by Google Cloud services. Use [projects.timeSeries.create][google.monitoring.v3.MetricService.CreateTimeSeries] instead.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           ProjectName name = ProjectName.of("[PROJECT]");
           List<TimeSeries> timeSeries = new ArrayList<>();
           metricServiceClient.createServiceTimeSeries(name, timeSeries);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        timeSeries - Required. The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each `TimeSeries` value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.

        The maximum number of `TimeSeries` objects per `Create` request is 200.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createServiceTimeSeries

        public final void createServiceTimeSeries​(String name,
                                                  List<TimeSeries> timeSeries)
        Creates or adds data to one or more service time series. A service time series is a time series for a metric from a Google Cloud service. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response. This endpoint rejects writes to user-defined metrics. This method is only for use by Google Cloud services. Use [projects.timeSeries.create][google.monitoring.v3.MetricService.CreateTimeSeries] instead.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           String name = ProjectName.of("[PROJECT]").toString();
           List<TimeSeries> timeSeries = new ArrayList<>();
           metricServiceClient.createServiceTimeSeries(name, timeSeries);
         }
         
        Parameters:
        name - Required. The [project](https://cloud.google.com/monitoring/api/v3#project_name) on which to execute the request. The format is:

        projects/[PROJECT_ID_OR_NUMBER]

        timeSeries - Required. The new data to be added to a list of time series. Adds at most one data point to each of several time series. The new data point must be more recent than any other point in its time series. Each `TimeSeries` value must fully specify a unique time series by supplying all label values for the metric and the monitored resource.

        The maximum number of `TimeSeries` objects per `Create` request is 200.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createServiceTimeSeries

        public final void createServiceTimeSeries​(CreateTimeSeriesRequest request)
        Creates or adds data to one or more service time series. A service time series is a time series for a metric from a Google Cloud service. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response. This endpoint rejects writes to user-defined metrics. This method is only for use by Google Cloud services. Use [projects.timeSeries.create][google.monitoring.v3.MetricService.CreateTimeSeries] instead.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateTimeSeriesRequest request =
               CreateTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .addAllTimeSeries(new ArrayList<TimeSeries>())
                   .build();
           metricServiceClient.createServiceTimeSeries(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createServiceTimeSeriesCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTimeSeriesRequest,​com.google.protobuf.Empty> createServiceTimeSeriesCallable()
        Creates or adds data to one or more service time series. A service time series is a time series for a metric from a Google Cloud service. The response is empty if all time series in the request were written. If any time series could not be written, a corresponding failure message is included in the error response. This endpoint rejects writes to user-defined metrics. This method is only for use by Google Cloud services. Use [projects.timeSeries.create][google.monitoring.v3.MetricService.CreateTimeSeries] instead.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (MetricServiceClient metricServiceClient = MetricServiceClient.create()) {
           CreateTimeSeriesRequest request =
               CreateTimeSeriesRequest.newBuilder()
                   .setName(ProjectName.of("[PROJECT]").toString())
                   .addAllTimeSeries(new ArrayList<TimeSeries>())
                   .build();
           ApiFuture<Empty> future =
               metricServiceClient.createServiceTimeSeriesCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface com.google.api.gax.core.BackgroundResource
      • isShutdown

        public boolean isShutdown()
        Specified by:
        isShutdown in interface com.google.api.gax.core.BackgroundResource
      • isTerminated

        public boolean isTerminated()
        Specified by:
        isTerminated in interface com.google.api.gax.core.BackgroundResource
      • shutdownNow

        public void shutdownNow()
        Specified by:
        shutdownNow in interface com.google.api.gax.core.BackgroundResource