Class MetricsScopesClient (0.2.0)

public class MetricsScopesClient implements BackgroundResource

Service Description: Manages Cloud Monitoring Metrics Scopes, and the monitoring of Google Cloud projects and AWS accounts.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   MetricsScopeName name = MetricsScopeName.of("[METRICS_SCOPE]");
   MetricsScope response = metricsScopesClient.getMetricsScope(name);
 }
 

Note: close() needs to be called on the MetricsScopesClient 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 MetricsScopesSettings 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
 MetricsScopesSettings metricsScopesSettings =
     MetricsScopesSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 MetricsScopesClient metricsScopesClient = MetricsScopesClient.create(metricsScopesSettings);
 

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
 MetricsScopesSettings metricsScopesSettings =
     MetricsScopesSettings.newBuilder().setEndpoint(myEndpoint).build();
 MetricsScopesClient metricsScopesClient = MetricsScopesClient.create(metricsScopesSettings);
 

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

Inheritance

java.lang.Object > MetricsScopesClient

Implements

BackgroundResource

Static Methods

create()

public static final MetricsScopesClient create()

Constructs an instance of MetricsScopesClient with default settings.

Returns
TypeDescription
MetricsScopesClient
Exceptions
TypeDescription
IOException

create(MetricsScopesSettings settings)

public static final MetricsScopesClient create(MetricsScopesSettings settings)

Constructs an instance of MetricsScopesClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
NameDescription
settingsMetricsScopesSettings
Returns
TypeDescription
MetricsScopesClient
Exceptions
TypeDescription
IOException

create(MetricsScopesStub stub)

public static final MetricsScopesClient create(MetricsScopesStub stub)

Constructs an instance of MetricsScopesClient, using the given stub for making calls. This is for advanced usage - prefer using create(MetricsScopesSettings).

Parameter
NameDescription
stubMetricsScopesStub
Returns
TypeDescription
MetricsScopesClient

Constructors

MetricsScopesClient(MetricsScopesSettings settings)

protected MetricsScopesClient(MetricsScopesSettings settings)

Constructs an instance of MetricsScopesClient, 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.

Parameter
NameDescription
settingsMetricsScopesSettings

MetricsScopesClient(MetricsScopesStub stub)

protected MetricsScopesClient(MetricsScopesStub stub)
Parameter
NameDescription
stubMetricsScopesStub

Methods

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
NameDescription
durationlong
unitTimeUnit
Returns
TypeDescription
boolean
Exceptions
TypeDescription
InterruptedException

close()

public final void close()

createMonitoredProjectAsync(CreateMonitoredProjectRequest request)

public final OperationFuture<MonitoredProject,OperationMetadata> createMonitoredProjectAsync(CreateMonitoredProjectRequest request)

Adds a MonitoredProject with the given project ID to the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   CreateMonitoredProjectRequest request =
       CreateMonitoredProjectRequest.newBuilder()
           .setParent(MetricsScopeName.of("[METRICS_SCOPE]").toString())
           .setMonitoredProject(MonitoredProject.newBuilder().build())
           .build();
   MonitoredProject response = metricsScopesClient.createMonitoredProjectAsync(request).get();
 }
 
Parameter
NameDescription
requestCreateMonitoredProjectRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<MonitoredProject,OperationMetadata>

createMonitoredProjectAsync(MetricsScopeName parent, MonitoredProject monitoredProject)

public final OperationFuture<MonitoredProject,OperationMetadata> createMonitoredProjectAsync(MetricsScopeName parent, MonitoredProject monitoredProject)

Adds a MonitoredProject with the given project ID to the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   MetricsScopeName parent = MetricsScopeName.of("[METRICS_SCOPE]");
   MonitoredProject monitoredProject = MonitoredProject.newBuilder().build();
   MonitoredProject response =
       metricsScopesClient.createMonitoredProjectAsync(parent, monitoredProject).get();
 }
 
Parameters
NameDescription
parentMetricsScopeName

Required. The resource name of the existing Metrics Scope that will monitor this project. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}

monitoredProjectMonitoredProject

Required. The initial MonitoredProject configuration. Specify only the monitored_project.name field. All other fields are ignored. The monitored_project.name must be in the format: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}/projects/{MONITORED_PROJECT_ID_OR_NUMBER}

Returns
TypeDescription
OperationFuture<MonitoredProject,OperationMetadata>

createMonitoredProjectAsync(String parent, MonitoredProject monitoredProject)

public final OperationFuture<MonitoredProject,OperationMetadata> createMonitoredProjectAsync(String parent, MonitoredProject monitoredProject)

Adds a MonitoredProject with the given project ID to the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   String parent = MetricsScopeName.of("[METRICS_SCOPE]").toString();
   MonitoredProject monitoredProject = MonitoredProject.newBuilder().build();
   MonitoredProject response =
       metricsScopesClient.createMonitoredProjectAsync(parent, monitoredProject).get();
 }
 
