com.pulumi.gcp.compute.kotlin.outputs.GetBackendServiceOutlierDetection.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-gcp-kotlin Show documentation
Show all versions of pulumi-gcp-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.compute.kotlin.outputs
import kotlin.Int
import kotlin.Suppress
import kotlin.collections.List
/**
*
* @property baseEjectionTimes The base time that a host is ejected for. The real time is equal to the base
* time multiplied by the number of times the host has been ejected. Defaults to
* 30000ms or 30s.
* @property consecutiveErrors Number of errors before a host is ejected from the connection pool. When the
* backend host is accessed over HTTP, a 5xx return code qualifies as an error.
* Defaults to 5.
* @property consecutiveGatewayFailure The number of consecutive gateway failures (502, 503, 504 status or connection
* errors that are mapped to one of those status codes) before a consecutive
* gateway failure ejection occurs. Defaults to 5.
* @property enforcingConsecutiveErrors The percentage chance that a host will be actually ejected when an outlier
* status is detected through consecutive 5xx. This setting can be used to disable
* ejection or to ramp it up slowly. Defaults to 100.
* @property enforcingConsecutiveGatewayFailure The percentage chance that a host will be actually ejected when an outlier
* status is detected through consecutive gateway failures. This setting can be
* used to disable ejection or to ramp it up slowly. Defaults to 0.
* @property enforcingSuccessRate The percentage chance that a host will be actually ejected when an outlier
* status is detected through success rate statistics. This setting can be used to
* disable ejection or to ramp it up slowly. Defaults to 100.
* @property intervals Time interval between ejection sweep analysis. This can result in both new
* ejections as well as hosts being returned to service. Defaults to 10 seconds.
* @property maxEjectionPercent Maximum percentage of hosts in the load balancing pool for the backend service
* that can be ejected. Defaults to 10%.
* @property successRateMinimumHosts The number of hosts in a cluster that must have enough request volume to detect
* success rate outliers. If the number of hosts is less than this setting, outlier
* detection via success rate statistics is not performed for any host in the
* cluster. Defaults to 5.
* @property successRateRequestVolume The minimum number of total requests that must be collected in one interval (as
* defined by the interval duration above) to include this host in success rate
* based outlier detection. If the volume is lower than this setting, outlier
* detection via success rate statistics is not performed for that host. Defaults
* to 100.
* @property successRateStdevFactor This factor is used to determine the ejection threshold for success rate outlier
* ejection. The ejection threshold is the difference between the mean success
* rate, and the product of this factor and the standard deviation of the mean
* success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided
* by a thousand to get a double. That is, if the desired factor is 1.9, the
* runtime value should be 1900. Defaults to 1900.
*/
public data class GetBackendServiceOutlierDetection(
public val baseEjectionTimes: List,
public val consecutiveErrors: Int,
public val consecutiveGatewayFailure: Int,
public val enforcingConsecutiveErrors: Int,
public val enforcingConsecutiveGatewayFailure: Int,
public val enforcingSuccessRate: Int,
public val intervals: List,
public val maxEjectionPercent: Int,
public val successRateMinimumHosts: Int,
public val successRateRequestVolume: Int,
public val successRateStdevFactor: Int,
) {
public companion object {
public fun toKotlin(javaType: com.pulumi.gcp.compute.outputs.GetBackendServiceOutlierDetection): GetBackendServiceOutlierDetection = GetBackendServiceOutlierDetection(
baseEjectionTimes = javaType.baseEjectionTimes().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.GetBackendServiceOutlierDetectionBaseEjectionTime.Companion.toKotlin(args0)
})
}),
consecutiveErrors = javaType.consecutiveErrors(),
consecutiveGatewayFailure = javaType.consecutiveGatewayFailure(),
enforcingConsecutiveErrors = javaType.enforcingConsecutiveErrors(),
enforcingConsecutiveGatewayFailure = javaType.enforcingConsecutiveGatewayFailure(),
enforcingSuccessRate = javaType.enforcingSuccessRate(),
intervals = javaType.intervals().map({ args0 ->
args0.let({ args0 ->
com.pulumi.gcp.compute.kotlin.outputs.GetBackendServiceOutlierDetectionInterval.Companion.toKotlin(args0)
})
}),
maxEjectionPercent = javaType.maxEjectionPercent(),
successRateMinimumHosts = javaType.successRateMinimumHosts(),
successRateRequestVolume = javaType.successRateRequestVolume(),
successRateStdevFactor = javaType.successRateStdevFactor(),
)
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy