cloudwatchlogs

package module
v1.44.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 21, 2024 License: Apache-2.0 Imports: 51 Imported by: 302

Documentation

Overview

Package cloudwatchlogs provides the API client, operations, and parameter types for Amazon CloudWatch Logs.

You can use Amazon CloudWatch Logs to monitor, store, and access your log files from EC2 instances, CloudTrail, and other sources. You can then retrieve the associated log data from CloudWatch Logs using the CloudWatch console. Alternatively, you can use CloudWatch Logs commands in the Amazon Web Services CLI, CloudWatch Logs API, or CloudWatch Logs SDK.

You can use CloudWatch Logs to:

  • Monitor logs from EC2 instances in real time: You can use CloudWatch Logs to monitor applications and systems using log data. For example, CloudWatch Logs can track the number of errors that occur in your application logs. Then, it can send you a notification whenever the rate of errors exceeds a threshold that you specify. CloudWatch Logs uses your log data for monitoring so no code changes are required. For example, you can monitor application logs for specific literal terms (such as "NullReferenceException"). You can also count the number of occurrences of a literal term at a particular position in log data (such as "404" status codes in an Apache access log). When the term you are searching for is found, CloudWatch Logs reports the data to a CloudWatch metric that you specify.

  • Monitor CloudTrail logged events: You can create alarms in CloudWatch and receive notifications of particular API activity as captured by CloudTrail. You can use the notification to perform troubleshooting.

  • Archive log data: You can use CloudWatch Logs to store your log data in highly durable storage. You can change the log retention setting so that any log events earlier than this setting are automatically deleted. The CloudWatch Logs agent helps to quickly send both rotated and non-rotated log data off of a host and into the log service. You can then access the raw log data when you need it.

Index

Constants

View Source
const ServiceAPIVersion = "2014-03-28"
View Source
const ServiceID = "CloudWatch Logs"

Variables

This section is empty.

Functions

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func WithAPIOptions added in v1.0.0

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client's APIOptions option.

func WithEndpointResolver deprecated

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint.

To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.

func WithEndpointResolverV2 added in v1.23.0

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.

func WithSigV4SigningName added in v1.27.1

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.

func WithSigV4SigningRegion added in v1.27.1

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.

Types

type AssociateKmsKeyInput

type AssociateKmsKeyInput struct {

	// The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.
	// This must be a symmetric KMS key. For more information, see [Amazon Resource Names]and [Using Symmetric and Asymmetric Keys].
	//
	// [Amazon Resource Names]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-kms
	// [Using Symmetric and Asymmetric Keys]: https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html
	//
	// This member is required.
	KmsKeyId *string

	// The name of the log group.
	//
	// In your AssociateKmsKey operation, you must specify either the
	// resourceIdentifier parameter or the logGroup parameter, but you can't specify
	// both.
	LogGroupName *string

	// Specifies the target for this operation. You must specify one of the following:
	//
	//   - Specify the following ARN to have future [GetQueryResults]operations in this account encrypt
	//   the results with the specified KMS key. Replace REGION and ACCOUNT_ID with your
	//   Region and account ID.
	//
	// arn:aws:logs:REGION:ACCOUNT_ID:query-result:*
	//
	//   - Specify the ARN of a log group to have CloudWatch Logs use the KMS key to
	//   encrypt log events that are ingested and stored by that log group. The log group
	//   ARN must be in the following format. Replace REGION and ACCOUNT_ID with your
	//   Region and account ID.
	//
	// arn:aws:logs:REGION:ACCOUNT_ID:log-group:LOG_GROUP_NAME
	//
	// In your AssociateKmsKey operation, you must specify either the
	// resourceIdentifier parameter or the logGroup parameter, but you can't specify
	// both.
	//
	// [GetQueryResults]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_GetQueryResults.html
	ResourceIdentifier *string
	// contains filtered or unexported fields
}

type AssociateKmsKeyOutput

type AssociateKmsKeyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type AuthResolverParameters added in v1.27.1

type AuthResolverParameters struct {
	// The name of the operation being invoked.
	Operation string

	// The region in which the operation is being invoked.
	Region string
}

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

type AuthSchemeResolver added in v1.27.1

type AuthSchemeResolver interface {
	ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}

AuthSchemeResolver returns a set of possible authentication options for an operation.

type CancelExportTaskInput

type CancelExportTaskInput struct {

	// The ID of the export task.
	//
	// This member is required.
	TaskId *string
	// contains filtered or unexported fields
}

type CancelExportTaskOutput

type CancelExportTaskOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client provides the API client to make operations call for Amazon CloudWatch Logs.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) AssociateKmsKey

func (c *Client) AssociateKmsKey(ctx context.Context, params *AssociateKmsKeyInput, optFns ...func(*Options)) (*AssociateKmsKeyOutput, error)

Associates the specified KMS key with either one log group in the account, or with all stored CloudWatch Logs query insights results in the account.

When you use AssociateKmsKey , you specify either the logGroupName parameter or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

  • Specify the logGroupName parameter to cause all log events stored in the log group to be encrypted with that key. Only the log events ingested after the key is associated are encrypted with that key.

Associating a KMS key with a log group overrides any existing associations

between the log group and a KMS key. After a KMS key is associated with a log
group, all newly ingested data for the log group is encrypted using the KMS key.
This association is stored as long as the data encrypted with the KMS key is
still within CloudWatch Logs. This enables CloudWatch Logs to decrypt this data
whenever it is requested.

Associating a key with a log group does not cause the results of queries of

that log group to be encrypted with that key. To have query results encrypted
with a KMS key, you must use an AssociateKmsKey operation with the
resourceIdentifier parameter that specifies a query-result resource.

- Specify the resourceIdentifier parameter with a query-result resource, to
use that key to encrypt the stored results of all future [StartQuery]operations in the
account. The response from a [GetQueryResults]operation will still return the query results in
plain text.

Even if you have not associated a key with your query results, the query

results are encrypted when stored, using the default CloudWatch Logs method.

If you run a query from a monitoring account that queries logs in a source

account, the query results key from the monitoring account, if any, is used.

If you delete the key that is used to encrypt log events or log group query results, then all the associated stored log events or query results that were encrypted with that key will be unencryptable and unusable.

CloudWatch Logs supports only symmetric KMS keys. Do not use an associate an asymmetric KMS key with your log group or query results. For more information, see Using Symmetric and Asymmetric Keys.

It can take up to 5 minutes for this operation to take effect.

If you attempt to associate a KMS key with a log group but the KMS key does not exist or the KMS key is disabled, you receive an InvalidParameterException error.

func (*Client) CancelExportTask

func (c *Client) CancelExportTask(ctx context.Context, params *CancelExportTaskInput, optFns ...func(*Options)) (*CancelExportTaskOutput, error)

Cancels the specified export task.

The task must be in the PENDING or RUNNING state.

func (*Client) CreateDelivery added in v1.27.0

func (c *Client) CreateDelivery(ctx context.Context, params *CreateDeliveryInput, optFns ...func(*Options)) (*CreateDeliveryOutput, error)

Creates a delivery. A delivery is a connection between a logical delivery source and a logical delivery destination that you have already created.

Only some Amazon Web Services services support being configured as a delivery source using this operation. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

A delivery destination can represent a log group in CloudWatch Logs, an Amazon S3 bucket, or a delivery stream in Firehose.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicyin the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

To update an existing delivery configuration, use UpdateDeliveryConfiguration.

func (*Client) CreateExportTask

func (c *Client) CreateExportTask(ctx context.Context, params *CreateExportTaskInput, optFns ...func(*Options)) (*CreateExportTaskOutput, error)

Creates an export task so that you can efficiently export data from a log group to an Amazon S3 bucket. When you perform a CreateExportTask operation, you must use credentials that have permission to write to the S3 bucket that you specify as the destination.

Exporting log data to S3 buckets that are encrypted by KMS is supported. Exporting log data to Amazon S3 buckets that have S3 Object Lock enabled with a retention period is also supported.

Exporting to S3 buckets that are encrypted with AES-256 is supported.

This is an asynchronous call. If all the required information is provided, this operation initiates an export task and responds with the ID of the task. After the task has started, you can use DescribeExportTasksto get the status of the export task. Each account can only have one active ( RUNNING or PENDING ) export task at a time. To cancel an export task, use CancelExportTask.

You can export logs from multiple log groups or multiple time ranges to the same S3 bucket. To separate log data for each export task, specify a prefix to be used as the Amazon S3 key prefix for all exported objects.

Time-based sorting on chunks of log data inside an exported file is not guaranteed. You can sort the exported log field data by using Linux utilities.

func (*Client) CreateLogAnomalyDetector added in v1.28.0

func (c *Client) CreateLogAnomalyDetector(ctx context.Context, params *CreateLogAnomalyDetectorInput, optFns ...func(*Options)) (*CreateLogAnomalyDetectorOutput, error)

Creates an anomaly detector that regularly scans one or more log groups and look for patterns and anomalies in the logs.

An anomaly detector can help surface issues by automatically discovering anomalies in your log event traffic. An anomaly detector uses machine learning algorithms to scan log events and find patterns.

A pattern is a shared text structure that recurs among your log fields. Patterns provide a useful tool for analyzing large sets of logs because a large number of log events can often be compressed into a few patterns.

The anomaly detector uses pattern recognition to find anomalies , which are unusual log events. It uses the evaluationFrequency to compare current log events and patterns with trained baselines.

Fields within a pattern are called tokens. Fields that vary within a pattern, such as a request ID or timestamp, are referred to as dynamic tokens and represented by <> .

The following is an example of a pattern:

[INFO] Request time: <

> ms

This pattern represents log events like [INFO] Request time: 327 ms and other similar log events that differ only by the number, in this csse 327. When the pattern is displayed, the different numbers are replaced by <*>

Any parts of log events that are masked as sensitive data are not scanned for anomalies. For more information about masking sensitive data, see Help protect sensitive log data with masking.

func (*Client) CreateLogGroup

func (c *Client) CreateLogGroup(ctx context.Context, params *CreateLogGroupInput, optFns ...func(*Options)) (*CreateLogGroupOutput, error)

Creates a log group with the specified name. You can create up to 1,000,000 log groups per Region per account.

You must use the following guidelines when naming a log group:

  • Log group names must be unique within a Region for an Amazon Web Services account.

  • Log group names can be between 1 and 512 characters long.

  • Log group names consist of the following characters: a-z, A-Z, 0-9, '_' (underscore), '-' (hyphen), '/' (forward slash), '.' (period), and '#' (number sign)

  • Log group names can't start with the string aws/

When you create a log group, by default the log events in the log group do not expire. To set a retention policy so that events expire and are deleted after a specified time, use PutRetentionPolicy.

If you associate an KMS key with the log group, ingested data is encrypted using the KMS key. This association is stored as long as the data encrypted with the KMS key is still within CloudWatch Logs. This enables CloudWatch Logs to decrypt this data whenever it is requested.

If you attempt to associate a KMS key with the log group but the KMS key does not exist or the KMS key is disabled, you receive an InvalidParameterException error.

CloudWatch Logs supports only symmetric KMS keys. Do not associate an asymmetric KMS key with your log group. For more information, see Using Symmetric and Asymmetric Keys.

func (*Client) CreateLogStream

func (c *Client) CreateLogStream(ctx context.Context, params *CreateLogStreamInput, optFns ...func(*Options)) (*CreateLogStreamOutput, error)

Creates a log stream for the specified log group. A log stream is a sequence of log events that originate from a single source, such as an application instance or a resource that is being monitored.

There is no limit on the number of log streams that you can create for a log group. There is a limit of 50 TPS on CreateLogStream operations, after which transactions are throttled.

You must use the following guidelines when naming a log stream:

  • Log stream names must be unique within the log group.

  • Log stream names can be between 1 and 512 characters long.

  • Don't use ':' (colon) or '*' (asterisk) characters.

func (*Client) DeleteAccountPolicy added in v1.21.0

func (c *Client) DeleteAccountPolicy(ctx context.Context, params *DeleteAccountPolicyInput, optFns ...func(*Options)) (*DeleteAccountPolicyOutput, error)

Deletes a CloudWatch Logs account policy. This stops the account-wide policy from applying to log groups in the account. If you delete a data protection policy or subscription filter policy, any log-group level policies of those types remain in effect.

To use this operation, you must be signed on with the correct permissions depending on the type of policy that you are deleting.

  • To delete a data protection policy, you must have the logs:DeleteDataProtectionPolicy and logs:DeleteAccountPolicy permissions.

  • To delete a subscription filter policy, you must have the logs:DeleteSubscriptionFilter and logs:DeleteAccountPolicy permissions.

  • To delete a transformer policy, you must have the logs:DeleteTransformer and logs:DeleteAccountPolicy permissions.

  • To delete a field index policy, you must have the logs:DeleteIndexPolicy and logs:DeleteAccountPolicy permissions.

If you delete a field index policy, the indexing of the log events that happened before you deleted the policy will still be used for up to 30 days to improve CloudWatch Logs Insights queries.

func (*Client) DeleteDataProtectionPolicy added in v1.17.0

func (c *Client) DeleteDataProtectionPolicy(ctx context.Context, params *DeleteDataProtectionPolicyInput, optFns ...func(*Options)) (*DeleteDataProtectionPolicyOutput, error)

Deletes the data protection policy from the specified log group.

For more information about data protection policies, see PutDataProtectionPolicy.

func (*Client) DeleteDelivery added in v1.27.0

func (c *Client) DeleteDelivery(ctx context.Context, params *DeleteDeliveryInput, optFns ...func(*Options)) (*DeleteDeliveryOutput, error)

Deletes s delivery. A delivery is a connection between a logical delivery source and a logical delivery destination. Deleting a delivery only deletes the connection between the delivery source and delivery destination. It does not delete the delivery destination or the delivery source.

func (*Client) DeleteDeliveryDestination added in v1.27.0

func (c *Client) DeleteDeliveryDestination(ctx context.Context, params *DeleteDeliveryDestinationInput, optFns ...func(*Options)) (*DeleteDeliveryDestinationOutput, error)

Deletes a delivery destination. A delivery is a connection between a logical delivery source and a logical delivery destination.

You can't delete a delivery destination if any current deliveries are associated with it. To find whether any deliveries are associated with this delivery destination, use the DescribeDeliveriesoperation and check the deliveryDestinationArn field in the results.

func (*Client) DeleteDeliveryDestinationPolicy added in v1.27.0

func (c *Client) DeleteDeliveryDestinationPolicy(ctx context.Context, params *DeleteDeliveryDestinationPolicyInput, optFns ...func(*Options)) (*DeleteDeliveryDestinationPolicyOutput, error)

Deletes a delivery destination policy. For more information about these policies, see PutDeliveryDestinationPolicy.

func (*Client) DeleteDeliverySource added in v1.27.0

func (c *Client) DeleteDeliverySource(ctx context.Context, params *DeleteDeliverySourceInput, optFns ...func(*Options)) (*DeleteDeliverySourceOutput, error)

Deletes a delivery source. A delivery is a connection between a logical delivery source and a logical delivery destination.

You can't delete a delivery source if any current deliveries are associated with it. To find whether any deliveries are associated with this delivery source, use the DescribeDeliveriesoperation and check the deliverySourceName field in the results.

func (*Client) DeleteDestination

func (c *Client) DeleteDestination(ctx context.Context, params *DeleteDestinationInput, optFns ...func(*Options)) (*DeleteDestinationOutput, error)

Deletes the specified destination, and eventually disables all the subscription filters that publish to it. This operation does not delete the physical resource encapsulated by the destination.

func (*Client) DeleteIndexPolicy added in v1.44.0

func (c *Client) DeleteIndexPolicy(ctx context.Context, params *DeleteIndexPolicyInput, optFns ...func(*Options)) (*DeleteIndexPolicyOutput, error)

Deletes a log-group level field index policy that was applied to a single log group. The indexing of the log events that happened before you delete the policy will still be used for as many as 30 days to improve CloudWatch Logs Insights queries.

You can't use this operation to delete an account-level index policy. Instead, use DeletAccountPolicy.

If you delete a log-group level field index policy and there is an account-level field index policy, in a few minutes the log group begins using that account-wide policy to index new incoming log events.

func (*Client) DeleteLogAnomalyDetector added in v1.28.0

func (c *Client) DeleteLogAnomalyDetector(ctx context.Context, params *DeleteLogAnomalyDetectorInput, optFns ...func(*Options)) (*DeleteLogAnomalyDetectorOutput, error)

Deletes the specified CloudWatch Logs anomaly detector.

func (*Client) DeleteLogGroup

func (c *Client) DeleteLogGroup(ctx context.Context, params *DeleteLogGroupInput, optFns ...func(*Options)) (*DeleteLogGroupOutput, error)

Deletes the specified log group and permanently deletes all the archived log events associated with the log group.

func (*Client) DeleteLogStream

func (c *Client) DeleteLogStream(ctx context.Context, params *DeleteLogStreamInput, optFns ...func(*Options)) (*DeleteLogStreamOutput, error)

Deletes the specified log stream and permanently deletes all the archived log events associated with the log stream.

func (*Client) DeleteMetricFilter

func (c *Client) DeleteMetricFilter(ctx context.Context, params *DeleteMetricFilterInput, optFns ...func(*Options)) (*DeleteMetricFilterOutput, error)

Deletes the specified metric filter.

func (*Client) DeleteQueryDefinition

func (c *Client) DeleteQueryDefinition(ctx context.Context, params *DeleteQueryDefinitionInput, optFns ...func(*Options)) (*DeleteQueryDefinitionOutput, error)

Deletes a saved CloudWatch Logs Insights query definition. A query definition contains details about a saved CloudWatch Logs Insights query.

Each DeleteQueryDefinition operation can delete one query definition.

You must have the logs:DeleteQueryDefinition permission to be able to perform this operation.

func (*Client) DeleteResourcePolicy

func (c *Client) DeleteResourcePolicy(ctx context.Context, params *DeleteResourcePolicyInput, optFns ...func(*Options)) (*DeleteResourcePolicyOutput, error)

Deletes a resource policy from this account. This revokes the access of the identities in that policy to put log events to this account.

func (*Client) DeleteRetentionPolicy

func (c *Client) DeleteRetentionPolicy(ctx context.Context, params *DeleteRetentionPolicyInput, optFns ...func(*Options)) (*DeleteRetentionPolicyOutput, error)

Deletes the specified retention policy.

Log events do not expire if they belong to log groups without a retention policy.

func (*Client) DeleteSubscriptionFilter

func (c *Client) DeleteSubscriptionFilter(ctx context.Context, params *DeleteSubscriptionFilterInput, optFns ...func(*Options)) (*DeleteSubscriptionFilterOutput, error)

Deletes the specified subscription filter.

func (*Client) DeleteTransformer added in v1.44.0

func (c *Client) DeleteTransformer(ctx context.Context, params *DeleteTransformerInput, optFns ...func(*Options)) (*DeleteTransformerOutput, error)

Deletes the log transformer for the specified log group. As soon as you do this, the transformation of incoming log events according to that transformer stops. If this account has an account-level transformer that applies to this log group, the log group begins using that account-level transformer when this log-group level transformer is deleted.

After you delete a transformer, be sure to edit any metric filters or subscription filters that relied on the transformed versions of the log events.

func (*Client) DescribeAccountPolicies added in v1.21.0

func (c *Client) DescribeAccountPolicies(ctx context.Context, params *DescribeAccountPoliciesInput, optFns ...func(*Options)) (*DescribeAccountPoliciesOutput, error)

Returns a list of all CloudWatch Logs account policies in the account.

func (*Client) DescribeConfigurationTemplates added in v1.39.0

func (c *Client) DescribeConfigurationTemplates(ctx context.Context, params *DescribeConfigurationTemplatesInput, optFns ...func(*Options)) (*DescribeConfigurationTemplatesOutput, error)

Use this operation to return the valid and default values that are used when creating delivery sources, delivery destinations, and deliveries. For more information about deliveries, see CreateDelivery.

func (*Client) DescribeDeliveries added in v1.27.0

func (c *Client) DescribeDeliveries(ctx context.Context, params *DescribeDeliveriesInput, optFns ...func(*Options)) (*DescribeDeliveriesOutput, error)

Retrieves a list of the deliveries that have been created in the account.

A delivery is a connection between a delivery source and a delivery destination.

