interface LogGroupProps
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.Logs.LogGroupProps |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awslogs#LogGroupProps |
Java | software.amazon.awscdk.services.logs.LogGroupProps |
Python | aws_cdk.aws_logs.LogGroupProps |
TypeScript (source) | aws-cdk-lib » aws_logs » LogGroupProps |
Properties for a LogGroup.
Example
declare const myRole: iam.Role;
new cr.AwsCustomResource(this, 'Customized', {
role: myRole, // must be assumable by the `lambda.amazonaws.com` service principal
timeout: Duration.minutes(10), // defaults to 2 minutes
memorySize: 1025, // defaults to 512 if installLatestAwsSdk is true
logGroup: new logs.LogGroup(this, 'AwsCustomResourceLogs', {
retention: logs.RetentionDays.ONE_DAY,
}),
functionName: 'my-custom-name', // defaults to a CloudFormation generated name
removalPolicy: RemovalPolicy.RETAIN, // defaults to `RemovalPolicy.DESTROY`
policy: cr.AwsCustomResourcePolicy.fromSdkCalls({
resources: cr.AwsCustomResourcePolicy.ANY_RESOURCE,
}),
});
Properties
| Name | Type | Description |
|---|---|---|
| data | Data | Data Protection Policy for this log group. |
| deletion | boolean | Indicates whether deletion protection is enabled for this log group. |
| encryption | IKey | The KMS customer managed key to encrypt the log group with. |
| field | Field[] | Field Index Policies for this log group. |
| log | Log | The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS. |
| log | string | Name of the log group. |
| removal | Removal | Determine the removal policy of this log group. |
| retention? | Retention | How long, in days, the log contents will be retained. |
dataProtectionPolicy?
Type:
Data
(optional, default: no data protection policy)
Data Protection Policy for this log group.
deletionProtectionEnabled?
Type:
boolean
(optional, default: false)
Indicates whether deletion protection is enabled for this log group.
When enabled, deletion protection blocks all deletion operations until it is explicitly disabled.
encryptionKey?
Type:
IKey
(optional, default: Server-side encryption managed by the CloudWatch Logs service)
The KMS customer managed key to encrypt the log group with.
fieldIndexPolicies?
Type:
Field[]
(optional, default: no field index policies for this log group.)
Field Index Policies for this log group.
logGroupClass?
Type:
Log
(optional, default: LogGroupClass.STANDARD)
The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS.
INFREQUENT_ACCESS class provides customers a cost-effective way to consolidate logs which supports querying using Logs Insights. The logGroupClass property cannot be changed once the log group is created.
logGroupName?
Type:
string
(optional, default: Automatically generated)
Name of the log group.
removalPolicy?
Type:
Removal
(optional, default: RemovalPolicy.Retain)
Determine the removal policy of this log group.
Normally you want to retain the log group so you can diagnose issues from logs even after a deployment that no longer includes the log group. In that case, use the normal date-based retention policy to age out your logs.
retention?
Type:
Retention
(optional, default: RetentionDays.TWO_YEARS)
How long, in days, the log contents will be retained.
To retain all logs, set this value to RetentionDays.INFINITE.

.NET
Go
Java
Python
TypeScript (