You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::CloudWatchLogs::Types::PutSubscriptionFilterRequest

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

Overview

Note:

When making an API call, you may pass PutSubscriptionFilterRequest data as a hash:

{
  log_group_name: "LogGroupName", # required
  filter_name: "FilterName", # required
  filter_pattern: "FilterPattern", # required
  destination_arn: "DestinationArn", # required
  role_arn: "RoleArn",
  distribution: "Random", # accepts Random, ByLogStream
}

Instance Attribute Summary collapse

Instance Attribute Details

#destination_arnString

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.

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

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

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end

#distributionString

The method used to distribute log data to the destination, when the destination is an Amazon Kinesis stream. By default, log data is grouped by log stream. For a more even distribution, you can group log data randomly.

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end

#filter_nameString

A name for the subscription filter. If you are updating an existing filter, you must specify the correct name in filterName. Otherwise, the call will fail because you cannot associate a second filter with a log group. To find the name of the filter currently associated with a log group, use DescribeSubscriptionFilters.

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end

#filter_patternString

A filter pattern for subscribing to a filtered stream of log events.

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end

#log_group_nameString

The name of the log group.

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end

#role_arnString

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.

Returns:

  • (String)


1533
1534
1535
1536
1537
1538
1539
1540
1541
# File 'gems/aws-sdk-cloudwatchlogs/lib/aws-sdk-cloudwatchlogs/types.rb', line 1533

class PutSubscriptionFilterRequest < Struct.new(
  :log_group_name,
  :filter_name,
  :filter_pattern,
  :destination_arn,
  :role_arn,
  :distribution)
  include Aws::Structure
end