All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.cloudshiftdev.awscdk.services.elasticloadbalancingv2.IApplicationTargetGroupMetrics.kt Maven / Gradle / Ivy

The newest version!
@file:Suppress("RedundantVisibilityModifier","RedundantUnitReturnType","RemoveRedundantQualifierName","unused","UnusedImport","ClassName","REDUNDANT_PROJECTION","DEPRECATION")

package io.cloudshiftdev.awscdk.services.elasticloadbalancingv2

import io.cloudshiftdev.awscdk.common.CdkObject
import io.cloudshiftdev.awscdk.common.CdkObjectWrappers
import io.cloudshiftdev.awscdk.services.cloudwatch.Metric
import io.cloudshiftdev.awscdk.services.cloudwatch.MetricOptions
import kotlin.String
import kotlin.Unit
import kotlin.jvm.JvmName

/**
 * Contains all metrics for a Target Group of a Application Load Balancer.
 */
public interface IApplicationTargetGroupMetrics {
  /**
   * Return the given named metric for this Network Target Group.
   *
   * Default: Average over 5 minutes
   *
   * @param metricName 
   * @param props
   */
  public fun custom(metricName: String): Metric

  /**
   * Return the given named metric for this Network Target Group.
   *
   * Default: Average over 5 minutes
   *
   * @param metricName 
   * @param props
   */
  public fun custom(metricName: String, props: MetricOptions): Metric

  /**
   * Return the given named metric for this Network Target Group.
   *
   * Default: Average over 5 minutes
   *
   * @param metricName 
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("e3a7bf310cfbfe77339a32a3f576ae6834193015bd367fe25d8280f53f24860b")
  public fun custom(metricName: String, props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of healthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun healthyHostCount(): Metric

  /**
   * The number of healthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun healthyHostCount(props: MetricOptions): Metric

  /**
   * The number of healthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("86001b538e3d7af3f82ae55f087e4d922defb3087f332d19bda9d0eca9b8461c")
  public fun healthyHostCount(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
   * group.
   *
   * This does not include any response codes generated by the load balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param code 
   * @param props
   */
  public fun httpCodeTarget(code: HttpCodeTarget): Metric

  /**
   * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
   * group.
   *
   * This does not include any response codes generated by the load balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param code 
   * @param props
   */
  public fun httpCodeTarget(code: HttpCodeTarget, props: MetricOptions): Metric

