aws-cdk-lib.aws_logs.LogRetention

class LogRetention (construct)

LanguageType name
.NETAmazon.CDK.AWS.Logs.LogRetention
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awslogs#LogRetention
Javasoftware.amazon.awscdk.services.logs.LogRetention
Pythonaws_cdk.aws_logs.LogRetention
TypeScript (source)aws-cdk-lib » aws_logs » LogRetention

Implements IConstruct, IDependable

Creates a custom resource to control the retention policy of a CloudWatch Logs log group.

The log group is created if it doesn't already exist. The policy is removed when retentionDays is undefined or equal to Infinity. Log group can be created in the region that is different from stack region by specifying logGroupRegion

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';
import { aws_iam as iam } from 'aws-cdk-lib';
import { aws_logs as logs } from 'aws-cdk-lib';

declare const role: iam.Role;
const logRetention = new logs.LogRetention(this, 'MyLogRetention', {
  logGroupName: 'logGroupName',
  retention: logs.RetentionDays.ONE_DAY,

  // the properties below are optional
  logGroupRegion: 'logGroupRegion',
  logRetentionRetryOptions: {
    base: cdk.Duration.minutes(30),
    maxRetries: 123,
  },
  removalPolicy: cdk.RemovalPolicy.DESTROY,
  role: role,
});

Initializer

new LogRetention(scope: Construct, id: string, props: LogRetentionProps)

Parameters

  • scope Construct
  • id string
  • props LogRetentionProps

Construct Props

NameTypeDescription
logGroupNamestringThe log group name.
retentionRetentionDaysThe number of days log events are kept in CloudWatch Logs.
logGroupRegion?stringThe region where the log group should be created.
logRetentionRetryOptions?LogRetentionRetryOptionsRetry options for all AWS API calls.
removalPolicy?RemovalPolicyThe removalPolicy for the log group when the stack is deleted.
role?IRoleThe IAM role for the Lambda function associated with the custom resource.

logGroupName

Type: string

The log group name.


retention

Type: RetentionDays

The number of days log events are kept in CloudWatch Logs.


logGroupRegion?

Type: string (optional, default: same region as the stack)

The region where the log group should be created.


logRetentionRetryOptions?

Type: LogRetentionRetryOptions (optional, default: AWS SDK default retry options)

Retry options for all AWS API calls.


removalPolicy?

Type: RemovalPolicy (optional, default: RemovalPolicy.RETAIN)

The removalPolicy for the log group when the stack is deleted.


role?

Type: IRole (optional, default: A new role is created)

The IAM role for the Lambda function associated with the custom resource.

Properties

NameTypeDescription
logGroupArnstringThe ARN of the LogGroup.
nodeNodeThe tree node.

logGroupArn

Type: string

The ARN of the LogGroup.


node

Type: Node

The tree node.

Methods

NameDescription
toString()Returns a string representation of this construct.

toString()

public toString(): string

Returns

  • string

Returns a string representation of this construct.