Struct CodeGuruProfilerClient

Source
pub struct CodeGuruProfilerClient { /* private fields */ }
Expand description

A client for the Amazon CodeGuru Profiler API.

Implementations§

Source§

impl CodeGuruProfilerClient

Source

pub fn new(region: Region) -> CodeGuruProfilerClient

Creates a client backed by the default tokio event loop.

The client will use the default credentials provider and tls client.

Source

pub fn new_with<P, D>( request_dispatcher: D, credentials_provider: P, region: Region, ) -> CodeGuruProfilerClient
where P: ProvideAwsCredentials + Send + Sync + 'static, D: DispatchSignedRequest + Send + Sync + 'static,

Source

pub fn new_with_client(client: Client, region: Region) -> CodeGuruProfilerClient

Trait Implementations§

Source§

impl Clone for CodeGuruProfilerClient

Source§

fn clone(&self) -> CodeGuruProfilerClient

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl CodeGuruProfiler for CodeGuruProfilerClient

Source§

fn add_notification_channels<'life0, 'async_trait>( &'life0 self, input: AddNotificationChannelsRequest, ) -> Pin<Box<dyn Future<Output = Result<AddNotificationChannelsResponse, RusotoError<AddNotificationChannelsError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Add up to 2 anomaly notifications channels for a profiling group.

Source§

fn batch_get_frame_metric_data<'life0, 'async_trait>( &'life0 self, input: BatchGetFrameMetricDataRequest, ) -> Pin<Box<dyn Future<Output = Result<BatchGetFrameMetricDataResponse, RusotoError<BatchGetFrameMetricDataError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns the time series of values for a requested list of frame metrics from a time period.

Source§

fn configure_agent<'life0, 'async_trait>( &'life0 self, input: ConfigureAgentRequest, ) -> Pin<Box<dyn Future<Output = Result<ConfigureAgentResponse, RusotoError<ConfigureAgentError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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.

Source§

fn create_profiling_group<'life0, 'async_trait>( &'life0 self, input: CreateProfilingGroupRequest, ) -> Pin<Box<dyn Future<Output = Result<CreateProfilingGroupResponse, RusotoError<CreateProfilingGroupError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Creates a profiling group.

Source§

fn delete_profiling_group<'life0, 'async_trait>( &'life0 self, input: DeleteProfilingGroupRequest, ) -> Pin<Box<dyn Future<Output = Result<DeleteProfilingGroupResponse, RusotoError<DeleteProfilingGroupError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Deletes a profiling group.

Source§

fn describe_profiling_group<'life0, 'async_trait>( &'life0 self, input: DescribeProfilingGroupRequest, ) -> Pin<Box<dyn Future<Output = Result<DescribeProfilingGroupResponse, RusotoError<DescribeProfilingGroupError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns a ProfilingGroupDescription object that contains information about the requested profiling group.

Source§

fn get_findings_report_account_summary<'life0, 'async_trait>( &'life0 self, input: GetFindingsReportAccountSummaryRequest, ) -> Pin<Box<dyn Future<Output = Result<GetFindingsReportAccountSummaryResponse, RusotoError<GetFindingsReportAccountSummaryError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns a list of FindingsReportSummary objects that contain analysis results for all profiling groups in your AWS account.

Source§

fn get_notification_configuration<'life0, 'async_trait>( &'life0 self, input: GetNotificationConfigurationRequest, ) -> Pin<Box<dyn Future<Output = Result<GetNotificationConfigurationResponse, RusotoError<GetNotificationConfigurationError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Get the current configuration for anomaly notifications for a profiling group.

Source§

fn get_policy<'life0, 'async_trait>( &'life0 self, input: GetPolicyRequest, ) -> Pin<Box<dyn Future<Output = Result<GetPolicyResponse, RusotoError<GetPolicyError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns the JSON-formatted resource-based policy on a profiling group.

Source§

fn get_profile<'life0, 'async_trait>( &'life0 self, input: GetProfileRequest, ) -> Pin<Box<dyn Future<Output = Result<GetProfileResponse, RusotoError<GetProfileError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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/APIAggregatedProfileTime.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/APIListProfileTimes.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> 

Source§

fn get_recommendations<'life0, 'async_trait>( &'life0 self, input: GetRecommendationsRequest, ) -> Pin<Box<dyn Future<Output = Result<GetRecommendationsResponse, RusotoError<GetRecommendationsError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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.

Source§

fn list_findings_reports<'life0, 'async_trait>( &'life0 self, input: ListFindingsReportsRequest, ) -> Pin<Box<dyn Future<Output = Result<ListFindingsReportsResponse, RusotoError<ListFindingsReportsError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

List the available reports for a given profiling group and time range.

Source§

fn list_profile_times<'life0, 'async_trait>( &'life0 self, input: ListProfileTimesRequest, ) -> Pin<Box<dyn Future<Output = Result<ListProfileTimesResponse, RusotoError<ListProfileTimesError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Lists the start times of the available aggregated profiles of a profiling group for an aggregation period within the specified time range.

Source§

fn list_profiling_groups<'life0, 'async_trait>( &'life0 self, input: ListProfilingGroupsRequest, ) -> Pin<Box<dyn Future<Output = Result<ListProfilingGroupsResponse, RusotoError<ListProfilingGroupsError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns a list of profiling groups. The profiling groups are returned as ProfilingGroupDescription objects.

Source§

fn list_tags_for_resource<'life0, 'async_trait>( &'life0 self, input: ListTagsForResourceRequest, ) -> Pin<Box<dyn Future<Output = Result<ListTagsForResourceResponse, RusotoError<ListTagsForResourceError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Returns a list of the tags that are assigned to a specified resource.

Source§

fn post_agent_profile<'life0, 'async_trait>( &'life0 self, input: PostAgentProfileRequest, ) -> Pin<Box<dyn Future<Output = Result<PostAgentProfileResponse, RusotoError<PostAgentProfileError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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 .

Source§

fn put_permission<'life0, 'async_trait>( &'life0 self, input: PutPermissionRequest, ) -> Pin<Box<dyn Future<Output = Result<PutPermissionResponse, RusotoError<PutPermissionError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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/APIConfigureAgent.html"> <code>ConfigureAgent</code> </a>, and <a href="https://docs.aws.amazon.com/codeguru/latest/profiler-api/APIPostAgentProfile.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> 

Source§

fn remove_notification_channel<'life0, 'async_trait>( &'life0 self, input: RemoveNotificationChannelRequest, ) -> Pin<Box<dyn Future<Output = Result<RemoveNotificationChannelResponse, RusotoError<RemoveNotificationChannelError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Remove one anomaly notifications channel for a profiling group.

Source§

fn remove_permission<'life0, 'async_trait>( &'life0 self, input: RemovePermissionRequest, ) -> Pin<Box<dyn Future<Output = Result<RemovePermissionResponse, RusotoError<RemovePermissionError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

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 .

Source§

fn submit_feedback<'life0, 'async_trait>( &'life0 self, input: SubmitFeedbackRequest, ) -> Pin<Box<dyn Future<Output = Result<SubmitFeedbackResponse, RusotoError<SubmitFeedbackError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Sends feedback to CodeGuru Profiler about whether the anomaly detected by the analysis is useful or not.

Source§

fn tag_resource<'life0, 'async_trait>( &'life0 self, input: TagResourceRequest, ) -> Pin<Box<dyn Future<Output = Result<TagResourceResponse, RusotoError<TagResourceError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Use to assign one or more tags to a resource.

Source§

fn untag_resource<'life0, 'async_trait>( &'life0 self, input: UntagResourceRequest, ) -> Pin<Box<dyn Future<Output = Result<UntagResourceResponse, RusotoError<UntagResourceError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Use to remove one or more tags from a resource.

Source§

fn update_profiling_group<'life0, 'async_trait>( &'life0 self, input: UpdateProfilingGroupRequest, ) -> Pin<Box<dyn Future<Output = Result<UpdateProfilingGroupResponse, RusotoError<UpdateProfilingGroupError>>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Updates a profiling group.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more