updateInvestigationGroup method
Updates the configuration of the specified investigation group.
May throw AccessDeniedException.
May throw ConflictException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter identifier :
Specify either the name or the ARN of the investigation group that you
want to modify.
Parameter chatbotNotificationChannel :
Use this structure to integrate CloudWatch investigations with chat
applications. This structure is a string array. For the first string,
specify the ARN of an Amazon SNS topic. For the array of strings, specify
the ARNs of one or more chat applications configurations that you want to
associate with that topic. For more information about these configuration
ARNs, see Getting
started with Amazon Q in chat applications and Resource
type defined by Amazon Web Services Chatbot.
Parameter crossAccountConfigurations :
Used to configure cross-account access for an investigation group. It
allows the investigation group to access resources in other accounts.
Parameter encryptionConfiguration :
Use this structure if you want to use a customer managed KMS key to
encrypt your investigation data. If you omit this parameter, CloudWatch
investigations will use an Amazon Web Services key to encrypt the data.
For more information, see Encryption
of investigation data.
Parameter isCloudTrailEventHistoryEnabled :
Specify true to enable CloudWatch investigations to have
access to change events that are recorded by CloudTrail. The default is
true.
Parameter roleArn :
Specify this field if you want to change the IAM role that CloudWatch
investigations will use when it gathers investigation data. To do so,
specify the ARN of the new role.
The permissions in this role determine which of your resources that CloudWatch investigations will have access to during investigations.
For more information, see How to control what data CloudWatch investigations has access to during investigations.
Parameter tagKeyBoundaries :
Enter the existing custom tag keys for custom applications in your system.
Resource tags help CloudWatch investigations narrow the search space when
it is unable to discover definite relationships between resources. For
example, to discover that an Amazon ECS service depends on an Amazon RDS
database, CloudWatch investigations can discover this relationship using
data sources such as X-Ray and CloudWatch Application Signals. However, if
you haven't deployed these features, CloudWatch investigations will
attempt to identify possible relationships. Tag boundaries can be used to
narrow the resources that will be discovered by CloudWatch investigations
in these cases.
You don't need to enter tags created by myApplications or CloudFormation, because CloudWatch investigations can automatically detect those tags.
Implementation
Future<void> updateInvestigationGroup({
required String identifier,
Map<String, List<String>>? chatbotNotificationChannel,
List<CrossAccountConfiguration>? crossAccountConfigurations,
EncryptionConfiguration? encryptionConfiguration,
bool? isCloudTrailEventHistoryEnabled,
String? roleArn,
List<String>? tagKeyBoundaries,
}) async {
final $payload = <String, dynamic>{
if (chatbotNotificationChannel != null)
'chatbotNotificationChannel': chatbotNotificationChannel,
if (crossAccountConfigurations != null)
'crossAccountConfigurations': crossAccountConfigurations,
if (encryptionConfiguration != null)
'encryptionConfiguration': encryptionConfiguration,
if (isCloudTrailEventHistoryEnabled != null)
'isCloudTrailEventHistoryEnabled': isCloudTrailEventHistoryEnabled,
if (roleArn != null) 'roleArn': roleArn,
if (tagKeyBoundaries != null) 'tagKeyBoundaries': tagKeyBoundaries,
};
final response = await _protocol.send(
payload: $payload,
method: 'PATCH',
requestUri: '/investigationGroups/${Uri.encodeComponent(identifier)}',
exceptionFnMap: _exceptionFns,
);
}