A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose. Only some Amazon Web Services services support being configured as a delivery source. These services are listed in Enable logging from Amazon Web Services services.

func (*Client) DescribeDeliveryDestinations added in v1.27.0

func (c *Client) DescribeDeliveryDestinations(ctx context.Context, params *DescribeDeliveryDestinationsInput, optFns ...func(*Options)) (*DescribeDeliveryDestinationsOutput, error)

Retrieves a list of the delivery destinations that have been created in the account.

func (*Client) DescribeDeliverySources added in v1.27.0

func (c *Client) DescribeDeliverySources(ctx context.Context, params *DescribeDeliverySourcesInput, optFns ...func(*Options)) (*DescribeDeliverySourcesOutput, error)

Retrieves a list of the delivery sources that have been created in the account.

func (*Client) DescribeDestinations

func (c *Client) DescribeDestinations(ctx context.Context, params *DescribeDestinationsInput, optFns ...func(*Options)) (*DescribeDestinationsOutput, error)

Lists all your destinations. The results are ASCII-sorted by destination name.

func (*Client) DescribeExportTasks

func (c *Client) DescribeExportTasks(ctx context.Context, params *DescribeExportTasksInput, optFns ...func(*Options)) (*DescribeExportTasksOutput, error)

Lists the specified export tasks. You can list all your export tasks or filter the results based on task ID or task status.

func (*Client) DescribeFieldIndexes added in v1.44.0

func (c *Client) DescribeFieldIndexes(ctx context.Context, params *DescribeFieldIndexesInput, optFns ...func(*Options)) (*DescribeFieldIndexesOutput, error)

Returns a list of field indexes listed in the field index policies of one or more log groups. For more information about field index policies, see PutIndexPolicy.

func (*Client) DescribeIndexPolicies added in v1.44.0

func (c *Client) DescribeIndexPolicies(ctx context.Context, params *DescribeIndexPoliciesInput, optFns ...func(*Options)) (*DescribeIndexPoliciesOutput, error)

Returns the field index policies of one or more log groups. For more information about field index policies, see PutIndexPolicy.

If a specified log group has a log-group level index policy, that policy is returned by this operation.

If a specified log group doesn't have a log-group level index policy, but an account-wide index policy applies to it, that account-wide policy is returned by this operation.

To find information about only account-level policies, use DescribeAccountPolicies instead.

func (*Client) DescribeLogGroups

func (c *Client) DescribeLogGroups(ctx context.Context, params *DescribeLogGroupsInput, optFns ...func(*Options)) (*DescribeLogGroupsOutput, error)

Lists the specified log groups. You can list all your log groups or filter the results by prefix. The results are ASCII-sorted by log group name.

CloudWatch Logs doesn't support IAM policies that control access to the DescribeLogGroups action by using the aws:ResourceTag/key-name condition key. Other CloudWatch Logs actions do support the use of the aws:ResourceTag/key-name condition key to control access. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

func (*Client) DescribeLogStreams

func (c *Client) DescribeLogStreams(ctx context.Context, params *DescribeLogStreamsInput, optFns ...func(*Options)) (*DescribeLogStreamsOutput, error)

Lists the log streams for the specified log group. You can list all the log streams or filter the results by prefix. You can also control how the results are ordered.

You can specify the log group to search by using either logGroupIdentifier or logGroupName . You must include one of these two parameters, but you can't include both.

This operation has a limit of five transactions per second, after which transactions are throttled.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

func (*Client) DescribeMetricFilters

func (c *Client) DescribeMetricFilters(ctx context.Context, params *DescribeMetricFiltersInput, optFns ...func(*Options)) (*DescribeMetricFiltersOutput, error)

Lists the specified metric filters. You can list all of the metric filters or filter the results by log name, prefix, metric name, or metric namespace. The results are ASCII-sorted by filter name.

func (*Client) DescribeQueries

func (c *Client) DescribeQueries(ctx context.Context, params *DescribeQueriesInput, optFns ...func(*Options)) (*DescribeQueriesOutput, error)

Returns a list of CloudWatch Logs Insights queries that are scheduled, running, or have been run recently in this account. You can request all queries or limit it to queries of a specific log group or queries with a certain status.

func (*Client) DescribeQueryDefinitions

func (c *Client) DescribeQueryDefinitions(ctx context.Context, params *DescribeQueryDefinitionsInput, optFns ...func(*Options)) (*DescribeQueryDefinitionsOutput, error)

This operation returns a paginated list of your saved CloudWatch Logs Insights query definitions. You can retrieve query definitions from the current account or from a source account that is linked to the current account.

You can use the queryDefinitionNamePrefix parameter to limit the results to only the query definitions that have names that start with a certain string.

func (*Client) DescribeResourcePolicies

func (c *Client) DescribeResourcePolicies(ctx context.Context, params *DescribeResourcePoliciesInput, optFns ...func(*Options)) (*DescribeResourcePoliciesOutput, error)

Lists the resource policies in this account.

func (*Client) DescribeSubscriptionFilters

func (c *Client) DescribeSubscriptionFilters(ctx context.Context, params *DescribeSubscriptionFiltersInput, optFns ...func(*Options)) (*DescribeSubscriptionFiltersOutput, error)

Lists the subscription filters for the specified log group. You can list all the subscription filters or filter the results by prefix. The results are ASCII-sorted by filter name.

func (*Client) DisassociateKmsKey

func (c *Client) DisassociateKmsKey(ctx context.Context, params *DisassociateKmsKeyInput, optFns ...func(*Options)) (*DisassociateKmsKeyOutput, error)

Disassociates the specified KMS key from the specified log group or from all CloudWatch Logs Insights query results in the account.

When you use DisassociateKmsKey , you specify either the logGroupName parameter or the resourceIdentifier parameter. You can't specify both of those parameters in the same operation.

  • Specify the logGroupName parameter to stop using the KMS key to encrypt future log events ingested and stored in the log group. Instead, they will be encrypted with the default CloudWatch Logs method. The log events that were ingested while the key was associated with the log group are still encrypted with that key. Therefore, CloudWatch Logs will need permissions for the key whenever that data is accessed.

  • Specify the resourceIdentifier parameter with the query-result resource to stop using the KMS key to encrypt the results of all future StartQueryoperations in the account. They will instead be encrypted with the default CloudWatch Logs method. The results from queries that ran while the key was associated with the account are still encrypted with that key. Therefore, CloudWatch Logs will need permissions for the key whenever that data is accessed.

It can take up to 5 minutes for this operation to take effect.

func (*Client) FilterLogEvents

func (c *Client) FilterLogEvents(ctx context.Context, params *FilterLogEventsInput, optFns ...func(*Options)) (*FilterLogEventsOutput, error)

Lists log events from the specified log group. You can list all the log events or filter the results using a filter pattern, a time range, and the name of the log stream.

You must have the logs:FilterLogEvents permission to perform this operation.

You can specify the log group to search by using either logGroupIdentifier or logGroupName . You must include one of these two parameters, but you can't include both.

By default, this operation returns as many log events as can fit in 1 MB (up to 10,000 log events) or all the events found within the specified time range. If the results include a token, that means there are more log events available. You can get additional results by specifying the token in a subsequent call. This operation can return empty results while there are more log events available through the token.

The returned log events are sorted by event timestamp, the timestamp when the event was ingested by CloudWatch Logs, and the ID of the PutLogEvents request.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

func (*Client) GetDataProtectionPolicy added in v1.17.0

func (c *Client) GetDataProtectionPolicy(ctx context.Context, params *GetDataProtectionPolicyInput, optFns ...func(*Options)) (*GetDataProtectionPolicyOutput, error)

Returns information about a log group data protection policy.

func (*Client) GetDelivery added in v1.27.0

func (c *Client) GetDelivery(ctx context.Context, params *GetDeliveryInput, optFns ...func(*Options)) (*GetDeliveryOutput, error)

Returns complete information about one logical delivery. A delivery is a connection between a delivery sourceand a delivery destination.

A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose. Only some Amazon Web Services services support being configured as a delivery source. These services are listed in Enable logging from Amazon Web Services services.

You need to specify the delivery id in this operation. You can find the IDs of the deliveries in your account with the DescribeDeliveriesoperation.

func (*Client) GetDeliveryDestination added in v1.27.0

func (c *Client) GetDeliveryDestination(ctx context.Context, params *GetDeliveryDestinationInput, optFns ...func(*Options)) (*GetDeliveryDestinationOutput, error)

Retrieves complete information about one delivery destination.

func (*Client) GetDeliveryDestinationPolicy added in v1.27.0

func (c *Client) GetDeliveryDestinationPolicy(ctx context.Context, params *GetDeliveryDestinationPolicyInput, optFns ...func(*Options)) (*GetDeliveryDestinationPolicyOutput, error)

Retrieves the delivery destination policy assigned to the delivery destination that you specify. For more information about delivery destinations and their policies, see PutDeliveryDestinationPolicy.

func (*Client) GetDeliverySource added in v1.27.0

func (c *Client) GetDeliverySource(ctx context.Context, params *GetDeliverySourceInput, optFns ...func(*Options)) (*GetDeliverySourceOutput, error)

Retrieves complete information about one delivery source.

func (*Client) GetLogAnomalyDetector added in v1.28.0

func (c *Client) GetLogAnomalyDetector(ctx context.Context, params *GetLogAnomalyDetectorInput, optFns ...func(*Options)) (*GetLogAnomalyDetectorOutput, error)

Retrieves information about the log anomaly detector that you specify.

func (*Client) GetLogEvents

func (c *Client) GetLogEvents(ctx context.Context, params *GetLogEventsInput, optFns ...func(*Options)) (*GetLogEventsOutput, error)

Lists log events from the specified log stream. You can list all of the log events or filter using a time range.

By default, this operation returns as many log events as can fit in a response size of 1MB (up to 10,000 log events). You can get additional log events by specifying one of the tokens in a subsequent call. This operation can return empty results while there are more log events available through the token.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

You can specify the log group to search by using either logGroupIdentifier or logGroupName . You must include one of these two parameters, but you can't include both.

func (*Client) GetLogGroupFields

func (c *Client) GetLogGroupFields(ctx context.Context, params *GetLogGroupFieldsInput, optFns ...func(*Options)) (*GetLogGroupFieldsOutput, error)

Returns a list of the fields that are included in log events in the specified log group. Includes the percentage of log events that contain each field. The search is limited to a time period that you specify.

You can specify the log group to search by using either logGroupIdentifier or logGroupName . You must specify one of these parameters, but you can't specify both.

In the results, fields that start with @ are fields generated by CloudWatch Logs. For example, @timestamp is the timestamp of each log event. For more information about the fields that are generated by CloudWatch logs, see Supported Logs and Discovered Fields.

The response results are sorted by the frequency percentage, starting with the highest percentage.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account and view data from the linked source accounts. For more information, see CloudWatch cross-account observability.

func (*Client) GetLogRecord

func (c *Client) GetLogRecord(ctx context.Context, params *GetLogRecordInput, optFns ...func(*Options)) (*GetLogRecordOutput, error)

Retrieves all of the fields and values of a single log event. All fields are retrieved, even if the original query that produced the logRecordPointer retrieved only a subset of fields. Fields are returned as field name/field value pairs.

The full unparsed log event is returned within @message .

func (*Client) GetQueryResults

func (c *Client) GetQueryResults(ctx context.Context, params *GetQueryResultsInput, optFns ...func(*Options)) (*GetQueryResultsOutput, error)

Returns the results from the specified query.

Only the fields requested in the query are returned, along with a @ptr field, which is the identifier for the log record. You can use the value of @ptr in a GetLogRecord operation to get the full log record.

GetQueryResults does not start running a query. To run a query, use StartQuery. For more information about how long results of previous queries are available, see CloudWatch Logs quotas.

If the value of the Status field in the output is Running , this operation returns only partial results. If you see a value of Scheduled or Running for the status, you can retry the operation later to see the final results.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account to start queries in linked source accounts. For more information, see CloudWatch cross-account observability.

func (*Client) GetTransformer added in v1.44.0

func (c *Client) GetTransformer(ctx context.Context, params *GetTransformerInput, optFns ...func(*Options)) (*GetTransformerOutput, error)

Returns the information about the log transformer associated with this log group.

This operation returns data only for transformers created at the log group level. To get information for an account-level transformer, use DescribeAccountPolicies.

func (*Client) ListAnomalies added in v1.28.0

func (c *Client) ListAnomalies(ctx context.Context, params *ListAnomaliesInput, optFns ...func(*Options)) (*ListAnomaliesOutput, error)

Returns a list of anomalies that log anomaly detectors have found. For details about the structure format of each anomaly object that is returned, see the example in this section.

func (*Client) ListLogAnomalyDetectors added in v1.28.0

func (c *Client) ListLogAnomalyDetectors(ctx context.Context, params *ListLogAnomalyDetectorsInput, optFns ...func(*Options)) (*ListLogAnomalyDetectorsOutput, error)

Retrieves a list of the log anomaly detectors in the account.

func (*Client) ListLogGroupsForQuery added in v1.44.0

func (c *Client) ListLogGroupsForQuery(ctx context.Context, params *ListLogGroupsForQueryInput, optFns ...func(*Options)) (*ListLogGroupsForQueryOutput, error)

Returns a list of the log groups that were analyzed during a single CloudWatch Logs Insights query. This can be useful for queries that use log group name prefixes or the filterIndex command, because the log groups are dynamically selected in these cases.

For more information about field indexes, see Create field indexes to improve query performance and reduce costs.

func (*Client) ListTagsForResource added in v1.16.0

func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)

Displays the tags associated with a CloudWatch Logs resource. Currently, log groups and destinations support tagging.

func (*Client) ListTagsLogGroup deprecated

func (c *Client) ListTagsLogGroup(ctx context.Context, params *ListTagsLogGroupInput, optFns ...func(*Options)) (*ListTagsLogGroupOutput, error)

The ListTagsLogGroup operation is on the path to deprecation. We recommend that you use ListTagsForResourceinstead.

Lists the tags for the specified log group.

Deprecated: Please use the generic tagging API ListTagsForResource

func (*Client) Options added in v1.29.0

func (c *Client) Options() Options

Options returns a copy of the client configuration.

Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.

func (*Client) PutAccountPolicy added in v1.21.0

func (c *Client) PutAccountPolicy(ctx context.Context, params *PutAccountPolicyInput, optFns ...func(*Options)) (*PutAccountPolicyOutput, error)

Creates an account-level data protection policy, subscription filter policy, or field index policy that applies to all log groups or a subset of log groups in the account.

Data protection policy

A data protection policy can help safeguard sensitive data that's ingested by your log groups by auditing and masking the sensitive log data. Each account can have only one account-level data protection policy.

Sensitive data is detected and masked when it is ingested into a log group. When you set a data protection policy, log events ingested into the log groups before that time are not masked.

If you use PutAccountPolicy to create a data protection policy for your whole account, it applies to both existing log groups and all log groups that are created later in this account. The account-level policy is applied to existing log groups with eventual consistency. It might take up to 5 minutes before sensitive data in existing log groups begins to be masked.

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEventsor FilterLogEvents operation with the unmask parameter set to true to view the unmasked log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs Insights query with the unmask query command.

For more information, including a list of types of data that can be audited and masked, see Protect sensitive log data with masking.

To use the PutAccountPolicy operation for a data protection policy, you must be signed on with the logs:PutDataProtectionPolicy and logs:PutAccountPolicy permissions.

The PutAccountPolicy operation applies to all log groups in the account. You can use PutDataProtectionPolicyto create a data protection policy that applies to just one log group. If a log group has its own data protection policy and the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term specified in either policy is masked.

Subscription filter policy

A subscription filter policy sets up a real-time feed of log events from CloudWatch Logs to other Amazon Web Services services. Account-level subscription filter policies apply to both existing log groups and log groups that are created later in this account. Supported destinations are Kinesis Data Streams, Firehose, and Lambda. When log events are sent to the receiving service, they are Base64 encoded and compressed with the GZIP format.

The following destinations are supported for subscription filters:

  • An Kinesis Data Streams data stream in the same account as the subscription policy, for same-account delivery.

  • An Firehose data stream in the same account as the subscription policy, for same-account delivery.

  • A Lambda function in the same account as the subscription policy, for same-account delivery.

  • A logical destination in a different account created with PutDestination, for cross-account delivery. Kinesis Data Streams and Firehose are supported as logical destinations.

Each account can have one account-level subscription filter policy per Region. If you are updating an existing filter, you must specify the correct name in PolicyName . To perform a PutAccountPolicy subscription filter operation for any destination except a Lambda function, you must also have the iam:PassRole permission.

Transformer policy

Creates or updates a log transformer policy for your account. You use log transformers to transform log events into a different format, making them easier for you to process and analyze. You can also transform logs from different sources into standardized formats that contain relevant, source-specific information. After you have created a transformer, CloudWatch Logs performs this transformation at the time of log ingestion. You can then refer to the transformed versions of the logs during operations such as querying with CloudWatch Logs Insights or creating metric filters or subscription filters.

You can also use a transformer to copy metadata from metadata keys into the log events themselves. This metadata can include log group name, log stream name, account ID and Region.

A transformer for a log group is a series of processors, where each processor applies one type of transformation to the log events ingested into this log group. For more information about the available processors to use in a transformer, see Processors that you can use.

Having log events in standardized format enables visibility across your applications for your log analysis, reporting, and alarming needs. CloudWatch Logs provides transformation for common log types with out-of-the-box transformation templates for major Amazon Web Services log sources such as VPC flow logs, Lambda, and Amazon RDS. You can use pre-built transformation templates or create custom transformation policies.

You can create transformers only for the log groups in the Standard log class.

You can have one account-level transformer policy that applies to all log groups in the account. Or you can create as many as 20 account-level transformer policies that are each scoped to a subset of log groups with the selectionCriteria parameter. If you have multiple account-level transformer policies with selection criteria, no two of them can use the same or overlapping log group name prefixes. For example, if you have one policy filtered to log groups that start with my-log , you can't have another field index policy filtered to my-logpprod or my-logging .

You can also set up a transformer at the log-group level. For more information, see PutTransformer. If there is both a log-group level transformer created with PutTransformer and an account-level transformer that could apply to the same log group, the log group uses only the log-group level transformer. It ignores the account-level transformer.

Field index policy

You can use field index policies to create indexes on fields found in log events in the log group. Creating field indexes can help lower the scan volume for CloudWatch Logs Insights queries that reference those fields, because these queries attempt to skip the processing of log events that are known to not match the indexed field. Good fields to index are fields that you often need to query for and fields or values that match only a small fraction of the total log events. Common examples of indexes include request ID, session ID, user IDs, or instance IDs. For more information, see Create field indexes to improve query performance and reduce costs

To find the fields that are in your log group events, use the GetLogGroupFields operation.

For example, suppose you have created a field index for requestId . Then, any CloudWatch Logs Insights query on that log group that includes requestId = value or requestId in [value, value, ...] will attempt to process only the log events where the indexed field matches the specified value.

Matches of log events to the names of indexed fields are case-sensitive. For example, an indexed field of RequestId won't match a log event containing requestId .

You can have one account-level field index policy that applies to all log groups in the account. Or you can create as many as 20 account-level field index policies that are each scoped to a subset of log groups with the selectionCriteria parameter. If you have multiple account-level index policies with selection criteria, no two of them can use the same or overlapping log group name prefixes. For example, if you have one policy filtered to log groups that start with my-log , you can't have another field index policy filtered to my-logpprod or my-logging .

If you create an account-level field index policy in a monitoring account in cross-account observability, the policy is applied only to the monitoring account and not to any source accounts.

If you want to create a field index policy for a single log group, you can use PutIndexPolicy instead of PutAccountPolicy . If you do so, that log group will use only that log-group level policy, and will ignore the account-level policy that you create with PutAccountPolicy.

func (*Client) PutDataProtectionPolicy added in v1.17.0

func (c *Client) PutDataProtectionPolicy(ctx context.Context, params *PutDataProtectionPolicyInput, optFns ...func(*Options)) (*PutDataProtectionPolicyOutput, error)

Creates a data protection policy for the specified log group. A data protection policy can help safeguard sensitive data that's ingested by the log group by auditing and masking the sensitive log data.

