Interface LogGroupProps
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
LogGroupProps.Jsii$Proxy
Example:
Vpc vpc; Key kmsKey = new Key(this, "KmsKey"); // Pass the KMS key in the `encryptionKey` field to associate the key to the log group LogGroup logGroup = LogGroup.Builder.create(this, "LogGroup") .encryptionKey(kmsKey) .build(); // Pass the KMS key in the `encryptionKey` field to associate the key to the S3 bucket Bucket execBucket = Bucket.Builder.create(this, "EcsExecBucket") .encryptionKey(kmsKey) .build(); Cluster cluster = Cluster.Builder.create(this, "Cluster") .vpc(vpc) .executeCommandConfiguration(ExecuteCommandConfiguration.builder() .kmsKey(kmsKey) .logConfiguration(ExecuteCommandLogConfiguration.builder() .cloudWatchLogGroup(logGroup) .cloudWatchEncryptionEnabled(true) .s3Bucket(execBucket) .s3EncryptionEnabled(true) .s3KeyPrefix("exec-command-output") .build()) .logging(ExecuteCommandLogging.OVERRIDE) .build()) .build();
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
A builder forLogGroupProps
static final class
An implementation forLogGroupProps
-
Method Summary
Modifier and TypeMethodDescriptionstatic LogGroupProps.Builder
builder()
default DataProtectionPolicy
Data Protection Policy for this log group.default IKey
The KMS customer managed key to encrypt the log group with.default LogGroupClass
The class of the log group.default String
Name of the log group.default RemovalPolicy
Determine the removal policy of this log group.default RetentionDays
How long, in days, the log contents will be retained.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getDataProtectionPolicy
Data Protection Policy for this log group.Default: - no data protection policy
-
getEncryptionKey
The KMS customer managed key to encrypt the log group with.Default: Server-side encrpytion managed by the CloudWatch Logs service
-
getLogGroupClass
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.
Default: LogGroupClass.STANDARD
-
getLogGroupName
Name of the log group.Default: Automatically generated
-
getRemovalPolicy
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.
Default: RemovalPolicy.Retain
-
getRetention
How long, in days, the log contents will be retained.To retain all logs, set this value to RetentionDays.INFINITE.
Default: RetentionDays.TWO_YEARS
-
builder
- Returns:
- a
LogGroupProps.Builder
ofLogGroupProps
-