/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.prometheus; import javax.annotation.Generated; import com.amazonaws.*; import com.amazonaws.regions.*; import com.amazonaws.services.prometheus.model.*; import com.amazonaws.services.prometheus.waiters.AmazonPrometheusWaiters; /** * Interface for accessing Amazon Prometheus Service. *
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from * {@link com.amazonaws.services.prometheus.AbstractAmazonPrometheus} instead. *
**
* Amazon Managed Service for Prometheus *
*/ @Generated("com.amazonaws:aws-java-sdk-code-generator") public interface AmazonPrometheus { /** * The region metadata service name for computing region endpoints. You can use this value to retrieve metadata * (such as supported regions) of the service. * * @see RegionUtils#getRegionsForService(String) */ String ENDPOINT_PREFIX = "aps"; /** ** Create an alert manager definition. *
* * @param createAlertManagerDefinitionRequest * Represents the input of a CreateAlertManagerDefinition operation. * @return Result of the CreateAlertManagerDefinition operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.CreateAlertManagerDefinition * @see AWS API Documentation */ CreateAlertManagerDefinitionResult createAlertManagerDefinition(CreateAlertManagerDefinitionRequest createAlertManagerDefinitionRequest); /** ** Create logging configuration. *
* * @param createLoggingConfigurationRequest * Represents the input of a CreateLoggingConfiguration operation. * @return Result of the CreateLoggingConfiguration operation returned by the service. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.CreateLoggingConfiguration * @see AWS * API Documentation */ CreateLoggingConfigurationResult createLoggingConfiguration(CreateLoggingConfigurationRequest createLoggingConfigurationRequest); /** ** Create a rule group namespace. *
* * @param createRuleGroupsNamespaceRequest * Represents the input of a CreateRuleGroupsNamespace operation. * @return Result of the CreateRuleGroupsNamespace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.CreateRuleGroupsNamespace * @see AWS * API Documentation */ CreateRuleGroupsNamespaceResult createRuleGroupsNamespace(CreateRuleGroupsNamespaceRequest createRuleGroupsNamespaceRequest); /** ** Creates a new AMP workspace. *
* * @param createWorkspaceRequest * Represents the input of a CreateWorkspace operation. * @return Result of the CreateWorkspace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.CreateWorkspace * @see AWS API * Documentation */ CreateWorkspaceResult createWorkspace(CreateWorkspaceRequest createWorkspaceRequest); /** ** Deletes an alert manager definition. *
* * @param deleteAlertManagerDefinitionRequest * Represents the input of a DeleteAlertManagerDefinition operation. * @return Result of the DeleteAlertManagerDefinition operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DeleteAlertManagerDefinition * @see AWS API Documentation */ DeleteAlertManagerDefinitionResult deleteAlertManagerDefinition(DeleteAlertManagerDefinitionRequest deleteAlertManagerDefinitionRequest); /** ** Delete logging configuration. *
* * @param deleteLoggingConfigurationRequest * Represents the input of a DeleteLoggingConfiguration operation. * @return Result of the DeleteLoggingConfiguration operation returned by the service. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DeleteLoggingConfiguration * @see AWS * API Documentation */ DeleteLoggingConfigurationResult deleteLoggingConfiguration(DeleteLoggingConfigurationRequest deleteLoggingConfigurationRequest); /** ** Delete a rule groups namespace. *
* * @param deleteRuleGroupsNamespaceRequest * Represents the input of a DeleteRuleGroupsNamespace operation. * @return Result of the DeleteRuleGroupsNamespace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DeleteRuleGroupsNamespace * @see AWS * API Documentation */ DeleteRuleGroupsNamespaceResult deleteRuleGroupsNamespace(DeleteRuleGroupsNamespaceRequest deleteRuleGroupsNamespaceRequest); /** ** Deletes an AMP workspace. *
* * @param deleteWorkspaceRequest * Represents the input of a DeleteWorkspace operation. * @return Result of the DeleteWorkspace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DeleteWorkspace * @see AWS API * Documentation */ DeleteWorkspaceResult deleteWorkspace(DeleteWorkspaceRequest deleteWorkspaceRequest); /** ** Describes an alert manager definition. *
* * @param describeAlertManagerDefinitionRequest * Represents the input of a DescribeAlertManagerDefinition operation. * @return Result of the DescribeAlertManagerDefinition operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DescribeAlertManagerDefinition * @see AWS API Documentation */ DescribeAlertManagerDefinitionResult describeAlertManagerDefinition(DescribeAlertManagerDefinitionRequest describeAlertManagerDefinitionRequest); /** ** Describes logging configuration. *
* * @param describeLoggingConfigurationRequest * Represents the input of a DescribeLoggingConfiguration operation. * @return Result of the DescribeLoggingConfiguration operation returned by the service. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DescribeLoggingConfiguration * @see AWS API Documentation */ DescribeLoggingConfigurationResult describeLoggingConfiguration(DescribeLoggingConfigurationRequest describeLoggingConfigurationRequest); /** ** Describe a rule groups namespace. *
* * @param describeRuleGroupsNamespaceRequest * Represents the input of a DescribeRuleGroupsNamespace operation. * @return Result of the DescribeRuleGroupsNamespace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DescribeRuleGroupsNamespace * @see AWS API Documentation */ DescribeRuleGroupsNamespaceResult describeRuleGroupsNamespace(DescribeRuleGroupsNamespaceRequest describeRuleGroupsNamespaceRequest); /** ** Describes an existing AMP workspace. *
* * @param describeWorkspaceRequest * Represents the input of a DescribeWorkspace operation. * @return Result of the DescribeWorkspace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.DescribeWorkspace * @see AWS API * Documentation */ DescribeWorkspaceResult describeWorkspace(DescribeWorkspaceRequest describeWorkspaceRequest); /** ** Lists rule groups namespaces. *
* * @param listRuleGroupsNamespacesRequest * Represents the input of a ListRuleGroupsNamespaces operation. * @return Result of the ListRuleGroupsNamespaces operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.ListRuleGroupsNamespaces * @see AWS * API Documentation */ ListRuleGroupsNamespacesResult listRuleGroupsNamespaces(ListRuleGroupsNamespacesRequest listRuleGroupsNamespacesRequest); /** ** Lists the tags you have assigned to the resource. *
* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.ListTagsForResource * @see AWS API * Documentation */ ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest); /** ** Lists all AMP workspaces, including workspaces being created or deleted. *
* * @param listWorkspacesRequest * Represents the input of a ListWorkspaces operation. * @return Result of the ListWorkspaces operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.ListWorkspaces * @see AWS API * Documentation */ ListWorkspacesResult listWorkspaces(ListWorkspacesRequest listWorkspacesRequest); /** ** Update an alert manager definition. *
* * @param putAlertManagerDefinitionRequest * Represents the input of a PutAlertManagerDefinition operation. * @return Result of the PutAlertManagerDefinition operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.PutAlertManagerDefinition * @see AWS * API Documentation */ PutAlertManagerDefinitionResult putAlertManagerDefinition(PutAlertManagerDefinitionRequest putAlertManagerDefinitionRequest); /** ** Update a rule groups namespace. *
* * @param putRuleGroupsNamespaceRequest * Represents the input of a PutRuleGroupsNamespace operation. * @return Result of the PutRuleGroupsNamespace operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.PutRuleGroupsNamespace * @see AWS API * Documentation */ PutRuleGroupsNamespaceResult putRuleGroupsNamespace(PutRuleGroupsNamespaceRequest putRuleGroupsNamespaceRequest); /** ** Creates tags for the specified resource. *
* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.TagResource * @see AWS API * Documentation */ TagResourceResult tagResource(TagResourceRequest tagResourceRequest); /** ** Deletes tags from the specified resource. *
* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.UntagResource * @see AWS API * Documentation */ UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest); /** ** Update logging configuration. *
* * @param updateLoggingConfigurationRequest * Represents the input of an UpdateLoggingConfiguration operation. * @return Result of the UpdateLoggingConfiguration operation returned by the service. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @sample AmazonPrometheus.UpdateLoggingConfiguration * @see AWS * API Documentation */ UpdateLoggingConfigurationResult updateLoggingConfiguration(UpdateLoggingConfigurationRequest updateLoggingConfigurationRequest); /** ** Updates an AMP workspace alias. *
* * @param updateWorkspaceAliasRequest * Represents the input of an UpdateWorkspaceAlias operation. * @return Result of the UpdateWorkspaceAlias operation returned by the service. * @throws ThrottlingException * Request was denied due to request throttling. * @throws ConflictException * Updating or deleting a resource can cause an inconsistent state. * @throws ValidationException * The input fails to satisfy the constraints specified by an AWS service. * @throws ResourceNotFoundException * Request references a resource which does not exist. * @throws AccessDeniedException * User does not have sufficient access to perform this action. * @throws InternalServerException * Unexpected error during processing of request. * @throws ServiceQuotaExceededException * Request would cause a service quota to be exceeded. * @sample AmazonPrometheus.UpdateWorkspaceAlias * @see AWS API * Documentation */ UpdateWorkspaceAliasResult updateWorkspaceAlias(UpdateWorkspaceAliasRequest updateWorkspaceAliasRequest); /** * Shuts down this client object, releasing any resources that might be held open. This is an optional method, and * callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client * has been shutdown, it should not be used to make any more requests. */ void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. ** Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none is available. */ ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); AmazonPrometheusWaiters waiters(); }