Class: Aws::CloudWatchLogs::Types::DeliverySource

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-cloudwatchlogs/types.rb

Overview

This structure contains information about one *delivery source* in your account. A delivery source is an Amazon Web Services resource that sends logs to an Amazon Web Services 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 as **Supported [V2 Permissions]** in the table at [Enabling logging from Amazon Web Services services.]

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

    PutDeliveryDestinationPolicy][4

    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].

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.

[1]: docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html [2]: docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliverySource.html [3]: docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestination.html [4]: docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_PutDeliveryDestinationPolicy.html [5]: docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#arnString

The Amazon Resource Name (ARN) that uniquely identifies this delivery source.

Returns:

  • (String)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#log_typeString

The type of log that the source is sending. For valid values for this parameter, see the documentation for the source service.

Returns:

  • (String)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#nameString

The unique name of the delivery source.

Returns:

  • (String)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#resource_arnsArray<String>

This array contains the ARN of the Amazon Web Services resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array.

Returns:

  • (Array<String>)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#serviceString

The Amazon Web Services service that is sending logs.

Returns:

  • (String)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end

#tagsHash<String,String>

The tags that have been assigned to this delivery source.

Returns:

  • (Hash<String,String>)


1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
# File 'lib/aws-sdk-cloudwatchlogs/types.rb', line 1291

class DeliverySource < Struct.new(
  :name,
  :arn,
  :resource_arns,
  :service,
  :log_type,
  :tags)
  SENSITIVE = []
  include Aws::Structure
end