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.
473 474 475 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 473 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.
1803 1804 1805 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1803 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.
1806 1807 1808 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1806 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.
517 518 519 520 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 517 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.
613 614 615 616 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 613 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.
1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1776 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.60.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.
688 689 690 691 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 688 def configure_agent(params = {}, = {}) req = build_request(:configure_agent, params) req.send_request() end |
#create_profiling_group(params = {}) ⇒ Types::CreateProfilingGroupResponse
Creates a profiling group.
757 758 759 760 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 757 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.
779 780 781 782 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 779 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
823 824 825 826 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 823 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.
892 893 894 895 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 892 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.
926 927 928 929 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 926 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.
956 957 958 959 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 956 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>
1034 1035 1036 1037 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1034 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
1148 1149 1150 1151 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1148 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.
1230 1231 1232 1233 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1230 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.
1312 1313 1314 1315 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1312 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.
1394 1395 1396 1397 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1394 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.
1424 1425 1426 1427 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1424 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
1474 1475 1476 1477 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1474 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>
1531 1532 1533 1534 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1531 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.
1568 1569 1570 1571 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1568 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
1622 1623 1624 1625 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1622 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.
1664 1665 1666 1667 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1664 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.
1693 1694 1695 1696 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1693 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.
1721 1722 1723 1724 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1721 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#update_profiling_group(params = {}) ⇒ Types::UpdateProfilingGroupResponse
Updates a profiling group.
1767 1768 1769 1770 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1767 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.
1796 1797 1798 |
# File 'lib/aws-sdk-codeguruprofiler/client.rb', line 1796 def waiter_names [] end |