Class: Aws::CloudTrail::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::CloudTrail::Client
- Includes:
- Aws::ClientStubs
- Defined in:
- lib/aws-sdk-cloudtrail/client.rb
Overview
An API client for CloudTrail. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::CloudTrail::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_tags(params = {}) ⇒ Struct
Adds one or more tags to a trail, event data store, dashboard, or channel, up to a limit of 50.
-
#cancel_query(params = {}) ⇒ Types::CancelQueryResponse
Cancels a query if the query is not in a terminated state, such as ‘CANCELLED`, `FAILED`, `TIMED_OUT`, or `FINISHED`.
-
#create_channel(params = {}) ⇒ Types::CreateChannelResponse
Creates a channel for CloudTrail to ingest events from a partner or external source.
-
#create_dashboard(params = {}) ⇒ Types::CreateDashboardResponse
Creates a custom dashboard or the Highlights dashboard.
-
#create_event_data_store(params = {}) ⇒ Types::CreateEventDataStoreResponse
Creates a new event data store.
-
#create_trail(params = {}) ⇒ Types::CreateTrailResponse
Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.
-
#delete_channel(params = {}) ⇒ Struct
Deletes a channel.
-
#delete_dashboard(params = {}) ⇒ Struct
Deletes the specified dashboard.
-
#delete_event_data_store(params = {}) ⇒ Struct
Disables the event data store specified by ‘EventDataStore`, which accepts an event data store ARN.
-
#delete_resource_policy(params = {}) ⇒ Struct
Deletes the resource-based policy attached to the CloudTrail event data store, dashboard, or channel.
-
#delete_trail(params = {}) ⇒ Struct
Deletes a trail.
-
#deregister_organization_delegated_admin(params = {}) ⇒ Struct
Removes CloudTrail delegated administrator permissions from a member account in an organization.
-
#describe_query(params = {}) ⇒ Types::DescribeQueryResponse
Returns metadata about a query, including query run time in milliseconds, number of events scanned and matched, and query status.
-
#describe_trails(params = {}) ⇒ Types::DescribeTrailsResponse
Retrieves settings for one or more trails associated with the current Region for your account.
-
#disable_federation(params = {}) ⇒ Types::DisableFederationResponse
Disables Lake query federation on the specified event data store.
-
#enable_federation(params = {}) ⇒ Types::EnableFederationResponse
Enables Lake query federation on the specified event data store.
-
#generate_query(params = {}) ⇒ Types::GenerateQueryResponse
Generates a query from a natural language prompt.
-
#get_channel(params = {}) ⇒ Types::GetChannelResponse
Returns information about a specific channel.
-
#get_dashboard(params = {}) ⇒ Types::GetDashboardResponse
Returns the specified dashboard.
-
#get_event_data_store(params = {}) ⇒ Types::GetEventDataStoreResponse
Returns information about an event data store specified as either an ARN or the ID portion of the ARN.
-
#get_event_selectors(params = {}) ⇒ Types::GetEventSelectorsResponse
Describes the settings for the event selectors that you configured for your trail.
-
#get_import(params = {}) ⇒ Types::GetImportResponse
Returns information about a specific import.
-
#get_insight_selectors(params = {}) ⇒ Types::GetInsightSelectorsResponse
Describes the settings for the Insights event selectors that you configured for your trail or event data store.
-
#get_query_results(params = {}) ⇒ Types::GetQueryResultsResponse
Gets event data results of a query.
-
#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyResponse
Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.
-
#get_trail(params = {}) ⇒ Types::GetTrailResponse
Returns settings information for a specified trail.
-
#get_trail_status(params = {}) ⇒ Types::GetTrailStatusResponse
Returns a JSON-formatted list of information about the specified trail.
-
#list_channels(params = {}) ⇒ Types::ListChannelsResponse
Lists the channels in the current account, and their source names.
-
#list_dashboards(params = {}) ⇒ Types::ListDashboardsResponse
Returns information about all dashboards in the account, in the current Region.
-
#list_event_data_stores(params = {}) ⇒ Types::ListEventDataStoresResponse
Returns information about all event data stores in the account, in the current Region.
-
#list_import_failures(params = {}) ⇒ Types::ListImportFailuresResponse
Returns a list of failures for the specified import.
-
#list_imports(params = {}) ⇒ Types::ListImportsResponse
Returns information on all imports, or a select set of imports by ‘ImportStatus` or `Destination`.
-
#list_insights_metric_data(params = {}) ⇒ Types::ListInsightsMetricDataResponse
Returns Insights metrics data for trails that have enabled Insights.
-
#list_public_keys(params = {}) ⇒ Types::ListPublicKeysResponse
Returns all public keys whose private keys were used to sign the digest files within the specified time range.
-
#list_queries(params = {}) ⇒ Types::ListQueriesResponse
Returns a list of queries and query statuses for the past seven days.
-
#list_tags(params = {}) ⇒ Types::ListTagsResponse
Lists the tags for the specified trails, event data stores, dashboards, or channels in the current Region.
-
#list_trails(params = {}) ⇒ Types::ListTrailsResponse
Lists trails that are in the current account.
- #lookup_events(params = {}) ⇒ Types::LookupEventsResponse
-
#put_event_selectors(params = {}) ⇒ Types::PutEventSelectorsResponse
Configures event selectors (also referred to as *basic event selectors*) or advanced event selectors for your trail.
-
#put_insight_selectors(params = {}) ⇒ Types::PutInsightSelectorsResponse
Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail or event data store.
-
#put_resource_policy(params = {}) ⇒ Types::PutResourcePolicyResponse
Attaches a resource-based permission policy to a CloudTrail event data store, dashboard, or channel.
-
#register_organization_delegated_admin(params = {}) ⇒ Struct
Registers an organization’s member account as the CloudTrail [delegated administrator].
-
#remove_tags(params = {}) ⇒ Struct
Removes the specified tags from a trail, event data store, dashboard, or channel.
-
#restore_event_data_store(params = {}) ⇒ Types::RestoreEventDataStoreResponse
Restores a deleted event data store specified by ‘EventDataStore`, which accepts an event data store ARN.
-
#search_sample_queries(params = {}) ⇒ Types::SearchSampleQueriesResponse
Searches sample queries and returns a list of sample queries that are sorted by relevance.
-
#start_dashboard_refresh(params = {}) ⇒ Types::StartDashboardRefreshResponse
Starts a refresh of the specified dashboard.
-
#start_event_data_store_ingestion(params = {}) ⇒ Struct
Starts the ingestion of live events on an event data store specified as either an ARN or the ID portion of the ARN.
-
#start_import(params = {}) ⇒ Types::StartImportResponse
Starts an import of logged trail events from a source S3 bucket to a destination event data store.
-
#start_logging(params = {}) ⇒ Struct
Starts the recording of Amazon Web Services API calls and log file delivery for a trail.
-
#start_query(params = {}) ⇒ Types::StartQueryResponse
Starts a CloudTrail Lake query.
-
#stop_event_data_store_ingestion(params = {}) ⇒ Struct
Stops the ingestion of live events on an event data store specified as either an ARN or the ID portion of the ARN.
-
#stop_import(params = {}) ⇒ Types::StopImportResponse
Stops a specified import.
-
#stop_logging(params = {}) ⇒ Struct
Suspends the recording of Amazon Web Services API calls and log file delivery for the specified trail.
-
#update_channel(params = {}) ⇒ Types::UpdateChannelResponse
Updates a channel specified by a required channel ARN or UUID.
-
#update_dashboard(params = {}) ⇒ Types::UpdateDashboardResponse
Updates the specified dashboard.
-
#update_event_data_store(params = {}) ⇒ Types::UpdateEventDataStoreResponse
Updates an event data store.
-
#update_trail(params = {}) ⇒ Types::UpdateTrailResponse
Updates trail settings that control what events you are logging, and how to handle log files.
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.
474 475 476 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 474 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.
4600 4601 4602 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4600 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.
4603 4604 4605 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4603 def errors_module Errors end |
Instance Method Details
#add_tags(params = {}) ⇒ Struct
Adds one or more tags to a trail, event data store, dashboard, or channel, up to a limit of 50. Overwrites an existing tag’s value when a new value is specified for an existing tag key. Tag key names must be unique; you cannot have two keys with the same name but different values. If you specify a key without a value, the tag will be created with the specified key and a value of null. You can tag a trail or event data store that applies to all Amazon Web Services Regions only from the Region in which the trail or event data store was created (also known as its home Region).
527 528 529 530 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 527 def (params = {}, = {}) req = build_request(:add_tags, 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.
4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4573 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::CloudTrail') ) 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-cloudtrail' context[:gem_version] = '1.99.0' Seahorse::Client::Request.new(handlers, context) end |
#cancel_query(params = {}) ⇒ Types::CancelQueryResponse
Cancels a query if the query is not in a terminated state, such as ‘CANCELLED`, `FAILED`, `TIMED_OUT`, or `FINISHED`. You must specify an ARN value for `EventDataStore`. The ID of the query that you want to cancel is also required. When you run `CancelQuery`, the query status might show as `CANCELLED` even if the operation is not yet finished.
573 574 575 576 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 573 def cancel_query(params = {}, = {}) req = build_request(:cancel_query, params) req.send_request() end |
#create_channel(params = {}) ⇒ Types::CreateChannelResponse
Creates a channel for CloudTrail to ingest events from a partner or external source. After you create a channel, a CloudTrail Lake event data store can log events from the partner or source that you specify.
649 650 651 652 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 649 def create_channel(params = {}, = {}) req = build_request(:create_channel, params) req.send_request() end |
#create_dashboard(params = {}) ⇒ Types::CreateDashboardResponse
Creates a custom dashboard or the Highlights dashboard.
-
**Custom dashboards** - Custom dashboards allow you to query events in any event data store type. You can add up to 10 widgets to a custom dashboard. You can manually refresh a custom dashboard, or you can set a refresh schedule.
-
**Highlights dashboard** - You can create the Highlights dashboard to see a summary of key user activities and API usage across all your event data stores. CloudTrail Lake manages the Highlights dashboard and refreshes the dashboard every 6 hours. To create the Highlights dashboard, you must set and enable a refresh schedule.
CloudTrail runs queries to populate the dashboard’s widgets during a manual or scheduled refresh. CloudTrail must be granted permissions to run the ‘StartQuery` operation on your behalf. To provide permissions, run the `PutResourcePolicy` operation to attach a resource-based policy to each event data store. For more information, see [Example: Allow CloudTrail to run queries to populate a dashboard] in the *CloudTrail User Guide*.
To set a refresh schedule, CloudTrail must be granted permissions to run the ‘StartDashboardRefresh` operation to refresh the dashboard on your behalf. To provide permissions, run the `PutResourcePolicy` operation to attach a resource-based policy to the dashboard. For more information, see [ Resource-based policy example for a dashboard] in the *CloudTrail User Guide*.
For more information about dashboards, see [CloudTrail Lake dashboards] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/security_iam_resource-based-policy-examples.html#security_iam_resource-based-policy-examples-eds-dashboard [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/security_iam_resource-based-policy-examples.html#security_iam_resource-based-policy-examples-dashboards [3]: docs.aws.amazon.com/awscloudtrail/latest/userguide/lake-dashboard.html
783 784 785 786 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 783 def create_dashboard(params = {}, = {}) req = build_request(:create_dashboard, params) req.send_request() end |
#create_event_data_store(params = {}) ⇒ Types::CreateEventDataStoreResponse
Creates a new event data store.
1007 1008 1009 1010 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1007 def create_event_data_store(params = {}, = {}) req = build_request(:create_event_data_store, params) req.send_request() end |
#create_trail(params = {}) ⇒ Types::CreateTrailResponse
Creates a trail that specifies the settings for delivery of log data to an Amazon S3 bucket.
1186 1187 1188 1189 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1186 def create_trail(params = {}, = {}) req = build_request(:create_trail, params) req.send_request() end |
#delete_channel(params = {}) ⇒ Struct
Deletes a channel.
1208 1209 1210 1211 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1208 def delete_channel(params = {}, = {}) req = build_request(:delete_channel, params) req.send_request() end |
#delete_dashboard(params = {}) ⇒ Struct
Deletes the specified dashboard. You cannot delete a dashboard that has termination protection enabled.
1231 1232 1233 1234 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1231 def delete_dashboard(params = {}, = {}) req = build_request(:delete_dashboard, params) req.send_request() end |
#delete_event_data_store(params = {}) ⇒ Struct
Disables the event data store specified by ‘EventDataStore`, which accepts an event data store ARN. After you run `DeleteEventDataStore`, the event data store enters a `PENDING_DELETION` state, and is automatically deleted after a wait period of seven days. `TerminationProtectionEnabled` must be set to `False` on the event data store and the `FederationStatus` must be `DISABLED`. You cannot delete an event data store if `TerminationProtectionEnabled` is `True` or the `FederationStatus` is `ENABLED`.
After you run ‘DeleteEventDataStore` on an event data store, you cannot run `ListQueries`, `DescribeQuery`, or `GetQueryResults` on queries that are using an event data store in a `PENDING_DELETION` state. An event data store in the `PENDING_DELETION` state does not incur costs.
1267 1268 1269 1270 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1267 def delete_event_data_store(params = {}, = {}) req = build_request(:delete_event_data_store, params) req.send_request() end |
#delete_resource_policy(params = {}) ⇒ Struct
Deletes the resource-based policy attached to the CloudTrail event data store, dashboard, or channel.
1300 1301 1302 1303 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1300 def delete_resource_policy(params = {}, = {}) req = build_request(:delete_resource_policy, params) req.send_request() end |
#delete_trail(params = {}) ⇒ Struct
Deletes a trail. This operation must be called from the Region in which the trail was created. ‘DeleteTrail` cannot be called on the shadow trails (replicated trails in other Regions) of a trail that is enabled in all Regions.
1327 1328 1329 1330 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1327 def delete_trail(params = {}, = {}) req = build_request(:delete_trail, params) req.send_request() end |
#deregister_organization_delegated_admin(params = {}) ⇒ Struct
Removes CloudTrail delegated administrator permissions from a member account in an organization.
1352 1353 1354 1355 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1352 def deregister_organization_delegated_admin(params = {}, = {}) req = build_request(:deregister_organization_delegated_admin, params) req.send_request() end |
#describe_query(params = {}) ⇒ Types::DescribeQueryResponse
Returns metadata about a query, including query run time in milliseconds, number of events scanned and matched, and query status. If the query results were delivered to an S3 bucket, the response also provides the S3 URI and the delivery status.
You must specify either ‘QueryId` or `QueryAlias`. Specifying the `QueryAlias` parameter returns information about the last query run for the alias. You can provide `RefreshId` along with `QueryAlias` to view the query results of a dashboard query for the specified `RefreshId`.
1426 1427 1428 1429 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1426 def describe_query(params = {}, = {}) req = build_request(:describe_query, params) req.send_request() end |
#describe_trails(params = {}) ⇒ Types::DescribeTrailsResponse
Retrieves settings for one or more trails associated with the current Region for your account.
1500 1501 1502 1503 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1500 def describe_trails(params = {}, = {}) req = build_request(:describe_trails, params) req.send_request() end |
#disable_federation(params = {}) ⇒ Types::DisableFederationResponse
Disables Lake query federation on the specified event data store. When you disable federation, CloudTrail disables the integration with Glue, Lake Formation, and Amazon Athena. After disabling Lake query federation, you can no longer query your event data in Amazon Athena.
No CloudTrail Lake data is deleted when you disable federation and you can continue to run queries in CloudTrail Lake.
1537 1538 1539 1540 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1537 def disable_federation(params = {}, = {}) req = build_request(:disable_federation, params) req.send_request() end |
#enable_federation(params = {}) ⇒ Types::EnableFederationResponse
Enables Lake query federation on the specified event data store. Federating an event data store lets you view the metadata associated with the event data store in the Glue [Data Catalog] and run SQL queries against your event data using Amazon Athena. The table metadata stored in the Glue Data Catalog lets the Athena query engine know how to find, read, and process the data that you want to query.
When you enable Lake query federation, CloudTrail creates a managed database named ‘aws:cloudtrail` (if the database doesn’t already exist) and a managed federated table in the Glue Data Catalog. The event data store ID is used for the table name. CloudTrail registers the role ARN and event data store in [Lake Formation], the service responsible for allowing fine-grained access control of the federated resources in the Glue Data Catalog.
For more information about Lake query federation, see [Federate an event data store].
[1]: docs.aws.amazon.com/glue/latest/dg/components-overview.html#data-catalog-intro [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation-lake-formation.html [3]: docs.aws.amazon.com/awscloudtrail/latest/userguide/query-federation.html
1604 1605 1606 1607 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1604 def enable_federation(params = {}, = {}) req = build_request(:enable_federation, params) req.send_request() end |
#generate_query(params = {}) ⇒ Types::GenerateQueryResponse
Generates a query from a natural language prompt. This operation uses generative artificial intelligence (generative AI) to produce a ready-to-use SQL query from the prompt.
The prompt can be a question or a statement about the event data in your event data store. For example, you can enter prompts like “What are my top errors in the past month?” and “Give me a list of users that used SNS.”
The prompt must be in English. For information about limitations, permissions, and supported Regions, see [Create CloudTrail Lake queries from natural language prompts] in the CloudTrail user guide.
<note markdown=“1”> Do not include any personally identifying, confidential, or sensitive information in your prompts.
This feature uses generative AI large language models (LLMs); we
recommend double-checking the LLM response.
</note>
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/lake-query-generator.html
1671 1672 1673 1674 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1671 def generate_query(params = {}, = {}) req = build_request(:generate_query, params) req.send_request() end |
#get_channel(params = {}) ⇒ Types::GetChannelResponse
Returns information about a specific channel.
1731 1732 1733 1734 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1731 def get_channel(params = {}, = {}) req = build_request(:get_channel, params) req.send_request() end |
#get_dashboard(params = {}) ⇒ Types::GetDashboardResponse
Returns the specified dashboard.
1786 1787 1788 1789 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1786 def get_dashboard(params = {}, = {}) req = build_request(:get_dashboard, params) req.send_request() end |
#get_event_data_store(params = {}) ⇒ Types::GetEventDataStoreResponse
Returns information about an event data store specified as either an ARN or the ID portion of the ARN.
1861 1862 1863 1864 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1861 def get_event_data_store(params = {}, = {}) req = build_request(:get_event_data_store, params) req.send_request() end |
#get_event_selectors(params = {}) ⇒ Types::GetEventSelectorsResponse
Describes the settings for the event selectors that you configured for your trail. The information returned for your event selectors includes the following:
-
If your event selector includes read-only events, write-only events, or all events. This applies to management events, data events, and network activity events.
-
If your event selector includes management events.
-
If your event selector includes network activity events, the event sources for which you are logging network activity events.
-
If your event selector includes data events, the resources on which you are logging data events.
For more information about logging management, data, and network activity events, see the following topics in the *CloudTrail User Guide*:
- Logging management events][1
- Logging data events][2
- Logging network activity events][3
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html [3]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html
1963 1964 1965 1966 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 1963 def get_event_selectors(params = {}, = {}) req = build_request(:get_event_selectors, params) req.send_request() end |
#get_import(params = {}) ⇒ Types::GetImportResponse
Returns information about a specific import.
2014 2015 2016 2017 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2014 def get_import(params = {}, = {}) req = build_request(:get_import, params) req.send_request() end |
#get_insight_selectors(params = {}) ⇒ Types::GetInsightSelectorsResponse
Describes the settings for the Insights event selectors that you configured for your trail or event data store. ‘GetInsightSelectors` shows if CloudTrail Insights event logging is enabled on the trail or event data store, and if it is, which Insights types are enabled. If you run `GetInsightSelectors` on a trail or event data store that does not have Insights events enabled, the operation throws the exception `InsightNotEnabledException`
Specify either the ‘EventDataStore` parameter to get Insights event selectors for an event data store, or the `TrailName` parameter to the get Insights event selectors for a trail. You cannot specify these parameters together.
For more information, see [Working with CloudTrail Insights] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html
2093 2094 2095 2096 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2093 def get_insight_selectors(params = {}, = {}) req = build_request(:get_insight_selectors, params) req.send_request() end |
#get_query_results(params = {}) ⇒ Types::GetQueryResultsResponse
Gets event data results of a query. You must specify the ‘QueryID` value returned by the `StartQuery` operation.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2154 2155 2156 2157 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2154 def get_query_results(params = {}, = {}) req = build_request(:get_query_results, params) req.send_request() end |
#get_resource_policy(params = {}) ⇒ Types::GetResourcePolicyResponse
Retrieves the JSON text of the resource-based policy document attached to the CloudTrail event data store, dashboard, or channel.
2197 2198 2199 2200 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2197 def get_resource_policy(params = {}, = {}) req = build_request(:get_resource_policy, params) req.send_request() end |
#get_trail(params = {}) ⇒ Types::GetTrailResponse
Returns settings information for a specified trail.
2241 2242 2243 2244 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2241 def get_trail(params = {}, = {}) req = build_request(:get_trail, params) req.send_request() end |
#get_trail_status(params = {}) ⇒ Types::GetTrailStatusResponse
Returns a JSON-formatted list of information about the specified trail. Fields include information on delivery errors, Amazon SNS and Amazon S3 errors, and start and stop logging times for each trail. This operation returns trail status from a single Region. To return trail status from all Regions, you must call the operation on each Region.
2317 2318 2319 2320 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2317 def get_trail_status(params = {}, = {}) req = build_request(:get_trail_status, params) req.send_request() end |
#list_channels(params = {}) ⇒ Types::ListChannelsResponse
Lists the channels in the current account, and their source names.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2359 2360 2361 2362 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2359 def list_channels(params = {}, = {}) req = build_request(:list_channels, params) req.send_request() end |
#list_dashboards(params = {}) ⇒ Types::ListDashboardsResponse
Returns information about all dashboards in the account, in the current Region.
2404 2405 2406 2407 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2404 def list_dashboards(params = {}, = {}) req = build_request(:list_dashboards, params) req.send_request() end |
#list_event_data_stores(params = {}) ⇒ Types::ListEventDataStoresResponse
Returns information about all event data stores in the account, in the current Region.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2466 2467 2468 2469 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2466 def list_event_data_stores(params = {}, = {}) req = build_request(:list_event_data_stores, params) req.send_request() end |
#list_import_failures(params = {}) ⇒ Types::ListImportFailuresResponse
Returns a list of failures for the specified import.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2511 2512 2513 2514 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2511 def list_import_failures(params = {}, = {}) req = build_request(:list_import_failures, params) req.send_request() end |
#list_imports(params = {}) ⇒ Types::ListImportsResponse
Returns information on all imports, or a select set of imports by ‘ImportStatus` or `Destination`.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2562 2563 2564 2565 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2562 def list_imports(params = {}, = {}) req = build_request(:list_imports, params) req.send_request() end |
#list_insights_metric_data(params = {}) ⇒ Types::ListInsightsMetricDataResponse
Returns Insights metrics data for trails that have enabled Insights. The request must include the ‘EventSource`, `EventName`, and `InsightType` parameters.
If the ‘InsightType` is set to `ApiErrorRateInsight`, the request must also include the `ErrorCode` parameter.
The following are the available time periods for ‘ListInsightsMetricData`. Each cutoff is inclusive.
-
Data points with a period of 60 seconds (1-minute) are available for 15 days.
-
Data points with a period of 300 seconds (5-minute) are available for 63 days.
-
Data points with a period of 3600 seconds (1 hour) are available for 90 days.
Access to the ‘ListInsightsMetricData` API operation is linked to the `cloudtrail:LookupEvents` action. To use this operation, you must have permissions to perform the `cloudtrail:LookupEvents` action.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2690 2691 2692 2693 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2690 def list_insights_metric_data(params = {}, = {}) req = build_request(:list_insights_metric_data, params) req.send_request() end |
#list_public_keys(params = {}) ⇒ Types::ListPublicKeysResponse
Returns all public keys whose private keys were used to sign the digest files within the specified time range. The public key is needed to validate digest files that were signed with its corresponding private key.
<note markdown=“1”> CloudTrail uses different private and public key pairs per Region. Each digest file is signed with a private key unique to its Region. When you validate a digest file from a specific Region, you must look in the same Region for its corresponding public key.
</note>
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2748 2749 2750 2751 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2748 def list_public_keys(params = {}, = {}) req = build_request(:list_public_keys, params) req.send_request() end |
#list_queries(params = {}) ⇒ Types::ListQueriesResponse
Returns a list of queries and query statuses for the past seven days. You must specify an ARN value for ‘EventDataStore`. Optionally, to shorten the list of results, you can specify a time range, formatted as timestamps, by adding `StartTime` and `EndTime` parameters, and a `QueryStatus` value. Valid values for `QueryStatus` include `QUEUED`, `RUNNING`, `FINISHED`, `FAILED`, `TIMED_OUT`, or `CANCELLED`.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2813 2814 2815 2816 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2813 def list_queries(params = {}, = {}) req = build_request(:list_queries, params) req.send_request() end |
#list_tags(params = {}) ⇒ Types::ListTagsResponse
Lists the tags for the specified trails, event data stores, dashboards, or channels in the current Region.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2867 2868 2869 2870 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2867 def (params = {}, = {}) req = build_request(:list_tags, params) req.send_request() end |
#list_trails(params = {}) ⇒ Types::ListTrailsResponse
Lists trails that are in the current account.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
2906 2907 2908 2909 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 2906 def list_trails(params = {}, = {}) req = build_request(:list_trails, params) req.send_request() end |
#lookup_events(params = {}) ⇒ Types::LookupEventsResponse
Looks up [management events] or [CloudTrail Insights events] that are captured by CloudTrail. You can look up events that occurred in a Region within the last 90 days.
<note markdown=“1”> ‘LookupEvents` returns recent Insights events for trails that enable Insights. To view Insights events for an event data store, you can run queries on your Insights event data store, and you can also view the Lake dashboard for Insights.
</note>
Lookup supports the following attributes for management events:
-
Amazon Web Services access key
-
Event ID
-
Event name
-
Event source
-
Read only
-
Resource name
-
Resource type
-
User name
Lookup supports the following attributes for Insights events:
-
Event ID
-
Event name
-
Event source
All attributes are optional. The default number of results returned is 50, with a maximum of 50 possible. The response includes a token that you can use to get the next page of results.
The rate of lookup requests is limited to two per second, per account, per Region. If this limit is exceeded, a throttling error occurs.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-management-events [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-concepts.html#cloudtrail-concepts-insights-events
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
3034 3035 3036 3037 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3034 def lookup_events(params = {}, = {}) req = build_request(:lookup_events, params) req.send_request() end |
#put_event_selectors(params = {}) ⇒ Types::PutEventSelectorsResponse
Configures event selectors (also referred to as *basic event selectors*) or advanced event selectors for your trail. You can use either ‘AdvancedEventSelectors` or `EventSelectors`, but not both. If you apply `AdvancedEventSelectors` to a trail, any existing `EventSelectors` are overwritten.
You can use ‘AdvancedEventSelectors` to log management events, data events for all resource types, and network activity events.
You can use ‘EventSelectors` to log management events and data events for the following resource types:
-
‘AWS::DynamoDB::Table`
-
‘AWS::Lambda::Function`
-
‘AWS::S3::Object`
You can’t use ‘EventSelectors` to log network activity events.
If you want your trail to log Insights events, be sure the event selector or advanced event selector enables logging of the Insights event types you want configured for your trail. For more information about logging Insights events, see [Working with CloudTrail Insights] in the *CloudTrail User Guide*. By default, trails created without specific event selectors are configured to log all read and write management events, and no data events or network activity events.
When an event occurs in your account, CloudTrail evaluates the event selectors or advanced event selectors in all trails. For each trail, if the event matches any event selector, the trail processes and logs the event. If the event doesn’t match any event selector, the trail doesn’t log the event.
Example
-
You create an event selector for a trail and specify that you want to log write-only events.
-
The EC2 ‘GetConsoleOutput` and `RunInstances` API operations occur in your account.
-
CloudTrail evaluates whether the events match your event selectors.
-
The ‘RunInstances` is a write-only event and it matches your event selector. The trail logs the event.
-
The ‘GetConsoleOutput` is a read-only event that doesn’t match your event selector. The trail doesn’t log the event.
The ‘PutEventSelectors` operation must be called from the Region in which the trail was created; otherwise, an `InvalidHomeRegionException` exception is thrown.
You can configure up to five event selectors for each trail.
You can add advanced event selectors, and conditions for your advanced event selectors, up to a maximum of 500 values for all conditions and selectors on a trail. For more information, see [Logging management events], [Logging data events], [Logging network activity events], and [Quotas in CloudTrail] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html [3]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html [4]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-network-events-with-cloudtrail.html [5]: docs.aws.amazon.com/awscloudtrail/latest/userguide/WhatIsCloudTrail-Limits.html
3244 3245 3246 3247 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3244 def put_event_selectors(params = {}, = {}) req = build_request(:put_event_selectors, params) req.send_request() end |
#put_insight_selectors(params = {}) ⇒ Types::PutInsightSelectorsResponse
Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing trail or event data store. You also use ‘PutInsightSelectors` to turn off Insights event logging, by passing an empty list of Insights types. The valid Insights event types are `ApiErrorRateInsight` and `ApiCallRateInsight`.
To enable Insights on an event data store, you must specify the ARNs (or ID suffix of the ARNs) for the source event data store (‘EventDataStore`) and the destination event data store (`InsightsDestination`). The source event data store logs management events and enables Insights. The destination event data store logs Insights events based upon the management event activity of the source event data store. The source and destination event data stores must belong to the same Amazon Web Services account.
To log Insights events for a trail, you must specify the name (‘TrailName`) of the CloudTrail trail for which you want to change or add Insights selectors.
To log CloudTrail Insights events on API call volume, the trail or event data store must log ‘write` management events. To log CloudTrail Insights events on API error rate, the trail or event data store must log `read` or `write` management events. You can call `GetEventSelectors` on a trail to check whether the trail logs management events. You can call `GetEventDataStore` on an event data store to check whether the event data store logs management events.
For more information, see [Working with CloudTrail Insights] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-insights-events-with-cloudtrail.html
3352 3353 3354 3355 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3352 def put_insight_selectors(params = {}, = {}) req = build_request(:put_insight_selectors, params) req.send_request() end |
#put_resource_policy(params = {}) ⇒ Types::PutResourcePolicyResponse
Attaches a resource-based permission policy to a CloudTrail event data store, dashboard, or channel. For more information about resource-based policies, see [CloudTrail resource-based policy examples] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/security_iam_resource-based-policy-examples.html
3413 3414 3415 3416 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3413 def put_resource_policy(params = {}, = {}) req = build_request(:put_resource_policy, params) req.send_request() end |
#register_organization_delegated_admin(params = {}) ⇒ Struct
Registers an organization’s member account as the CloudTrail [delegated administrator].
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-delegated-administrator.html
3441 3442 3443 3444 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3441 def register_organization_delegated_admin(params = {}, = {}) req = build_request(:register_organization_delegated_admin, params) req.send_request() end |
#remove_tags(params = {}) ⇒ Struct
Removes the specified tags from a trail, event data store, dashboard, or channel.
3486 3487 3488 3489 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3486 def (params = {}, = {}) req = build_request(:remove_tags, params) req.send_request() end |
#restore_event_data_store(params = {}) ⇒ Types::RestoreEventDataStoreResponse
Restores a deleted event data store specified by ‘EventDataStore`, which accepts an event data store ARN. You can only restore a deleted event data store within the seven-day wait period after deletion. Restoring an event data store can take several minutes, depending on the size of the event data store.
3556 3557 3558 3559 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3556 def restore_event_data_store(params = {}, = {}) req = build_request(:restore_event_data_store, params) req.send_request() end |
#search_sample_queries(params = {}) ⇒ Types::SearchSampleQueriesResponse
Searches sample queries and returns a list of sample queries that are sorted by relevance. To search for sample queries, provide a natural language ‘SearchPhrase` in English.
3603 3604 3605 3606 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3603 def search_sample_queries(params = {}, = {}) req = build_request(:search_sample_queries, params) req.send_request() end |
#start_dashboard_refresh(params = {}) ⇒ Types::StartDashboardRefreshResponse
Starts a refresh of the specified dashboard.
Each time a dashboard is refreshed, CloudTrail runs queries to populate the dashboard’s widgets. CloudTrail must be granted permissions to run the ‘StartQuery` operation on your behalf. To provide permissions, run the `PutResourcePolicy` operation to attach a resource-based policy to each event data store. For more information, see [Example: Allow CloudTrail to run queries to populate a dashboard] in the *CloudTrail User Guide*.
3656 3657 3658 3659 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3656 def start_dashboard_refresh(params = {}, = {}) req = build_request(:start_dashboard_refresh, params) req.send_request() end |
#start_event_data_store_ingestion(params = {}) ⇒ Struct
Starts the ingestion of live events on an event data store specified as either an ARN or the ID portion of the ARN. To start ingestion, the event data store ‘Status` must be `STOPPED_INGESTION` and the `eventCategory` must be `Management`, `Data`, `NetworkActivity`, or `ConfigurationItem`.
3683 3684 3685 3686 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3683 def start_event_data_store_ingestion(params = {}, = {}) req = build_request(:start_event_data_store_ingestion, params) req.send_request() end |
#start_import(params = {}) ⇒ Types::StartImportResponse
Starts an import of logged trail events from a source S3 bucket to a destination event data store. By default, CloudTrail only imports events contained in the S3 bucket’s ‘CloudTrail` prefix and the prefixes inside the `CloudTrail` prefix, and does not check prefixes for other Amazon Web Services services. If you want to import CloudTrail events contained in another prefix, you must include the prefix in the `S3LocationUri`. For more considerations about importing trail events, see [Considerations for copying trail events] in the *CloudTrail User Guide*.
When you start a new import, the ‘Destinations` and `ImportSource` parameters are required. Before starting a new import, disable any access control lists (ACLs) attached to the source S3 bucket. For more information about disabling ACLs, see [Controlling ownership of objects and disabling ACLs for your bucket].
When you retry an import, the ‘ImportID` parameter is required.
<note markdown=“1”> If the destination event data store is for an organization, you must use the management account to import trail events. You cannot use the delegated administrator account for the organization.
</note>
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-copy-trail-to-lake.html#cloudtrail-trail-copy-considerations [2]: docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html
3790 3791 3792 3793 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3790 def start_import(params = {}, = {}) req = build_request(:start_import, params) req.send_request() end |
#start_logging(params = {}) ⇒ Struct
Starts the recording of Amazon Web Services API calls and log file delivery for a trail. For a trail that is enabled in all Regions, this operation must be called from the Region in which the trail was created. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail that is enabled in all Regions.
3821 3822 3823 3824 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3821 def start_logging(params = {}, = {}) req = build_request(:start_logging, params) req.send_request() end |
#start_query(params = {}) ⇒ Types::StartQueryResponse
Starts a CloudTrail Lake query. Use the ‘QueryStatement` parameter to provide your SQL query, enclosed in single quotation marks. Use the optional `DeliveryS3Uri` parameter to deliver the query results to an S3 bucket.
‘StartQuery` requires you specify either the `QueryStatement` parameter, or a `QueryAlias` and any `QueryParameters`. In the current release, the `QueryAlias` and `QueryParameters` parameters are used only for the queries that populate the CloudTrail Lake dashboards.
3875 3876 3877 3878 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3875 def start_query(params = {}, = {}) req = build_request(:start_query, params) req.send_request() end |
#stop_event_data_store_ingestion(params = {}) ⇒ Struct
Stops the ingestion of live events on an event data store specified as either an ARN or the ID portion of the ARN. To stop ingestion, the event data store ‘Status` must be `ENABLED` and the `eventCategory` must be `Management`, `Data`, `NetworkActivity`, or `ConfigurationItem`.
3902 3903 3904 3905 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3902 def stop_event_data_store_ingestion(params = {}, = {}) req = build_request(:stop_event_data_store_ingestion, params) req.send_request() end |
#stop_import(params = {}) ⇒ Types::StopImportResponse
Stops a specified import.
3953 3954 3955 3956 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3953 def stop_import(params = {}, = {}) req = build_request(:stop_import, params) req.send_request() end |
#stop_logging(params = {}) ⇒ Struct
Suspends the recording of Amazon Web Services API calls and log file delivery for the specified trail. Under most circumstances, there is no need to use this action. You can update a trail without stopping it first. This action is the only way to stop recording. For a trail enabled in all Regions, this operation must be called from the Region in which the trail was created, or an ‘InvalidHomeRegionException` will occur. This operation cannot be called on the shadow trails (replicated trails in other Regions) of a trail enabled in all Regions.
3987 3988 3989 3990 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 3987 def stop_logging(params = {}, = {}) req = build_request(:stop_logging, params) req.send_request() end |
#update_channel(params = {}) ⇒ Types::UpdateChannelResponse
Updates a channel specified by a required channel ARN or UUID.
4037 4038 4039 4040 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4037 def update_channel(params = {}, = {}) req = build_request(:update_channel, params) req.send_request() end |
#update_dashboard(params = {}) ⇒ Types::UpdateDashboardResponse
Updates the specified dashboard.
To set a refresh schedule, CloudTrail must be granted permissions to run the ‘StartDashboardRefresh` operation to refresh the dashboard on your behalf. To provide permissions, run the `PutResourcePolicy` operation to attach a resource-based policy to the dashboard. For more information, see [ Resource-based policy example for a dashboard] in the *CloudTrail User Guide*.
CloudTrail runs queries to populate the dashboard’s widgets during a manual or scheduled refresh. CloudTrail must be granted permissions to run the ‘StartQuery` operation on your behalf. To provide permissions, run the `PutResourcePolicy` operation to attach a resource-based policy to each event data store. For more information, see [Example: Allow CloudTrail to run queries to populate a dashboard] in the *CloudTrail User Guide*.
[1]: docs.aws.amazon.com/awscloudtrail/latest/userguide/security_iam_resource-based-policy-examples.html#security_iam_resource-based-policy-examples-dashboards [2]: docs.aws.amazon.com/awscloudtrail/latest/userguide/security_iam_resource-based-policy-examples.html#security_iam_resource-based-policy-examples-eds-dashboard
4145 4146 4147 4148 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4145 def update_dashboard(params = {}, = {}) req = build_request(:update_dashboard, params) req.send_request() end |
#update_event_data_store(params = {}) ⇒ Types::UpdateEventDataStoreResponse
Updates an event data store. The required ‘EventDataStore` value is an ARN or the ID portion of the ARN. Other parameters are optional, but at least one optional parameter must be specified, or CloudTrail throws an error. `RetentionPeriod` is in days, and valid values are integers between 7 and 3653 if the `BillingMode` is set to `EXTENDABLE_RETENTION_PRICING`, or between 7 and 2557 if `BillingMode` is set to `FIXED_RETENTION_PRICING`. By default, `TerminationProtection` is enabled.
For event data stores for CloudTrail events, ‘AdvancedEventSelectors` includes or excludes management, data, or network activity events in your event data store. For more information about `AdvancedEventSelectors`, see [AdvancedEventSelectors].
For event data stores for CloudTrail Insights events, Config configuration items, Audit Manager evidence, or non-Amazon Web Services events, ‘AdvancedEventSelectors` includes events of that type in your event data store.
[1]: docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedEventSelector.html
4372 4373 4374 4375 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4372 def update_event_data_store(params = {}, = {}) req = build_request(:update_event_data_store, params) req.send_request() end |
#update_trail(params = {}) ⇒ Types::UpdateTrailResponse
Updates trail settings that control what events you are logging, and how to handle log files. Changes to a trail do not require stopping the CloudTrail service. Use this action to designate an existing bucket for log delivery. If the existing bucket has previously been a target for CloudTrail log files, an IAM policy exists for the bucket. ‘UpdateTrail` must be called from the Region in which the trail was created; otherwise, an `InvalidHomeRegionException` is thrown.
4564 4565 4566 4567 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4564 def update_trail(params = {}, = {}) req = build_request(:update_trail, 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.
4593 4594 4595 |
# File 'lib/aws-sdk-cloudtrail/client.rb', line 4593 def waiter_names [] end |