@ThreadSafe @Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AmazonCodeGuruProfilerAsyncClient extends AmazonCodeGuruProfilerClient implements AmazonCodeGuruProfilerAsync
AsyncHandler
can be used to receive
notification when an asynchronous operation completes.
This section provides documentation for the Amazon CodeGuru Profiler API operations.
Amazon CodeGuru Profiler collects runtime performance data from your live applications, and provides recommendations that can help you fine-tune your application performance. Using machine learning algorithms, CodeGuru Profiler can help you find your most expensive lines of code and suggest ways you can improve efficiency and remove CPU bottlenecks.
Amazon CodeGuru Profiler provides different visualizations of profiling data to help you identify what code is running on the CPU, see how much time is consumed, and suggest ways to reduce CPU utilization.
Amazon CodeGuru Profiler currently supports applications written in all Java virtual machine (JVM) languages and Python. While CodeGuru Profiler supports both visualizations and recommendations for applications written in Java, it can also generate visualizations and a subset of recommendations for applications written in other JVM languages and Python.
For more information, see What is Amazon CodeGuru Profiler in the Amazon CodeGuru Profiler User Guide.
LOGGING_AWS_REQUEST_METRIC
ENDPOINT_PREFIX
addNotificationChannels, batchGetFrameMetricData, builder, configureAgent, createProfilingGroup, deleteProfilingGroup, describeProfilingGroup, getCachedResponseMetadata, getFindingsReportAccountSummary, getNotificationConfiguration, getPolicy, getProfile, getRecommendations, listFindingsReports, listProfileTimes, listProfilingGroups, listTagsForResource, postAgentProfile, putPermission, removeNotificationChannel, removePermission, submitFeedback, tagResource, untagResource, updateProfilingGroup
addRequestHandler, addRequestHandler, configureRegion, getClientConfiguration, getEndpointPrefix, getMonitoringListeners, getRequestMetricsCollector, getServiceName, getSignerByURI, getSignerOverride, getSignerRegionOverride, getTimeOffset, makeImmutable, removeRequestHandler, removeRequestHandler, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addNotificationChannels, batchGetFrameMetricData, configureAgent, createProfilingGroup, deleteProfilingGroup, describeProfilingGroup, getCachedResponseMetadata, getFindingsReportAccountSummary, getNotificationConfiguration, getPolicy, getProfile, getRecommendations, listFindingsReports, listProfileTimes, listProfilingGroups, listTagsForResource, postAgentProfile, putPermission, removeNotificationChannel, removePermission, submitFeedback, tagResource, untagResource, updateProfilingGroup
public static AmazonCodeGuruProfilerAsyncClientBuilder asyncBuilder()
public ExecutorService getExecutorService()
public Future<AddNotificationChannelsResult> addNotificationChannelsAsync(AddNotificationChannelsRequest request)
AmazonCodeGuruProfilerAsync
Add up to 2 anomaly notifications channels for a profiling group.
addNotificationChannelsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the AddNotificationChannelsRequest.public Future<AddNotificationChannelsResult> addNotificationChannelsAsync(AddNotificationChannelsRequest request, AsyncHandler<AddNotificationChannelsRequest,AddNotificationChannelsResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Add up to 2 anomaly notifications channels for a profiling group.
addNotificationChannelsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the AddNotificationChannelsRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<BatchGetFrameMetricDataResult> batchGetFrameMetricDataAsync(BatchGetFrameMetricDataRequest request)
AmazonCodeGuruProfilerAsync
Returns the time series of values for a requested list of frame metrics from a time period.
batchGetFrameMetricDataAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the BatchGetFrameMetricDataRequest.public Future<BatchGetFrameMetricDataResult> batchGetFrameMetricDataAsync(BatchGetFrameMetricDataRequest request, AsyncHandler<BatchGetFrameMetricDataRequest,BatchGetFrameMetricDataResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns the time series of values for a requested list of frame metrics from a time period.
batchGetFrameMetricDataAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the BatchGetFrameMetricDataRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<ConfigureAgentResult> configureAgentAsync(ConfigureAgentRequest request)
AmazonCodeGuruProfilerAsync
Used by profiler agents to report their current state and to receive remote configuration updates. For example,
ConfigureAgent
can be used to tell an agent whether to profile or not and for how long to return
profiling data.
configureAgentAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the configureAgentRequest.public Future<ConfigureAgentResult> configureAgentAsync(ConfigureAgentRequest request, AsyncHandler<ConfigureAgentRequest,ConfigureAgentResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Used by profiler agents to report their current state and to receive remote configuration updates. For example,
ConfigureAgent
can be used to tell an agent whether to profile or not and for how long to return
profiling data.
configureAgentAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the configureAgentRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<CreateProfilingGroupResult> createProfilingGroupAsync(CreateProfilingGroupRequest request)
AmazonCodeGuruProfilerAsync
Creates a profiling group.
createProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the createProfiliingGroupRequest.public Future<CreateProfilingGroupResult> createProfilingGroupAsync(CreateProfilingGroupRequest request, AsyncHandler<CreateProfilingGroupRequest,CreateProfilingGroupResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Creates a profiling group.
createProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the createProfiliingGroupRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<DeleteProfilingGroupResult> deleteProfilingGroupAsync(DeleteProfilingGroupRequest request)
AmazonCodeGuruProfilerAsync
Deletes a profiling group.
deleteProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the deleteProfilingGroupRequest.public Future<DeleteProfilingGroupResult> deleteProfilingGroupAsync(DeleteProfilingGroupRequest request, AsyncHandler<DeleteProfilingGroupRequest,DeleteProfilingGroupResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Deletes a profiling group.
deleteProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the deleteProfilingGroupRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<DescribeProfilingGroupResult> describeProfilingGroupAsync(DescribeProfilingGroupRequest request)
AmazonCodeGuruProfilerAsync
Returns a
ProfilingGroupDescription
object that contains information about the requested profiling group.
describeProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the describeProfilingGroupRequest.public Future<DescribeProfilingGroupResult> describeProfilingGroupAsync(DescribeProfilingGroupRequest request, AsyncHandler<DescribeProfilingGroupRequest,DescribeProfilingGroupResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns a
ProfilingGroupDescription
object that contains information about the requested profiling group.
describeProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the describeProfilingGroupRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<GetFindingsReportAccountSummaryResult> getFindingsReportAccountSummaryAsync(GetFindingsReportAccountSummaryRequest request)
AmazonCodeGuruProfilerAsync
Returns a list of
FindingsReportSummary
objects that contain analysis results for all profiling groups in your
AWS account.
getFindingsReportAccountSummaryAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetFindingsReportAccountSummaryRequest.public Future<GetFindingsReportAccountSummaryResult> getFindingsReportAccountSummaryAsync(GetFindingsReportAccountSummaryRequest request, AsyncHandler<GetFindingsReportAccountSummaryRequest,GetFindingsReportAccountSummaryResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns a list of
FindingsReportSummary
objects that contain analysis results for all profiling groups in your
AWS account.
getFindingsReportAccountSummaryAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetFindingsReportAccountSummaryRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<GetNotificationConfigurationResult> getNotificationConfigurationAsync(GetNotificationConfigurationRequest request)
AmazonCodeGuruProfilerAsync
Get the current configuration for anomaly notifications for a profiling group.
getNotificationConfigurationAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetNotificationConfigurationRequest.public Future<GetNotificationConfigurationResult> getNotificationConfigurationAsync(GetNotificationConfigurationRequest request, AsyncHandler<GetNotificationConfigurationRequest,GetNotificationConfigurationResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Get the current configuration for anomaly notifications for a profiling group.
getNotificationConfigurationAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetNotificationConfigurationRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<GetPolicyResult> getPolicyAsync(GetPolicyRequest request)
AmazonCodeGuruProfilerAsync
Returns the JSON-formatted resource-based policy on a profiling group.
getPolicyAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the getPolicyRequest
.public Future<GetPolicyResult> getPolicyAsync(GetPolicyRequest request, AsyncHandler<GetPolicyRequest,GetPolicyResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns the JSON-formatted resource-based policy on a profiling group.
getPolicyAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the getPolicyRequest
.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<GetProfileResult> getProfileAsync(GetProfileRequest request)
AmazonCodeGuruProfilerAsync
Gets the aggregated profile of a profiling group for a specified time range. Amazon CodeGuru Profiler collects posted agent profiles for a profiling group into aggregated profiles.
<note> <p> Because aggregated profiles expire over time <code>GetProfile</code> is not idempotent. </p> </note> <p> Specify the time range for the requested aggregated profile using 1 or 2 of the following parameters: <code>startTime</code>, <code>endTime</code>, <code>period</code>. The maximum time range allowed is 7 days. If you specify all 3 parameters, an exception is thrown. If you specify only <code>period</code>, the latest aggregated profile is returned. </p> <p> Aggregated profiles are available with aggregation periods of 5 minutes, 1 hour, and 1 day, aligned to UTC. The aggregation period of an aggregated profile determines how long it is retained. For more information, see <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AggregatedProfileTime.html"> <code>AggregatedProfileTime</code> </a>. The aggregated profile's aggregation period determines how long it is retained by CodeGuru Profiler. </p> <ul> <li> <p> If the aggregation period is 5 minutes, the aggregated profile is retained for 15 days. </p> </li> <li> <p> If the aggregation period is 1 hour, the aggregated profile is retained for 60 days. </p> </li> <li> <p> If the aggregation period is 1 day, the aggregated profile is retained for 3 years. </p> </li> </ul> <p>There are two use cases for calling <code>GetProfile</code>.</p> <ol> <li> <p> If you want to return an aggregated profile that already exists, use <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ListProfileTimes.html"> <code>ListProfileTimes</code> </a> to view the time ranges of existing aggregated profiles. Use them in a <code>GetProfile</code> request to return a specific, existing aggregated profile. </p> </li> <li> <p> If you want to return an aggregated profile for a time range that doesn't align with an existing aggregated profile, then CodeGuru Profiler makes a best effort to combine existing aggregated profiles from the requested time range and return them as one aggregated profile. </p> <p> If aggregated profiles do not exist for the full time range requested, then aggregated profiles for a smaller time range are returned. For example, if the requested time range is from 00:00 to 00:20, and the existing aggregated profiles are from 00:15 and 00:25, then the aggregated profiles from 00:15 to 00:20 are returned. </p> </li> </ol>
getProfileAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the getProfileRequest.public Future<GetProfileResult> getProfileAsync(GetProfileRequest request, AsyncHandler<GetProfileRequest,GetProfileResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Gets the aggregated profile of a profiling group for a specified time range. Amazon CodeGuru Profiler collects posted agent profiles for a profiling group into aggregated profiles.
<note> <p> Because aggregated profiles expire over time <code>GetProfile</code> is not idempotent. </p> </note> <p> Specify the time range for the requested aggregated profile using 1 or 2 of the following parameters: <code>startTime</code>, <code>endTime</code>, <code>period</code>. The maximum time range allowed is 7 days. If you specify all 3 parameters, an exception is thrown. If you specify only <code>period</code>, the latest aggregated profile is returned. </p> <p> Aggregated profiles are available with aggregation periods of 5 minutes, 1 hour, and 1 day, aligned to UTC. The aggregation period of an aggregated profile determines how long it is retained. For more information, see <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_AggregatedProfileTime.html"> <code>AggregatedProfileTime</code> </a>. The aggregated profile's aggregation period determines how long it is retained by CodeGuru Profiler. </p> <ul> <li> <p> If the aggregation period is 5 minutes, the aggregated profile is retained for 15 days. </p> </li> <li> <p> If the aggregation period is 1 hour, the aggregated profile is retained for 60 days. </p> </li> <li> <p> If the aggregation period is 1 day, the aggregated profile is retained for 3 years. </p> </li> </ul> <p>There are two use cases for calling <code>GetProfile</code>.</p> <ol> <li> <p> If you want to return an aggregated profile that already exists, use <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ListProfileTimes.html"> <code>ListProfileTimes</code> </a> to view the time ranges of existing aggregated profiles. Use them in a <code>GetProfile</code> request to return a specific, existing aggregated profile. </p> </li> <li> <p> If you want to return an aggregated profile for a time range that doesn't align with an existing aggregated profile, then CodeGuru Profiler makes a best effort to combine existing aggregated profiles from the requested time range and return them as one aggregated profile. </p> <p> If aggregated profiles do not exist for the full time range requested, then aggregated profiles for a smaller time range are returned. For example, if the requested time range is from 00:00 to 00:20, and the existing aggregated profiles are from 00:15 and 00:25, then the aggregated profiles from 00:15 to 00:20 are returned. </p> </li> </ol>
getProfileAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the getProfileRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<GetRecommendationsResult> getRecommendationsAsync(GetRecommendationsRequest request)
AmazonCodeGuruProfilerAsync
Returns a list of
Recommendation
objects that contain recommendations for a profiling group for a given time
period. A list of
Anomaly
objects that contains details about anomalies detected in the profiling group for the
same time period is also returned.
getRecommendationsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetRecommendationsRequest.public Future<GetRecommendationsResult> getRecommendationsAsync(GetRecommendationsRequest request, AsyncHandler<GetRecommendationsRequest,GetRecommendationsResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns a list of
Recommendation
objects that contain recommendations for a profiling group for a given time
period. A list of
Anomaly
objects that contains details about anomalies detected in the profiling group for the
same time period is also returned.
getRecommendationsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the GetRecommendationsRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<ListFindingsReportsResult> listFindingsReportsAsync(ListFindingsReportsRequest request)
AmazonCodeGuruProfilerAsync
List the available reports for a given profiling group and time range.
listFindingsReportsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the ListFindingsReportsRequest.public Future<ListFindingsReportsResult> listFindingsReportsAsync(ListFindingsReportsRequest request, AsyncHandler<ListFindingsReportsRequest,ListFindingsReportsResult> asyncHandler)
AmazonCodeGuruProfilerAsync
List the available reports for a given profiling group and time range.
listFindingsReportsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the ListFindingsReportsRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<ListProfileTimesResult> listProfileTimesAsync(ListProfileTimesRequest request)
AmazonCodeGuruProfilerAsync
Lists the start times of the available aggregated profiles of a profiling group for an aggregation period within the specified time range.
listProfileTimesAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the listProfileTimesRequest.public Future<ListProfileTimesResult> listProfileTimesAsync(ListProfileTimesRequest request, AsyncHandler<ListProfileTimesRequest,ListProfileTimesResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Lists the start times of the available aggregated profiles of a profiling group for an aggregation period within the specified time range.
listProfileTimesAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the listProfileTimesRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<ListProfilingGroupsResult> listProfilingGroupsAsync(ListProfilingGroupsRequest request)
AmazonCodeGuruProfilerAsync
Returns a list of profiling groups. The profiling groups are returned as
ProfilingGroupDescription
objects.
listProfilingGroupsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the listProfilingGroupsRequest.public Future<ListProfilingGroupsResult> listProfilingGroupsAsync(ListProfilingGroupsRequest request, AsyncHandler<ListProfilingGroupsRequest,ListProfilingGroupsResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns a list of profiling groups. The profiling groups are returned as
ProfilingGroupDescription
objects.
listProfilingGroupsAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the listProfilingGroupsRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<ListTagsForResourceResult> listTagsForResourceAsync(ListTagsForResourceRequest request)
AmazonCodeGuruProfilerAsync
Returns a list of the tags that are assigned to a specified resource.
listTagsForResourceAsync
in interface AmazonCodeGuruProfilerAsync
public Future<ListTagsForResourceResult> listTagsForResourceAsync(ListTagsForResourceRequest request, AsyncHandler<ListTagsForResourceRequest,ListTagsForResourceResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Returns a list of the tags that are assigned to a specified resource.
listTagsForResourceAsync
in interface AmazonCodeGuruProfilerAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<PostAgentProfileResult> postAgentProfileAsync(PostAgentProfileRequest request)
AmazonCodeGuruProfilerAsync
Submits profiling data to an aggregated profile of a profiling group. To get an aggregated profile that is
created with this profiling data, use GetProfile
.
postAgentProfileAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the postAgentProfileRequest.public Future<PostAgentProfileResult> postAgentProfileAsync(PostAgentProfileRequest request, AsyncHandler<PostAgentProfileRequest,PostAgentProfileResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Submits profiling data to an aggregated profile of a profiling group. To get an aggregated profile that is
created with this profiling data, use GetProfile
.
postAgentProfileAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the postAgentProfileRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<PutPermissionResult> putPermissionAsync(PutPermissionRequest request)
AmazonCodeGuruProfilerAsync
Adds permissions to a profiling group's resource-based policy that are provided using an action group. If a
profiling group doesn't have a resource-based policy, one is created for it using the permissions in the action
group and the roles and users in the principals
parameter.
<p> The one supported action group that can be added is <code>agentPermission</code> which grants <code>ConfigureAgent</code> and <code>PostAgent</code> permissions. For more information, see <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-ug/resource-based-policies.html">Resource-based policies in CodeGuru Profiler</a> in the <i>Amazon CodeGuru Profiler User Guide</i>, <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html"> <code>ConfigureAgent</code> </a>, and <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_PostAgentProfile.html"> <code>PostAgentProfile</code> </a>. </p> <p> The first time you call <code>PutPermission</code> on a profiling group, do not specify a <code>revisionId</code> because it doesn't have a resource-based policy. Subsequent calls must provide a <code>revisionId</code> to specify which revision of the resource-based policy to add the permissions to. </p> <p> The response contains the profiling group's JSON-formatted resource policy. </p>
putPermissionAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the putPermissionRequest
.public Future<PutPermissionResult> putPermissionAsync(PutPermissionRequest request, AsyncHandler<PutPermissionRequest,PutPermissionResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Adds permissions to a profiling group's resource-based policy that are provided using an action group. If a
profiling group doesn't have a resource-based policy, one is created for it using the permissions in the action
group and the roles and users in the principals
parameter.
<p> The one supported action group that can be added is <code>agentPermission</code> which grants <code>ConfigureAgent</code> and <code>PostAgent</code> permissions. For more information, see <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-ug/resource-based-policies.html">Resource-based policies in CodeGuru Profiler</a> in the <i>Amazon CodeGuru Profiler User Guide</i>, <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html"> <code>ConfigureAgent</code> </a>, and <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/API_PostAgentProfile.html"> <code>PostAgentProfile</code> </a>. </p> <p> The first time you call <code>PutPermission</code> on a profiling group, do not specify a <code>revisionId</code> because it doesn't have a resource-based policy. Subsequent calls must provide a <code>revisionId</code> to specify which revision of the resource-based policy to add the permissions to. </p> <p> The response contains the profiling group's JSON-formatted resource policy. </p>
putPermissionAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the putPermissionRequest
.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<RemoveNotificationChannelResult> removeNotificationChannelAsync(RemoveNotificationChannelRequest request)
AmazonCodeGuruProfilerAsync
Remove one anomaly notifications channel for a profiling group.
removeNotificationChannelAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the RemoveNotificationChannelRequest.public Future<RemoveNotificationChannelResult> removeNotificationChannelAsync(RemoveNotificationChannelRequest request, AsyncHandler<RemoveNotificationChannelRequest,RemoveNotificationChannelResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Remove one anomaly notifications channel for a profiling group.
removeNotificationChannelAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the RemoveNotificationChannelRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<RemovePermissionResult> removePermissionAsync(RemovePermissionRequest request)
AmazonCodeGuruProfilerAsync
Removes permissions from a profiling group's resource-based policy that are provided using an action group. The
one supported action group that can be removed is agentPermission
which grants
ConfigureAgent
and PostAgent
permissions. For more information, see Resource-based
policies in CodeGuru Profiler in the Amazon CodeGuru Profiler User Guide,
ConfigureAgent
, and
PostAgentProfile
.
removePermissionAsync
in interface AmazonCodeGuruProfilerAsync
request
-
The structure representing the <code>removePermissionRequest</code>.</p>
public Future<RemovePermissionResult> removePermissionAsync(RemovePermissionRequest request, AsyncHandler<RemovePermissionRequest,RemovePermissionResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Removes permissions from a profiling group's resource-based policy that are provided using an action group. The
one supported action group that can be removed is agentPermission
which grants
ConfigureAgent
and PostAgent
permissions. For more information, see Resource-based
policies in CodeGuru Profiler in the Amazon CodeGuru Profiler User Guide,
ConfigureAgent
, and
PostAgentProfile
.
removePermissionAsync
in interface AmazonCodeGuruProfilerAsync
request
-
The structure representing the <code>removePermissionRequest</code>.</p>
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an implementation of the callback methods in this interface to receive notification of successful or unsuccessful completion of the operation.public Future<SubmitFeedbackResult> submitFeedbackAsync(SubmitFeedbackRequest request)
AmazonCodeGuruProfilerAsync
Sends feedback to CodeGuru Profiler about whether the anomaly detected by the analysis is useful or not.
submitFeedbackAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the SubmitFeedbackRequest.public Future<SubmitFeedbackResult> submitFeedbackAsync(SubmitFeedbackRequest request, AsyncHandler<SubmitFeedbackRequest,SubmitFeedbackResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Sends feedback to CodeGuru Profiler about whether the anomaly detected by the analysis is useful or not.
submitFeedbackAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the SubmitFeedbackRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<TagResourceResult> tagResourceAsync(TagResourceRequest request)
AmazonCodeGuruProfilerAsync
Use to assign one or more tags to a resource.
tagResourceAsync
in interface AmazonCodeGuruProfilerAsync
public Future<TagResourceResult> tagResourceAsync(TagResourceRequest request, AsyncHandler<TagResourceRequest,TagResourceResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Use to assign one or more tags to a resource.
tagResourceAsync
in interface AmazonCodeGuruProfilerAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<UntagResourceResult> untagResourceAsync(UntagResourceRequest request)
AmazonCodeGuruProfilerAsync
Use to remove one or more tags from a resource.
untagResourceAsync
in interface AmazonCodeGuruProfilerAsync
public Future<UntagResourceResult> untagResourceAsync(UntagResourceRequest request, AsyncHandler<UntagResourceRequest,UntagResourceResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Use to remove one or more tags from a resource.
untagResourceAsync
in interface AmazonCodeGuruProfilerAsync
asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public Future<UpdateProfilingGroupResult> updateProfilingGroupAsync(UpdateProfilingGroupRequest request)
AmazonCodeGuruProfilerAsync
Updates a profiling group.
updateProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the updateProfilingGroupRequest.public Future<UpdateProfilingGroupResult> updateProfilingGroupAsync(UpdateProfilingGroupRequest request, AsyncHandler<UpdateProfilingGroupRequest,UpdateProfilingGroupResult> asyncHandler)
AmazonCodeGuruProfilerAsync
Updates a profiling group.
updateProfilingGroupAsync
in interface AmazonCodeGuruProfilerAsync
request
- The structure representing the updateProfilingGroupRequest.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.public void shutdown()
getExecutorService().shutdown()
followed by getExecutorService().awaitTermination()
prior to
calling this method.shutdown
in interface AmazonCodeGuruProfiler
shutdown
in class AmazonCodeGuruProfilerClient