Namespace Amazon.CDK.AWS.Chatbot
AWS::Chatbot Construct Library
---AWS CDK v1 has reached End-of-Support on 2023-06-01.
This package is no longer being updated, and users should migrate to AWS CDK v2.
For more information on how to migrate, see the Migrating to AWS CDK v2 guide.
AWS Chatbot is an AWS service that enables DevOps and software development teams to use Slack chat rooms to monitor and respond to operational events in their AWS Cloud. AWS Chatbot processes AWS service notifications from Amazon Simple Notification Service (Amazon SNS), and forwards them to Slack chat rooms so teams can analyze and act on them immediately, regardless of location.
This module is part of the AWS Cloud Development Kit project.
using Amazon.CDK.AWS.Chatbot;
using Amazon.CDK.AWS.SNS;
using Amazon.CDK.AWS.IAM;
var slackChannel = new SlackChannelConfiguration(this, "MySlackChannel", new SlackChannelConfigurationProps {
SlackChannelConfigurationName = "YOUR_CHANNEL_NAME",
SlackWorkspaceId = "YOUR_SLACK_WORKSPACE_ID",
SlackChannelId = "YOUR_SLACK_CHANNEL_ID"
});
slackChannel.AddToRolePolicy(new PolicyStatement(new PolicyStatementProps {
Effect = Effect.ALLOW,
Actions = new [] { "s3:GetObject" },
Resources = new [] { "arn:aws:s3:::abc/xyz/123.txt" }
}));
slackChannel.AddNotificationTopic(new Topic(this, "MyTopic"));
Log Group
Slack channel configuration automatically create a log group with the name /aws/chatbot/<configuration-name>
in us-east-1
upon first execution with
log data set to never expire.
The logRetention
property can be used to set a different expiration period. A log group will be created if not already exists.
If the log group already exists, it's expiration will be configured to the value specified in this construct (never expire, by default).
By default, CDK uses the AWS SDK retry options when interacting with the log group. The logRetentionRetryOptions
property
allows you to customize the maximum number of retries and base backoff duration.
Note that, if logRetention
is set, a CloudFormation custom
resource is added
to the stack that pre-creates the log group as part of the stack deployment, if it already doesn't exist, and sets the
correct log retention period (never expire, by default).
Classes
CfnMicrosoftTeamsChannelConfiguration | A CloudFormation |
CfnMicrosoftTeamsChannelConfigurationProps | Properties for defining a |
CfnSlackChannelConfiguration | A CloudFormation |
CfnSlackChannelConfigurationProps | Properties for defining a |
LoggingLevel | Logging levels include ERROR, INFO, or NONE. |
SlackChannelConfiguration | A new Slack channel configuration. |
SlackChannelConfigurationProps | Properties for a new Slack channel configuration. |
Interfaces
ICfnMicrosoftTeamsChannelConfigurationProps | Properties for defining a |
ICfnSlackChannelConfigurationProps | Properties for defining a |
ISlackChannelConfiguration | Represents a Slack channel configuration. |
ISlackChannelConfigurationProps | Properties for a new Slack channel configuration. |