Class CfnSubscriptionFilter

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.103.1 (build bef2dea)", date="2024-10-05T03:43:45.916Z") @Stability(Stable) public class CfnSubscriptionFilter extends CfnResource implements IInspectable
The AWS::Logs::SubscriptionFilter resource specifies a subscription filter and associates it with the specified log group.

Subscription filters allow you to subscribe to a real-time stream of log events and have them delivered to a specific destination. Currently, the supported destinations are:

  • An Amazon Kinesis data stream belonging to the same account as the subscription filter, for same-account delivery.
  • A logical destination that belongs to a different account, for cross-account delivery.
  • An Amazon Kinesis Firehose delivery stream that belongs to the same account as the subscription filter, for same-account delivery.
  • An AWS Lambda function that belongs to the same account as the subscription filter, for same-account delivery.

There can be as many as two subscription filters associated with a log group.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.logs.*;
 CfnSubscriptionFilter cfnSubscriptionFilter = CfnSubscriptionFilter.Builder.create(this, "MyCfnSubscriptionFilter")
         .destinationArn("destinationArn")
         .filterPattern("filterPattern")
         .logGroupName("logGroupName")
         // the properties below are optional
         .distribution("distribution")
         .filterName("filterName")
         .roleArn("roleArn")
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnSubscriptionFilter

      protected CfnSubscriptionFilter(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnSubscriptionFilter

      protected CfnSubscriptionFilter(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnSubscriptionFilter

      @Stability(Stable) public CfnSubscriptionFilter(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnSubscriptionFilterProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getDestinationArn

      @Stability(Stable) @NotNull public String getDestinationArn()
      The Amazon Resource Name (ARN) of the destination.
    • setDestinationArn

      @Stability(Stable) public void setDestinationArn(@NotNull String value)
      The Amazon Resource Name (ARN) of the destination.
    • getFilterPattern

      @Stability(Stable) @NotNull public String getFilterPattern()
      The filtering expressions that restrict what gets delivered to the destination AWS resource.
    • setFilterPattern

      @Stability(Stable) public void setFilterPattern(@NotNull String value)
      The filtering expressions that restrict what gets delivered to the destination AWS resource.
    • getLogGroupName

      @Stability(Stable) @NotNull public String getLogGroupName()
      The log group to associate with the subscription filter.
    • setLogGroupName

      @Stability(Stable) public void setLogGroupName(@NotNull String value)
      The log group to associate with the subscription filter.
    • getDistribution

      @Stability(Stable) @Nullable public String getDistribution()
      The method used to distribute log data to the destination, which can be either random or grouped by log stream.
    • setDistribution

      @Stability(Stable) public void setDistribution(@Nullable String value)
      The method used to distribute log data to the destination, which can be either random or grouped by log stream.
    • getFilterName

      @Stability(Stable) @Nullable public String getFilterName()
      The name of the subscription filter.
    • setFilterName

      @Stability(Stable) public void setFilterName(@Nullable String value)
      The name of the subscription filter.
    • getRoleArn

      @Stability(Stable) @Nullable public String getRoleArn()
      The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream.
    • setRoleArn

      @Stability(Stable) public void setRoleArn(@Nullable String value)
      The ARN of an IAM role that grants CloudWatch Logs permissions to deliver ingested log events to the destination stream.