Sensitive data is detected and masked when it is ingested into the log group. When you set a data protection policy, log events ingested into the log group before that time are not masked.

By default, when a user views a log event that includes masked data, the sensitive data is replaced by asterisks. A user who has the logs:Unmask permission can use a GetLogEventsor FilterLogEvents operation with the unmask parameter set to true to view the unmasked log events. Users with the logs:Unmask can also view unmasked data in the CloudWatch Logs console by running a CloudWatch Logs Insights query with the unmask query command.

For more information, including a list of types of data that can be audited and masked, see Protect sensitive log data with masking.

The PutDataProtectionPolicy operation applies to only the specified log group. You can also use PutAccountPolicyto create an account-level data protection policy that applies to all log groups in the account, including both existing log groups and log groups that are created level. If a log group has its own data protection policy and the account also has an account-level data protection policy, then the two policies are cumulative. Any sensitive term specified in either policy is masked.

func (*Client) PutDeliveryDestination added in v1.27.0

func (c *Client) PutDeliveryDestination(ctx context.Context, params *PutDeliveryDestinationInput, optFns ...func(*Options)) (*PutDeliveryDestinationOutput, error)

Creates or updates a logical delivery destination. A delivery destination is an Amazon Web Services resource that represents an Amazon Web Services service that logs can be sent to. CloudWatch Logs, Amazon S3, and Firehose are supported as logs delivery destinations.

To configure logs delivery between a supported Amazon Web Services service and a destination, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Use PutDeliveryDestination to create a delivery destination, which is a logical object that represents the actual delivery destination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicyin the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

If you use this operation to update an existing delivery destination, all the current delivery destination parameters are overwritten with the new parameter values that you specify.

func (*Client) PutDeliveryDestinationPolicy added in v1.27.0

func (c *Client) PutDeliveryDestinationPolicy(ctx context.Context, params *PutDeliveryDestinationPolicyInput, optFns ...func(*Options)) (*PutDeliveryDestinationPolicyOutput, error)

Creates and assigns an IAM policy that grants permissions to CloudWatch Logs to deliver logs cross-account to a specified destination in this account. To configure the delivery of logs from an Amazon Web Services service in another account to a logs delivery destination in the current account, you must do the following:

  • Create a delivery source, which is a logical object that represents the resource that is actually sending the logs. For more information, see PutDeliverySource.

  • Create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • Use this operation in the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

The contents of the policy must include two statements. One statement enables general logs delivery, and the other allows delivery to the chosen destination. See the examples for the needed policies.

func (*Client) PutDeliverySource added in v1.27.0

func (c *Client) PutDeliverySource(ctx context.Context, params *PutDeliverySourceInput, optFns ...func(*Options)) (*PutDeliverySourceOutput, error)

Creates or updates a logical delivery source. A delivery source represents an Amazon Web Services resource that sends logs to an logs delivery destination. The destination can be CloudWatch Logs, Amazon S3, or Firehose.

To configure logs delivery between a delivery destination and an Amazon Web Services service that is supported as a delivery source, you must do the following:

  • Use PutDeliverySource to create a delivery source, which is a logical object that represents the resource that is actually sending the logs.

  • Use PutDeliveryDestination to create a delivery destination, which is a logical object that represents the actual delivery destination. For more information, see PutDeliveryDestination.

  • If you are delivering logs cross-account, you must use PutDeliveryDestinationPolicyin the destination account to assign an IAM policy to the destination. This policy allows delivery to that destination.

  • Use CreateDelivery to create a delivery by pairing exactly one delivery source and one delivery destination. For more information, see CreateDelivery.

You can configure a single delivery source to send logs to multiple destinations by creating multiple deliveries. You can also create multiple deliveries to configure multiple delivery sources to send logs to the same delivery destination.

Only some Amazon Web Services services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at Enabling logging from Amazon Web Services services.

If you use this operation to update an existing delivery source, all the current delivery source parameters are overwritten with the new parameter values that you specify.

func (*Client) PutDestination

func (c *Client) PutDestination(ctx context.Context, params *PutDestinationInput, optFns ...func(*Options)) (*PutDestinationOutput, error)

Creates or updates a destination. This operation is used only to create destinations for cross-account subscriptions.

A destination encapsulates a physical resource (such as an Amazon Kinesis stream). With a destination, you can subscribe to a real-time stream of log events for a different account, ingested using PutLogEvents.

Through an access policy, a destination controls what is written to it. By default, PutDestination does not set any access policy with the destination, which means a cross-account user cannot call PutSubscriptionFilteragainst this destination. To enable this, the destination owner must call PutDestinationPolicyafter PutDestination .

To perform a PutDestination operation, you must also have the iam:PassRole permission.

func (*Client) PutDestinationPolicy

func (c *Client) PutDestinationPolicy(ctx context.Context, params *PutDestinationPolicyInput, optFns ...func(*Options)) (*PutDestinationPolicyOutput, error)

Creates or updates an access policy associated with an existing destination. An access policy is an IAM policy documentthat is used to authorize claims to register a subscription filter against a given destination.

func (*Client) PutIndexPolicy added in v1.44.0

func (c *Client) PutIndexPolicy(ctx context.Context, params *PutIndexPolicyInput, optFns ...func(*Options)) (*PutIndexPolicyOutput, error)

Creates or updates a field index policy for the specified log group. Only log groups in the Standard log class support field index policies. For more information about log classes, see Log classes.

You can use field index policies to create field indexes on fields found in log events in the log group. Creating field indexes speeds up and lowers the costs for CloudWatch Logs Insights queries that reference those field indexes, because these queries attempt to skip the processing of log events that are known to not match the indexed field. Good fields to index are fields that you often need to query for and fields or values that match only a small fraction of the total log events. Common examples of indexes include request ID, session ID, userID, and instance IDs. For more information, see Create field indexes to improve query performance and reduce costs.

To find the fields that are in your log group events, use the GetLogGroupFields operation.

For example, suppose you have created a field index for requestId . Then, any CloudWatch Logs Insights query on that log group that includes requestId = value or requestId IN [value, value, ...] will process fewer log events to reduce costs, and have improved performance.

Each index policy has the following quotas and restrictions:

  • As many as 20 fields can be included in the policy.

  • Each field name can include as many as 100 characters.

Matches of log events to the names of indexed fields are case-sensitive. For example, a field index of RequestId won't match a log event containing requestId .

Log group-level field index policies created with PutIndexPolicy override account-level field index policies created with PutAccountPolicy. If you use PutIndexPolicy to create a field index policy for a log group, that log group uses only that policy. The log group ignores any account-wide field index policy that you might have created.

func (*Client) PutLogEvents

func (c *Client) PutLogEvents(ctx context.Context, params *PutLogEventsInput, optFns ...func(*Options)) (*PutLogEventsOutput, error)

Uploads a batch of log events to the specified log stream.

The sequence token is now ignored in PutLogEvents actions. PutLogEvents actions are always accepted and never return InvalidSequenceTokenException or DataAlreadyAcceptedException even if the sequence token is not valid. You can use parallel PutLogEvents actions on the same log stream.

The batch of events must satisfy the following constraints:

  • The maximum batch size is 1,048,576 bytes. This size is calculated as the sum of all event messages in UTF-8, plus 26 bytes for each log event.

  • None of the log events in the batch can be more than 2 hours in the future.

  • None of the log events in the batch can be more than 14 days in the past. Also, none of the log events can be from earlier than the retention period of the log group.

  • The log events in the batch must be in chronological order by their timestamp. The timestamp is the time that the event occurred, expressed as the number of milliseconds after Jan 1, 1970 00:00:00 UTC . (In Amazon Web Services Tools for PowerShell and the Amazon Web Services SDK for .NET, the timestamp is specified in .NET format: yyyy-mm-ddThh:mm:ss . For example, 2017-09-15T13:45:30 .)

  • A batch of log events in a single request cannot span more than 24 hours. Otherwise, the operation fails.

  • Each log event can be no larger than 256 KB.

  • The maximum number of log events in a batch is 10,000.

  • The quota of five requests per second per log stream has been removed. Instead, PutLogEvents actions are throttled based on a per-second per-account quota. You can request an increase to the per-second throttling quota by using the Service Quotas service.

If a call to PutLogEvents returns "UnrecognizedClientException" the most likely cause is a non-valid Amazon Web Services access key ID or secret key.

func (*Client) PutMetricFilter

func (c *Client) PutMetricFilter(ctx context.Context, params *PutMetricFilterInput, optFns ...func(*Options)) (*PutMetricFilterOutput, error)

Creates or updates a metric filter and associates it with the specified log group. With metric filters, you can configure rules to extract metric data from log events ingested through PutLogEvents.

The maximum number of metric filters that can be associated with a log group is 100.

Using regular expressions to create metric filters is supported. For these filters, there is a quota of two regular expression patterns within a single filter pattern. There is also a quota of five regular expression patterns per log group. For more information about using regular expressions in metric filters, see Filter pattern syntax for metric filters, subscription filters, filter log events, and Live Tail.

When you create a metric filter, you can also optionally assign a unit and dimensions to the metric that is created.

Metrics extracted from log events are charged as custom metrics. To prevent unexpected high charges, do not specify high-cardinality fields such as IPAddress or requestID as dimensions. Each different value found for a dimension is treated as a separate metric and accrues charges as a separate custom metric.

CloudWatch Logs might disable a metric filter if it generates 1,000 different name/value pairs for your specified dimensions within one hour.

You can also set up a billing alarm to alert you if your charges are higher than expected. For more information, see Creating a Billing Alarm to Monitor Your Estimated Amazon Web Services Charges.

func (*Client) PutQueryDefinition

func (c *Client) PutQueryDefinition(ctx context.Context, params *PutQueryDefinitionInput, optFns ...func(*Options)) (*PutQueryDefinitionOutput, error)

Creates or updates a query definition for CloudWatch Logs Insights. For more information, see Analyzing Log Data with CloudWatch Logs Insights.

To update a query definition, specify its queryDefinitionId in your request. The values of name , queryString , and logGroupNames are changed to the values that you specify in your update operation. No current values are retained from the current query definition. For example, imagine updating a current query definition that includes log groups. If you don't specify the logGroupNames parameter in your update operation, the query definition changes to contain no log groups.

You must have the logs:PutQueryDefinition permission to be able to perform this operation.

func (*Client) PutResourcePolicy

func (c *Client) PutResourcePolicy(ctx context.Context, params *PutResourcePolicyInput, optFns ...func(*Options)) (*PutResourcePolicyOutput, error)

Creates or updates a resource policy allowing other Amazon Web Services services to put log events to this account, such as Amazon Route 53. An account can have up to 10 resource policies per Amazon Web Services Region.

func (*Client) PutRetentionPolicy

func (c *Client) PutRetentionPolicy(ctx context.Context, params *PutRetentionPolicyInput, optFns ...func(*Options)) (*PutRetentionPolicyOutput, error)

Sets the retention of the specified log group. With a retention policy, you can configure the number of days for which to retain log events in the specified log group.

CloudWatch Logs doesn't immediately delete log events when they reach their retention setting. It typically takes up to 72 hours after that before log events are deleted, but in rare situations might take longer.

To illustrate, imagine that you change a log group to have a longer retention setting when it contains log events that are past the expiration date, but haven't been deleted. Those log events will take up to 72 hours to be deleted after the new retention date is reached. To make sure that log data is deleted permanently, keep a log group at its lower retention setting until 72 hours after the previous retention period ends. Alternatively, wait to change the retention setting until you confirm that the earlier log events are deleted.

When log events reach their retention setting they are marked for deletion. After they are marked for deletion, they do not add to your archival storage costs anymore, even if they are not actually deleted until later. These log events marked for deletion are also not included when you use an API to retrieve the storedBytes value to see how many bytes a log group is storing.

func (*Client) PutSubscriptionFilter

func (c *Client) PutSubscriptionFilter(ctx context.Context, params *PutSubscriptionFilterInput, optFns ...func(*Options)) (*PutSubscriptionFilterOutput, error)

Creates or updates a subscription filter and associates it with the specified log group. With subscription filters, you can subscribe to a real-time stream of log events ingested through PutLogEventsand have them delivered to a specific destination. When log events are sent to the receiving service, they are Base64 encoded and compressed with the GZIP format.

The following destinations are supported for subscription filters:

  • An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.

  • A logical destination created with PutDestinationthat belongs to a different account, for cross-account delivery. We currently support Kinesis Data Streams and Firehose as logical destinations.

  • An Amazon Kinesis Data Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.

  • An Lambda function that belongs to the same account as the subscription filter, for same-account delivery.

Each log group can have up to two subscription filters associated with it. If you are updating an existing filter, you must specify the correct name in filterName .

Using regular expressions to create subscription filters is supported. For these filters, there is a quotas of quota of two regular expression patterns within a single filter pattern. There is also a quota of five regular expression patterns per log group. For more information about using regular expressions in subscription filters, see Filter pattern syntax for metric filters, subscription filters, filter log events, and Live Tail.

To perform a PutSubscriptionFilter operation for any destination except a Lambda function, you must also have the iam:PassRole permission.

func (*Client) PutTransformer added in v1.44.0

func (c *Client) PutTransformer(ctx context.Context, params *PutTransformerInput, optFns ...func(*Options)) (*PutTransformerOutput, error)

Creates or updates a log transformer for a single log group. You use log transformers to transform log events into a different format, making them easier for you to process and analyze. You can also transform logs from different sources into standardized formats that contains relevant, source-specific information.

After you have created a transformer, CloudWatch Logs performs the transformations at the time of log ingestion. You can then refer to the transformed versions of the logs during operations such as querying with CloudWatch Logs Insights or creating metric filters or subscription filers.

You can also use a transformer to copy metadata from metadata keys into the log events themselves. This metadata can include log group name, log stream name, account ID and Region.

A transformer for a log group is a series of processors, where each processor applies one type of transformation to the log events ingested into this log group. The processors work one after another, in the order that you list them, like a pipeline. For more information about the available processors to use in a transformer, see Processors that you can use.

Having log events in standardized format enables visibility across your applications for your log analysis, reporting, and alarming needs. CloudWatch Logs provides transformation for common log types with out-of-the-box transformation templates for major Amazon Web Services log sources such as VPC flow logs, Lambda, and Amazon RDS. You can use pre-built transformation templates or create custom transformation policies.

You can create transformers only for the log groups in the Standard log class.

You can also set up a transformer at the account level. For more information, see PutAccountPolicy. If there is both a log-group level transformer created with PutTransformer and an account-level transformer that could apply to the same log group, the log group uses only the log-group level transformer. It ignores the account-level transformer.

func (*Client) StartLiveTail added in v1.30.0

func (c *Client) StartLiveTail(ctx context.Context, params *StartLiveTailInput, optFns ...func(*Options)) (*StartLiveTailOutput, error)

Starts a Live Tail streaming session for one or more log groups. A Live Tail session returns a stream of log events that have been recently ingested in the log groups. For more information, see Use Live Tail to view logs in near real time.

The response to this operation is a response stream, over which the server sends live log events and the client receives them.

The following objects are sent over the stream:

If no new log events were ingested in the past second, the LiveTailSessionUpdate

object will contain an empty array.

The array of log events contained in a LiveTailSessionUpdate can include as many

as 500 log events. If the number of log events matching the request exceeds 500
per second, the log events are sampled down to 500 log events to be included in
each LiveTailSessionUpdate object.

If your client consumes the log events slower than the server produces them,

CloudWatch Logs buffers up to 10 LiveTailSessionUpdate events or 5000 log
events, after which it starts dropping the oldest events.

- A [SessionStreamingException]object is returned if an unknown error occurs on the server side.

- A [SessionTimeoutException]object is returned when the session times out, after it has been kept
open for three hours.

You can end a session before it times out by closing the session stream or by closing the client that is receiving the stream. The session also ends if the established connection between the client and the server breaks.

For examples of using an SDK to start a Live Tail session, see Start a Live Tail session using an Amazon Web Services SDK.

func (*Client) StartQuery

func (c *Client) StartQuery(ctx context.Context, params *StartQueryInput, optFns ...func(*Options)) (*StartQueryOutput, error)

Starts a query of one or more log groups using CloudWatch Logs Insights. You specify the log groups and time range to query and the query string to use.

For more information, see CloudWatch Logs Insights Query Syntax.

After you run a query using StartQuery , the query results are stored by CloudWatch Logs. You can use GetQueryResultsto retrieve the results of a query, using the queryId that StartQuery returns.

To specify the log groups to query, a StartQuery operation must include one of the following:

  • Either exactly one of the following parameters: logGroupName , logGroupNames , or logGroupIdentifiers

  • Or the queryString must include a SOURCE command to select log groups for the query. The SOURCE command can select log groups based on log group name prefix, account ID, and log class.

For more information about the SOURCE command, see SOURCE.

If you have associated a KMS key with the query results in this account, then StartQuery uses that key to encrypt the results when it stores them. If no key is associated with query results, the query results are encrypted with the default CloudWatch Logs encryption method.

Queries time out after 60 minutes of runtime. If your queries are timing out, reduce the time range being searched or partition your query into a number of queries.

If you are using CloudWatch cross-account observability, you can use this operation in a monitoring account to start a query in a linked source account. For more information, see CloudWatch cross-account observability. For a cross-account StartQuery operation, the query definition must be defined in the monitoring account.

You can have up to 30 concurrent CloudWatch Logs insights queries, including queries that have been added to dashboards.

func (*Client) StopQuery

func (c *Client) StopQuery(ctx context.Context, params *StopQueryInput, optFns ...func(*Options)) (*StopQueryOutput, error)

Stops a CloudWatch Logs Insights query that is in progress. If the query has already ended, the operation returns an error indicating that the specified query is not running.

func (*Client) TagLogGroup deprecated

func (c *Client) TagLogGroup(ctx context.Context, params *TagLogGroupInput, optFns ...func(*Options)) (*TagLogGroupOutput, error)

The TagLogGroup operation is on the path to deprecation. We recommend that you use TagResourceinstead.

Adds or updates the specified tags for the specified log group.

To list the tags for a log group, use ListTagsForResource. To remove tags, use UntagResource.

For more information about tags, see Tag Log Groups in Amazon CloudWatch Logs in the Amazon CloudWatch Logs User Guide.

CloudWatch Logs doesn't support IAM policies that prevent users from assigning specified tags to log groups using the aws:Resource/key-name or aws:TagKeys condition keys. For more information about using tags to control access, see Controlling access to Amazon Web Services resources using tags.

Deprecated: Please use the generic tagging API TagResource

func (*Client) TagResource added in v1.16.0

func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)

Assigns one or more tags (key-value pairs) to the specified CloudWatch Logs resource. Currently, the only CloudWatch Logs resources that can be tagged are log groups and destinations.

Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values.

Tags don't have any semantic meaning to Amazon Web Services and are interpreted strictly as strings of characters.

You can use the TagResource action with a resource that already has tags. If you specify a new tag key for the alarm, this tag is appended to the list of tags associated with the alarm. If you specify a tag key that is already associated with the alarm, the new tag value that you specify replaces the previous value for that tag.

You can associate as many as 50 tags with a CloudWatch Logs resource.

func (*Client) TestMetricFilter

func (c *Client) TestMetricFilter(ctx context.Context, params *TestMetricFilterInput, optFns ...func(*Options)) (*TestMetricFilterOutput, error)

Tests the filter pattern of a metric filter against a sample of log event messages. You can use this operation to validate the correctness of a metric filter pattern.

func (*Client) TestTransformer added in v1.44.0

func (c *Client) TestTransformer(ctx context.Context, params *TestTransformerInput, optFns ...func(*Options)) (*TestTransformerOutput, error)

Use this operation to test a log transformer. You enter the transformer configuration and a set of log events to test with. The operation responds with an array that includes the original log events and the transformed versions.

func (*Client) UntagLogGroup deprecated

func (c *Client) UntagLogGroup(ctx context.Context, params *UntagLogGroupInput, optFns ...func(*Options)) (*UntagLogGroupOutput, error)

The UntagLogGroup operation is on the path to deprecation. We recommend that you use UntagResourceinstead.

Removes the specified tags from the specified log group.

To list the tags for a log group, use ListTagsForResource. To add tags, use TagResource.

CloudWatch Logs doesn't support IAM policies that prevent users from assigning specified tags to log groups using the aws:Resource/key-name or aws:TagKeys condition keys.

