java.lang.Object
software.amazon.awssdk.services.cloudwatch.model.MetricAlarm
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<MetricAlarm.Builder,MetricAlarm>

@Generated("software.amazon.awssdk:codegen") public final class MetricAlarm extends Object implements SdkPojo, Serializable, ToCopyableBuilder<MetricAlarm.Builder,MetricAlarm>

The details about a metric alarm.

See Also:
  • Method Details

    • alarmName

      public final String alarmName()

      The name of the alarm.

      Returns:
      The name of the alarm.
    • alarmArn

      public final String alarmArn()

      The Amazon Resource Name (ARN) of the alarm.

      Returns:
      The Amazon Resource Name (ARN) of the alarm.
    • alarmDescription

      public final String alarmDescription()

      The description of the alarm.

      Returns:
      The description of the alarm.
    • alarmConfigurationUpdatedTimestamp

      public final Instant alarmConfigurationUpdatedTimestamp()

      The time stamp of the last update to the alarm configuration.

      Returns:
      The time stamp of the last update to the alarm configuration.
    • actionsEnabled

      public final Boolean actionsEnabled()

      Indicates whether actions should be executed during any changes to the alarm state.

      Returns:
      Indicates whether actions should be executed during any changes to the alarm state.
    • hasOkActions

      public final boolean hasOkActions()
      For responses, this returns true if the service returned a value for the OKActions property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • okActions

      public final List<String> okActions()

      The actions to execute when this alarm transitions to the OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasOkActions() method.

      Returns:
      The actions to execute when this alarm transitions to the OK state from any other state. Each action is specified as an Amazon Resource Name (ARN).
    • hasAlarmActions

      public final boolean hasAlarmActions()
      For responses, this returns true if the service returned a value for the AlarmActions property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • alarmActions

      public final List<String> alarmActions()

      The actions to execute when this alarm transitions to the ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasAlarmActions() method.

      Returns:
      The actions to execute when this alarm transitions to the ALARM state from any other state. Each action is specified as an Amazon Resource Name (ARN).
    • hasInsufficientDataActions

      public final boolean hasInsufficientDataActions()
      For responses, this returns true if the service returned a value for the InsufficientDataActions property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • insufficientDataActions

      public final List<String> insufficientDataActions()

      The actions to execute when this alarm transitions to the INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasInsufficientDataActions() method.

      Returns:
      The actions to execute when this alarm transitions to the INSUFFICIENT_DATA state from any other state. Each action is specified as an Amazon Resource Name (ARN).
    • stateValue

      public final StateValue stateValue()

      The state value for the alarm.

      If the service returns an enum value that is not available in the current SDK version, stateValue will return StateValue.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from stateValueAsString().

      Returns:
      The state value for the alarm.
      See Also:
    • stateValueAsString

      public final String stateValueAsString()

      The state value for the alarm.

      If the service returns an enum value that is not available in the current SDK version, stateValue will return StateValue.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from stateValueAsString().

      Returns:
      The state value for the alarm.
      See Also:
    • stateReason

      public final String stateReason()

      An explanation for the alarm state, in text format.

      Returns:
      An explanation for the alarm state, in text format.
    • stateReasonData

      public final String stateReasonData()

      An explanation for the alarm state, in JSON format.

      Returns:
      An explanation for the alarm state, in JSON format.
    • stateUpdatedTimestamp

      public final Instant stateUpdatedTimestamp()

      The time stamp of the last update to the value of either the StateValue or EvaluationState parameters.

      Returns:
      The time stamp of the last update to the value of either the StateValue or EvaluationState parameters.
    • metricName

      public final String metricName()

      The name of the metric associated with the alarm, if this is an alarm based on a single metric.

      Returns:
      The name of the metric associated with the alarm, if this is an alarm based on a single metric.
    • namespace

      public final String namespace()

      The namespace of the metric associated with the alarm.

      Returns:
      The namespace of the metric associated with the alarm.
    • statistic

      public final Statistic statistic()

      The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic.

      If the service returns an enum value that is not available in the current SDK version, statistic will return Statistic.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statisticAsString().

      Returns:
      The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic.
      See Also:
    • statisticAsString

      public final String statisticAsString()

      The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic.

      If the service returns an enum value that is not available in the current SDK version, statistic will return Statistic.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from statisticAsString().

      Returns:
      The statistic for the metric associated with the alarm, other than percentile. For percentile statistics, use ExtendedStatistic.
      See Also:
    • extendedStatistic

      public final String extendedStatistic()

      The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.

      Returns:
      The percentile statistic for the metric associated with the alarm. Specify a value between p0.0 and p100.
    • hasDimensions

      public final boolean hasDimensions()
      For responses, this returns true if the service returned a value for the Dimensions property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • dimensions

      public final List<Dimension> dimensions()

      The dimensions for the metric associated with the alarm.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasDimensions() method.

      Returns:
      The dimensions for the metric associated with the alarm.
    • period

      public final Integer period()

      The period, in seconds, over which the statistic is applied.

      Returns:
      The period, in seconds, over which the statistic is applied.
    • unit

      public final StandardUnit unit()

      The unit of the metric associated with the alarm.

      If the service returns an enum value that is not available in the current SDK version, unit will return StandardUnit.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from unitAsString().

      Returns:
      The unit of the metric associated with the alarm.
      See Also:
    • unitAsString

      public final String unitAsString()

      The unit of the metric associated with the alarm.

      If the service returns an enum value that is not available in the current SDK version, unit will return StandardUnit.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from unitAsString().

      Returns:
      The unit of the metric associated with the alarm.
      See Also:
    • evaluationPeriods

      public final Integer evaluationPeriods()

      The number of periods over which data is compared to the specified threshold.

      Returns:
      The number of periods over which data is compared to the specified threshold.
    • datapointsToAlarm

      public final Integer datapointsToAlarm()

      The number of data points that must be breaching to trigger the alarm.

      Returns:
      The number of data points that must be breaching to trigger the alarm.
    • threshold

      public final Double threshold()

      The value to compare with the specified statistic.

      Returns:
      The value to compare with the specified statistic.
    • comparisonOperator

      public final ComparisonOperator comparisonOperator()

      The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.

      If the service returns an enum value that is not available in the current SDK version, comparisonOperator will return ComparisonOperator.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from comparisonOperatorAsString().

      Returns:
      The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.
      See Also:
    • comparisonOperatorAsString

      public final String comparisonOperatorAsString()

      The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.

      If the service returns an enum value that is not available in the current SDK version, comparisonOperator will return ComparisonOperator.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from comparisonOperatorAsString().

      Returns:
      The arithmetic operation to use when comparing the specified statistic and threshold. The specified statistic value is used as the first operand.
      See Also:
    • treatMissingData

      public final String treatMissingData()

      Sets how this alarm is to handle missing data points. The valid values are breaching, notBreaching, ignore, and missing. For more information, see Configuring how CloudWatch alarms treat missing data.

      If this parameter is omitted, the default behavior of missing is used.

      Returns:
      Sets how this alarm is to handle missing data points. The valid values are breaching, notBreaching, ignore, and missing. For more information, see Configuring how CloudWatch alarms treat missing data.

      If this parameter is omitted, the default behavior of missing is used.

    • evaluateLowSampleCountPercentile

      public final String evaluateLowSampleCountPercentile()

      Used only for alarms based on percentiles. If ignore, the alarm state does not change during periods with too few data points to be statistically significant. If evaluate or this parameter is not used, the alarm is always evaluated and possibly changes state no matter how many data points are available.

      Returns:
      Used only for alarms based on percentiles. If ignore, the alarm state does not change during periods with too few data points to be statistically significant. If evaluate or this parameter is not used, the alarm is always evaluated and possibly changes state no matter how many data points are available.
    • hasMetrics

      public final boolean hasMetrics()
      For responses, this returns true if the service returned a value for the Metrics property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • metrics

      public final List<MetricDataQuery> metrics()

      An array of MetricDataQuery structures, used in an alarm based on a metric math expression. Each structure either retrieves a metric or performs a math expression. One item in the Metrics array is the math expression that the alarm watches. This expression by designated by having ReturnData set to true.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasMetrics() method.

      Returns:
      An array of MetricDataQuery structures, used in an alarm based on a metric math expression. Each structure either retrieves a metric or performs a math expression. One item in the Metrics array is the math expression that the alarm watches. This expression by designated by having ReturnData set to true.
    • thresholdMetricId

      public final String thresholdMetricId()

      In an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND function used as the threshold for the alarm.

      Returns:
      In an alarm based on an anomaly detection model, this is the ID of the ANOMALY_DETECTION_BAND function used as the threshold for the alarm.
    • evaluationState

      public final EvaluationState evaluationState()

      If the value of this field is PARTIAL_DATA, the alarm is being evaluated based on only partial data. This happens if the query used for the alarm returns more than 10,000 metrics. For more information, see Create alarms on Metrics Insights queries.

      If the service returns an enum value that is not available in the current SDK version, evaluationState will return EvaluationState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from evaluationStateAsString().

      Returns:
      If the value of this field is PARTIAL_DATA, the alarm is being evaluated based on only partial data. This happens if the query used for the alarm returns more than 10,000 metrics. For more information, see Create alarms on Metrics Insights queries.
      See Also:
    • evaluationStateAsString

      public final String evaluationStateAsString()

      If the value of this field is PARTIAL_DATA, the alarm is being evaluated based on only partial data. This happens if the query used for the alarm returns more than 10,000 metrics. For more information, see Create alarms on Metrics Insights queries.

      If the service returns an enum value that is not available in the current SDK version, evaluationState will return EvaluationState.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from evaluationStateAsString().

      Returns:
      If the value of this field is PARTIAL_DATA, the alarm is being evaluated based on only partial data. This happens if the query used for the alarm returns more than 10,000 metrics. For more information, see Create alarms on Metrics Insights queries.
      See Also:
    • stateTransitionedTimestamp

      public final Instant stateTransitionedTimestamp()

      The date and time that the alarm's StateValue most recently changed.

      Returns:
      The date and time that the alarm's StateValue most recently changed.
    • toBuilder

      public MetricAlarm.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<MetricAlarm.Builder,MetricAlarm>
      Returns:
      a builder for type T
    • builder

      public static MetricAlarm.Builder builder()
    • serializableBuilderClass

      public static Class<? extends MetricAlarm.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.