Parameters
NameDescription
parentString

Required. The resource name of the existing Metrics Scope that will monitor this project. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}

monitoredProjectMonitoredProject

Required. The initial MonitoredProject configuration. Specify only the monitored_project.name field. All other fields are ignored. The monitored_project.name must be in the format: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}/projects/{MONITORED_PROJECT_ID_OR_NUMBER}

Returns
TypeDescription
OperationFuture<MonitoredProject,OperationMetadata>

createMonitoredProjectCallable()

public final UnaryCallable<CreateMonitoredProjectRequest,Operation> createMonitoredProjectCallable()

Adds a MonitoredProject with the given project ID to the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   CreateMonitoredProjectRequest request =
       CreateMonitoredProjectRequest.newBuilder()
           .setParent(MetricsScopeName.of("[METRICS_SCOPE]").toString())
           .setMonitoredProject(MonitoredProject.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       metricsScopesClient.createMonitoredProjectCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateMonitoredProjectRequest,Operation>

createMonitoredProjectOperationCallable()

public final OperationCallable<CreateMonitoredProjectRequest,MonitoredProject,OperationMetadata> createMonitoredProjectOperationCallable()

Adds a MonitoredProject with the given project ID to the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   CreateMonitoredProjectRequest request =
       CreateMonitoredProjectRequest.newBuilder()
           .setParent(MetricsScopeName.of("[METRICS_SCOPE]").toString())
           .setMonitoredProject(MonitoredProject.newBuilder().build())
           .build();
   OperationFuture<MonitoredProject, OperationMetadata> future =
       metricsScopesClient.createMonitoredProjectOperationCallable().futureCall(request);
   // Do something.
   MonitoredProject response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<CreateMonitoredProjectRequest,MonitoredProject,OperationMetadata>

deleteMonitoredProjectAsync(DeleteMonitoredProjectRequest request)

public final OperationFuture<Empty,OperationMetadata> deleteMonitoredProjectAsync(DeleteMonitoredProjectRequest request)

Deletes a MonitoredProject from the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   DeleteMonitoredProjectRequest request =
       DeleteMonitoredProjectRequest.newBuilder()
           .setName(MonitoredProjectName.of("[METRICS_SCOPE]", "[PROJECT]").toString())
           .build();
   metricsScopesClient.deleteMonitoredProjectAsync(request).get();
 }
 
Parameter
NameDescription
requestDeleteMonitoredProjectRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteMonitoredProjectAsync(MonitoredProjectName name)

public final OperationFuture<Empty,OperationMetadata> deleteMonitoredProjectAsync(MonitoredProjectName name)

Deletes a MonitoredProject from the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   MonitoredProjectName name = MonitoredProjectName.of("[METRICS_SCOPE]", "[PROJECT]");
   metricsScopesClient.deleteMonitoredProjectAsync(name).get();
 }
 
Parameter
NameDescription
nameMonitoredProjectName

Required. The resource name of the MonitoredProject. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}/projects/{MONITORED_PROJECT_ID_OR_NUMBER}

Authorization requires the following Google IAM permissions on both the Metrics Scope and on the MonitoredProject: monitoring.metricsScopes.link

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteMonitoredProjectAsync(String name)

public final OperationFuture<Empty,OperationMetadata> deleteMonitoredProjectAsync(String name)

Deletes a MonitoredProject from the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   String name = MonitoredProjectName.of("[METRICS_SCOPE]", "[PROJECT]").toString();
   metricsScopesClient.deleteMonitoredProjectAsync(name).get();
 }
 
Parameter
NameDescription
nameString

Required. The resource name of the MonitoredProject. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}/projects/{MONITORED_PROJECT_ID_OR_NUMBER}

Authorization requires the following Google IAM permissions on both the Metrics Scope and on the MonitoredProject: monitoring.metricsScopes.link

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteMonitoredProjectCallable()

public final UnaryCallable<DeleteMonitoredProjectRequest,Operation> deleteMonitoredProjectCallable()

Deletes a MonitoredProject from the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   DeleteMonitoredProjectRequest request =
       DeleteMonitoredProjectRequest.newBuilder()
           .setName(MonitoredProjectName.of("[METRICS_SCOPE]", "[PROJECT]").toString())
           .build();
   ApiFuture<Operation> future =
       metricsScopesClient.deleteMonitoredProjectCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<DeleteMonitoredProjectRequest,Operation>

deleteMonitoredProjectOperationCallable()

public final OperationCallable<DeleteMonitoredProjectRequest,Empty,OperationMetadata> deleteMonitoredProjectOperationCallable()

