Class: Aws::CodeGuruProfiler::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::CodeGuruProfiler::Client
- Includes:
- Aws::ClientStubs
- Defined in:
- lib/aws-sdk-codeguruprofiler/client.rb
Overview
An API client for CodeGuruProfiler. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::CodeGuruProfiler::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#add_notification_channels(params = {}) ⇒ Types::AddNotificationChannelsResponse
Add up to 2 anomaly notifications channels for a profiling group.
-
#batch_get_frame_metric_data(params = {}) ⇒ Types::BatchGetFrameMetricDataResponse
Returns the time series of values for a requested list of frame metrics from a time period.
-
#configure_agent(params = {}) ⇒ Types::ConfigureAgentResponse
Used by profiler agents to report their current state and to receive remote configuration updates.
-
#create_profiling_group(params = {}) ⇒ Types::CreateProfilingGroupResponse
Creates a profiling group.
-
#delete_profiling_group(params = {}) ⇒ Struct
Deletes a profiling group.
-
#describe_profiling_group(params = {}) ⇒ Types::DescribeProfilingGroupResponse
Returns a [ ‘ProfilingGroupDescription` ][1] object that contains information about the requested profiling group.
-
#get_findings_report_account_summary(params = {}) ⇒ Types::GetFindingsReportAccountSummaryResponse
Returns a list of [ ‘FindingsReportSummary` ][1] objects that contain analysis results for all profiling groups in your AWS account.
-
#get_notification_configuration(params = {}) ⇒ Types::GetNotificationConfigurationResponse
Get the current configuration for anomaly notifications for a profiling group.
-
#get_policy(params = {}) ⇒ Types::GetPolicyResponse
Returns the JSON-formatted resource-based policy on a profiling group.
-
#get_profile(params = {}) ⇒ Types::GetProfileResponse
Gets the aggregated profile of a profiling group for a specified time range.
-
#get_recommendations(params = {}) ⇒ Types::GetRecommendationsResponse
Returns a list of [ ‘Recommendation` ][1] objects that contain recommendations for a profiling group for a given time period.
-
#list_findings_reports(params = {}) ⇒ Types::ListFindingsReportsResponse
List the available reports for a given profiling group and time range.
-
#list_profile_times(params = {}) ⇒ Types::ListProfileTimesResponse
Lists the start times of the available aggregated profiles of a profiling group for an aggregation period within the specified time range.
-
#list_profiling_groups(params = {}) ⇒ Types::ListProfilingGroupsResponse
Returns a list of profiling groups.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Returns a list of the tags that are assigned to a specified resource.
-
#post_agent_profile(params = {}) ⇒ Struct
Submits profiling data to an aggregated profile of a profiling group.
-
#put_permission(params = {}) ⇒ Types::PutPermissionResponse
Adds permissions to a profiling group’s resource-based policy that are provided using an action group.
-
#remove_notification_channel(params = {}) ⇒ Types::RemoveNotificationChannelResponse
Remove one anomaly notifications channel for a profiling group.
-
#remove_permission(params = {}) ⇒ Types::RemovePermissionResponse
Removes permissions from a profiling group’s resource-based policy that are provided using an action group.
-
#submit_feedback(params = {}) ⇒ Struct
Sends feedback to CodeGuru Profiler about whether the anomaly detected by the analysis is useful or not.
-
#tag_resource(params = {}) ⇒ Struct
Use to assign one or more tags to a resource.
-
#untag_resource(params = {}) ⇒ Struct
Use to remove one or more tags from a resource.
-
#update_profiling_group(params = {}) ⇒ Types::UpdateProfilingGroupResponse
Updates a profiling group.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
471 472 473 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 471 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1801 1802 1803 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1801 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1804 1805 1806 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1804 def errors_module Errors end |
Instance Method Details
#add_notification_channels(params = {}) ⇒ Types::AddNotificationChannelsResponse
Add up to 2 anomaly notifications channels for a profiling group.
515 516 517 518 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 515 def add_notification_channels(params = {}, = {}) req = build_request(:add_notification_channels, params) req.send_request() end |
#batch_get_frame_metric_data(params = {}) ⇒ Types::BatchGetFrameMetricDataResponse
Returns the time series of values for a requested list of frame metrics from a time period.
611 612 613 614 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 611 def batch_get_frame_metric_data(params = {}, = {}) req = build_request(:batch_get_frame_metric_data, params) req.send_request() end |
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1774 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::CodeGuruProfiler') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-codeguruprofiler' context[:gem_version] = '1.70.0' Seahorse::Client::Request.new(handlers, context) end |
#configure_agent(params = {}) ⇒ Types::ConfigureAgentResponse
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.
686 687 688 689 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 686 def configure_agent(params = {}, = {}) req = build_request(:configure_agent, params) req.send_request() end |
#create_profiling_group(params = {}) ⇒ Types::CreateProfilingGroupResponse
Creates a profiling group.
755 756 757 758 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 755 def create_profiling_group(params = {}, = {}) req = build_request(:create_profiling_group, params) req.send_request() end |
#delete_profiling_group(params = {}) ⇒ Struct
Deletes a profiling group.
777 778 779 780 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 777 def delete_profiling_group(params = {}, = {}) req = build_request(:delete_profiling_group, params) req.send_request() end |
#describe_profiling_group(params = {}) ⇒ Types::DescribeProfilingGroupResponse
Returns a [ ‘ProfilingGroupDescription` ][1] object that contains information about the requested profiling group.
[1]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
821 822 823 824 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 821 def describe_profiling_group(params = {}, = {}) req = build_request(:describe_profiling_group, params) req.send_request() end |
#get_findings_report_account_summary(params = {}) ⇒ Types::GetFindingsReportAccountSummaryResponse
Returns a list of [ ‘FindingsReportSummary` ][1] objects that contain analysis results for all profiling groups in your AWS account.
[1]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_FindingsReportSummary.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
890 891 892 893 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 890 def get_findings_report_account_summary(params = {}, = {}) req = build_request(:get_findings_report_account_summary, params) req.send_request() end |
#get_notification_configuration(params = {}) ⇒ Types::GetNotificationConfigurationResponse
Get the current configuration for anomaly notifications for a profiling group.
924 925 926 927 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 924 def get_notification_configuration(params = {}, = {}) req = build_request(:get_notification_configuration, params) req.send_request() end |
#get_policy(params = {}) ⇒ Types::GetPolicyResponse
Returns the JSON-formatted resource-based policy on a profiling group.
954 955 956 957 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 954 def get_policy(params = {}, = {}) req = build_request(:get_policy, params) req.send_request() end |
#get_profile(params = {}) ⇒ Types::GetProfileResponse
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>
1032 1033 1034 1035 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1032 def get_profile(params = {}, = {}) req = build_request(:get_profile, params) req.send_request() end |
#get_recommendations(params = {}) ⇒ Types::GetRecommendationsResponse
Returns a list of [ ‘Recommendation` ][1] objects that contain recommendations for a profiling group for a given time period. A list of [ `Anomaly` ][2] objects that contains details about anomalies detected in the profiling group for the same time period is also returned.
[1]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_Recommendation.html [2]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_Anomaly.html
1146 1147 1148 1149 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1146 def get_recommendations(params = {}, = {}) req = build_request(:get_recommendations, params) req.send_request() end |
#list_findings_reports(params = {}) ⇒ Types::ListFindingsReportsResponse
List the available reports for a given profiling group and time range.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1228 1229 1230 1231 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1228 def list_findings_reports(params = {}, = {}) req = build_request(:list_findings_reports, params) req.send_request() end |
#list_profile_times(params = {}) ⇒ Types::ListProfileTimesResponse
Lists the start times of the available aggregated profiles of a profiling group for an aggregation period within the specified time range.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1310 1311 1312 1313 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1310 def list_profile_times(params = {}, = {}) req = build_request(:list_profile_times, params) req.send_request() end |
#list_profiling_groups(params = {}) ⇒ Types::ListProfilingGroupsResponse
Returns a list of profiling groups. The profiling groups are returned as [ ‘ProfilingGroupDescription` ][1] objects.
[1]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_ProfilingGroupDescription.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1392 1393 1394 1395 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1392 def list_profiling_groups(params = {}, = {}) req = build_request(:list_profiling_groups, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
Returns a list of the tags that are assigned to a specified resource.
1422 1423 1424 1425 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1422 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#post_agent_profile(params = {}) ⇒ Struct
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` ][1].
[1]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_GetProfile.html
1472 1473 1474 1475 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1472 def post_agent_profile(params = {}, = {}) req = build_request(:post_agent_profile, params) req.send_request() end |
#put_permission(params = {}) ⇒ Types::PutPermissionResponse
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>
1529 1530 1531 1532 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1529 def (params = {}, = {}) req = build_request(:put_permission, params) req.send_request() end |
#remove_notification_channel(params = {}) ⇒ Types::RemoveNotificationChannelResponse
Remove one anomaly notifications channel for a profiling group.
1566 1567 1568 1569 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1566 def remove_notification_channel(params = {}, = {}) req = build_request(:remove_notification_channel, params) req.send_request() end |
#remove_permission(params = {}) ⇒ Types::RemovePermissionResponse
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` ][2], and [ `PostAgentProfile` ][3].
[1]: docs.aws.amazon.com/codeguru/latest/profiler-ug/resource-based-policies.html [2]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_ConfigureAgent.html [3]: docs.aws.amazon.com/codeguru/latest/profiler-api/API_PostAgentProfile.html
1620 1621 1622 1623 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1620 def (params = {}, = {}) req = build_request(:remove_permission, params) req.send_request() end |
#submit_feedback(params = {}) ⇒ Struct
Sends feedback to CodeGuru Profiler about whether the anomaly detected by the analysis is useful or not.
1662 1663 1664 1665 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1662 def submit_feedback(params = {}, = {}) req = build_request(:submit_feedback, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Use to assign one or more tags to a resource.
1691 1692 1693 1694 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1691 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Use to remove one or more tags from a resource.
1719 1720 1721 1722 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1719 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_profiling_group(params = {}) ⇒ Types::UpdateProfilingGroupResponse
Updates a profiling group.
1765 1766 1767 1768 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1765 def update_profiling_group(params = {}, = {}) req = build_request(:update_profiling_group, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
1794 1795 1796 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1794 def waiter_names [] end |