updateElasticsearchDomainConfig method
- required String domainName,
- String? accessPolicies,
- Map<
String, String> ? advancedOptions, - AdvancedSecurityOptionsInput? advancedSecurityOptions,
- CognitoOptions? cognitoOptions,
- DomainEndpointOptions? domainEndpointOptions,
- EBSOptions? eBSOptions,
- ElasticsearchClusterConfig? elasticsearchClusterConfig,
- Map<
LogType, LogPublishingOption> ? logPublishingOptions, - SnapshotOptions? snapshotOptions,
- VPCOptions? vPCOptions,
Modifies the cluster configuration of the specified Elasticsearch domain, setting as setting the instance type and the number of instances.
May throw BaseException. May throw InternalException. May throw InvalidTypeException. May throw LimitExceededException. May throw ResourceNotFoundException. May throw ValidationException.
Parameter domainName
:
The name of the Elasticsearch domain that you are updating.
Parameter accessPolicies
:
IAM access policy as a JSON-formatted string.
Parameter advancedOptions
:
Modifies the advanced option to allow references to indices in an HTTP
request body. Must be false
when configuring access to
individual sub-resources. By default, the value is true
. See
Configuration Advanced Options for more information.
Parameter advancedSecurityOptions
:
Specifies advanced security options.
Parameter cognitoOptions
:
Options to specify the Cognito user and identity pools for Kibana
authentication. For more information, see Amazon Cognito Authentication for Kibana.
Parameter domainEndpointOptions
:
Options to specify configuration that will be applied to the domain
endpoint.
Parameter eBSOptions
:
Specify the type and size of the EBS volume that you want to use.
Parameter elasticsearchClusterConfig
:
The type and number of instances to instantiate for the domain cluster.
Parameter logPublishingOptions
:
Map of LogType
and LogPublishingOption
, each
containing options to publish a given type of Elasticsearch log.
Parameter snapshotOptions
:
Option to set the time, in UTC format, for the daily automated snapshot.
Default value is 0
hours.
Parameter vPCOptions
:
Options to specify the subnets and security groups for VPC endpoint. For
more information, see Creating a VPC in VPC Endpoints for Amazon
Elasticsearch Service Domains
Implementation
Future<UpdateElasticsearchDomainConfigResponse>
updateElasticsearchDomainConfig({
required String domainName,
String? accessPolicies,
Map<String, String>? advancedOptions,
AdvancedSecurityOptionsInput? advancedSecurityOptions,
CognitoOptions? cognitoOptions,
DomainEndpointOptions? domainEndpointOptions,
EBSOptions? eBSOptions,
ElasticsearchClusterConfig? elasticsearchClusterConfig,
Map<LogType, LogPublishingOption>? logPublishingOptions,
SnapshotOptions? snapshotOptions,
VPCOptions? vPCOptions,
}) async {
ArgumentError.checkNotNull(domainName, 'domainName');
_s.validateStringLength(
'domainName',
domainName,
3,
28,
isRequired: true,
);
final $payload = <String, dynamic>{
if (accessPolicies != null) 'AccessPolicies': accessPolicies,
if (advancedOptions != null) 'AdvancedOptions': advancedOptions,
if (advancedSecurityOptions != null)
'AdvancedSecurityOptions': advancedSecurityOptions,
if (cognitoOptions != null) 'CognitoOptions': cognitoOptions,
if (domainEndpointOptions != null)
'DomainEndpointOptions': domainEndpointOptions,
if (eBSOptions != null) 'EBSOptions': eBSOptions,
if (elasticsearchClusterConfig != null)
'ElasticsearchClusterConfig': elasticsearchClusterConfig,
if (logPublishingOptions != null)
'LogPublishingOptions':
logPublishingOptions.map((k, e) => MapEntry(k.toValue(), e)),
if (snapshotOptions != null) 'SnapshotOptions': snapshotOptions,
if (vPCOptions != null) 'VPCOptions': vPCOptions,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri:
'/2015-01-01/es/domain/${Uri.encodeComponent(domainName)}/config',
exceptionFnMap: _exceptionFns,
);
return UpdateElasticsearchDomainConfigResponse.fromJson(response);
}