Deprecated: Please use the generic tagging API UntagResource

func (*Client) UntagResource added in v1.16.0

func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)

Removes one or more tags from the specified resource.

func (*Client) UpdateAnomaly added in v1.28.0

func (c *Client) UpdateAnomaly(ctx context.Context, params *UpdateAnomalyInput, optFns ...func(*Options)) (*UpdateAnomalyOutput, error)

Use this operation to suppress anomaly detection for a specified anomaly or pattern. If you suppress an anomaly, CloudWatch Logs won't report new occurrences of that anomaly and won't update that anomaly with new data. If you suppress a pattern, CloudWatch Logs won't report any anomalies related to that pattern.

You must specify either anomalyId or patternId , but you can't specify both parameters in the same operation.

If you have previously used this operation to suppress detection of a pattern or anomaly, you can use it again to cause CloudWatch Logs to end the suppression. To do this, use this operation and specify the anomaly or pattern to stop suppressing, and omit the suppressionType and suppressionPeriod parameters.

func (*Client) UpdateDeliveryConfiguration added in v1.39.0

func (c *Client) UpdateDeliveryConfiguration(ctx context.Context, params *UpdateDeliveryConfigurationInput, optFns ...func(*Options)) (*UpdateDeliveryConfigurationOutput, error)

Use this operation to update the configuration of a delivery to change either the S3 path pattern or the format of the delivered logs. You can't use this operation to change the source or destination of the delivery.

func (*Client) UpdateLogAnomalyDetector added in v1.28.0

func (c *Client) UpdateLogAnomalyDetector(ctx context.Context, params *UpdateLogAnomalyDetectorInput, optFns ...func(*Options)) (*UpdateLogAnomalyDetectorOutput, error)

Updates an existing log anomaly detector.

type CreateDeliveryInput added in v1.27.0