  /**
   * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
   * group.
   *
   * This does not include any response codes generated by the load balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param code 
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("b24b5392cd4eb3171ba7964626471868514de6667c722081bcf28afba9d8f918")
  public fun httpCodeTarget(code: HttpCodeTarget, props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of IPv6 requests received by the target group.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun ipv6RequestCount(): Metric

  /**
   * The number of IPv6 requests received by the target group.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun ipv6RequestCount(props: MetricOptions): Metric

  /**
   * The number of IPv6 requests received by the target group.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("7c99b7ad341d61067977149bec151ac4f7bbfa5b606fd1f34d5a0f67bbdfd466")
  public fun ipv6RequestCount(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of requests processed over IPv4 and IPv6.
   *
   * This count includes only the requests with a response generated by a target of the load
   * balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun requestCount(): Metric

  /**
   * The number of requests processed over IPv4 and IPv6.
   *
   * This count includes only the requests with a response generated by a target of the load
   * balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun requestCount(props: MetricOptions): Metric

  /**
   * The number of requests processed over IPv4 and IPv6.
   *
   * This count includes only the requests with a response generated by a target of the load
   * balancer.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("df6a54fa6c6b3bf8b7a44de0f859f5e74b085d7ce578c6a602288988d4106e46")
  public fun requestCount(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The average number of requests received by each target in a target group.
   *
   * The only valid statistic is Sum. Note that this represents the average not the sum.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun requestCountPerTarget(): Metric

  /**
   * The average number of requests received by each target in a target group.
   *
   * The only valid statistic is Sum. Note that this represents the average not the sum.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun requestCountPerTarget(props: MetricOptions): Metric

  /**
   * The average number of requests received by each target in a target group.
   *
   * The only valid statistic is Sum. Note that this represents the average not the sum.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("cf92ac9d951ad9e742f4a5229fa957e5c56292b1a538cdfc7ab218a24986e6c8")
  public fun requestCountPerTarget(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of connections that were not successfully established between the load balancer and
   * target.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun targetConnectionErrorCount(): Metric

  /**
   * The number of connections that were not successfully established between the load balancer and
   * target.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun targetConnectionErrorCount(props: MetricOptions): Metric

  /**
   * The number of connections that were not successfully established between the load balancer and
   * target.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("ff66e9db5aa5ccafc9b54a6ff12c01de760a4cd3c0c5f48043c99cb77fa3203b")
  public fun targetConnectionErrorCount(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The time elapsed, in seconds, after the request leaves the load balancer until a response from
   * the target is received.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun targetResponseTime(): Metric

  /**
   * The time elapsed, in seconds, after the request leaves the load balancer until a response from
   * the target is received.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun targetResponseTime(props: MetricOptions): Metric

  /**
   * The time elapsed, in seconds, after the request leaves the load balancer until a response from
   * the target is received.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("bd42be106eb1a94ad8464621cbb797fff2f60bfbaf6069acaafdc175dcd64b7f")
  public fun targetResponseTime(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of TLS connections initiated by the load balancer that did not establish a session
   * with the target.
   *
   * Possible causes include a mismatch of ciphers or protocols.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun targetTLSNegotiationErrorCount(): Metric

  /**
   * The number of TLS connections initiated by the load balancer that did not establish a session
   * with the target.
   *
   * Possible causes include a mismatch of ciphers or protocols.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  public fun targetTLSNegotiationErrorCount(props: MetricOptions): Metric

  /**
   * The number of TLS connections initiated by the load balancer that did not establish a session
   * with the target.
   *
   * Possible causes include a mismatch of ciphers or protocols.
   *
   * Default: Sum over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("680e36d5f42c32084e2104a1182ce24b50a180324bfe0c58c1bcd6523da0a161")
  public fun targetTLSNegotiationErrorCount(props: MetricOptions.Builder.() -> Unit): Metric

  /**
   * The number of unhealthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun unhealthyHostCount(): Metric

  /**
   * The number of unhealthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  public fun unhealthyHostCount(props: MetricOptions): Metric

  /**
   * The number of unhealthy hosts in the target group.
   *
   * Default: Average over 5 minutes
   *
   * @param props
   */
  @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
  @JvmName("ba73ddc7b80468d5e7f5c25fb639e088f0f95e00b6cc146b9ac93a59bbc3eab1")
  public fun unhealthyHostCount(props: MetricOptions.Builder.() -> Unit): Metric