Deletes a MonitoredProject from the specified Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   DeleteMonitoredProjectRequest request =
       DeleteMonitoredProjectRequest.newBuilder()
           .setName(MonitoredProjectName.of("[METRICS_SCOPE]", "[PROJECT]").toString())
           .build();
   OperationFuture<Empty, OperationMetadata> future =
       metricsScopesClient.deleteMonitoredProjectOperationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
OperationCallable<DeleteMonitoredProjectRequest,Empty,OperationMetadata>

getMetricsScope(GetMetricsScopeRequest request)

public final MetricsScope getMetricsScope(GetMetricsScopeRequest request)

Returns a specific Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   GetMetricsScopeRequest request =
       GetMetricsScopeRequest.newBuilder()
           .setName(MetricsScopeName.of("[METRICS_SCOPE]").toString())
           .build();
   MetricsScope response = metricsScopesClient.getMetricsScope(request);
 }
 
Parameter
NameDescription
requestGetMetricsScopeRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
MetricsScope

getMetricsScope(MetricsScopeName name)

public final MetricsScope getMetricsScope(MetricsScopeName name)

Returns a specific Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   MetricsScopeName name = MetricsScopeName.of("[METRICS_SCOPE]");
   MetricsScope response = metricsScopesClient.getMetricsScope(name);
 }
 
Parameter
NameDescription
nameMetricsScopeName

Required. The resource name of the Metrics Scope. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}

Returns
TypeDescription
MetricsScope

getMetricsScope(String name)

public final MetricsScope getMetricsScope(String name)

Returns a specific Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   String name = MetricsScopeName.of("[METRICS_SCOPE]").toString();
   MetricsScope response = metricsScopesClient.getMetricsScope(name);
 }
 
Parameter
NameDescription
nameString

Required. The resource name of the Metrics Scope. Example: locations/global/metricsScopes/{SCOPING_PROJECT_ID_OR_NUMBER}

Returns
TypeDescription
MetricsScope

getMetricsScopeCallable()

public final UnaryCallable<GetMetricsScopeRequest,MetricsScope> getMetricsScopeCallable()

Returns a specific Metrics Scope.

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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   GetMetricsScopeRequest request =
       GetMetricsScopeRequest.newBuilder()
           .setName(MetricsScopeName.of("[METRICS_SCOPE]").toString())
           .build();
   ApiFuture<MetricsScope> future =
       metricsScopesClient.getMetricsScopeCallable().futureCall(request);
   // Do something.
   MetricsScope response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetMetricsScopeRequest,MetricsScope>

getOperationsClient()

public final OperationsClient getOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getSettings()

public final MetricsScopesSettings getSettings()
Returns
TypeDescription
MetricsScopesSettings

getStub()

public MetricsScopesStub getStub()
Returns
TypeDescription
MetricsScopesStub

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listMetricsScopesByMonitoredProject(ListMetricsScopesByMonitoredProjectRequest request)

public final ListMetricsScopesByMonitoredProjectResponse listMetricsScopesByMonitoredProject(ListMetricsScopesByMonitoredProjectRequest request)

Returns a list of every Metrics Scope that a specific MonitoredProject has been added to. The metrics scope representing the specified monitored project will always be the first entry in the 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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   ListMetricsScopesByMonitoredProjectRequest request =
       ListMetricsScopesByMonitoredProjectRequest.newBuilder()
           .setMonitoredResourceContainer("monitoredResourceContainer884669850")
           .build();
   ListMetricsScopesByMonitoredProjectResponse response =
       metricsScopesClient.listMetricsScopesByMonitoredProject(request);
 }
 
Parameter
NameDescription
requestListMetricsScopesByMonitoredProjectRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
ListMetricsScopesByMonitoredProjectResponse

listMetricsScopesByMonitoredProjectCallable()

public final UnaryCallable<ListMetricsScopesByMonitoredProjectRequest,ListMetricsScopesByMonitoredProjectResponse> listMetricsScopesByMonitoredProjectCallable()

Returns a list of every Metrics Scope that a specific MonitoredProject has been added to. The metrics scope representing the specified monitored project will always be the first entry in the 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 (MetricsScopesClient metricsScopesClient = MetricsScopesClient.create()) {
   ListMetricsScopesByMonitoredProjectRequest request =
       ListMetricsScopesByMonitoredProjectRequest.newBuilder()
           .setMonitoredResourceContainer("monitoredResourceContainer884669850")
           .build();
   ApiFuture<ListMetricsScopesByMonitoredProjectResponse> future =
       metricsScopesClient.listMetricsScopesByMonitoredProjectCallable().futureCall(request);
   // Do something.
   ListMetricsScopesByMonitoredProjectResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ListMetricsScopesByMonitoredProjectRequest,ListMetricsScopesByMonitoredProjectResponse>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()