type CreateDeliveryInput struct {

	// The ARN of the delivery destination to use for this delivery.
	//
	// This member is required.
	DeliveryDestinationArn *string

	// The name of the delivery source to use for this delivery.
	//
	// This member is required.
	DeliverySourceName *string

	// The field delimiter to use between record fields when the final output format
	// of a delivery is in Plain , W3C , or Raw format.
	FieldDelimiter *string

	// The list of record fields to be delivered to the destination, in order. If the
	// delivery's log source has mandatory fields, they must be included in this list.
	RecordFields []string

	// This structure contains parameters that are valid only when the delivery's
	// delivery destination is an S3 bucket.
	S3DeliveryConfiguration *types.S3DeliveryConfiguration

	// An optional list of key-value pairs to associate with the resource.
	//
	// For more information about tagging, see [Tagging Amazon Web Services resources]
	//
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type CreateDeliveryOutput added in v1.27.0

type CreateDeliveryOutput struct {

	// A structure that contains information about the delivery that you just created.
	Delivery *types.Delivery

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateExportTaskInput

type CreateExportTaskInput struct {

	// The name of S3 bucket for the exported log data. The bucket must be in the same
	// Amazon Web Services Region.
	//
	// This member is required.
	Destination *string

	// The start time of the range for the request, expressed as the number of
	// milliseconds after Jan 1, 1970 00:00:00 UTC . Events with a timestamp earlier
	// than this time are not exported.
	//
	// This member is required.
	From *int64

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The end time of the range for the request, expressed as the number of
	// milliseconds after Jan 1, 1970 00:00:00 UTC . Events with a timestamp later than
	// this time are not exported.
	//
	// You must specify a time that is not earlier than when this log group was
	// created.
	//
	// This member is required.
	To *int64

	// The prefix used as the start of the key for every object exported. If you don't
	// specify a value, the default is exportedlogs .
	//
	// The length of this parameter must comply with the S3 object key name length
	// limits. The object key name is a sequence of Unicode characters with UTF-8
	// encoding, and can be up to 1,024 bytes.
	DestinationPrefix *string

	// Export only log streams that match the provided prefix. If you don't specify a
	// value, no prefix filter is applied.
	LogStreamNamePrefix *string

	// The name of the export task.
	TaskName *string
	// contains filtered or unexported fields
}

type CreateExportTaskOutput

type CreateExportTaskOutput struct {

	// The ID of the export task.
	TaskId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateLogAnomalyDetectorInput added in v1.28.0

type CreateLogAnomalyDetectorInput struct {

	// An array containing the ARN of the log group that this anomaly detector will
	// watch. You can specify only one log group ARN.
	//
	// This member is required.
	LogGroupArnList []string

	// The number of days to have visibility on an anomaly. After this time period has
	// elapsed for an anomaly, it will be automatically baselined and the anomaly
	// detector will treat new occurrences of a similar anomaly as normal. Therefore,
	// if you do not correct the cause of an anomaly during the time period specified
	// in anomalyVisibilityTime , it will be considered normal going forward and will
	// not be detected as an anomaly.
	AnomalyVisibilityTime *int64

	// A name for this anomaly detector.
	DetectorName *string

	// Specifies how often the anomaly detector is to run and look for anomalies. Set
	// this value according to the frequency that the log group receives new logs. For
	// example, if the log group receives new log events every 10 minutes, then 15
	// minutes might be a good setting for evaluationFrequency .
	EvaluationFrequency types.EvaluationFrequency

	// You can use this parameter to limit the anomaly detection model to examine only
	// log events that match the pattern you specify here. For more information, see [Filter and Pattern Syntax].
	//
	// [Filter and Pattern Syntax]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
	FilterPattern *string

	// Optionally assigns a KMS key to secure this anomaly detector and its findings.
	// If a key is assigned, the anomalies found and the model used by this detector
	// are encrypted at rest with the key. If a key is assigned to an anomaly detector,
	// a user must have permissions for both this key and for the anomaly detector to
	// retrieve information about the anomalies that it finds.
	//
	// For more information about using a KMS key and to see the required IAM policy,
	// see [Use a KMS key with an anomaly detector].
	//
	// [Use a KMS key with an anomaly detector]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/LogsAnomalyDetection-KMS.html
	KmsKeyId *string

	// An optional list of key-value pairs to associate with the resource.
	//
	// For more information about tagging, see [Tagging Amazon Web Services resources]
	//
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type CreateLogAnomalyDetectorOutput added in v1.28.0

type CreateLogAnomalyDetectorOutput struct {

	// The ARN of the log anomaly detector that you just created.
	AnomalyDetectorArn *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateLogGroupInput

type CreateLogGroupInput struct {

	// A name for the log group.
	//
	// This member is required.
	LogGroupName *string

	// The Amazon Resource Name (ARN) of the KMS key to use when encrypting log data.
	// For more information, see [Amazon Resource Names].
	//
	// [Amazon Resource Names]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arn-syntax-kms
	KmsKeyId *string

	// Use this parameter to specify the log group class for this log group. There are
	// two classes:
	//
	//   - The Standard log class supports all CloudWatch Logs features.
	//
	//   - The Infrequent Access log class supports a subset of CloudWatch Logs
	//   features and incurs lower costs.
	//
	// If you omit this parameter, the default of STANDARD is used.
	//
	// The value of logGroupClass can't be changed after a log group is created.
	//
	// For details about the features supported by each class, see [Log classes]
	//
	// [Log classes]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
	LogGroupClass types.LogGroupClass

	// The key-value pairs to use for the tags.
	//
	// You can grant users access to certain log groups while preventing them from
	// accessing other log groups. To do so, tag your groups and use IAM policies that
	// refer to those tags. To assign tags when you create a log group, you must have
	// either the logs:TagResource or logs:TagLogGroup permission. For more
	// information about tagging, see [Tagging Amazon Web Services resources]. For more information about using tags to
	// control access, see [Controlling access to Amazon Web Services resources using tags].
	//
	// [Controlling access to Amazon Web Services resources using tags]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type CreateLogGroupOutput

type CreateLogGroupOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateLogStreamInput

type CreateLogStreamInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The name of the log stream.
	//
	// This member is required.
	LogStreamName *string
	// contains filtered or unexported fields
}

type CreateLogStreamOutput

type CreateLogStreamOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteAccountPolicyInput added in v1.21.0

type DeleteAccountPolicyInput struct {

	// The name of the policy to delete.
	//
	// This member is required.
	PolicyName *string

	// The type of policy to delete.
	//
	// This member is required.
	PolicyType types.PolicyType
	// contains filtered or unexported fields
}

type DeleteAccountPolicyOutput added in v1.21.0

type DeleteAccountPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDataProtectionPolicyInput added in v1.17.0

type DeleteDataProtectionPolicyInput struct {

	// The name or ARN of the log group that you want to delete the data protection
	// policy for.
	//
	// This member is required.
	LogGroupIdentifier *string
	// contains filtered or unexported fields
}

type DeleteDataProtectionPolicyOutput added in v1.17.0

type DeleteDataProtectionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDeliveryDestinationInput added in v1.27.0

type DeleteDeliveryDestinationInput struct {

	// The name of the delivery destination that you want to delete. You can find a
	// list of delivery destionation names by using the [DescribeDeliveryDestinations]operation.
	//
	// [DescribeDeliveryDestinations]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveryDestinations.html
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type DeleteDeliveryDestinationOutput added in v1.27.0

type DeleteDeliveryDestinationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDeliveryDestinationPolicyInput added in v1.27.0

type DeleteDeliveryDestinationPolicyInput struct {

	// The name of the delivery destination that you want to delete the policy for.
	//
	// This member is required.
	DeliveryDestinationName *string
	// contains filtered or unexported fields
}

type DeleteDeliveryDestinationPolicyOutput added in v1.27.0

type DeleteDeliveryDestinationPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDeliveryInput added in v1.27.0

type DeleteDeliveryInput struct {

	// The unique ID of the delivery to delete. You can find the ID of a delivery with
	// the [DescribeDeliveries]operation.
	//
	// [DescribeDeliveries]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeDeliveries.html
	//
	// This member is required.
	Id *string
	// contains filtered or unexported fields
}

type DeleteDeliveryOutput added in v1.27.0

type DeleteDeliveryOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDeliverySourceInput added in v1.27.0

type DeleteDeliverySourceInput struct {

	// The name of the delivery source that you want to delete.
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type DeleteDeliverySourceOutput added in v1.27.0

type DeleteDeliverySourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteDestinationInput

type DeleteDestinationInput struct {

	// The name of the destination.
	//
	// This member is required.
	DestinationName *string
	// contains filtered or unexported fields
}

type DeleteDestinationOutput

type DeleteDestinationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteIndexPolicyInput added in v1.44.0

type DeleteIndexPolicyInput struct {

	// The log group to delete the index policy for. You can specify either the name
	// or the ARN of the log group.
	//
	// This member is required.
	LogGroupIdentifier *string
	// contains filtered or unexported fields
}

type DeleteIndexPolicyOutput added in v1.44.0

type DeleteIndexPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteLogAnomalyDetectorInput added in v1.28.0

type DeleteLogAnomalyDetectorInput struct {

	// The ARN of the anomaly detector to delete. You can find the ARNs of log anomaly
	// detectors in your account by using the [ListLogAnomalyDetectors]operation.
	//
	// [ListLogAnomalyDetectors]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
	//
	// This member is required.
	AnomalyDetectorArn *string
	// contains filtered or unexported fields
}

type DeleteLogAnomalyDetectorOutput added in v1.28.0

type DeleteLogAnomalyDetectorOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteLogGroupInput

type DeleteLogGroupInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string
	// contains filtered or unexported fields
}

type DeleteLogGroupOutput

type DeleteLogGroupOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteLogStreamInput

type DeleteLogStreamInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The name of the log stream.
	//
	// This member is required.
	LogStreamName *string
	// contains filtered or unexported fields
}

type DeleteLogStreamOutput

type DeleteLogStreamOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteMetricFilterInput

type DeleteMetricFilterInput struct {

	// The name of the metric filter.
	//
	// This member is required.
	FilterName *string

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string
	// contains filtered or unexported fields
}

type DeleteMetricFilterOutput

type DeleteMetricFilterOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteQueryDefinitionInput

type DeleteQueryDefinitionInput struct {

	// The ID of the query definition that you want to delete. You can use [DescribeQueryDefinitions] to
	// retrieve the IDs of your saved query definitions.
	//
	// [DescribeQueryDefinitions]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeQueryDefinitions.html
	//
	// This member is required.
	QueryDefinitionId *string
	// contains filtered or unexported fields
}

type DeleteQueryDefinitionOutput

type DeleteQueryDefinitionOutput struct {

	// A value of TRUE indicates that the operation succeeded. FALSE indicates that
	// the operation failed.
	Success bool

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteResourcePolicyInput

type DeleteResourcePolicyInput struct {

	// The name of the policy to be revoked. This parameter is required.
	PolicyName *string
	// contains filtered or unexported fields
}

type DeleteResourcePolicyOutput

type DeleteResourcePolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteRetentionPolicyInput

type DeleteRetentionPolicyInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string
	// contains filtered or unexported fields
}

type DeleteRetentionPolicyOutput

type DeleteRetentionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteSubscriptionFilterInput

type DeleteSubscriptionFilterInput struct {

	// The name of the subscription filter.
	//
	// This member is required.
	FilterName *string

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string
	// contains filtered or unexported fields
}

type DeleteSubscriptionFilterOutput

type DeleteSubscriptionFilterOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteTransformerInput added in v1.44.0

type DeleteTransformerInput struct {

	// Specify either the name or ARN of the log group to delete the transformer for.
	// If the log group is in a source account and you are using a monitoring account,
	// you must use the log group ARN.
	//
	// This member is required.
	LogGroupIdentifier *string
	// contains filtered or unexported fields
}

type DeleteTransformerOutput added in v1.44.0

type DeleteTransformerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeAccountPoliciesInput added in v1.21.0

type DescribeAccountPoliciesInput struct {

	// Use this parameter to limit the returned policies to only the policies that
	// match the policy type that you specify.
	//
	// This member is required.
	PolicyType types.PolicyType

	// If you are using an account that is set up as a monitoring account for
	// CloudWatch unified cross-account observability, you can use this to specify the
	// account ID of a source account. If you do, the operation returns the account
	// policy for the specified account. Currently, you can specify only one account ID
	// in this parameter.
	//
	// If you omit this parameter, only the policy in the current account is returned.
	AccountIdentifiers []string

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string

	// Use this parameter to limit the returned policies to only the policy with the
	// name that you specify.
	PolicyName *string
	// contains filtered or unexported fields
}

type DescribeAccountPoliciesOutput added in v1.21.0

type DescribeAccountPoliciesOutput struct {

	// An array of structures that contain information about the CloudWatch Logs
	// account policies that match the specified filters.
	AccountPolicies []types.AccountPolicy

	// The token to use when requesting the next set of items. The token expires after
	// 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeConfigurationTemplatesAPIClient added in v1.39.0

type DescribeConfigurationTemplatesAPIClient interface {
	DescribeConfigurationTemplates(context.Context, *DescribeConfigurationTemplatesInput, ...func(*Options)) (*DescribeConfigurationTemplatesOutput, error)
}

DescribeConfigurationTemplatesAPIClient is a client that implements the DescribeConfigurationTemplates operation.

type DescribeConfigurationTemplatesInput added in v1.39.0

type DescribeConfigurationTemplatesInput struct {

	// Use this parameter to filter the response to include only the configuration
	// templates that apply to the delivery destination types that you specify here.
	DeliveryDestinationTypes []types.DeliveryDestinationType

	// Use this parameter to limit the number of configuration templates that are
	// returned in the response.
	Limit *int32

	// Use this parameter to filter the response to include only the configuration
	// templates that apply to the log types that you specify here.
	LogTypes []string

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Use this parameter to filter the response to include only the configuration
	// templates that apply to the resource types that you specify here.
	ResourceTypes []string

	// Use this parameter to filter the response to include only the configuration
	// templates that apply to the Amazon Web Services service that you specify here.
	Service *string
	// contains filtered or unexported fields
}

type DescribeConfigurationTemplatesOutput added in v1.39.0

type DescribeConfigurationTemplatesOutput struct {

	// An array of objects, where each object describes one configuration template
	// that matches the filters that you specified in the request.
	ConfigurationTemplates []types.ConfigurationTemplate

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeConfigurationTemplatesPaginator added in v1.39.0

type DescribeConfigurationTemplatesPaginator struct {
	// contains filtered or unexported fields
}

DescribeConfigurationTemplatesPaginator is a paginator for DescribeConfigurationTemplates

func NewDescribeConfigurationTemplatesPaginator added in v1.39.0

NewDescribeConfigurationTemplatesPaginator returns a new DescribeConfigurationTemplatesPaginator

func (*DescribeConfigurationTemplatesPaginator) HasMorePages added in v1.39.0

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeConfigurationTemplatesPaginator) NextPage added in v1.39.0

NextPage retrieves the next DescribeConfigurationTemplates page.

type DescribeConfigurationTemplatesPaginatorOptions added in v1.39.0

type DescribeConfigurationTemplatesPaginatorOptions struct {
	// Use this parameter to limit the number of configuration templates that are
	// returned in the response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeConfigurationTemplatesPaginatorOptions is the paginator options for DescribeConfigurationTemplates

type DescribeDeliveriesAPIClient added in v1.27.0

type DescribeDeliveriesAPIClient interface {
	DescribeDeliveries(context.Context, *DescribeDeliveriesInput, ...func(*Options)) (*DescribeDeliveriesOutput, error)
}

DescribeDeliveriesAPIClient is a client that implements the DescribeDeliveries operation.

type DescribeDeliveriesInput added in v1.27.0

type DescribeDeliveriesInput struct {

	// Optionally specify the maximum number of deliveries to return in the response.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeDeliveriesOutput added in v1.27.0

type DescribeDeliveriesOutput struct {

	// An array of structures. Each structure contains information about one delivery
	// in the account.
	Deliveries []types.Delivery

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeDeliveriesPaginator added in v1.27.0

type DescribeDeliveriesPaginator struct {
	// contains filtered or unexported fields
}

DescribeDeliveriesPaginator is a paginator for DescribeDeliveries

func NewDescribeDeliveriesPaginator added in v1.27.0

func NewDescribeDeliveriesPaginator(client DescribeDeliveriesAPIClient, params *DescribeDeliveriesInput, optFns ...func(*DescribeDeliveriesPaginatorOptions)) *DescribeDeliveriesPaginator

NewDescribeDeliveriesPaginator returns a new DescribeDeliveriesPaginator

func (*DescribeDeliveriesPaginator) HasMorePages added in v1.27.0

func (p *DescribeDeliveriesPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeDeliveriesPaginator) NextPage added in v1.27.0

func (p *DescribeDeliveriesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeDeliveriesOutput, error)

NextPage retrieves the next DescribeDeliveries page.

type DescribeDeliveriesPaginatorOptions added in v1.27.0

type DescribeDeliveriesPaginatorOptions struct {
	// Optionally specify the maximum number of deliveries to return in the response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeDeliveriesPaginatorOptions is the paginator options for DescribeDeliveries

type DescribeDeliveryDestinationsAPIClient added in v1.27.0

type DescribeDeliveryDestinationsAPIClient interface {
	DescribeDeliveryDestinations(context.Context, *DescribeDeliveryDestinationsInput, ...func(*Options)) (*DescribeDeliveryDestinationsOutput, error)
}

DescribeDeliveryDestinationsAPIClient is a client that implements the DescribeDeliveryDestinations operation.

type DescribeDeliveryDestinationsInput added in v1.27.0

type DescribeDeliveryDestinationsInput struct {

	// Optionally specify the maximum number of delivery destinations to return in the
	// response.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeDeliveryDestinationsOutput added in v1.27.0

type DescribeDeliveryDestinationsOutput struct {

	// An array of structures. Each structure contains information about one delivery
	// destination in the account.
	DeliveryDestinations []types.DeliveryDestination

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeDeliveryDestinationsPaginator added in v1.27.0

type DescribeDeliveryDestinationsPaginator struct {
	// contains filtered or unexported fields
}

DescribeDeliveryDestinationsPaginator is a paginator for DescribeDeliveryDestinations

func NewDescribeDeliveryDestinationsPaginator added in v1.27.0

NewDescribeDeliveryDestinationsPaginator returns a new DescribeDeliveryDestinationsPaginator

func (*DescribeDeliveryDestinationsPaginator) HasMorePages added in v1.27.0

func (p *DescribeDeliveryDestinationsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeDeliveryDestinationsPaginator) NextPage added in v1.27.0

NextPage retrieves the next DescribeDeliveryDestinations page.

type DescribeDeliveryDestinationsPaginatorOptions added in v1.27.0

type DescribeDeliveryDestinationsPaginatorOptions struct {
	// Optionally specify the maximum number of delivery destinations to return in the
	// response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeDeliveryDestinationsPaginatorOptions is the paginator options for DescribeDeliveryDestinations

type DescribeDeliverySourcesAPIClient added in v1.27.0

type DescribeDeliverySourcesAPIClient interface {
	DescribeDeliverySources(context.Context, *DescribeDeliverySourcesInput, ...func(*Options)) (*DescribeDeliverySourcesOutput, error)
}

DescribeDeliverySourcesAPIClient is a client that implements the DescribeDeliverySources operation.

type DescribeDeliverySourcesInput added in v1.27.0

type DescribeDeliverySourcesInput struct {

	// Optionally specify the maximum number of delivery sources to return in the
	// response.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeDeliverySourcesOutput added in v1.27.0

type DescribeDeliverySourcesOutput struct {

	// An array of structures. Each structure contains information about one delivery
	// source in the account.
	DeliverySources []types.DeliverySource

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeDeliverySourcesPaginator added in v1.27.0

type DescribeDeliverySourcesPaginator struct {
	// contains filtered or unexported fields
}

DescribeDeliverySourcesPaginator is a paginator for DescribeDeliverySources

func NewDescribeDeliverySourcesPaginator added in v1.27.0

NewDescribeDeliverySourcesPaginator returns a new DescribeDeliverySourcesPaginator

func (*DescribeDeliverySourcesPaginator) HasMorePages added in v1.27.0

func (p *DescribeDeliverySourcesPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeDeliverySourcesPaginator) NextPage added in v1.27.0

NextPage retrieves the next DescribeDeliverySources page.

type DescribeDeliverySourcesPaginatorOptions added in v1.27.0

type DescribeDeliverySourcesPaginatorOptions struct {
	// Optionally specify the maximum number of delivery sources to return in the
	// response.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeDeliverySourcesPaginatorOptions is the paginator options for DescribeDeliverySources

type DescribeDestinationsAPIClient added in v0.30.0

type DescribeDestinationsAPIClient interface {
	DescribeDestinations(context.Context, *DescribeDestinationsInput, ...func(*Options)) (*DescribeDestinationsOutput, error)
}

DescribeDestinationsAPIClient is a client that implements the DescribeDestinations operation.

type DescribeDestinationsInput

type DescribeDestinationsInput struct {

	// The prefix to match. If you don't specify a value, no prefix filter is applied.
	DestinationNamePrefix *string

	// The maximum number of items returned. If you don't specify a value, the default
	// maximum value of 50 items is used.
	Limit *int32

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeDestinationsOutput

type DescribeDestinationsOutput struct {

	// The destinations.
	Destinations []types.Destination

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeDestinationsPaginator added in v0.30.0

type DescribeDestinationsPaginator struct {
	// contains filtered or unexported fields
}

DescribeDestinationsPaginator is a paginator for DescribeDestinations

func NewDescribeDestinationsPaginator added in v0.30.0

NewDescribeDestinationsPaginator returns a new DescribeDestinationsPaginator

func (*DescribeDestinationsPaginator) HasMorePages added in v0.30.0

func (p *DescribeDestinationsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeDestinationsPaginator) NextPage added in v0.30.0

NextPage retrieves the next DescribeDestinations page.

type DescribeDestinationsPaginatorOptions added in v0.30.0

type DescribeDestinationsPaginatorOptions struct {
	// The maximum number of items returned. If you don't specify a value, the default
	// maximum value of 50 items is used.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeDestinationsPaginatorOptions is the paginator options for DescribeDestinations

type DescribeExportTasksInput

type DescribeExportTasksInput struct {

	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit *int32

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string

	// The status code of the export task. Specifying a status code filters the
	// results to zero or more export tasks.
	StatusCode types.ExportTaskStatusCode

	// The ID of the export task. Specifying a task ID filters the results to one or
	// zero export tasks.
	TaskId *string
	// contains filtered or unexported fields
}

type DescribeExportTasksOutput

type DescribeExportTasksOutput struct {

	// The export tasks.
	ExportTasks []types.ExportTask

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeFieldIndexesInput added in v1.44.0

type DescribeFieldIndexesInput struct {

	// An array containing the names or ARNs of the log groups that you want to
	// retrieve field indexes for.
	//
	// This member is required.
	LogGroupIdentifiers []string

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeFieldIndexesOutput added in v1.44.0

type DescribeFieldIndexesOutput struct {

	// An array containing the field index information.
	FieldIndexes []types.FieldIndex

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeIndexPoliciesInput added in v1.44.0

type DescribeIndexPoliciesInput struct {

	// An array containing the name or ARN of the log group that you want to retrieve
	// field index policies for.
	//
	// This member is required.
	LogGroupIdentifiers []string

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeIndexPoliciesOutput added in v1.44.0

type DescribeIndexPoliciesOutput struct {

	// An array containing the field index policies.
	IndexPolicies []types.IndexPolicy

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeLogGroupsAPIClient added in v0.30.0

type DescribeLogGroupsAPIClient interface {
	DescribeLogGroups(context.Context, *DescribeLogGroupsInput, ...func(*Options)) (*DescribeLogGroupsOutput, error)
}

DescribeLogGroupsAPIClient is a client that implements the DescribeLogGroups operation.

type DescribeLogGroupsInput

type DescribeLogGroupsInput struct {

	// When includeLinkedAccounts is set to True , use this parameter to specify the
	// list of accounts to search. You can specify as many as 20 account IDs in the
	// array.
	AccountIdentifiers []string

	// If you are using a monitoring account, set this to True to have the operation
	// return log groups in the accounts listed in accountIdentifiers .
	//
	// If this parameter is set to true and accountIdentifiers
	//
	// contains a null value, the operation returns all log groups in the monitoring
	// account and all log groups in all source accounts that are linked to the
	// monitoring account.
	IncludeLinkedAccounts *bool

	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit *int32

	// Specifies the log group class for this log group. There are two classes:
	//
	//   - The Standard log class supports all CloudWatch Logs features.
	//
	//   - The Infrequent Access log class supports a subset of CloudWatch Logs
	//   features and incurs lower costs.
	//
	// For details about the features supported by each class, see [Log classes]
	//
	// [Log classes]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch_Logs_Log_Classes.html
	LogGroupClass types.LogGroupClass

	// If you specify a string for this parameter, the operation returns only log
	// groups that have names that match the string based on a case-sensitive substring
	// search. For example, if you specify Foo , log groups named FooBar , aws/Foo ,
	// and GroupFoo would match, but foo , F/o/o and Froo would not match.
	//
	// If you specify logGroupNamePattern in your request, then only arn , creationTime
	// , and logGroupName are included in the response.
	//
	// logGroupNamePattern and logGroupNamePrefix are mutually exclusive. Only one of
	// these parameters can be passed.
	LogGroupNamePattern *string

	// The prefix to match.
	//
	// logGroupNamePrefix and logGroupNamePattern are mutually exclusive. Only one of
	// these parameters can be passed.
	LogGroupNamePrefix *string

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeLogGroupsOutput

type DescribeLogGroupsOutput struct {

	// The log groups.
	//
	// If the retentionInDays value is not included for a log group, then that log
	// group's events do not expire.
	LogGroups []types.LogGroup

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeLogGroupsPaginator added in v0.30.0

type DescribeLogGroupsPaginator struct {
	// contains filtered or unexported fields
}

DescribeLogGroupsPaginator is a paginator for DescribeLogGroups

func NewDescribeLogGroupsPaginator added in v0.30.0

func NewDescribeLogGroupsPaginator(client DescribeLogGroupsAPIClient, params *DescribeLogGroupsInput, optFns ...func(*DescribeLogGroupsPaginatorOptions)) *DescribeLogGroupsPaginator

NewDescribeLogGroupsPaginator returns a new DescribeLogGroupsPaginator

func (*DescribeLogGroupsPaginator) HasMorePages added in v0.30.0

func (p *DescribeLogGroupsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeLogGroupsPaginator) NextPage added in v0.30.0

func (p *DescribeLogGroupsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeLogGroupsOutput, error)

NextPage retrieves the next DescribeLogGroups page.

type DescribeLogGroupsPaginatorOptions added in v0.30.0

type DescribeLogGroupsPaginatorOptions struct {
	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeLogGroupsPaginatorOptions is the paginator options for DescribeLogGroups

type DescribeLogStreamsAPIClient added in v0.30.0

type DescribeLogStreamsAPIClient interface {
	DescribeLogStreams(context.Context, *DescribeLogStreamsInput, ...func(*Options)) (*DescribeLogStreamsOutput, error)
}

DescribeLogStreamsAPIClient is a client that implements the DescribeLogStreams operation.

type DescribeLogStreamsInput

type DescribeLogStreamsInput struct {

	// If the value is true, results are returned in descending order. If the value is
	// to false, results are returned in ascending order. The default value is false.
	Descending *bool

	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit *int32

	// Specify either the name or ARN of the log group to view. If the log group is in
	// a source account and you are using a monitoring account, you must use the log
	// group ARN.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupIdentifier *string

	// The name of the log group.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupName *string

	// The prefix to match.
	//
	// If orderBy is LastEventTime , you cannot specify this parameter.
	LogStreamNamePrefix *string

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string

	// If the value is LogStreamName , the results are ordered by log stream name. If
	// the value is LastEventTime , the results are ordered by the event time. The
	// default value is LogStreamName .
	//
	// If you order the results by event time, you cannot specify the
	// logStreamNamePrefix parameter.
	//
	// lastEventTimestamp represents the time of the most recent log event in the log
	// stream in CloudWatch Logs. This number is expressed as the number of
	// milliseconds after Jan 1, 1970 00:00:00 UTC . lastEventTimestamp updates on an
	// eventual consistency basis. It typically updates in less than an hour from
	// ingestion, but in rare situations might take longer.
	OrderBy types.OrderBy
	// contains filtered or unexported fields
}

type DescribeLogStreamsOutput

type DescribeLogStreamsOutput struct {

	// The log streams.
	LogStreams []types.LogStream

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeLogStreamsPaginator added in v0.30.0

type DescribeLogStreamsPaginator struct {
	// contains filtered or unexported fields
}

DescribeLogStreamsPaginator is a paginator for DescribeLogStreams

func NewDescribeLogStreamsPaginator added in v0.30.0

func NewDescribeLogStreamsPaginator(client DescribeLogStreamsAPIClient, params *DescribeLogStreamsInput, optFns ...func(*DescribeLogStreamsPaginatorOptions)) *DescribeLogStreamsPaginator

NewDescribeLogStreamsPaginator returns a new DescribeLogStreamsPaginator

func (*DescribeLogStreamsPaginator) HasMorePages added in v0.30.0

func (p *DescribeLogStreamsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeLogStreamsPaginator) NextPage added in v0.30.0

func (p *DescribeLogStreamsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*DescribeLogStreamsOutput, error)

NextPage retrieves the next DescribeLogStreams page.

type DescribeLogStreamsPaginatorOptions added in v0.30.0

type DescribeLogStreamsPaginatorOptions struct {
	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeLogStreamsPaginatorOptions is the paginator options for DescribeLogStreams

type DescribeMetricFiltersAPIClient added in v0.30.0

type DescribeMetricFiltersAPIClient interface {
	DescribeMetricFilters(context.Context, *DescribeMetricFiltersInput, ...func(*Options)) (*DescribeMetricFiltersOutput, error)
}

DescribeMetricFiltersAPIClient is a client that implements the DescribeMetricFilters operation.

type DescribeMetricFiltersInput

type DescribeMetricFiltersInput struct {

	// The prefix to match. CloudWatch Logs uses the value that you set here only if
	// you also include the logGroupName parameter in your request.
	FilterNamePrefix *string

	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit *int32

	// The name of the log group.
	LogGroupName *string

	// Filters results to include only those with the specified metric name. If you
	// include this parameter in your request, you must also include the
	// metricNamespace parameter.
	MetricName *string

	// Filters results to include only those in the specified namespace. If you
	// include this parameter in your request, you must also include the metricName
	// parameter.
	MetricNamespace *string

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeMetricFiltersOutput

type DescribeMetricFiltersOutput struct {

	// The metric filters.
	MetricFilters []types.MetricFilter

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeMetricFiltersPaginator added in v0.30.0

type DescribeMetricFiltersPaginator struct {
	// contains filtered or unexported fields
}

DescribeMetricFiltersPaginator is a paginator for DescribeMetricFilters

func NewDescribeMetricFiltersPaginator added in v0.30.0

NewDescribeMetricFiltersPaginator returns a new DescribeMetricFiltersPaginator

func (*DescribeMetricFiltersPaginator) HasMorePages added in v0.30.0

func (p *DescribeMetricFiltersPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeMetricFiltersPaginator) NextPage added in v0.30.0

NextPage retrieves the next DescribeMetricFilters page.

type DescribeMetricFiltersPaginatorOptions added in v0.30.0

type DescribeMetricFiltersPaginatorOptions struct {
	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeMetricFiltersPaginatorOptions is the paginator options for DescribeMetricFilters

type DescribeQueriesInput

type DescribeQueriesInput struct {

	// Limits the returned queries to only those for the specified log group.
	LogGroupName *string

	// Limits the number of returned queries to the specified number.
	MaxResults *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Limits the returned queries to only those that have the specified status. Valid
	// values are Cancelled , Complete , Failed , Running , and Scheduled .
	Status types.QueryStatus
	// contains filtered or unexported fields
}

type DescribeQueriesOutput

type DescribeQueriesOutput struct {

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// The list of queries that match the request.
	Queries []types.QueryInfo

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeQueryDefinitionsInput

type DescribeQueryDefinitionsInput struct {

	// Limits the number of returned query definitions to the specified number.
	MaxResults *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Use this parameter to filter your results to only the query definitions that
	// have names that start with the prefix you specify.
	QueryDefinitionNamePrefix *string
	// contains filtered or unexported fields
}

type DescribeQueryDefinitionsOutput

type DescribeQueryDefinitionsOutput struct {

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// The list of query definitions that match your request.
	QueryDefinitions []types.QueryDefinition

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeResourcePoliciesInput

type DescribeResourcePoliciesInput struct {

	// The maximum number of resource policies to be displayed with one call of this
	// API.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeResourcePoliciesOutput

type DescribeResourcePoliciesOutput struct {

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// The resource policies that exist in this account.
	ResourcePolicies []types.ResourcePolicy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeSubscriptionFiltersAPIClient added in v0.30.0

type DescribeSubscriptionFiltersAPIClient interface {
	DescribeSubscriptionFilters(context.Context, *DescribeSubscriptionFiltersInput, ...func(*Options)) (*DescribeSubscriptionFiltersOutput, error)
}

DescribeSubscriptionFiltersAPIClient is a client that implements the DescribeSubscriptionFilters operation.

type DescribeSubscriptionFiltersInput

type DescribeSubscriptionFiltersInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The prefix to match. If you don't specify a value, no prefix filter is applied.
	FilterNamePrefix *string

	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit *int32

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string
	// contains filtered or unexported fields
}

type DescribeSubscriptionFiltersOutput

type DescribeSubscriptionFiltersOutput struct {

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// The subscription filters.
	SubscriptionFilters []types.SubscriptionFilter

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DescribeSubscriptionFiltersPaginator added in v0.30.0

type DescribeSubscriptionFiltersPaginator struct {
	// contains filtered or unexported fields
}

DescribeSubscriptionFiltersPaginator is a paginator for DescribeSubscriptionFilters

func NewDescribeSubscriptionFiltersPaginator added in v0.30.0

NewDescribeSubscriptionFiltersPaginator returns a new DescribeSubscriptionFiltersPaginator

func (*DescribeSubscriptionFiltersPaginator) HasMorePages added in v0.30.0

func (p *DescribeSubscriptionFiltersPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*DescribeSubscriptionFiltersPaginator) NextPage added in v0.30.0

NextPage retrieves the next DescribeSubscriptionFilters page.

type DescribeSubscriptionFiltersPaginatorOptions added in v0.30.0

type DescribeSubscriptionFiltersPaginatorOptions struct {
	// The maximum number of items returned. If you don't specify a value, the default
	// is up to 50 items.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

DescribeSubscriptionFiltersPaginatorOptions is the paginator options for DescribeSubscriptionFilters

type DisassociateKmsKeyInput

type DisassociateKmsKeyInput struct {

	// The name of the log group.
	//
	// In your DisassociateKmsKey operation, you must specify either the
	// resourceIdentifier parameter or the logGroup parameter, but you can't specify
	// both.
	LogGroupName *string

	// Specifies the target for this operation. You must specify one of the following:
	//
	//   - Specify the ARN of a log group to stop having CloudWatch Logs use the KMS
	//   key to encrypt log events that are ingested and stored by that log group. After
	//   you run this operation, CloudWatch Logs encrypts ingested log events with the
	//   default CloudWatch Logs method. The log group ARN must be in the following
	//   format. Replace REGION and ACCOUNT_ID with your Region and account ID.
	//
	// arn:aws:logs:REGION:ACCOUNT_ID:log-group:LOG_GROUP_NAME
	//
	//   - Specify the following ARN to stop using this key to encrypt the results of
	//   future [StartQuery]operations in this account. Replace REGION and ACCOUNT_ID with your
	//   Region and account ID.
	//
	// arn:aws:logs:REGION:ACCOUNT_ID:query-result:*
	//
	// In your DisssociateKmsKey operation, you must specify either the
	// resourceIdentifier parameter or the logGroup parameter, but you can't specify
	// both.
	//
	// [StartQuery]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
	ResourceIdentifier *string
	// contains filtered or unexported fields
}

type DisassociateKmsKeyOutput

type DisassociateKmsKeyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type EndpointParameters added in v1.23.0

type EndpointParameters struct {
	// The AWS region used to dispatch the request.
	//
	// Parameter is
	// required.
	//
	// AWS::Region
	Region *string

	// When true, use the dual-stack endpoint. If the configured endpoint does not
	// support dual-stack, dispatching the request MAY return an error.
	//
	// Defaults to
	// false if no value is provided.
	//
	// AWS::UseDualStack
	UseDualStack *bool

	// When true, send this request to the FIPS-compliant regional endpoint. If the
	// configured endpoint does not have a FIPS compliant endpoint, dispatching the
	// request will return an error.
	//
	// Defaults to false if no value is
	// provided.
	//
	// AWS::UseFIPS
	UseFIPS *bool

	// Override the endpoint used to send this request
	//
	// Parameter is
	// required.
	//
	// SDK::Endpoint
	Endpoint *string
}

EndpointParameters provides the parameters that influence how endpoints are resolved.

func (EndpointParameters) ValidateRequired added in v1.23.0

func (p EndpointParameters) ValidateRequired() error

ValidateRequired validates required parameters are set.

func (EndpointParameters) WithDefaults added in v1.23.0

func (p EndpointParameters) WithDefaults() EndpointParameters

WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options EndpointResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func EndpointResolverFromURL added in v1.1.0

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options EndpointResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options EndpointResolverOptions) (endpoint aws.Endpoint, err error)

type EndpointResolverOptions added in v0.29.0

type EndpointResolverOptions = internalendpoints.Options

EndpointResolverOptions is the service endpoint resolver options

type EndpointResolverV2 added in v1.23.0

type EndpointResolverV2 interface {
	// ResolveEndpoint attempts to resolve the endpoint with the provided options,
	// returning the endpoint if found. Otherwise an error is returned.
	ResolveEndpoint(ctx context.Context, params EndpointParameters) (
		smithyendpoints.Endpoint, error,
	)
}

EndpointResolverV2 provides the interface for resolving service endpoints.

func NewDefaultEndpointResolverV2 added in v1.23.0

func NewDefaultEndpointResolverV2() EndpointResolverV2

type FilterLogEventsAPIClient added in v0.30.0

type FilterLogEventsAPIClient interface {
	FilterLogEvents(context.Context, *FilterLogEventsInput, ...func(*Options)) (*FilterLogEventsOutput, error)
}

FilterLogEventsAPIClient is a client that implements the FilterLogEvents operation.

type FilterLogEventsInput

type FilterLogEventsInput struct {

	// The end of the time range, expressed as the number of milliseconds after Jan 1,
	// 1970 00:00:00 UTC . Events with a timestamp later than this time are not
	// returned.
	EndTime *int64

	// The filter pattern to use. For more information, see [Filter and Pattern Syntax].
	//
	// If not provided, all the events are matched.
	//
	// [Filter and Pattern Syntax]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
	FilterPattern *string

	// If the value is true, the operation attempts to provide responses that contain
	// events from multiple log streams within the log group, interleaved in a single
	// response. If the value is false, all the matched log events in the first log
	// stream are searched first, then those in the next log stream, and so on.
	//
	// Important As of June 17, 2019, this parameter is ignored and the value is
	// assumed to be true. The response from this operation always interleaves events
	// from multiple log streams within a log group.
	//
	// Deprecated: Starting on June 17, 2019, this parameter will be ignored and the
	// value will be assumed to be true. The response from this operation will always
	// interleave events from multiple log streams within a log group.
	Interleaved *bool

	// The maximum number of events to return. The default is 10,000 events.
	Limit *int32

	// Specify either the name or ARN of the log group to view log events from. If the
	// log group is in a source account and you are using a monitoring account, you
	// must use the log group ARN.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupIdentifier *string

	// The name of the log group to search.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupName *string

	// Filters the results to include only events from log streams that have names
	// starting with this prefix.
	//
	// If you specify a value for both logStreamNamePrefix and logStreamNames , the
	// action returns an InvalidParameterException error.
	LogStreamNamePrefix *string

	// Filters the results to only logs from the log streams in this list.
	//
	// If you specify a value for both logStreamNames and logStreamNamePrefix , the
	// action returns an InvalidParameterException error.
	LogStreamNames []string

	// The token for the next set of events to return. (You received this token from a
	// previous call.)
	NextToken *string

	// The start of the time range, expressed as the number of milliseconds after Jan
	// 1, 1970 00:00:00 UTC . Events with a timestamp before this time are not returned.
	StartTime *int64

	// Specify true to display the log event fields with all sensitive data unmasked
	// and visible. The default is false .
	//
	// To use this operation with this parameter, you must be signed into an account
	// with the logs:Unmask permission.
	Unmask bool
	// contains filtered or unexported fields
}

type FilterLogEventsOutput

type FilterLogEventsOutput struct {

	// The matched events.
	Events []types.FilteredLogEvent

	// The token to use when requesting the next set of items. The token expires after
	// 24 hours.
	NextToken *string

	//  Important As of May 15, 2020, this parameter is no longer supported. This
	// parameter returns an empty list.
	//
	// Indicates which log streams have been searched and whether each has been
	// searched completely.
	SearchedLogStreams []types.SearchedLogStream

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type FilterLogEventsPaginator added in v0.30.0

type FilterLogEventsPaginator struct {
	// contains filtered or unexported fields
}

FilterLogEventsPaginator is a paginator for FilterLogEvents

func NewFilterLogEventsPaginator added in v0.30.0

func NewFilterLogEventsPaginator(client FilterLogEventsAPIClient, params *FilterLogEventsInput, optFns ...func(*FilterLogEventsPaginatorOptions)) *FilterLogEventsPaginator

NewFilterLogEventsPaginator returns a new FilterLogEventsPaginator

func (*FilterLogEventsPaginator) HasMorePages added in v0.30.0

func (p *FilterLogEventsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*FilterLogEventsPaginator) NextPage added in v0.30.0

func (p *FilterLogEventsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*FilterLogEventsOutput, error)

NextPage retrieves the next FilterLogEvents page.

type FilterLogEventsPaginatorOptions added in v0.30.0

type FilterLogEventsPaginatorOptions struct {
	// The maximum number of events to return. The default is 10,000 events.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

FilterLogEventsPaginatorOptions is the paginator options for FilterLogEvents

type GetDataProtectionPolicyInput added in v1.17.0

type GetDataProtectionPolicyInput struct {

	// The name or ARN of the log group that contains the data protection policy that
	// you want to see.
	//
	// This member is required.
	LogGroupIdentifier *string
	// contains filtered or unexported fields
}

type GetDataProtectionPolicyOutput added in v1.17.0

type GetDataProtectionPolicyOutput struct {

	// The date and time that this policy was most recently updated.
	LastUpdatedTime *int64

	// The log group name or ARN that you specified in your request.
	LogGroupIdentifier *string

	// The data protection policy document for this log group.
	PolicyDocument *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetDeliveryDestinationInput added in v1.27.0

type GetDeliveryDestinationInput struct {

	// The name of the delivery destination that you want to retrieve.
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type GetDeliveryDestinationOutput added in v1.27.0

type GetDeliveryDestinationOutput struct {

	// A structure containing information about the delivery destination.
	DeliveryDestination *types.DeliveryDestination

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetDeliveryDestinationPolicyInput added in v1.27.0

type GetDeliveryDestinationPolicyInput struct {

	// The name of the delivery destination that you want to retrieve the policy of.
	//
	// This member is required.
	DeliveryDestinationName *string
	// contains filtered or unexported fields
}

type GetDeliveryDestinationPolicyOutput added in v1.27.0

type GetDeliveryDestinationPolicyOutput struct {

	// The IAM policy for this delivery destination.
	Policy *types.Policy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetDeliveryInput added in v1.27.0

type GetDeliveryInput struct {

	// The ID of the delivery that you want to retrieve.
	//
	// This member is required.
	Id *string
	// contains filtered or unexported fields
}

type GetDeliveryOutput added in v1.27.0

type GetDeliveryOutput struct {

	// A structure that contains information about the delivery.
	Delivery *types.Delivery

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetDeliverySourceInput added in v1.27.0

type GetDeliverySourceInput struct {

	// The name of the delivery source that you want to retrieve.
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type GetDeliverySourceOutput added in v1.27.0

type GetDeliverySourceOutput struct {

	// A structure containing information about the delivery source.
	DeliverySource *types.DeliverySource

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetLogAnomalyDetectorInput added in v1.28.0

type GetLogAnomalyDetectorInput struct {

	// The ARN of the anomaly detector to retrieve information about. You can find the
	// ARNs of log anomaly detectors in your account by using the [ListLogAnomalyDetectors]operation.
	//
	// [ListLogAnomalyDetectors]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListLogAnomalyDetectors.html
	//
	// This member is required.
	AnomalyDetectorArn *string
	// contains filtered or unexported fields
}

type GetLogAnomalyDetectorOutput added in v1.28.0

type GetLogAnomalyDetectorOutput struct {

	// Specifies whether the anomaly detector is currently active. To change its
	// status, use the enabled parameter in the [UpdateLogAnomalyDetector] operation.
	//
	// [UpdateLogAnomalyDetector]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_UpdateLogAnomalyDetector.html
	AnomalyDetectorStatus types.AnomalyDetectorStatus

	// The number of days used as the life cycle of anomalies. After this time,
	// anomalies are automatically baselined and the anomaly detector model will treat
	// new occurrences of similar event as normal.
	AnomalyVisibilityTime *int64

	// The date and time when this anomaly detector was created.
	CreationTimeStamp int64

	// The name of the log anomaly detector
	DetectorName *string

	// Specifies how often the anomaly detector runs and look for anomalies. Set this
	// value according to the frequency that the log group receives new logs. For
	// example, if the log group receives new log events every 10 minutes, then setting
	// evaluationFrequency to FIFTEEN_MIN might be appropriate.
	EvaluationFrequency types.EvaluationFrequency

	// A symbolic description of how CloudWatch Logs should interpret the data in each
	// log event. For example, a log event can contain timestamps, IP addresses,
	// strings, and so on. You use the filter pattern to specify what to look for in
	// the log event message.
	FilterPattern *string

	// The ID of the KMS key assigned to this anomaly detector, if any.
	KmsKeyId *string

	// The date and time when this anomaly detector was most recently modified.
	LastModifiedTimeStamp int64

	// An array of structures, where each structure contains the ARN of a log group
	// associated with this anomaly detector.
	LogGroupArnList []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetLogEventsAPIClient added in v0.30.0

type GetLogEventsAPIClient interface {
	GetLogEvents(context.Context, *GetLogEventsInput, ...func(*Options)) (*GetLogEventsOutput, error)
}

GetLogEventsAPIClient is a client that implements the GetLogEvents operation.

type GetLogEventsInput

type GetLogEventsInput struct {

	// The name of the log stream.
	//
	// This member is required.
	LogStreamName *string

	// The end of the time range, expressed as the number of milliseconds after Jan 1,
	// 1970 00:00:00 UTC . Events with a timestamp equal to or later than this time are
	// not included.
	EndTime *int64

	// The maximum number of log events returned. If you don't specify a limit, the
	// default is as many log events as can fit in a response size of 1 MB (up to
	// 10,000 log events).
	Limit *int32

	// Specify either the name or ARN of the log group to view events from. If the log
	// group is in a source account and you are using a monitoring account, you must
	// use the log group ARN.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupIdentifier *string

	// The name of the log group.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupName *string

	// The token for the next set of items to return. (You received this token from a
	// previous call.)
	NextToken *string

	// If the value is true, the earliest log events are returned first. If the value
	// is false, the latest log events are returned first. The default value is false.
	//
	// If you are using a previous nextForwardToken value as the nextToken in this
	// operation, you must specify true for startFromHead .
	StartFromHead *bool

	// The start of the time range, expressed as the number of milliseconds after Jan
	// 1, 1970 00:00:00 UTC . Events with a timestamp equal to this time or later than
	// this time are included. Events with a timestamp earlier than this time are not
	// included.
	StartTime *int64

	// Specify true to display the log event fields with all sensitive data unmasked
	// and visible. The default is false .
	//
	// To use this operation with this parameter, you must be signed into an account
	// with the logs:Unmask permission.
	Unmask bool
	// contains filtered or unexported fields
}

type GetLogEventsOutput

type GetLogEventsOutput struct {

	// The events.
	Events []types.OutputLogEvent

	// The token for the next set of items in the backward direction. The token
	// expires after 24 hours. This token is not null. If you have reached the end of
	// the stream, it returns the same token you passed in.
	NextBackwardToken *string

	// The token for the next set of items in the forward direction. The token expires
	// after 24 hours. If you have reached the end of the stream, it returns the same
	// token you passed in.
	NextForwardToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetLogEventsPaginator added in v0.30.0

type GetLogEventsPaginator struct {
	// contains filtered or unexported fields
}

GetLogEventsPaginator is a paginator for GetLogEvents

func NewGetLogEventsPaginator added in v0.30.0

func NewGetLogEventsPaginator(client GetLogEventsAPIClient, params *GetLogEventsInput, optFns ...func(*GetLogEventsPaginatorOptions)) *GetLogEventsPaginator

NewGetLogEventsPaginator returns a new GetLogEventsPaginator

func (*GetLogEventsPaginator) HasMorePages added in v0.30.0

func (p *GetLogEventsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*GetLogEventsPaginator) NextPage added in v0.30.0

func (p *GetLogEventsPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*GetLogEventsOutput, error)

NextPage retrieves the next GetLogEvents page.

type GetLogEventsPaginatorOptions added in v0.30.0

type GetLogEventsPaginatorOptions struct {
	// The maximum number of log events returned. If you don't specify a limit, the
	// default is as many log events as can fit in a response size of 1 MB (up to
	// 10,000 log events).
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

GetLogEventsPaginatorOptions is the paginator options for GetLogEvents

type GetLogGroupFieldsInput

type GetLogGroupFieldsInput struct {

	// Specify either the name or ARN of the log group to view. If the log group is in
	// a source account and you are using a monitoring account, you must specify the
	// ARN.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupIdentifier *string

	// The name of the log group to search.
	//
	// You must include either logGroupIdentifier or logGroupName , but not both.
	LogGroupName *string

	// The time to set as the center of the query. If you specify time , the 8 minutes
	// before and 8 minutes after this time are searched. If you omit time , the most
	// recent 15 minutes up to the current time are searched.
	//
	// The time value is specified as epoch time, which is the number of seconds since
	// January 1, 1970, 00:00:00 UTC .
	Time *int64
	// contains filtered or unexported fields
}

type GetLogGroupFieldsOutput

type GetLogGroupFieldsOutput struct {

	// The array of fields found in the query. Each object in the array contains the
	// name of the field, along with the percentage of time it appeared in the log
	// events that were queried.
	LogGroupFields []types.LogGroupField

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetLogRecordInput

type GetLogRecordInput struct {

	// The pointer corresponding to the log event record you want to retrieve. You get
	// this from the response of a GetQueryResults operation. In that response, the
	// value of the @ptr field for a log event is the value to use as logRecordPointer
	// to retrieve that complete log event record.
	//
	// This member is required.
	LogRecordPointer *string

	// Specify true to display the log event fields with all sensitive data unmasked
	// and visible. The default is false .
	//
	// To use this operation with this parameter, you must be signed into an account
	// with the logs:Unmask permission.
	Unmask bool
	// contains filtered or unexported fields
}

type GetLogRecordOutput

type GetLogRecordOutput struct {

	// The requested log event, as a JSON string.
	LogRecord map[string]string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetQueryResultsInput

type GetQueryResultsInput struct {

	// The ID number of the query.
	//
	// This member is required.
	QueryId *string
	// contains filtered or unexported fields
}

type GetQueryResultsOutput

type GetQueryResultsOutput struct {

	// If you associated an KMS key with the CloudWatch Logs Insights query results in
	// this account, this field displays the ARN of the key that's used to encrypt the
	// query results when [StartQuery]stores them.
	//
	// [StartQuery]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
	EncryptionKey *string

	// The log events that matched the query criteria during the most recent time it
	// ran.
	//
	// The results value is an array of arrays. Each log event is one object in the
	// top-level array. Each of these log event objects is an array of field / value
	// pairs.
	Results [][]types.ResultField

	// Includes the number of log events scanned by the query, the number of log
	// events that matched the query criteria, and the total number of bytes in the
	// scanned log events. These values reflect the full raw results of the query.
	Statistics *types.QueryStatistics

	// The status of the most recent running of the query. Possible values are
	// Cancelled , Complete , Failed , Running , Scheduled , Timeout , and Unknown .
	//
	// Queries time out after 60 minutes of runtime. To avoid having your queries time
	// out, reduce the time range being searched or partition your query into a number
	// of queries.
	Status types.QueryStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetTransformerInput added in v1.44.0

type GetTransformerInput struct {

	// Specify either the name or ARN of the log group to return transformer
	// information for. If the log group is in a source account and you are using a
	// monitoring account, you must use the log group ARN.
	//
	// This member is required.
	LogGroupIdentifier *string
	// contains filtered or unexported fields
}

type GetTransformerOutput added in v1.44.0

type GetTransformerOutput struct {

	// The creation time of the transformer, expressed as the number of milliseconds
	// after Jan 1, 1970 00:00:00 UTC.
	CreationTime *int64

	// The date and time when this transformer was most recently modified, expressed
	// as the number of milliseconds after Jan 1, 1970 00:00:00 UTC.
	LastModifiedTime *int64

	// The ARN of the log group that you specified in your request.
	LogGroupIdentifier *string

	// This sructure contains the configuration of the requested transformer.
	TransformerConfig []types.Processor

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time, optFns ...func(*v4.SignerOptions)) error
}

type IdempotencyTokenProvider added in v1.24.0

type IdempotencyTokenProvider interface {
	GetIdempotencyToken() (string, error)
}

IdempotencyTokenProvider interface for providing idempotency token

type ListAnomaliesAPIClient added in v1.28.0

type ListAnomaliesAPIClient interface {
	ListAnomalies(context.Context, *ListAnomaliesInput, ...func(*Options)) (*ListAnomaliesOutput, error)
}

ListAnomaliesAPIClient is a client that implements the ListAnomalies operation.

type ListAnomaliesInput added in v1.28.0

type ListAnomaliesInput struct {

	// Use this to optionally limit the results to only the anomalies found by a
	// certain anomaly detector.
	AnomalyDetectorArn *string

	// The maximum number of items to return. If you don't specify a value, the
	// default maximum value of 50 items is used.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// You can specify this parameter if you want to the operation to return only
	// anomalies that are currently either suppressed or unsuppressed.
	SuppressionState types.SuppressionState
	// contains filtered or unexported fields
}

type ListAnomaliesOutput added in v1.28.0

type ListAnomaliesOutput struct {

	// An array of structures, where each structure contains information about one
	// anomaly that a log anomaly detector has found.
	Anomalies []types.Anomaly

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListAnomaliesPaginator added in v1.28.0

type ListAnomaliesPaginator struct {
	// contains filtered or unexported fields
}

ListAnomaliesPaginator is a paginator for ListAnomalies

func NewListAnomaliesPaginator added in v1.28.0

func NewListAnomaliesPaginator(client ListAnomaliesAPIClient, params *ListAnomaliesInput, optFns ...func(*ListAnomaliesPaginatorOptions)) *ListAnomaliesPaginator

NewListAnomaliesPaginator returns a new ListAnomaliesPaginator

func (*ListAnomaliesPaginator) HasMorePages added in v1.28.0

func (p *ListAnomaliesPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListAnomaliesPaginator) NextPage added in v1.28.0

func (p *ListAnomaliesPaginator) NextPage(ctx context.Context, optFns ...func(*Options)) (*ListAnomaliesOutput, error)

NextPage retrieves the next ListAnomalies page.

type ListAnomaliesPaginatorOptions added in v1.28.0

type ListAnomaliesPaginatorOptions struct {
	// The maximum number of items to return. If you don't specify a value, the
	// default maximum value of 50 items is used.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListAnomaliesPaginatorOptions is the paginator options for ListAnomalies

type ListLogAnomalyDetectorsAPIClient added in v1.28.0

type ListLogAnomalyDetectorsAPIClient interface {
	ListLogAnomalyDetectors(context.Context, *ListLogAnomalyDetectorsInput, ...func(*Options)) (*ListLogAnomalyDetectorsOutput, error)
}

ListLogAnomalyDetectorsAPIClient is a client that implements the ListLogAnomalyDetectors operation.

type ListLogAnomalyDetectorsInput added in v1.28.0

type ListLogAnomalyDetectorsInput struct {

	// Use this to optionally filter the results to only include anomaly detectors
	// that are associated with the specified log group.
	FilterLogGroupArn *string

	// The maximum number of items to return. If you don't specify a value, the
	// default maximum value of 50 items is used.
	Limit *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type ListLogAnomalyDetectorsOutput added in v1.28.0

type ListLogAnomalyDetectorsOutput struct {

	// An array of structures, where each structure in the array contains information
	// about one anomaly detector.
	AnomalyDetectors []types.AnomalyDetector

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListLogAnomalyDetectorsPaginator added in v1.28.0

type ListLogAnomalyDetectorsPaginator struct {
	// contains filtered or unexported fields
}

ListLogAnomalyDetectorsPaginator is a paginator for ListLogAnomalyDetectors

func NewListLogAnomalyDetectorsPaginator added in v1.28.0

NewListLogAnomalyDetectorsPaginator returns a new ListLogAnomalyDetectorsPaginator

func (*ListLogAnomalyDetectorsPaginator) HasMorePages added in v1.28.0

func (p *ListLogAnomalyDetectorsPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListLogAnomalyDetectorsPaginator) NextPage added in v1.28.0

NextPage retrieves the next ListLogAnomalyDetectors page.

type ListLogAnomalyDetectorsPaginatorOptions added in v1.28.0

type ListLogAnomalyDetectorsPaginatorOptions struct {
	// The maximum number of items to return. If you don't specify a value, the
	// default maximum value of 50 items is used.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListLogAnomalyDetectorsPaginatorOptions is the paginator options for ListLogAnomalyDetectors

type ListLogGroupsForQueryAPIClient added in v1.44.0

type ListLogGroupsForQueryAPIClient interface {
	ListLogGroupsForQuery(context.Context, *ListLogGroupsForQueryInput, ...func(*Options)) (*ListLogGroupsForQueryOutput, error)
}

ListLogGroupsForQueryAPIClient is a client that implements the ListLogGroupsForQuery operation.

type ListLogGroupsForQueryInput added in v1.44.0

type ListLogGroupsForQueryInput struct {

	// The ID of the query to use. This query ID is from the response to your [StartQuery]
	// operation.
	//
	// [StartQuery]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_StartQuery.html
	//
	// This member is required.
	QueryId *string

	// Limits the number of returned log groups to the specified number.
	MaxResults *int32

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string
	// contains filtered or unexported fields
}

type ListLogGroupsForQueryOutput added in v1.44.0

type ListLogGroupsForQueryOutput struct {

	// An array of the names and ARNs of the log groups that were processed in the
	// query.
	LogGroupIdentifiers []string

	// The token for the next set of items to return. The token expires after 24 hours.
	NextToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListLogGroupsForQueryPaginator added in v1.44.0

type ListLogGroupsForQueryPaginator struct {
	// contains filtered or unexported fields
}

ListLogGroupsForQueryPaginator is a paginator for ListLogGroupsForQuery

func NewListLogGroupsForQueryPaginator added in v1.44.0

NewListLogGroupsForQueryPaginator returns a new ListLogGroupsForQueryPaginator

func (*ListLogGroupsForQueryPaginator) HasMorePages added in v1.44.0

func (p *ListLogGroupsForQueryPaginator) HasMorePages() bool

HasMorePages returns a boolean indicating whether more pages are available

func (*ListLogGroupsForQueryPaginator) NextPage added in v1.44.0

NextPage retrieves the next ListLogGroupsForQuery page.

type ListLogGroupsForQueryPaginatorOptions added in v1.44.0

type ListLogGroupsForQueryPaginatorOptions struct {
	// Limits the number of returned log groups to the specified number.
	Limit int32

	// Set to true if pagination should stop if the service returns a pagination token
	// that matches the most recent token provided to the service.
	StopOnDuplicateToken bool
}

ListLogGroupsForQueryPaginatorOptions is the paginator options for ListLogGroupsForQuery

type ListTagsForResourceInput added in v1.16.0

type ListTagsForResourceInput struct {

	// The ARN of the resource that you want to view tags for.
	//
	// The ARN format of a log group is
	// arn:aws:logs:Region:account-id:log-group:log-group-name
	//
	// The ARN format of a destination is
	// arn:aws:logs:Region:account-id:destination:destination-name
	//
	// For more information about ARN format, see [CloudWatch Logs resources and operations].
	//
	// [CloudWatch Logs resources and operations]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type ListTagsForResourceOutput added in v1.16.0

type ListTagsForResourceOutput struct {

	// The list of tags associated with the requested resource.>
	Tags map[string]string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListTagsLogGroupInput

type ListTagsLogGroupInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string
	// contains filtered or unexported fields
}

type ListTagsLogGroupOutput

type ListTagsLogGroupOutput struct {

	// The tags for the log group.
	Tags map[string]string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The optional application specific identifier appended to the User-Agent header.
	AppID string

	// This endpoint will be given as input to an EndpointResolverV2. It is used for
	// providing a custom base endpoint that is subject to modifications by the
	// processing EndpointResolverV2.
	BaseEndpoint *string

	// Configures the events that will be sent to the configured logger.
	ClientLogMode aws.ClientLogMode

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The configuration DefaultsMode that the SDK should use when constructing the
	// clients initial default settings.
	DefaultsMode aws.DefaultsMode

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions EndpointResolverOptions

	// The service endpoint resolver.
	//
	// Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a
	// value for this field will likely prevent you from using any endpoint-related
	// service features released after the introduction of EndpointResolverV2 and
	// BaseEndpoint.
	//
	// To migrate an EndpointResolver implementation that uses a custom endpoint, set
	// the client option BaseEndpoint instead.
	EndpointResolver EndpointResolver

	// Resolves the endpoint used for a particular service operation. This should be
	// used over the deprecated EndpointResolver.
	EndpointResolverV2 EndpointResolverV2

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// Provides idempotency tokens values that will be automatically populated into
	// idempotent API operations.
	IdempotencyTokenProvider IdempotencyTokenProvider

	// The logger writer interface to write logging messages to.
	Logger logging.Logger

	// The client meter provider.
	MeterProvider metrics.MeterProvider

	// The region to send requests to. (Required)
	Region string

	// RetryMaxAttempts specifies the maximum number attempts an API client will call
	// an operation that fails with a retryable error. A value of 0 is ignored, and
	// will not be used to configure the API client created default retryer, or modify
	// per operation call's retry max attempts.
	//
	// If specified in an operation call's functional options with a value that is
	// different than the constructed client's Options, the Client's Retryer will be
	// wrapped to use the operation's specific RetryMaxAttempts value.
	RetryMaxAttempts int

	// RetryMode specifies the retry mode the API client will be created with, if
	// Retryer option is not also specified.
	//
	// When creating a new API Clients this member will only be used if the Retryer
	// Options member is nil. This value will be ignored if Retryer is not nil.
	//
	// Currently does not support per operation call overrides, may in the future.
	RetryMode aws.RetryMode

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer. The kind of
	// default retry created by the API client can be changed with the RetryMode
	// option.
	Retryer aws.Retryer

	// The RuntimeEnvironment configuration, only populated if the DefaultsMode is set
	// to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You
	// should not populate this structure programmatically, or rely on the values here
	// within your applications.
	RuntimeEnvironment aws.RuntimeEnvironment

	// The client tracer provider.
	TracerProvider tracing.TracerProvider

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient

	// The auth scheme resolver which determines how to authenticate for each
	// operation.
	AuthSchemeResolver AuthSchemeResolver

	// The list of auth schemes supported by the client.
	AuthSchemes []smithyhttp.AuthScheme
	// contains filtered or unexported fields
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetIdentityResolver added in v1.27.1

func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver

type PutAccountPolicyInput added in v1.21.0

type PutAccountPolicyInput struct {

	// Specify the policy, in JSON.
	//
	// Data protection policy
	//
	// A data protection policy must include two JSON blocks:
	//
	//   - The first block must include both a DataIdentifer array and an Operation
	//   property with an Audit action. The DataIdentifer array lists the types of
	//   sensitive data that you want to mask. For more information about the available
	//   options, see [Types of data that you can mask].
	//
	// The Operation property with an Audit action is required to find the sensitive
	//   data terms. This Audit action must contain a FindingsDestination object. You
	//   can optionally use that FindingsDestination object to list one or more
	//   destinations to send audit findings to. If you specify destinations such as log
	//   groups, Firehose streams, and S3 buckets, they must already exist.
	//
	//   - The second block must include both a DataIdentifer array and an Operation
	//   property with an Deidentify action. The DataIdentifer array must exactly match
	//   the DataIdentifer array in the first block of the policy.
	//
	// The Operation property with the Deidentify action is what actually masks the
	//   data, and it must contain the "MaskConfig": {} object. The "MaskConfig": {}
	//   object must be empty.
	//
	// For an example data protection policy, see the Examples section on this page.
	//
	// The contents of the two DataIdentifer arrays must match exactly.
	//
	// In addition to the two JSON blocks, the policyDocument can also include Name ,
	// Description , and Version fields. The Name is different than the operation's
	// policyName parameter, and is used as a dimension when CloudWatch Logs reports
	// audit findings metrics to CloudWatch.
	//
	// The JSON specified in policyDocument can be up to 30,720 characters long.
	//
	// Subscription filter policy
	//
	// A subscription filter policy can include the following attributes in a JSON
	// block:
	//
	//   - DestinationArn The ARN of the destination to deliver log events to.
	//   Supported destinations are:
	//
	//   - An Kinesis Data Streams data stream in the same account as the subscription
	//   policy, for same-account delivery.
	//
	//   - An Firehose data stream in the same account as the subscription policy, for
	//   same-account delivery.
	//
	//   - A Lambda function in the same account as the subscription policy, for
	//   same-account delivery.
	//
	//   - A logical destination in a different account created with [PutDestination], for
	//   cross-account delivery. Kinesis Data Streams and Firehose are supported as
	//   logical destinations.
	//
	//   - RoleArn The ARN of an IAM role that grants CloudWatch Logs permissions to
	//   deliver ingested log events to the destination stream. You don't need to provide
	//   the ARN when you are working with a logical destination for cross-account
	//   delivery.
	//
	//   - FilterPattern A filter pattern for subscribing to a filtered stream of log
	//   events.
	//
	//   - Distribution The method used to distribute log data to the destination. By
	//   default, log data is grouped by log stream, but the grouping can be set to
	//   Random for a more even distribution. This property is only applicable when the
	//   destination is an Kinesis Data Streams data stream.
	//
	// Transformer policy
	//
	// A transformer policy must include one JSON block with the array of processors
	// and their configurations. For more information about available processors, see [Processors that you can use]
	// .
	//
	// Field index policy
	//
	// A field index filter policy can include the following attribute in a JSON block:
	//
	//   - Fields The array of field indexes to create.
	//
	// It must contain at least one field index.
	//
	// The following is an example of an index policy document that creates two
	// indexes, RequestId and TransactionId .
	//
	//     "policyDocument": "{ \"Fields\": [ \"RequestId\", \"TransactionId\" ] }"
	//
	// [PutDestination]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDestination.html
	// [Processors that you can use]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatch-Logs-Transformation.html#CloudWatch-Logs-Transformation-Processors
	// [Types of data that you can mask]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data-types.html
	//
	// This member is required.
	PolicyDocument *string

	// A name for the policy. This must be unique within the account.
	//
	// This member is required.
	PolicyName *string

	// The type of policy that you're creating or updating.
	//
	// This member is required.
	PolicyType types.PolicyType

	// Currently the only valid value for this parameter is ALL , which specifies that
	// the data protection policy applies to all log groups in the account. If you omit
	// this parameter, the default of ALL is used.
	Scope types.Scope

	// Use this parameter to apply the new policy to a subset of log groups in the
	// account.
	//
	// Specifing selectionCriteria is valid only when you specify
	// SUBSCRIPTION_FILTER_POLICY , FIELD_INDEX_POLICY or TRANSFORMER_POLICY for
	// policyType .
	//
	// If policyType is SUBSCRIPTION_FILTER_POLICY , the only supported
	// selectionCriteria filter is LogGroupName NOT IN []
	//
	// If policyType is FIELD_INDEX_POLICY or TRANSFORMER_POLICY , the only supported
	// selectionCriteria filter is LogGroupNamePrefix
	//
	// The selectionCriteria string can be up to 25KB in length. The length is
	// determined by using its UTF-8 bytes.
	//
	// Using the selectionCriteria parameter with SUBSCRIPTION_FILTER_POLICY is useful
	// to help prevent infinite loops. For more information, see [Log recursion prevention].
	//
	// [Log recursion prevention]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions-recursion-prevention.html
	SelectionCriteria *string
	// contains filtered or unexported fields
}

type PutAccountPolicyOutput added in v1.21.0

type PutAccountPolicyOutput struct {

	// The account policy that you created.
	AccountPolicy *types.AccountPolicy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDataProtectionPolicyInput added in v1.17.0

type PutDataProtectionPolicyInput struct {

	// Specify either the log group name or log group ARN.
	//
	// This member is required.
	LogGroupIdentifier *string

	// Specify the data protection policy, in JSON.
	//
	// This policy must include two JSON blocks:
	//
	//   - The first block must include both a DataIdentifer array and an Operation
	//   property with an Audit action. The DataIdentifer array lists the types of
	//   sensitive data that you want to mask. For more information about the available
	//   options, see [Types of data that you can mask].
	//
	// The Operation property with an Audit action is required to find the sensitive
	//   data terms. This Audit action must contain a FindingsDestination object. You
	//   can optionally use that FindingsDestination object to list one or more
	//   destinations to send audit findings to. If you specify destinations such as log
	//   groups, Firehose streams, and S3 buckets, they must already exist.
	//
	//   - The second block must include both a DataIdentifer array and an Operation
	//   property with an Deidentify action. The DataIdentifer array must exactly match
	//   the DataIdentifer array in the first block of the policy.
	//
	// The Operation property with the Deidentify action is what actually masks the
	//   data, and it must contain the "MaskConfig": {} object. The "MaskConfig": {}
	//   object must be empty.
	//
	// For an example data protection policy, see the Examples section on this page.
	//
	// The contents of the two DataIdentifer arrays must match exactly.
	//
	// In addition to the two JSON blocks, the policyDocument can also include Name ,
	// Description , and Version fields. The Name is used as a dimension when
	// CloudWatch Logs reports audit findings metrics to CloudWatch.
	//
	// The JSON specified in policyDocument can be up to 30,720 characters.
	//
	// [Types of data that you can mask]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/mask-sensitive-log-data-types.html
	//
	// This member is required.
	PolicyDocument *string
	// contains filtered or unexported fields
}

type PutDataProtectionPolicyOutput added in v1.17.0

type PutDataProtectionPolicyOutput struct {

	// The date and time that this policy was most recently updated.
	LastUpdatedTime *int64

	// The log group name or ARN that you specified in your request.
	LogGroupIdentifier *string

	// The data protection policy used for this log group.
	PolicyDocument *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDeliveryDestinationInput added in v1.27.0

type PutDeliveryDestinationInput struct {

	// A structure that contains the ARN of the Amazon Web Services resource that will
	// receive the logs.
	//
	// This member is required.
	DeliveryDestinationConfiguration *types.DeliveryDestinationConfiguration

	// A name for this delivery destination. This name must be unique for all delivery
	// destinations in your account.
	//
	// This member is required.
	Name *string

	// The format for the logs that this delivery destination will receive.
	OutputFormat types.OutputFormat

	// An optional list of key-value pairs to associate with the resource.
	//
	// For more information about tagging, see [Tagging Amazon Web Services resources]
	//
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type PutDeliveryDestinationOutput added in v1.27.0

type PutDeliveryDestinationOutput struct {

	// A structure containing information about the delivery destination that you just
	// created or updated.
	DeliveryDestination *types.DeliveryDestination

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDeliveryDestinationPolicyInput added in v1.27.0

type PutDeliveryDestinationPolicyInput struct {

	// The name of the delivery destination to assign this policy to.
	//
	// This member is required.
	DeliveryDestinationName *string

	// The contents of the policy.
	//
	// This member is required.
	DeliveryDestinationPolicy *string
	// contains filtered or unexported fields
}

type PutDeliveryDestinationPolicyOutput added in v1.27.0

type PutDeliveryDestinationPolicyOutput struct {

	// The contents of the policy that you just created.
	Policy *types.Policy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDeliverySourceInput added in v1.27.0

type PutDeliverySourceInput struct {

	// Defines the type of log that the source is sending.
	//
	//   - For Amazon Bedrock, the valid value is APPLICATION_LOGS .
	//
	//   - For Amazon CodeWhisperer, the valid value is EVENT_LOGS .
	//
	//   - For IAM Identity Center, the valid value is ERROR_LOGS .
	//
	//   - For Amazon WorkMail, the valid values are ACCESS_CONTROL_LOGS ,
	//   AUTHENTICATION_LOGS , WORKMAIL_AVAILABILITY_PROVIDER_LOGS , and
	//   WORKMAIL_MAILBOX_ACCESS_LOGS .
	//
	// This member is required.
	LogType *string

	// A name for this delivery source. This name must be unique for all delivery
	// sources in your account.
	//
	// This member is required.
	Name *string

	// The ARN of the Amazon Web Services resource that is generating and sending
	// logs. For example,
	// arn:aws:workmail:us-east-1:123456789012:organization/m-1234EXAMPLEabcd1234abcd1234abcd1234
	//
	// This member is required.
	ResourceArn *string

	// An optional list of key-value pairs to associate with the resource.
	//
	// For more information about tagging, see [Tagging Amazon Web Services resources]
	//
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type PutDeliverySourceOutput added in v1.27.0

type PutDeliverySourceOutput struct {

	// A structure containing information about the delivery source that was just
	// created or updated.
	DeliverySource *types.DeliverySource

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDestinationInput

type PutDestinationInput struct {

	// A name for the destination.
	//
	// This member is required.
	DestinationName *string

	// The ARN of an IAM role that grants CloudWatch Logs permissions to call the
	// Amazon Kinesis PutRecord operation on the destination stream.
	//
	// This member is required.
	RoleArn *string

	// The ARN of an Amazon Kinesis stream to which to deliver matching log events.
	//
	// This member is required.
	TargetArn *string

	// An optional list of key-value pairs to associate with the resource.
	//
	// For more information about tagging, see [Tagging Amazon Web Services resources]
	//
	// [Tagging Amazon Web Services resources]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
	Tags map[string]string
	// contains filtered or unexported fields
}

type PutDestinationOutput

type PutDestinationOutput struct {

	// The destination.
	Destination *types.Destination

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutDestinationPolicyInput

type PutDestinationPolicyInput struct {

	// An IAM policy document that authorizes cross-account users to deliver their log
	// events to the associated destination. This can be up to 5120 bytes.
	//
	// This member is required.
	AccessPolicy *string

	// A name for an existing destination.
	//
	// This member is required.
	DestinationName *string

	// Specify true if you are updating an existing destination policy to grant
	// permission to an organization ID instead of granting permission to individual
	// Amazon Web Services accounts. Before you update a destination policy this way,
	// you must first update the subscription filters in the accounts that send logs to
	// this destination. If you do not, the subscription filters might stop working. By
	// specifying true for forceUpdate , you are affirming that you have already
	// updated the subscription filters. For more information, see [Updating an existing cross-account subscription]
	//
	// If you omit this parameter, the default of false is used.
	//
	// [Updating an existing cross-account subscription]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Cross-Account-Log_Subscription-Update.html
	ForceUpdate *bool
	// contains filtered or unexported fields
}

type PutDestinationPolicyOutput

type PutDestinationPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutIndexPolicyInput added in v1.44.0

type PutIndexPolicyInput struct {

	// Specify either the log group name or log group ARN to apply this field index
	// policy to. If you specify an ARN, use the format
	// arn:aws:logs:region:account-id:log-group:log_group_name Don't include an * at
	// the end.
	//
	// This member is required.
	LogGroupIdentifier *string

	// The index policy document, in JSON format. The following is an example of an
	// index policy document that creates two indexes, RequestId and TransactionId .
	//
	//     "policyDocument": "{ "Fields": [ "RequestId", "TransactionId" ] }"
	//
	// The policy document must include at least one field index. For more information
	// about the fields that can be included and other restrictions, see [Field index syntax and quotas].
	//
	// [Field index syntax and quotas]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CloudWatchLogs-Field-Indexing-Syntax.html
	//
	// This member is required.
	PolicyDocument *string
	// contains filtered or unexported fields
}

type PutIndexPolicyOutput added in v1.44.0

type PutIndexPolicyOutput struct {

	// The index policy that you just created or updated.
	IndexPolicy *types.IndexPolicy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutLogEventsInput

type PutLogEventsInput struct {

	// The log events.
	//
	// This member is required.
	LogEvents []types.InputLogEvent

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The name of the log stream.
	//
	// This member is required.
	LogStreamName *string

	// The entity associated with the log events.
	Entity *types.Entity

	// The sequence token obtained from the response of the previous PutLogEvents call.
	//
	// The sequenceToken parameter is now ignored in PutLogEvents actions. PutLogEvents
	// actions are now accepted and never return InvalidSequenceTokenException or
	// DataAlreadyAcceptedException even if the sequence token is not valid.
	SequenceToken *string
	// contains filtered or unexported fields
}

type PutLogEventsOutput

type PutLogEventsOutput struct {

	// The next sequence token.
	//
	// This field has been deprecated.
	//
	// The sequence token is now ignored in PutLogEvents actions. PutLogEvents actions
	// are always accepted even if the sequence token is not valid. You can use
	// parallel PutLogEvents actions on the same log stream and you do not need to
	// wait for the response of a previous PutLogEvents action to obtain the
	// nextSequenceToken value.
	NextSequenceToken *string

	// Information about why the entity is rejected when calling PutLogEvents . Only
	// returned when the entity is rejected.
	//
	// When the entity is rejected, the events may still be accepted.
	RejectedEntityInfo *types.RejectedEntityInfo

	// The rejected events.
	RejectedLogEventsInfo *types.RejectedLogEventsInfo

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutMetricFilterInput

type PutMetricFilterInput struct {

	// A name for the metric filter.
	//
	// This member is required.
	FilterName *string

	// A filter pattern for extracting metric data out of ingested log events.
	//
	// This member is required.
	FilterPattern *string

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// A collection of information that defines how metric data gets emitted.
	//
	// This member is required.
	MetricTransformations []types.MetricTransformation

	// This parameter is valid only for log groups that have an active log
	// transformer. For more information about log transformers, see [PutTransformer].
	//
	// If the log group uses either a log-group level or account-level transformer,
	// and you specify true , the metric filter will be applied on the transformed
	// version of the log events instead of the original ingested log events.
	//
	// [PutTransformer]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
	ApplyOnTransformedLogs bool
	// contains filtered or unexported fields
}

type PutMetricFilterOutput

type PutMetricFilterOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutQueryDefinitionInput

type PutQueryDefinitionInput struct {

	// A name for the query definition. If you are saving numerous query definitions,
	// we recommend that you name them. This way, you can find the ones you want by
	// using the first part of the name as a filter in the queryDefinitionNamePrefix
	// parameter of [DescribeQueryDefinitions].
	//
	// [DescribeQueryDefinitions]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeQueryDefinitions.html
	//
	// This member is required.
	Name *string

	// The query string to use for this definition. For more information, see [CloudWatch Logs Insights Query Syntax].
	//
	// [CloudWatch Logs Insights Query Syntax]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html
	//
	// This member is required.
	QueryString *string

	// Used as an idempotency token, to avoid returning an exception if the service
	// receives the same request twice because of a network
	//
	// error.
	ClientToken *string

	// Use this parameter to include specific log groups as part of your query
	// definition.
	//
	// If you are updating a query definition and you omit this parameter, then the
	// updated definition will contain no log groups.
	LogGroupNames []string

	// If you are updating a query definition, use this parameter to specify the ID of
	// the query definition that you want to update. You can use [DescribeQueryDefinitions]to retrieve the IDs
	// of your saved query definitions.
	//
	// If you are creating a query definition, do not specify this parameter.
	// CloudWatch generates a unique ID for the new query definition and include it in
	// the response to this operation.
	//
	// [DescribeQueryDefinitions]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeQueryDefinitions.html
	QueryDefinitionId *string
	// contains filtered or unexported fields
}

type PutQueryDefinitionOutput

type PutQueryDefinitionOutput struct {

	// The ID of the query definition.
	QueryDefinitionId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutResourcePolicyInput

type PutResourcePolicyInput struct {

	// Details of the new policy, including the identity of the principal that is
	// enabled to put logs to this account. This is formatted as a JSON string. This
	// parameter is required.
	//
	// The following example creates a resource policy enabling the Route 53 service
	// to put DNS query logs in to the specified log group. Replace "logArn" with the
	// ARN of your CloudWatch Logs resource, such as a log group or log stream.
	//
	// CloudWatch Logs also supports [aws:SourceArn] and [aws:SourceAccount] condition context keys.
	//
	// In the example resource policy, you would replace the value of SourceArn with
	// the resource making the call from Route 53 to CloudWatch Logs. You would also
	// replace the value of SourceAccount with the Amazon Web Services account ID
	// making that call.
	//
	//     { "Version": "2012-10-17", "Statement": [ { "Sid":
	//     "Route53LogsToCloudWatchLogs", "Effect": "Allow", "Principal": { "Service": [
	//     "route53.amazonaws.com" ] }, "Action": "logs:PutLogEvents", "Resource":
	//     "logArn", "Condition": { "ArnLike": { "aws:SourceArn": "myRoute53ResourceArn" },
	//     "StringEquals": { "aws:SourceAccount": "myAwsAccountId" } } } ] }
	//
	// [aws:SourceAccount]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount
	// [aws:SourceArn]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn
	PolicyDocument *string

	// Name of the new policy. This parameter is required.
	PolicyName *string
	// contains filtered or unexported fields
}

type PutResourcePolicyOutput

type PutResourcePolicyOutput struct {

	// The new policy.
	ResourcePolicy *types.ResourcePolicy

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutRetentionPolicyInput

type PutRetentionPolicyInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The number of days to retain the log events in the specified log group.
	// Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545,
	// 731, 1096, 1827, 2192, 2557, 2922, 3288, and 3653.
	//
	// To set a log group so that its log events do not expire, use [DeleteRetentionPolicy].
	//
	// [DeleteRetentionPolicy]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DeleteRetentionPolicy.html
	//
	// This member is required.
	RetentionInDays *int32
	// contains filtered or unexported fields
}

type PutRetentionPolicyOutput

type PutRetentionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutSubscriptionFilterInput

type PutSubscriptionFilterInput struct {

	// The ARN of the destination to deliver matching log events to. Currently, the
	// supported destinations are:
	//
	//   - An Amazon Kinesis stream belonging to the same account as the subscription
	//   filter, for same-account delivery.
	//
	//   - A logical destination (specified using an ARN) belonging to a different
	//   account, for cross-account delivery.
	//
	// If you're setting up a cross-account subscription, the destination must have an
	//   IAM policy associated with it. The IAM policy must allow the sender to send logs
	//   to the destination. For more information, see [PutDestinationPolicy].
	//
	//   - A Kinesis Data Firehose delivery stream belonging to the same account as
	//   the subscription filter, for same-account delivery.
	//
	//   - A Lambda function belonging to the same account as the subscription filter,
	//   for same-account delivery.
	//
	// [PutDestinationPolicy]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDestinationPolicy.html
	//
	// This member is required.
	DestinationArn *string

	// A name for the subscription filter. If you are updating an existing filter, you
	// must specify the correct name in filterName . To find the name of the filter
	// currently associated with a log group, use [DescribeSubscriptionFilters].
	//
	// [DescribeSubscriptionFilters]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_DescribeSubscriptionFilters.html
	//
	// This member is required.
	FilterName *string

	// A filter pattern for subscribing to a filtered stream of log events.
	//
	// This member is required.
	FilterPattern *string

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// This parameter is valid only for log groups that have an active log
	// transformer. For more information about log transformers, see [PutTransformer].
	//
	// If the log group uses either a log-group level or account-level transformer,
	// and you specify true , the subscription filter will be applied on the
	// transformed version of the log events instead of the original ingested log
	// events.
	//
	// [PutTransformer]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutTransformer.html
	ApplyOnTransformedLogs bool

	// The method used to distribute log data to the destination. By default, log data
	// is grouped by log stream, but the grouping can be set to random for a more even
	// distribution. This property is only applicable when the destination is an Amazon
	// Kinesis data stream.
	Distribution types.Distribution

	// The ARN of an IAM role that grants CloudWatch Logs permissions to deliver
	// ingested log events to the destination stream. You don't need to provide the ARN
	// when you are working with a logical destination for cross-account delivery.
	RoleArn *string
	// contains filtered or unexported fields
}

type PutSubscriptionFilterOutput

type PutSubscriptionFilterOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type PutTransformerInput added in v1.44.0

type PutTransformerInput struct {

	// Specify either the name or ARN of the log group to create the transformer for.
	//
	// This member is required.
	LogGroupIdentifier *string

	// This structure contains the configuration of this log transformer. A log
	// transformer is an array of processors, where each processor applies one type of
	// transformation to the log events that are ingested.
	//
	// This member is required.
	TransformerConfig []types.Processor
	// contains filtered or unexported fields
}

type PutTransformerOutput added in v1.44.0

type PutTransformerOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  EndpointResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type StartLiveTailEventStream added in v1.30.0

type StartLiveTailEventStream struct {
	// StartLiveTailResponseStreamReader is the EventStream reader for the
	// StartLiveTailResponseStream events. This value is automatically set by the SDK
	// when the API call is made Use this member when unit testing your code with the
	// SDK to mock out the EventStream Reader.
	//
	// Must not be nil.
	Reader StartLiveTailResponseStreamReader
	// contains filtered or unexported fields
}

StartLiveTailEventStream provides the event stream handling for the StartLiveTail operation.

For testing and mocking the event stream this type should be initialized via the NewStartLiveTailEventStream constructor function. Using the functional options to pass in nested mock behavior.

func NewStartLiveTailEventStream added in v1.30.0

func NewStartLiveTailEventStream(optFns ...func(*StartLiveTailEventStream)) *StartLiveTailEventStream

NewStartLiveTailEventStream initializes an StartLiveTailEventStream. This function should only be used for testing and mocking the StartLiveTailEventStream stream within your application.

The Reader member must be set before reading events from the stream.

func (*StartLiveTailEventStream) Close added in v1.30.0

func (es *StartLiveTailEventStream) Close() error

Close closes the stream. This will also cause the stream to be closed. Close must be called when done using the stream API. Not calling Close may result in resource leaks.

Will close the underlying EventStream writer and reader, and no more events can be sent or received.

func (*StartLiveTailEventStream) Err added in v1.30.0

func (es *StartLiveTailEventStream) Err() error

Err returns any error that occurred while reading or writing EventStream Events from the service API's response. Returns nil if there were no errors.

func (*StartLiveTailEventStream) Events added in v1.30.0

Events returns a channel to read events from.

type StartLiveTailInput added in v1.30.0

type StartLiveTailInput struct {

	// An array where each item in the array is a log group to include in the Live
	// Tail session.
	//
	// Specify each log group by its ARN.
	//
	// If you specify an ARN, the ARN can't end with an asterisk (*).
	//
	// You can include up to 10 log groups.
	//
	// This member is required.
	LogGroupIdentifiers []string

	// An optional pattern to use to filter the results to include only log events
	// that match the pattern. For example, a filter pattern of error 404 causes only
	// log events that include both error and 404 to be included in the Live Tail
	// stream.
	//
	// Regular expression filter patterns are supported.
	//
	// For more information about filter pattern syntax, see [Filter and Pattern Syntax].
	//
	// [Filter and Pattern Syntax]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html
	LogEventFilterPattern *string

	// If you specify this parameter, then only log events in the log streams that
	// have names that start with the prefixes that you specify here are included in
	// the Live Tail session.
	//
	// If you specify this field, you can't also specify the logStreamNames field.
	//
	// You can specify this parameter only if you specify only one log group in
	// logGroupIdentifiers .
	LogStreamNamePrefixes []string

	// If you specify this parameter, then only log events in the log streams that you
	// specify here are included in the Live Tail session.
	//
	// If you specify this field, you can't also specify the logStreamNamePrefixes
	// field.
	//
	// You can specify this parameter only if you specify only one log group in
	// logGroupIdentifiers .
	LogStreamNames []string
	// contains filtered or unexported fields
}

type StartLiveTailOutput added in v1.30.0

type StartLiveTailOutput struct {

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

func (*StartLiveTailOutput) GetStream added in v1.30.0

GetStream returns the type to interact with the event stream.

type StartLiveTailResponseStreamReader added in v1.30.0

type StartLiveTailResponseStreamReader interface {
	Events() <-chan types.StartLiveTailResponseStream
	Close() error
	Err() error
}

StartLiveTailResponseStreamReader provides the interface for reading events from a stream.

The writer's Close method must allow multiple concurrent calls.

type StartQueryInput

type StartQueryInput struct {

	// The end of the time range to query. The range is inclusive, so the specified
	// end time is included in the query. Specified as epoch time, the number of
	// seconds since January 1, 1970, 00:00:00 UTC .
	//
	// This member is required.
	EndTime *int64

	// The query string to use. For more information, see [CloudWatch Logs Insights Query Syntax].
	//
	// [CloudWatch Logs Insights Query Syntax]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html
	//
	// This member is required.
	QueryString *string

	// The beginning of the time range to query. The range is inclusive, so the
	// specified start time is included in the query. Specified as epoch time, the
	// number of seconds since January 1, 1970, 00:00:00 UTC .
	//
	// This member is required.
	StartTime *int64

	// The maximum number of log events to return in the query. If the query string
	// uses the fields command, only the specified fields and their values are
	// returned. The default is 10,000.
	Limit *int32

	// The list of log groups to query. You can include up to 50 log groups.
	//
	// You can specify them by the log group name or ARN. If a log group that you're
	// querying is in a source account and you're using a monitoring account, you must
	// specify the ARN of the log group here. The query definition must also be defined
	// in the monitoring account.
	//
	// If you specify an ARN, use the format
	// arn:aws:logs:region:account-id:log-group:log_group_name Don't include an * at
	// the end.
	//
	// A StartQuery operation must include exactly one of the following parameters:
	// logGroupName , logGroupNames , or logGroupIdentifiers .
	LogGroupIdentifiers []string

	// The log group on which to perform the query.
	LogGroupName *string

	// The list of log groups to be queried. You can include up to 50 log groups.
	LogGroupNames []string
	// contains filtered or unexported fields
}

type StartQueryOutput

type StartQueryOutput struct {

	// The unique ID of the query.
	QueryId *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type StopQueryInput

type StopQueryInput struct {

	// The ID number of the query to stop. To find this ID number, use DescribeQueries .
	//
	// This member is required.
	QueryId *string
	// contains filtered or unexported fields
}

type StopQueryOutput

type StopQueryOutput struct {

	// This is true if the query was stopped by the StopQuery operation.
	Success bool

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type TagLogGroupInput

type TagLogGroupInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The key-value pairs to use for the tags.
	//
	// This member is required.
	Tags map[string]string
	// contains filtered or unexported fields
}

type TagLogGroupOutput

type TagLogGroupOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type TagResourceInput added in v1.16.0

type TagResourceInput struct {

	// The ARN of the resource that you're adding tags to.
	//
	// The ARN format of a log group is
	// arn:aws:logs:Region:account-id:log-group:log-group-name
	//
	// The ARN format of a destination is
	// arn:aws:logs:Region:account-id:destination:destination-name
	//
	// For more information about ARN format, see [CloudWatch Logs resources and operations].
	//
	// [CloudWatch Logs resources and operations]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
	//
	// This member is required.
	ResourceArn *string

	// The list of key-value pairs to associate with the resource.
	//
	// This member is required.
	Tags map[string]string
	// contains filtered or unexported fields
}

type TagResourceOutput added in v1.16.0

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type TestMetricFilterInput

type TestMetricFilterInput struct {

	// A symbolic description of how CloudWatch Logs should interpret the data in each
	// log event. For example, a log event can contain timestamps, IP addresses,
	// strings, and so on. You use the filter pattern to specify what to look for in
	// the log event message.
	//
	// This member is required.
	FilterPattern *string

	// The log event messages to test.
	//
	// This member is required.
	LogEventMessages []string
	// contains filtered or unexported fields
}

type TestMetricFilterOutput

type TestMetricFilterOutput struct {

	// The matched events.
	Matches []types.MetricFilterMatchRecord

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type TestTransformerInput added in v1.44.0

type TestTransformerInput struct {

	// An array of the raw log events that you want to use to test this transformer.
	//
	// This member is required.
	LogEventMessages []string

	// This structure contains the configuration of this log transformer that you want
	// to test. A log transformer is an array of processors, where each processor
	// applies one type of transformation to the log events that are ingested.
	//
	// This member is required.
	TransformerConfig []types.Processor
	// contains filtered or unexported fields
}

type TestTransformerOutput added in v1.44.0

type TestTransformerOutput struct {

	// An array where each member of the array includes both the original version and
	// the transformed version of one of the log events that you input.
	TransformedLogs []types.TransformedLogRecord

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UnknownEventMessageError added in v1.30.0

type UnknownEventMessageError struct {
	Type    string
	Message *eventstream.Message
}

UnknownEventMessageError provides an error when a message is received from the stream, but the reader is unable to determine what kind of message it is.

func (*UnknownEventMessageError) Error added in v1.30.0

func (e *UnknownEventMessageError) Error() string

Error retruns the error message string.

type UntagLogGroupInput

type UntagLogGroupInput struct {

	// The name of the log group.
	//
	// This member is required.
	LogGroupName *string

	// The tag keys. The corresponding tags are removed from the log group.
	//
	// This member is required.
	Tags []string
	// contains filtered or unexported fields
}

type UntagLogGroupOutput

type UntagLogGroupOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UntagResourceInput added in v1.16.0

type UntagResourceInput struct {

	// The ARN of the CloudWatch Logs resource that you're removing tags from.
	//
	// The ARN format of a log group is
	// arn:aws:logs:Region:account-id:log-group:log-group-name
	//
	// The ARN format of a destination is
	// arn:aws:logs:Region:account-id:destination:destination-name
	//
	// For more information about ARN format, see [CloudWatch Logs resources and operations].
	//
	// [CloudWatch Logs resources and operations]: https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-access-control-overview-cwl.html
	//
	// This member is required.
	ResourceArn *string

	// The list of tag keys to remove from the resource.
	//
	// This member is required.
	TagKeys []string
	// contains filtered or unexported fields
}

type UntagResourceOutput added in v1.16.0

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateAnomalyInput added in v1.28.0

type UpdateAnomalyInput struct {

	// The ARN of the anomaly detector that this operation is to act on.
	//
	// This member is required.
	AnomalyDetectorArn *string

	// If you are suppressing or unsuppressing an anomaly, specify its unique ID here.
	// You can find anomaly IDs by using the [ListAnomalies]operation.
	//
	// [ListAnomalies]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html
	AnomalyId *string

	// Set this to true to prevent CloudWatch Logs from displaying this behavior as an
	// anomaly in the future. The behavior is then treated as baseline behavior.
	// However, if similar but more severe occurrences of this behavior occur in the
	// future, those will still be reported as anomalies.
	//
	// The default is false
	Baseline *bool

	// If you are suppressing or unsuppressing an pattern, specify its unique ID here.
	// You can find pattern IDs by using the [ListAnomalies]operation.
	//
	// [ListAnomalies]: https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_ListAnomalies.html
	PatternId *string

	// If you are temporarily suppressing an anomaly or pattern, use this structure to
	// specify how long the suppression is to last.
	SuppressionPeriod *types.SuppressionPeriod

	// Use this to specify whether the suppression to be temporary or infinite. If you
	// specify LIMITED , you must also specify a suppressionPeriod . If you specify
	// INFINITE , any value for suppressionPeriod is ignored.
	SuppressionType types.SuppressionType
	// contains filtered or unexported fields
}

type UpdateAnomalyOutput added in v1.28.0

type UpdateAnomalyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateDeliveryConfigurationInput added in v1.39.0

type UpdateDeliveryConfigurationInput struct {

	// The ID of the delivery to be updated by this request.
	//
	// This member is required.
	Id *string

	// The field delimiter to use between record fields when the final output format
	// of a delivery is in Plain , W3C , or Raw format.
	FieldDelimiter *string

	// The list of record fields to be delivered to the destination, in order. If the
	// delivery's log source has mandatory fields, they must be included in this list.
	RecordFields []string

	// This structure contains parameters that are valid only when the delivery's
	// delivery destination is an S3 bucket.
	S3DeliveryConfiguration *types.S3DeliveryConfiguration
	// contains filtered or unexported fields
}

type UpdateDeliveryConfigurationOutput added in v1.39.0

type UpdateDeliveryConfigurationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateLogAnomalyDetectorInput added in v1.28.0

type UpdateLogAnomalyDetectorInput struct {

	// The ARN of the anomaly detector that you want to update.
	//
	// This member is required.
	AnomalyDetectorArn *string

	// Use this parameter to pause or restart the anomaly detector.
	//
	// This member is required.
	Enabled *bool

	// The number of days to use as the life cycle of anomalies. After this time,
	// anomalies are automatically baselined and the anomaly detector model will treat
	// new occurrences of similar event as normal. Therefore, if you do not correct the
	// cause of an anomaly during this time, it will be considered normal going forward
	// and will not be detected.
	AnomalyVisibilityTime *int64

	// Specifies how often the anomaly detector runs and look for anomalies. Set this
	// value according to the frequency that the log group receives new logs. For
	// example, if the log group receives new log events every 10 minutes, then setting
	// evaluationFrequency to FIFTEEN_MIN might be appropriate.
	EvaluationFrequency types.EvaluationFrequency

	// A symbolic description of how CloudWatch Logs should interpret the data in each
	// log event. For example, a log event can contain timestamps, IP addresses,
	// strings, and so on. You use the filter pattern to specify what to look for in
	// the log event message.
	FilterPattern *string
	// contains filtered or unexported fields
}

type UpdateLogAnomalyDetectorOutput added in v1.28.0

type UpdateLogAnomalyDetectorOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

Source Files

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL