Interface AiOpsAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface AiOpsAsyncClient extends AwsClient
Service client for accessing AWS AI Ops asynchronously. This can be created using the static builder() method.The asynchronous client performs non-blocking I/O when configured with any SdkAsyncHttpClient supported in the SDK. However, full non-blocking is not guaranteed as the async client may perform blocking calls in some cases such as credentials retrieval and endpoint discovery as part of the async API call.

The CloudWatch investigations feature is a generative AI-powered assistant that can help you respond to incidents in your system. It uses generative AI to scan your system's telemetry and quickly surface suggestions that might be related to your issue. These suggestions include metrics, logs, deployment events, and root-cause hypotheses.

You can use API actions to create, manage, and delete investigation groups and investigation group policies. To start and manage investigations, you must use the CloudWatch console.

  • Field Details

  • Method Details

    • createInvestigationGroup

      default CompletableFuture<CreateInvestigationGroupResponse> createInvestigationGroup(CreateInvestigationGroupRequest createInvestigationGroupRequest)

      Creates an investigation group in your account. Creating an investigation group is a one-time setup task for each Region in your account. It is a necessary task to be able to perform investigations.

      Settings in the investigation group help you centrally manage the common properties of your investigations, such as the following:

      • Who can access the investigations

      • Whether investigation data is encrypted with a customer managed Key Management Service key.

      • How long investigations and their data are retained by default.

      Currently, you can have one investigation group in each Region in your account. Each investigation in a Region is a part of the investigation group in that Region

      To create an investigation group and set up CloudWatch investigations, you must be signed in to an IAM principal that has the either the AIOpsConsoleAdminPolicy or the AdministratorAccess IAM policy attached, or to an account that has similar permissions.

      You can configure CloudWatch alarms to start investigations and add events to investigations. If you create your investigation group with CreateInvestigationGroup and you want to enable alarms to do this, you must use PutInvestigationGroupPolicy to create a resource policy that grants this permission to CloudWatch alarms.

      For more information about configuring CloudWatch alarms to work with CloudWatch investigations, see

      Parameters:
      createInvestigationGroupRequest -
      Returns:
      A Java Future containing the result of the CreateInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ServiceQuotaExceededException This request exceeds a service quota.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • createInvestigationGroup

      default CompletableFuture<CreateInvestigationGroupResponse> createInvestigationGroup(Consumer<CreateInvestigationGroupRequest.Builder> createInvestigationGroupRequest)

      Creates an investigation group in your account. Creating an investigation group is a one-time setup task for each Region in your account. It is a necessary task to be able to perform investigations.

      Settings in the investigation group help you centrally manage the common properties of your investigations, such as the following:

      • Who can access the investigations

      • Whether investigation data is encrypted with a customer managed Key Management Service key.

      • How long investigations and their data are retained by default.

      Currently, you can have one investigation group in each Region in your account. Each investigation in a Region is a part of the investigation group in that Region

      To create an investigation group and set up CloudWatch investigations, you must be signed in to an IAM principal that has the either the AIOpsConsoleAdminPolicy or the AdministratorAccess IAM policy attached, or to an account that has similar permissions.

      You can configure CloudWatch alarms to start investigations and add events to investigations. If you create your investigation group with CreateInvestigationGroup and you want to enable alarms to do this, you must use PutInvestigationGroupPolicy to create a resource policy that grants this permission to CloudWatch alarms.

      For more information about configuring CloudWatch alarms to work with CloudWatch investigations, see


      This is a convenience which creates an instance of the CreateInvestigationGroupRequest.Builder avoiding the need to create one manually via CreateInvestigationGroupRequest.builder()

      Parameters:
      createInvestigationGroupRequest - A Consumer that will call methods on CreateInvestigationGroupRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the CreateInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ServiceQuotaExceededException This request exceeds a service quota.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteInvestigationGroup

      default CompletableFuture<DeleteInvestigationGroupResponse> deleteInvestigationGroup(DeleteInvestigationGroupRequest deleteInvestigationGroupRequest)

      Deletes the specified investigation group from your account. You can currently have one investigation group per Region in your account. After you delete an investigation group, you can later create a new investigation group in the same Region.

      Parameters:
      deleteInvestigationGroupRequest -
      Returns:
      A Java Future containing the result of the DeleteInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteInvestigationGroup

      default CompletableFuture<DeleteInvestigationGroupResponse> deleteInvestigationGroup(Consumer<DeleteInvestigationGroupRequest.Builder> deleteInvestigationGroupRequest)

      Deletes the specified investigation group from your account. You can currently have one investigation group per Region in your account. After you delete an investigation group, you can later create a new investigation group in the same Region.


      This is a convenience which creates an instance of the DeleteInvestigationGroupRequest.Builder avoiding the need to create one manually via DeleteInvestigationGroupRequest.builder()

      Parameters:
      deleteInvestigationGroupRequest - A Consumer that will call methods on DeleteInvestigationGroupRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DeleteInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteInvestigationGroupPolicy

      default CompletableFuture<DeleteInvestigationGroupPolicyResponse> deleteInvestigationGroupPolicy(DeleteInvestigationGroupPolicyRequest deleteInvestigationGroupPolicyRequest)

      Removes the IAM resource policy from being associated with the investigation group that you specify.

      Parameters:
      deleteInvestigationGroupPolicyRequest -
      Returns:
      A Java Future containing the result of the DeleteInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteInvestigationGroupPolicy

      default CompletableFuture<DeleteInvestigationGroupPolicyResponse> deleteInvestigationGroupPolicy(Consumer<DeleteInvestigationGroupPolicyRequest.Builder> deleteInvestigationGroupPolicyRequest)

      Removes the IAM resource policy from being associated with the investigation group that you specify.


      This is a convenience which creates an instance of the DeleteInvestigationGroupPolicyRequest.Builder avoiding the need to create one manually via DeleteInvestigationGroupPolicyRequest.builder()

      Parameters:
      deleteInvestigationGroupPolicyRequest - A Consumer that will call methods on DeleteInvestigationGroupPolicyRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DeleteInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getInvestigationGroup

      default CompletableFuture<GetInvestigationGroupResponse> getInvestigationGroup(GetInvestigationGroupRequest getInvestigationGroupRequest)

      Returns the configuration information for the specified investigation group.

      Parameters:
      getInvestigationGroupRequest -
      Returns:
      A Java Future containing the result of the GetInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getInvestigationGroup

      default CompletableFuture<GetInvestigationGroupResponse> getInvestigationGroup(Consumer<GetInvestigationGroupRequest.Builder> getInvestigationGroupRequest)

      Returns the configuration information for the specified investigation group.


      This is a convenience which creates an instance of the GetInvestigationGroupRequest.Builder avoiding the need to create one manually via GetInvestigationGroupRequest.builder()

      Parameters:
      getInvestigationGroupRequest - A Consumer that will call methods on GetInvestigationGroupRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getInvestigationGroupPolicy

      default CompletableFuture<GetInvestigationGroupPolicyResponse> getInvestigationGroupPolicy(GetInvestigationGroupPolicyRequest getInvestigationGroupPolicyRequest)

      Returns the IAM resource policy that is associated with the specified investigation group.

      Parameters:
      getInvestigationGroupPolicyRequest -
      Returns:
      A Java Future containing the result of the GetInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getInvestigationGroupPolicy

      default CompletableFuture<GetInvestigationGroupPolicyResponse> getInvestigationGroupPolicy(Consumer<GetInvestigationGroupPolicyRequest.Builder> getInvestigationGroupPolicyRequest)

      Returns the IAM resource policy that is associated with the specified investigation group.


      This is a convenience which creates an instance of the GetInvestigationGroupPolicyRequest.Builder avoiding the need to create one manually via GetInvestigationGroupPolicyRequest.builder()

      Parameters:
      getInvestigationGroupPolicyRequest - A Consumer that will call methods on GetInvestigationGroupPolicyRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listInvestigationGroups

      default CompletableFuture<ListInvestigationGroupsResponse> listInvestigationGroups(ListInvestigationGroupsRequest listInvestigationGroupsRequest)

      Returns the ARN and name of each investigation group in the account.

      Parameters:
      listInvestigationGroupsRequest -
      Returns:
      A Java Future containing the result of the ListInvestigationGroups operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listInvestigationGroups

      default CompletableFuture<ListInvestigationGroupsResponse> listInvestigationGroups(Consumer<ListInvestigationGroupsRequest.Builder> listInvestigationGroupsRequest)

      Returns the ARN and name of each investigation group in the account.


      This is a convenience which creates an instance of the ListInvestigationGroupsRequest.Builder avoiding the need to create one manually via ListInvestigationGroupsRequest.builder()

      Parameters:
      listInvestigationGroupsRequest - A Consumer that will call methods on ListInvestigationGroupsRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the ListInvestigationGroups operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listInvestigationGroupsPaginator

      default ListInvestigationGroupsPublisher listInvestigationGroupsPaginator(ListInvestigationGroupsRequest listInvestigationGroupsRequest)

      This is a variant of listInvestigationGroups(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsRequest) operation. The return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will internally handle making service calls for you.

      When the operation is called, an instance of this class is returned. At this point, no service calls are made yet and so there is no guarantee that the request is valid. If there are errors in your request, you will see the failures only after you start streaming the data. The subscribe method should be called as a request to start streaming data. For more info, see Publisher.subscribe(org.reactivestreams.Subscriber). Each call to the subscribe method will result in a new Subscription i.e., a new contract to stream data from the starting request.

      The following are few ways to use the response class:

      1) Using the subscribe helper method
       
       software.amazon.awssdk.services.aiops.paginators.ListInvestigationGroupsPublisher publisher = client.listInvestigationGroupsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.aiops.paginators.ListInvestigationGroupsPublisher publisher = client.listInvestigationGroupsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsResponse response) { //... };
       });
       
      As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.

      Please notice that the configuration of maxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listInvestigationGroups(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsRequest) operation.

      Parameters:
      listInvestigationGroupsRequest -
      Returns:
      A custom publisher that can be subscribed to request a stream of response pages.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listInvestigationGroupsPaginator

      default ListInvestigationGroupsPublisher listInvestigationGroupsPaginator(Consumer<ListInvestigationGroupsRequest.Builder> listInvestigationGroupsRequest)

      This is a variant of listInvestigationGroups(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsRequest) operation. The return type is a custom publisher that can be subscribed to request a stream of response pages. SDK will internally handle making service calls for you.

      When the operation is called, an instance of this class is returned. At this point, no service calls are made yet and so there is no guarantee that the request is valid. If there are errors in your request, you will see the failures only after you start streaming the data. The subscribe method should be called as a request to start streaming data. For more info, see Publisher.subscribe(org.reactivestreams.Subscriber). Each call to the subscribe method will result in a new Subscription i.e., a new contract to stream data from the starting request.

      The following are few ways to use the response class:

      1) Using the subscribe helper method
       
       software.amazon.awssdk.services.aiops.paginators.ListInvestigationGroupsPublisher publisher = client.listInvestigationGroupsPaginator(request);
       CompletableFuture<Void> future = publisher.subscribe(res -> { // Do something with the response });
       future.get();
       
       
      2) Using a custom subscriber
       
       software.amazon.awssdk.services.aiops.paginators.ListInvestigationGroupsPublisher publisher = client.listInvestigationGroupsPaginator(request);
       publisher.subscribe(new Subscriber<software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsResponse>() {
       
       public void onSubscribe(org.reactivestreams.Subscriber subscription) { //... };
       
       
       public void onNext(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsResponse response) { //... };
       });
       
      As the response is a publisher, it can work well with third party reactive streams implementations like RxJava2.

      Please notice that the configuration of maxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listInvestigationGroups(software.amazon.awssdk.services.aiops.model.ListInvestigationGroupsRequest) operation.


      This is a convenience which creates an instance of the ListInvestigationGroupsRequest.Builder avoiding the need to create one manually via ListInvestigationGroupsRequest.builder()

      Parameters:
      listInvestigationGroupsRequest - A Consumer that will call methods on ListInvestigationGroupsRequest.Builder to create a request.
      Returns:
      A custom publisher that can be subscribed to request a stream of response pages.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listTagsForResource

      default CompletableFuture<ListTagsForResourceResponse> listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest)

      Displays the tags associated with a CloudWatch investigations resource. Currently, investigation groups support tagging.

      Parameters:
      listTagsForResourceRequest -
      Returns:
      A Java Future containing the result of the ListTagsForResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • listTagsForResource

      default CompletableFuture<ListTagsForResourceResponse> listTagsForResource(Consumer<ListTagsForResourceRequest.Builder> listTagsForResourceRequest)

      Displays the tags associated with a CloudWatch investigations resource. Currently, investigation groups support tagging.


      This is a convenience which creates an instance of the ListTagsForResourceRequest.Builder avoiding the need to create one manually via ListTagsForResourceRequest.builder()

      Parameters:
      listTagsForResourceRequest - A Consumer that will call methods on ListTagsForResourceRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the ListTagsForResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • putInvestigationGroupPolicy

      default CompletableFuture<PutInvestigationGroupPolicyResponse> putInvestigationGroupPolicy(PutInvestigationGroupPolicyRequest putInvestigationGroupPolicyRequest)

      Creates an IAM resource policy and assigns it to the specified investigation group.

      If you create your investigation group with CreateInvestigationGroup and you want to enable CloudWatch alarms to create investigations and add events to investigations, you must use this operation to create a policy similar to this example.

      { "Version": "2008-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "aiops.alarms.cloudwatch.amazonaws.com" }, "Action": ["aiops:CreateInvestigation", "aiops:CreateInvestigationEvent"], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:alarm:*" } } }] }

      Parameters:
      putInvestigationGroupPolicyRequest -
      Returns:
      A Java Future containing the result of the PutInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • putInvestigationGroupPolicy

      default CompletableFuture<PutInvestigationGroupPolicyResponse> putInvestigationGroupPolicy(Consumer<PutInvestigationGroupPolicyRequest.Builder> putInvestigationGroupPolicyRequest)

      Creates an IAM resource policy and assigns it to the specified investigation group.

      If you create your investigation group with CreateInvestigationGroup and you want to enable CloudWatch alarms to create investigations and add events to investigations, you must use this operation to create a policy similar to this example.

      { "Version": "2008-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "aiops.alarms.cloudwatch.amazonaws.com" }, "Action": ["aiops:CreateInvestigation", "aiops:CreateInvestigationEvent"], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "aws:SourceArn": "arn:aws:cloudwatch:region:account-id:alarm:*" } } }] }


      This is a convenience which creates an instance of the PutInvestigationGroupPolicyRequest.Builder avoiding the need to create one manually via PutInvestigationGroupPolicyRequest.builder()

      Parameters:
      putInvestigationGroupPolicyRequest - A Consumer that will call methods on PutInvestigationGroupPolicyRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the PutInvestigationGroupPolicy operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • tagResource

      default CompletableFuture<TagResourceResponse> tagResource(TagResourceRequest tagResourceRequest)

      Assigns one or more tags (key-value pairs) to the specified resource.

      Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

      Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

      You can associate as many as 50 tags with a resource.

      Parameters:
      tagResourceRequest -
      Returns:
      A Java Future containing the result of the TagResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • tagResource

      default CompletableFuture<TagResourceResponse> tagResource(Consumer<TagResourceRequest.Builder> tagResourceRequest)

      Assigns one or more tags (key-value pairs) to the specified resource.

      Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

      Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

      You can associate as many as 50 tags with a resource.


      This is a convenience which creates an instance of the TagResourceRequest.Builder avoiding the need to create one manually via TagResourceRequest.builder()

      Parameters:
      tagResourceRequest - A Consumer that will call methods on TagResourceRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the TagResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • untagResource

      default CompletableFuture<UntagResourceResponse> untagResource(UntagResourceRequest untagResourceRequest)

      Removes one or more tags from the specified resource.

      Parameters:
      untagResourceRequest -
      Returns:
      A Java Future containing the result of the UntagResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • untagResource

      default CompletableFuture<UntagResourceResponse> untagResource(Consumer<UntagResourceRequest.Builder> untagResourceRequest)

      Removes one or more tags from the specified resource.


      This is a convenience which creates an instance of the UntagResourceRequest.Builder avoiding the need to create one manually via UntagResourceRequest.builder()

      Parameters:
      untagResourceRequest - A Consumer that will call methods on UntagResourceRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the UntagResource operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateInvestigationGroup

      default CompletableFuture<UpdateInvestigationGroupResponse> updateInvestigationGroup(UpdateInvestigationGroupRequest updateInvestigationGroupRequest)

      Updates the configuration of the specified investigation group.

      Parameters:
      updateInvestigationGroupRequest -
      Returns:
      A Java Future containing the result of the UpdateInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • updateInvestigationGroup

      default CompletableFuture<UpdateInvestigationGroupResponse> updateInvestigationGroup(Consumer<UpdateInvestigationGroupRequest.Builder> updateInvestigationGroupRequest)

      Updates the configuration of the specified investigation group.


      This is a convenience which creates an instance of the UpdateInvestigationGroupRequest.Builder avoiding the need to create one manually via UpdateInvestigationGroupRequest.builder()

      Parameters:
      updateInvestigationGroupRequest - A Consumer that will call methods on UpdateInvestigationGroupRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the UpdateInvestigationGroup operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • AccessDeniedException You don't have sufficient permissions to perform this action.
      • ForbiddenException Access id denied for this operation, or this operation is not valid for the specified resource.
      • ResourceNotFoundException The specified resource doesn't exist.
      • ThrottlingException The request was throttled because of quota limits. You can try again later.
      • ValidationException This operation or its parameters aren't formatted correctly.
      • InternalServerException An internal server error occurred. You can try again later.
      • ConflictException This operation couldn't be completed because of a conflict in resource states.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • AiOpsException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default AiOpsServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration
    • create

      static AiOpsAsyncClient create()
      Create a AiOpsAsyncClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      static AiOpsAsyncClientBuilder builder()
      Create a builder that can be used to configure and create a AiOpsAsyncClient.