case class CustomCloudWatchMetricAlert(alertName: String, cloudwatchSource: CloudWatchSource, dashboardPanelId: Option[Int], dashboardUri: Option[String], dimensions: Map[String, String], integrations: Seq[String], metricName: String, namespace: String, operator: EvaluationOperator, reducerFunction: ReducerFunction, runbookUrl: Option[String], severity: CustomAlertSeverity.AlertSeverity, summary: String, teamName: String, thresholds: EnvironmentThresholds, statistic: Option[Statistic] = Some(Statistic.MAXIMUM), evaluationPeriodStartMinutesAgo: TimeRangeAsMinutes = TimeRangeAsMinutes.FIFTEEN_MINUTES, evaluationPeriodEndMinutesAgo: TimeRangeAsMinutes = TimeRangeAsMinutes.ONE_MINUTE) extends CustomAlert with Product with Serializable
CloudWatch metrics based alert.
- alertName
Name that the alert will be created with
- cloudwatchSource
Which CloudWatch Grafana datasource to use
- dashboardPanelId
Specific panel to deep link to that is specific to this alert
- dashboardUri
Grafana uri to link to. This should just be the uri path and not include the domain
- dimensions
Which CloudWatch dimensions to filter the metric on
- integrations
Which PagerDuty integrations to direct this alert to
- metricName
Which CloudWatch metric to filter the alert on
- namespace
Which CloudWatch service namespace to filter the alert on
- operator
Whether to evaluate the metric as greater than or less than
- reducerFunction
Function to use to transform multiple data points returned from query into a single value, to be compared against the specified threshold. Valid values include: COUNT, LAST, MAX, MEAN, MIN, SUM. Note: Using the LAST reducer could result in not all data points being considered during alert evaluation, depending on the frequency at which the alert runs. Example: An alert with a LAST reducer, that runs every 2 minutes, based on a metric that is written on a per minute basis, will only consider ~50% of the data points, potentially missing a legitimate breach of an alert threshold.
- runbookUrl
Runbook for when this alert fires
- severity
The severity of this alert. E.g. Warning or Critical
- summary
The description to populate in PagerDuty when the alert fires
- teamName
All alerts are prefixed with the team name
- thresholds
Trigger point for each environment
- statistic
Used in the query. Valid values include Average, Maximum, Minimum, Sum, SampleCount, IQM
- evaluationPeriodStartMinutesAgo
The start of the evaluation period. If you set to FIFTEEN_MINUTES, the alert check will evaluate data starting fifteen minutes ago up until evaluationPeriodEndMinutesAgo
- evaluationPeriodEndMinutesAgo
The end of the evaluation period. If you set it to ONE MINUTE, the alert check will evaluate data starting from evaluationPeriodStartMinutesAgo until one minute ago. Less than one minute ago is not advised because these metrics may not yet be fully shipped.
- Alphabetic
- By Inheritance
- CustomCloudWatchMetricAlert
- Serializable
- Product
- Equals
- CustomAlert
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new CustomCloudWatchMetricAlert(alertName: String, cloudwatchSource: CloudWatchSource, dashboardPanelId: Option[Int], dashboardUri: Option[String], dimensions: Map[String, String], integrations: Seq[String], metricName: String, namespace: String, operator: EvaluationOperator, reducerFunction: ReducerFunction, runbookUrl: Option[String], severity: CustomAlertSeverity.AlertSeverity, summary: String, teamName: String, thresholds: EnvironmentThresholds, statistic: Option[Statistic] = Some(Statistic.MAXIMUM), evaluationPeriodStartMinutesAgo: TimeRangeAsMinutes = TimeRangeAsMinutes.FIFTEEN_MINUTES, evaluationPeriodEndMinutesAgo: TimeRangeAsMinutes = TimeRangeAsMinutes.ONE_MINUTE)
- alertName
Name that the alert will be created with
- cloudwatchSource
Which CloudWatch Grafana datasource to use
- dashboardPanelId
Specific panel to deep link to that is specific to this alert
- dashboardUri
Grafana uri to link to. This should just be the uri path and not include the domain
- dimensions
Which CloudWatch dimensions to filter the metric on
- integrations
Which PagerDuty integrations to direct this alert to
- metricName
Which CloudWatch metric to filter the alert on
- namespace
Which CloudWatch service namespace to filter the alert on
- operator
Whether to evaluate the metric as greater than or less than
- reducerFunction
Function to use to transform multiple data points returned from query into a single value, to be compared against the specified threshold. Valid values include: COUNT, LAST, MAX, MEAN, MIN, SUM. Note: Using the LAST reducer could result in not all data points being considered during alert evaluation, depending on the frequency at which the alert runs. Example: An alert with a LAST reducer, that runs every 2 minutes, based on a metric that is written on a per minute basis, will only consider ~50% of the data points, potentially missing a legitimate breach of an alert threshold.
- runbookUrl
Runbook for when this alert fires
- severity
The severity of this alert. E.g. Warning or Critical
- summary
The description to populate in PagerDuty when the alert fires
- teamName
All alerts are prefixed with the team name
- thresholds
Trigger point for each environment
- statistic
Used in the query. Valid values include Average, Maximum, Minimum, Sum, SampleCount, IQM
- evaluationPeriodStartMinutesAgo
The start of the evaluation period. If you set to FIFTEEN_MINUTES, the alert check will evaluate data starting fifteen minutes ago up until evaluationPeriodEndMinutesAgo
- evaluationPeriodEndMinutesAgo
The end of the evaluation period. If you set it to ONE MINUTE, the alert check will evaluate data starting from evaluationPeriodStartMinutesAgo until one minute ago. Less than one minute ago is not advised because these metrics may not yet be fully shipped.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val alertName: String
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
- val cloudwatchSource: CloudWatchSource
- val dashboardPanelId: Option[Int]
- val dashboardUri: Option[String]
- val dimensions: Map[String, String]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val evaluationPeriodEndMinutesAgo: TimeRangeAsMinutes
- val evaluationPeriodStartMinutesAgo: TimeRangeAsMinutes
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- val integrations: Seq[String]
- Definition Classes
- CustomCloudWatchMetricAlert → CustomAlert
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val metricName: String
- val namespace: String
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
- val operator: EvaluationOperator
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val reducerFunction: ReducerFunction
- val runbookUrl: Option[String]
- val severity: CustomAlertSeverity.AlertSeverity
- Definition Classes
- CustomCloudWatchMetricAlert → CustomAlert
- val statistic: Option[Statistic]
- val summary: String
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val teamName: String
- val thresholds: EnvironmentThresholds
- Definition Classes
- CustomCloudWatchMetricAlert → CustomAlert
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)