Skip to content
GitHubXDiscord

EventSubscription

The EventSubscription resource allows you to manage AWS Neptune EventSubscriptions that notify you of specific database events. This capability is essential for monitoring and reacting to database changes effectively.

Create a basic EventSubscription with essential properties and one optional property:

import AWS from "alchemy/aws/control";
const eventSubscription = await AWS.Neptune.EventSubscription("myEventSubscription", {
SourceType: "db-instance",
Enabled: true,
EventCategories: ["availability", "configuration"],
SnsTopicArn: "arn:aws:sns:us-west-2:123456789012:myTopic"
});

Configure an EventSubscription with multiple source IDs and additional properties:

const advancedEventSubscription = await AWS.Neptune.EventSubscription("advancedEventSubscription", {
SourceType: "db-cluster",
Enabled: true,
EventCategories: ["failure", "deletion"],
SnsTopicArn: "arn:aws:sns:us-west-2:123456789012:myAdvancedTopic",
SourceIds: ["my-db-cluster-1", "my-db-cluster-2"]
});

If you want to adopt an existing EventSubscription instead of failing when it already exists, you can set the adopt property:

const adoptExistingSubscription = await AWS.Neptune.EventSubscription("existingEventSubscription", {
SourceType: "db-instance",
Enabled: true,
EventCategories: ["creation", "modification"],
SnsTopicArn: "arn:aws:sns:us-west-2:123456789012:myAdoptedTopic",
adopt: true
});

Set up an EventSubscription that monitors multiple event categories for a specific source:

const multiCategorySubscription = await AWS.Neptune.EventSubscription("multiCategorySubscription", {
SourceType: "db-instance",
Enabled: true,
EventCategories: ["availability", "configuration", "deletion"],
SnsTopicArn: "arn:aws:sns:us-west-2:123456789012:multiCategoryTopic",
SourceIds: ["my-db-instance-1"]
});