All Superinterfaces:
software.constructs.IConstruct, software.constructs.IDependable, IDomainRef, IEnvironmentAware, IResource, software.amazon.jsii.JsiiSerializable
All Known Subinterfaces:
IDomain.Jsii$Default
All Known Implementing Classes:
Domain, IDomain.Jsii$Proxy

@Generated(value="jsii-pacmak/1.120.0 (build 192dc88)", date="2025-12-05T22:26:41.060Z") @Stability(Stable) public interface IDomain extends software.amazon.jsii.JsiiSerializable, IResource, IDomainRef
An interface that represents an Amazon OpenSearch Service domain - either created with the CDK, or an existing one.
  • Method Details

    • getDomainArn

      @Stability(Stable) @NotNull String getDomainArn()
      Arn of the Amazon OpenSearch Service domain.
    • getDomainEndpoint

      @Stability(Stable) @NotNull String getDomainEndpoint()
      Endpoint of the Amazon OpenSearch Service domain.
    • getDomainId

      @Stability(Stable) @NotNull String getDomainId()
      Identifier of the Amazon OpenSearch Service domain.
    • getDomainName

      @Stability(Stable) @NotNull String getDomainName()
      Domain name of the Amazon OpenSearch Service domain.
    • grantIndexRead

      @Stability(Stable) @NotNull Grant grantIndexRead(@NotNull String index, @NotNull IGrantable identity)
      Grant read permissions for an index in this domain to an IAM principal (Role/Group/User).

      Parameters:
      index - The index to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantIndexReadWrite

      @Stability(Stable) @NotNull Grant grantIndexReadWrite(@NotNull String index, @NotNull IGrantable identity)
      Grant read/write permissions for an index in this domain to an IAM principal (Role/Group/User).

      Parameters:
      index - The index to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantIndexWrite

      @Stability(Stable) @NotNull Grant grantIndexWrite(@NotNull String index, @NotNull IGrantable identity)
      Grant write permissions for an index in this domain to an IAM principal (Role/Group/User).

      Parameters:
      index - The index to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantPathRead

      @Stability(Stable) @NotNull Grant grantPathRead(@NotNull String path, @NotNull IGrantable identity)
      Grant read permissions for a specific path in this domain to an IAM principal (Role/Group/User).

      Parameters:
      path - The path to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantPathReadWrite

      @Stability(Stable) @NotNull Grant grantPathReadWrite(@NotNull String path, @NotNull IGrantable identity)
      Grant read/write permissions for a specific path in this domain to an IAM principal (Role/Group/User).

      Parameters:
      path - The path to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantPathWrite

      @Stability(Stable) @NotNull Grant grantPathWrite(@NotNull String path, @NotNull IGrantable identity)
      Grant write permissions for a specific path in this domain to an IAM principal (Role/Group/User).

      Parameters:
      path - The path to grant permissions for. This parameter is required.
      identity - The principal. This parameter is required.
    • grantRead

      @Stability(Stable) @NotNull Grant grantRead(@NotNull IGrantable identity)
      Grant read permissions for this domain and its contents to an IAM principal (Role/Group/User).

      Parameters:
      identity - The principal. This parameter is required.
    • grantReadWrite

      @Stability(Stable) @NotNull Grant grantReadWrite(@NotNull IGrantable identity)
      Grant read/write permissions for this domain and its contents to an IAM principal (Role/Group/User).

      Parameters:
      identity - The principal. This parameter is required.
    • grantWrite

      @Stability(Stable) @NotNull Grant grantWrite(@NotNull IGrantable identity)
      Grant write permissions for this domain and its contents to an IAM principal (Role/Group/User).

      Parameters:
      identity - The principal. This parameter is required.
    • metric

      @Stability(Stable) @NotNull Metric metric(@NotNull String metricName, @Nullable MetricOptions props)
      Return the given named metric for this domain.

      Parameters:
      metricName - This parameter is required.
      props -
    • metric

      @Stability(Stable) @NotNull Metric metric(@NotNull String metricName)
      Return the given named metric for this domain.

      Parameters:
      metricName - This parameter is required.
    • metricAutomatedSnapshotFailure

      @Stability(Stable) @NotNull Metric metricAutomatedSnapshotFailure(@Nullable MetricOptions props)
      Metric for automated snapshot failures.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricAutomatedSnapshotFailure

      @Stability(Stable) @NotNull Metric metricAutomatedSnapshotFailure()
      Metric for automated snapshot failures.

      Default: maximum over 5 minutes

    • metricClusterIndexWritesBlocked

      @Stability(Stable) @NotNull Metric metricClusterIndexWritesBlocked(@Nullable MetricOptions props)
      Metric for the cluster blocking index writes.

      Default: maximum over 1 minute

      Parameters:
      props -
    • metricClusterIndexWritesBlocked

      @Stability(Stable) @NotNull Metric metricClusterIndexWritesBlocked()
      Metric for the cluster blocking index writes.

      Default: maximum over 1 minute

    • metricClusterStatusRed

      @Stability(Stable) @NotNull Metric metricClusterStatusRed(@Nullable MetricOptions props)
      Metric for the time the cluster status is red.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricClusterStatusRed

      @Stability(Stable) @NotNull Metric metricClusterStatusRed()
      Metric for the time the cluster status is red.

      Default: maximum over 5 minutes

    • metricClusterStatusYellow

      @Stability(Stable) @NotNull Metric metricClusterStatusYellow(@Nullable MetricOptions props)
      Metric for the time the cluster status is yellow.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricClusterStatusYellow

      @Stability(Stable) @NotNull Metric metricClusterStatusYellow()
      Metric for the time the cluster status is yellow.

      Default: maximum over 5 minutes

    • metricCPUUtilization

      @Stability(Stable) @NotNull Metric metricCPUUtilization(@Nullable MetricOptions props)
      Metric for CPU utilization.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricCPUUtilization

      @Stability(Stable) @NotNull Metric metricCPUUtilization()
      Metric for CPU utilization.

      Default: maximum over 5 minutes

    • metricFreeStorageSpace

      @Stability(Stable) @NotNull Metric metricFreeStorageSpace(@Nullable MetricOptions props)
      Metric for the storage space of nodes in the cluster.

      Default: minimum over 5 minutes

      Parameters:
      props -
    • metricFreeStorageSpace

      @Stability(Stable) @NotNull Metric metricFreeStorageSpace()
      Metric for the storage space of nodes in the cluster.

      Default: minimum over 5 minutes

    • metricIndexingLatency

      @Stability(Stable) @NotNull Metric metricIndexingLatency(@Nullable MetricOptions props)
      Metric for indexing latency.

      Default: p99 over 5 minutes

      Parameters:
      props -
    • metricIndexingLatency

      @Stability(Stable) @NotNull Metric metricIndexingLatency()
      Metric for indexing latency.

      Default: p99 over 5 minutes

    • metricJVMMemoryPressure

      @Stability(Stable) @NotNull Metric metricJVMMemoryPressure(@Nullable MetricOptions props)
      Metric for JVM memory pressure.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricJVMMemoryPressure

      @Stability(Stable) @NotNull Metric metricJVMMemoryPressure()
      Metric for JVM memory pressure.

      Default: maximum over 5 minutes

    • metricKMSKeyError

      @Stability(Stable) @NotNull Metric metricKMSKeyError(@Nullable MetricOptions props)
      Metric for KMS key errors.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricKMSKeyError

      @Stability(Stable) @NotNull Metric metricKMSKeyError()
      Metric for KMS key errors.

      Default: maximum over 5 minutes

    • metricKMSKeyInaccessible

      @Stability(Stable) @NotNull Metric metricKMSKeyInaccessible(@Nullable MetricOptions props)
      Metric for KMS key being inaccessible.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricKMSKeyInaccessible

      @Stability(Stable) @NotNull Metric metricKMSKeyInaccessible()
      Metric for KMS key being inaccessible.

      Default: maximum over 5 minutes

    • metricMasterCPUUtilization

      @Stability(Stable) @NotNull Metric metricMasterCPUUtilization(@Nullable MetricOptions props)
      Metric for master CPU utilization.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricMasterCPUUtilization

      @Stability(Stable) @NotNull Metric metricMasterCPUUtilization()
      Metric for master CPU utilization.

      Default: maximum over 5 minutes

    • metricMasterJVMMemoryPressure

      @Stability(Stable) @NotNull Metric metricMasterJVMMemoryPressure(@Nullable MetricOptions props)
      Metric for master JVM memory pressure.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricMasterJVMMemoryPressure

      @Stability(Stable) @NotNull Metric metricMasterJVMMemoryPressure()
      Metric for master JVM memory pressure.

      Default: maximum over 5 minutes

    • metricNodes

      @Stability(Stable) @NotNull Metric metricNodes(@Nullable MetricOptions props)
      Metric for the number of nodes.

      Default: minimum over 1 hour

      Parameters:
      props -
    • metricNodes

      @Stability(Stable) @NotNull Metric metricNodes()
      Metric for the number of nodes.

      Default: minimum over 1 hour

    • metricSearchableDocuments

      @Stability(Stable) @NotNull Metric metricSearchableDocuments(@Nullable MetricOptions props)
      Metric for number of searchable documents.

      Default: maximum over 5 minutes

      Parameters:
      props -
    • metricSearchableDocuments

      @Stability(Stable) @NotNull Metric metricSearchableDocuments()
      Metric for number of searchable documents.

      Default: maximum over 5 minutes

    • metricSearchLatency

      @Stability(Stable) @NotNull Metric metricSearchLatency(@Nullable MetricOptions props)
      Metric for search latency.

      Default: p99 over 5 minutes

      Parameters:
      props -
    • metricSearchLatency

      @Stability(Stable) @NotNull Metric metricSearchLatency()
      Metric for search latency.

      Default: p99 over 5 minutes

    • getNode

      @Stability(Stable) @NotNull software.constructs.Node getNode()
      The tree node.
      Specified by:
      getNode in interface software.constructs.IConstruct
    • getEnv

      @Stability(Stable) @NotNull ResourceEnvironment getEnv()
      The environment this resource belongs to.

      For resources that are created and managed in a Stack (those created by creating new class instances like new Role(), new Bucket(), etc.), this is always the same as the environment of the stack they belong to.

      For referenced resources (those obtained from referencing methods like Role.fromRoleArn(), Bucket.fromBucketName(), etc.), they might be different than the stack they were imported into.

      Specified by:
      getEnv in interface IEnvironmentAware