  private class Wrapper(
    cdkObject: software.amazon.awscdk.services.elasticloadbalancingv2.IApplicationTargetGroupMetrics,
  ) : CdkObject(cdkObject),
      IApplicationTargetGroupMetrics {
    /**
     * Return the given named metric for this Network Target Group.
     *
     * Default: Average over 5 minutes
     *
     * @param metricName 
     * @param props
     */
    override fun custom(metricName: String): Metric =
        unwrap(this).custom(metricName).let(Metric::wrap)

    /**
     * Return the given named metric for this Network Target Group.
     *
     * Default: Average over 5 minutes
     *
     * @param metricName 
     * @param props
     */
    override fun custom(metricName: String, props: MetricOptions): Metric =
        unwrap(this).custom(metricName,
        props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * Return the given named metric for this Network Target Group.
     *
     * Default: Average over 5 minutes
     *
     * @param metricName 
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("e3a7bf310cfbfe77339a32a3f576ae6834193015bd367fe25d8280f53f24860b")
    override fun custom(metricName: String, props: MetricOptions.Builder.() -> Unit): Metric =
        custom(metricName, MetricOptions(props))

    /**
     * The number of healthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun healthyHostCount(): Metric = unwrap(this).healthyHostCount().let(Metric::wrap)

    /**
     * The number of healthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun healthyHostCount(props: MetricOptions): Metric =
        unwrap(this).healthyHostCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of healthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("86001b538e3d7af3f82ae55f087e4d922defb3087f332d19bda9d0eca9b8461c")
    override fun healthyHostCount(props: MetricOptions.Builder.() -> Unit): Metric =
        healthyHostCount(MetricOptions(props))

    /**
     * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
     * group.
     *
     * This does not include any response codes generated by the load balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param code 
     * @param props
     */
    override fun httpCodeTarget(code: HttpCodeTarget): Metric =
        unwrap(this).httpCodeTarget(code.let(HttpCodeTarget.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
     * group.
     *
     * This does not include any response codes generated by the load balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param code 
     * @param props
     */
    override fun httpCodeTarget(code: HttpCodeTarget, props: MetricOptions): Metric =
        unwrap(this).httpCodeTarget(code.let(HttpCodeTarget.Companion::unwrap),
        props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target
     * group.
     *
     * This does not include any response codes generated by the load balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param code 
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("b24b5392cd4eb3171ba7964626471868514de6667c722081bcf28afba9d8f918")
    override fun httpCodeTarget(code: HttpCodeTarget, props: MetricOptions.Builder.() -> Unit):
        Metric = httpCodeTarget(code, MetricOptions(props))

    /**
     * The number of IPv6 requests received by the target group.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun ipv6RequestCount(): Metric = unwrap(this).ipv6RequestCount().let(Metric::wrap)

    /**
     * The number of IPv6 requests received by the target group.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun ipv6RequestCount(props: MetricOptions): Metric =
        unwrap(this).ipv6RequestCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of IPv6 requests received by the target group.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("7c99b7ad341d61067977149bec151ac4f7bbfa5b606fd1f34d5a0f67bbdfd466")
    override fun ipv6RequestCount(props: MetricOptions.Builder.() -> Unit): Metric =
        ipv6RequestCount(MetricOptions(props))

    /**
     * The number of requests processed over IPv4 and IPv6.
     *
     * This count includes only the requests with a response generated by a target of the load
     * balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun requestCount(): Metric = unwrap(this).requestCount().let(Metric::wrap)

    /**
     * The number of requests processed over IPv4 and IPv6.
     *
     * This count includes only the requests with a response generated by a target of the load
     * balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun requestCount(props: MetricOptions): Metric =
        unwrap(this).requestCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of requests processed over IPv4 and IPv6.
     *
     * This count includes only the requests with a response generated by a target of the load
     * balancer.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("df6a54fa6c6b3bf8b7a44de0f859f5e74b085d7ce578c6a602288988d4106e46")
    override fun requestCount(props: MetricOptions.Builder.() -> Unit): Metric =
        requestCount(MetricOptions(props))

    /**
     * The average number of requests received by each target in a target group.
     *
     * The only valid statistic is Sum. Note that this represents the average not the sum.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun requestCountPerTarget(): Metric =
        unwrap(this).requestCountPerTarget().let(Metric::wrap)

    /**
     * The average number of requests received by each target in a target group.
     *
     * The only valid statistic is Sum. Note that this represents the average not the sum.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun requestCountPerTarget(props: MetricOptions): Metric =
        unwrap(this).requestCountPerTarget(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The average number of requests received by each target in a target group.
     *
     * The only valid statistic is Sum. Note that this represents the average not the sum.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("cf92ac9d951ad9e742f4a5229fa957e5c56292b1a538cdfc7ab218a24986e6c8")
    override fun requestCountPerTarget(props: MetricOptions.Builder.() -> Unit): Metric =
        requestCountPerTarget(MetricOptions(props))

    /**
     * The number of connections that were not successfully established between the load balancer
     * and target.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun targetConnectionErrorCount(): Metric =
        unwrap(this).targetConnectionErrorCount().let(Metric::wrap)

    /**
     * The number of connections that were not successfully established between the load balancer
     * and target.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun targetConnectionErrorCount(props: MetricOptions): Metric =
        unwrap(this).targetConnectionErrorCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of connections that were not successfully established between the load balancer
     * and target.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("ff66e9db5aa5ccafc9b54a6ff12c01de760a4cd3c0c5f48043c99cb77fa3203b")
    override fun targetConnectionErrorCount(props: MetricOptions.Builder.() -> Unit): Metric =
        targetConnectionErrorCount(MetricOptions(props))

    /**
     * The time elapsed, in seconds, after the request leaves the load balancer until a response
     * from the target is received.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun targetResponseTime(): Metric = unwrap(this).targetResponseTime().let(Metric::wrap)

    /**
     * The time elapsed, in seconds, after the request leaves the load balancer until a response
     * from the target is received.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun targetResponseTime(props: MetricOptions): Metric =
        unwrap(this).targetResponseTime(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The time elapsed, in seconds, after the request leaves the load balancer until a response
     * from the target is received.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("bd42be106eb1a94ad8464621cbb797fff2f60bfbaf6069acaafdc175dcd64b7f")
    override fun targetResponseTime(props: MetricOptions.Builder.() -> Unit): Metric =
        targetResponseTime(MetricOptions(props))

    /**
     * The number of TLS connections initiated by the load balancer that did not establish a session
     * with the target.
     *
     * Possible causes include a mismatch of ciphers or protocols.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun targetTLSNegotiationErrorCount(): Metric =
        unwrap(this).targetTLSNegotiationErrorCount().let(Metric::wrap)

    /**
     * The number of TLS connections initiated by the load balancer that did not establish a session
     * with the target.
     *
     * Possible causes include a mismatch of ciphers or protocols.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    override fun targetTLSNegotiationErrorCount(props: MetricOptions): Metric =
        unwrap(this).targetTLSNegotiationErrorCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of TLS connections initiated by the load balancer that did not establish a session
     * with the target.
     *
     * Possible causes include a mismatch of ciphers or protocols.
     *
     * Default: Sum over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("680e36d5f42c32084e2104a1182ce24b50a180324bfe0c58c1bcd6523da0a161")
    override fun targetTLSNegotiationErrorCount(props: MetricOptions.Builder.() -> Unit): Metric =
        targetTLSNegotiationErrorCount(MetricOptions(props))

    /**
     * The number of unhealthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun unhealthyHostCount(): Metric = unwrap(this).unhealthyHostCount().let(Metric::wrap)

    /**
     * The number of unhealthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    override fun unhealthyHostCount(props: MetricOptions): Metric =
        unwrap(this).unhealthyHostCount(props.let(MetricOptions.Companion::unwrap)).let(Metric::wrap)

    /**
     * The number of unhealthy hosts in the target group.
     *
     * Default: Average over 5 minutes
     *
     * @param props
     */
    @kotlin.Suppress("INAPPLICABLE_JVM_NAME")
    @JvmName("ba73ddc7b80468d5e7f5c25fb639e088f0f95e00b6cc146b9ac93a59bbc3eab1")
    override fun unhealthyHostCount(props: MetricOptions.Builder.() -> Unit): Metric =
        unhealthyHostCount(MetricOptions(props))
  }

  public companion object {
    internal
        fun wrap(cdkObject: software.amazon.awscdk.services.elasticloadbalancingv2.IApplicationTargetGroupMetrics):
        IApplicationTargetGroupMetrics = CdkObjectWrappers.wrap(cdkObject) as?
        IApplicationTargetGroupMetrics ?: Wrapper(cdkObject)

    internal fun unwrap(wrapped: IApplicationTargetGroupMetrics):
        software.amazon.awscdk.services.elasticloadbalancingv2.IApplicationTargetGroupMetrics =
        (wrapped as CdkObject).cdkObject as
        software.amazon.awscdk.services.elasticloadbalancingv2.IApplicationTargetGroupMetrics
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy