AWS Tools for Windows PowerShell
Command Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Synopsis

Calls the Amazon Lightsail PutAlarm API operation.

Syntax

Add-LSAlarm
-AlarmName <String>
-ComparisonOperator <ComparisonOperator>
-ContactProtocol <String[]>
-DatapointsToAlarm <Int32>
-EvaluationPeriod <Int32>
-MetricName <MetricName>
-MonitoredResourceName <String>
-NotificationEnabled <Boolean>
-NotificationTrigger <String[]>
-Threshold <Double>
-TreatMissingData <TreatMissingData>
-Select <String>
-PassThru <SwitchParameter>
-Force <SwitchParameter>

Description

Creates or updates an alarm, and associates it with the specified metric. An alarm is used to monitor a single metric for one of your resources. When a metric condition is met, the alarm can notify you by email, SMS text message, and a banner displayed on the Amazon Lightsail console. For more information, see Alarms in Amazon Lightsail. When this action creates an alarm, the alarm state is immediately set to INSUFFICIENT_DATA. The alarm is then evaluated and its state is set appropriately. Any actions associated with the new state are then executed. When you update an existing alarm, its state is left unchanged, but the update completely overwrites the previous configuration of the alarm. The alarm is then evaluated with the updated configuration.

Parameters

-AlarmName <String>
The name for the alarm. Specify the name of an existing alarm to update, and overwrite the previous configuration of the alarm.
Required?True
Position?1
Accept pipeline input?True (ByValue, ByPropertyName)
-ComparisonOperator <ComparisonOperator>
The arithmetic operation to use when comparing the specified statistic to the threshold. The specified statistic value is used as the first operand.
Required?True
Position?Named
Accept pipeline input?True (ByPropertyName)
-ContactProtocol <String[]>
The contact protocols to use for the alarm, such as Email, SMS (text messaging), or both.A notification is sent via the specified contact protocol if notifications are enabled for the alarm, and when the alarm is triggered.A notification is not sent if a contact protocol is not specified, if the specified contact protocol is not configured in the AWS Region, or if notifications are not enabled for the alarm using the notificationEnabled paramater.Use the CreateContactMethod action to configure a contact protocol in an AWS Region.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesContactProtocols
-DatapointsToAlarm <Int32>
The number of data points that must be not within the specified threshold to trigger the alarm. If you are setting an "M out of N" alarm, this value (datapointsToAlarm) is the M.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-EvaluationPeriod <Int32>
The number of most recent periods over which data is compared to the specified threshold. If you are setting an "M out of N" alarm, this value (evaluationPeriods) is the N.If you are setting an alarm that requires that a number of consecutive data points be breaching to trigger the alarm, this value specifies the rolling period of time in which data points are evaluated.Each evaluation period is five minutes long. For example, specify an evaluation period of 24 to evaluate a metric over a rolling period of two hours.You can specify a minimum valuation period of 1 (5 minutes), and a maximum evaluation period of 288 (24 hours).
Required?True
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesEvaluationPeriods
This parameter overrides confirmation prompts to force the cmdlet to continue its operation. This parameter should always be used with caution.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-MetricName <MetricName>
The name of the metric to associate with the alarm.You can configure up to two alarms per metric.The following metrics are available for each resource type:
  • Instances: BurstCapacityPercentage, BurstCapacityTime, CPUUtilization, NetworkIn, NetworkOut, StatusCheckFailed, StatusCheckFailed_Instance, and StatusCheckFailed_System.
  • Load balancers: ClientTLSNegotiationErrorCount, HealthyHostCount, UnhealthyHostCount, HTTPCode_LB_4XX_Count, HTTPCode_LB_5XX_Count, HTTPCode_Instance_2XX_Count, HTTPCode_Instance_3XX_Count, HTTPCode_Instance_4XX_Count, HTTPCode_Instance_5XX_Count, InstanceResponseTime, RejectedConnectionCount, and RequestCount.
  • Relational databases: CPUUtilization, DatabaseConnections, DiskQueueDepth, FreeStorageSpace, NetworkReceiveThroughput, and NetworkTransmitThroughput.
For more information about these metrics, see Metrics available in Lightsail.
Required?True
Position?Named
Accept pipeline input?True (ByPropertyName)
-MonitoredResourceName <String>
The name of the Lightsail resource that will be monitored.Instances, load balancers, and relational databases are the only Lightsail resources that can currently be monitored by alarms.
Required?True
Position?Named
Accept pipeline input?True (ByPropertyName)
-NotificationEnabled <Boolean>
Indicates whether the alarm is enabled.Notifications are enabled by default if you don't specify this parameter.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-NotificationTrigger <String[]>
The alarm states that trigger a notification.An alarm has the following possible states:
  • ALARM - The metric is outside of the defined threshold.
  • INSUFFICIENT_DATA - The alarm has just started, the metric is not available, or not enough data is available for the metric to determine the alarm state.
  • OK - The metric is within the defined threshold.
When you specify a notification trigger, the ALARM state must be specified. The INSUFFICIENT_DATA and OK states can be specified in addition to the ALARM state.
  • If you specify OK as an alarm trigger, a notification is sent when the alarm switches from an ALARM or INSUFFICIENT_DATA alarm state to an OK state. This can be thought of as an all clear alarm notification.
  • If you specify INSUFFICIENT_DATA as the alarm trigger, a notification is sent when the alarm switches from an OK or ALARM alarm state to an INSUFFICIENT_DATA state.
The notification trigger defaults to ALARM if you don't specify this parameter.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesNotificationTriggers
-PassThru <SwitchParameter>
Changes the cmdlet behavior to return the value passed to the AlarmName parameter. The -PassThru parameter is deprecated, use -Select '^AlarmName' instead. This parameter will be removed in a future version.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-Select <String>
Use the -Select parameter to control the cmdlet output. The default value is 'Operations'. Specifying -Select '*' will result in the cmdlet returning the whole service response (Amazon.Lightsail.Model.PutAlarmResponse). Specifying the name of a property of type Amazon.Lightsail.Model.PutAlarmResponse will result in that property being returned. Specifying -Select '^ParameterName' will result in the cmdlet returning the selected cmdlet parameter value.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-Threshold <Double>
The value against which the specified statistic is compared.
Required?True
Position?Named
Accept pipeline input?True (ByPropertyName)
-TreatMissingData <TreatMissingData>
Sets how this alarm will handle missing data points.An alarm can treat missing data in the following ways:
  • breaching - Assume the missing data is not within the threshold. Missing data counts towards the number of times the metric is not within the threshold.
  • notBreaching - Assume the missing data is within the threshold. Missing data does not count towards the number of times the metric is not within the threshold.
  • ignore - Ignore the missing data. Maintains the current alarm state.
  • missing - Missing data is treated as missing.
If treatMissingData is not specified, the default behavior of missing is used.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)

Common Credential and Region Parameters

-AccessKey <String>
The AWS access key for the user account. This can be a temporary access key if the corresponding session token is supplied to the -SessionToken parameter.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesAK
-Credential <AWSCredentials>
An AWSCredentials object instance containing access and secret key information, and optionally a token for session-based credentials.
Required?False
Position?Named
Accept pipeline input?True (ByValue, ByPropertyName)
-EndpointUrl <String>
The endpoint to make the call against.Note: This parameter is primarily for internal AWS use and is not required/should not be specified for normal usage. The cmdlets normally determine which endpoint to call based on the region specified to the -Region parameter or set as default in the shell (via Set-DefaultAWSRegion). Only specify this parameter if you must direct the call to a specific custom endpoint.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
-NetworkCredential <PSCredential>
Used with SAML-based authentication when ProfileName references a SAML role profile. Contains the network credentials to be supplied during authentication with the configured identity provider's endpoint. This parameter is not required if the user's default network identity can or should be used during authentication.
Required?False
Position?Named
Accept pipeline input?True (ByValue, ByPropertyName)
-ProfileLocation <String>
Used to specify the name and location of the ini-format credential file (shared with the AWS CLI and other AWS SDKs)If this optional parameter is omitted this cmdlet will search the encrypted credential file used by the AWS SDK for .NET and AWS Toolkit for Visual Studio first. If the profile is not found then the cmdlet will search in the ini-format credential file at the default location: (user's home directory)\.aws\credentials.If this parameter is specified then this cmdlet will only search the ini-format credential file at the location given.As the current folder can vary in a shell or during script execution it is advised that you use specify a fully qualified path instead of a relative path.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesAWSProfilesLocation, ProfilesLocation
-ProfileName <String>
The user-defined name of an AWS credentials or SAML-based role profile containing credential information. The profile is expected to be found in the secure credential file shared with the AWS SDK for .NET and AWS Toolkit for Visual Studio. You can also specify the name of a profile stored in the .ini-format credential file used with the AWS CLI and other AWS SDKs.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesStoredCredentials, AWSProfileName
-Region <Object>
The system name of an AWS region or an AWSRegion instance. This governs the endpoint that will be used when calling service operations. Note that the AWS resources referenced in a call are usually region-specific.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesRegionToCall
-SecretKey <String>
The AWS secret key for the user account. This can be a temporary secret key if the corresponding session token is supplied to the -SessionToken parameter.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesSK, SecretAccessKey
-SessionToken <String>
The session token if the access and secret keys are temporary session-based credentials.
Required?False
Position?Named
Accept pipeline input?True (ByPropertyName)
AliasesST

Outputs

This cmdlet returns a collection of Amazon.Lightsail.Model.Operation objects. The service call response (type Amazon.Lightsail.Model.PutAlarmResponse) can also be referenced from properties attached to the cmdlet entry in the $AWSHistory stack.

Supported Version

AWS Tools for PowerShell: 2.x.y.z