@Generated(value="jsii-pacmak/1.67.0 (build 2c027f5)", date="2022-09-19T20:26:41.497Z") @Stability(value=Stable) public class OptionGroup extends Resource implements IOptionGroup
Example:
// Set open cursors with parameter group
ParameterGroup parameterGroup = ParameterGroup.Builder.create(this, "ParameterGroup")
.engine(DatabaseInstanceEngine.oracleSe2(OracleSe2InstanceEngineProps.builder().version(OracleEngineVersion.VER_19_0_0_0_2020_04_R1).build()))
.parameters(Map.of(
"open_cursors", "2500"))
.build();
OptionGroup optionGroup = OptionGroup.Builder.create(this, "OptionGroup")
.engine(DatabaseInstanceEngine.oracleSe2(OracleSe2InstanceEngineProps.builder().version(OracleEngineVersion.VER_19_0_0_0_2020_04_R1).build()))
.configurations(List.of(OptionConfiguration.builder()
.name("LOCATOR")
.build(), OptionConfiguration.builder()
.name("OEM")
.port(1158)
.vpc(vpc)
.build()))
.build();
// Allow connections to OEM
optionGroup.optionConnections.OEM.connections.allowDefaultPortFromAnyIpv4();
// Database instance with production values
DatabaseInstance instance = DatabaseInstance.Builder.create(this, "Instance")
.engine(DatabaseInstanceEngine.oracleSe2(OracleSe2InstanceEngineProps.builder().version(OracleEngineVersion.VER_19_0_0_0_2020_04_R1).build()))
.licenseModel(LicenseModel.BRING_YOUR_OWN_LICENSE)
.instanceType(InstanceType.of(InstanceClass.BURSTABLE3, InstanceSize.MEDIUM))
.multiAz(true)
.storageType(StorageType.IO1)
.credentials(Credentials.fromUsername("syscdk"))
.vpc(vpc)
.databaseName("ORCL")
.storageEncrypted(true)
.backupRetention(Duration.days(7))
.monitoringInterval(Duration.seconds(60))
.enablePerformanceInsights(true)
.cloudwatchLogsExports(List.of("trace", "audit", "alert", "listener"))
.cloudwatchLogsRetention(RetentionDays.ONE_MONTH)
.autoMinorVersionUpgrade(true) // required to be true if LOCATOR is used in the option group
.optionGroup(optionGroup)
.parameterGroup(parameterGroup)
.removalPolicy(RemovalPolicy.DESTROY)
.build();
// Allow connections on default port from any IPV4
instance.connections.allowDefaultPortFromAnyIpv4();
// Rotate the master user password every 30 days
instance.addRotationSingleUser();
// Add alarm for high CPU
// Add alarm for high CPU
Alarm.Builder.create(this, "HighCPU")
.metric(instance.metricCPUUtilization())
.threshold(90)
.evaluationPeriods(1)
.build();
// Trigger Lambda function on instance availability events
Function fn = Function.Builder.create(this, "Function")
.code(Code.fromInline("exports.handler = (event) => console.log(event);"))
.handler("index.handler")
.runtime(Runtime.NODEJS_14_X)
.build();
Rule availabilityRule = instance.onEvent("Availability", OnEventOptions.builder().target(new LambdaFunction(fn)).build());
availabilityRule.addEventPattern(EventPattern.builder()
.detail(Map.of(
"EventCategories", List.of("availability")))
.build());
| Modifier and Type | Class and Description |
|---|---|
static class |
OptionGroup.Builder
A fluent builder for
OptionGroup. |
software.amazon.jsii.JsiiObject.InitializationModeIOptionGroup.Jsii$Default, IOptionGroup.Jsii$Proxy| Modifier | Constructor and Description |
|---|---|
|
OptionGroup(software.constructs.Construct scope,
String id,
OptionGroupProps props) |
protected |
OptionGroup(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
OptionGroup(software.amazon.jsii.JsiiObjectRef objRef) |
| Modifier and Type | Method and Description |
|---|---|
Boolean |
addConfiguration(OptionConfiguration configuration)
Adds a configuration to this OptionGroup.
|
static IOptionGroup |
fromOptionGroupName(software.constructs.Construct scope,
String id,
String optionGroupName)
Import an existing option group.
|
Map<String,Connections> |
getOptionConnections()
The connections object for the options.
|
String |
getOptionGroupName()
The name of the option group.
|
applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isOwnedResource, isResourcejsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitapplyRemovalPolicy, getEnv, getStackprotected OptionGroup(software.amazon.jsii.JsiiObjectRef objRef)
protected OptionGroup(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
@Stability(value=Stable)
public OptionGroup(@NotNull
software.constructs.Construct scope,
@NotNull
String id,
@NotNull
OptionGroupProps props)
scope - This parameter is required.id - This parameter is required.props - This parameter is required.@Stability(value=Stable) @NotNull public static IOptionGroup fromOptionGroupName(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull String optionGroupName)
scope - This parameter is required.id - This parameter is required.optionGroupName - This parameter is required.@Stability(value=Stable) @NotNull public Boolean addConfiguration(@NotNull OptionConfiguration configuration)
This method is a no-op for an imported OptionGroup.
addConfiguration in interface IOptionGroupconfiguration - This parameter is required.@Stability(value=Stable) @NotNull public Map<String,Connections> getOptionConnections()
@Stability(value=Stable) @NotNull public String getOptionGroupName()
getOptionGroupName in interface IOptionGroupCopyright © 2022. All rights reserved.