Documentation ¶
Overview ¶
Package cloudwatch provides a client for Amazon CloudWatch.
Index ¶
- Constants
- type AlarmHistoryItem
- type CloudWatch
- func (c *CloudWatch) DeleteAlarms(input *DeleteAlarmsInput) (*DeleteAlarmsOutput, error)
- func (c *CloudWatch) DeleteAlarmsRequest(input *DeleteAlarmsInput) (req *request.Request, output *DeleteAlarmsOutput)
- func (c *CloudWatch) DescribeAlarmHistory(input *DescribeAlarmHistoryInput) (*DescribeAlarmHistoryOutput, error)
- func (c *CloudWatch) DescribeAlarmHistoryPages(input *DescribeAlarmHistoryInput, ...) error
- func (c *CloudWatch) DescribeAlarmHistoryRequest(input *DescribeAlarmHistoryInput) (req *request.Request, output *DescribeAlarmHistoryOutput)
- func (c *CloudWatch) DescribeAlarms(input *DescribeAlarmsInput) (*DescribeAlarmsOutput, error)
- func (c *CloudWatch) DescribeAlarmsForMetric(input *DescribeAlarmsForMetricInput) (*DescribeAlarmsForMetricOutput, error)
- func (c *CloudWatch) DescribeAlarmsForMetricRequest(input *DescribeAlarmsForMetricInput) (req *request.Request, output *DescribeAlarmsForMetricOutput)
- func (c *CloudWatch) DescribeAlarmsPages(input *DescribeAlarmsInput, ...) error
- func (c *CloudWatch) DescribeAlarmsRequest(input *DescribeAlarmsInput) (req *request.Request, output *DescribeAlarmsOutput)
- func (c *CloudWatch) DisableAlarmActions(input *DisableAlarmActionsInput) (*DisableAlarmActionsOutput, error)
- func (c *CloudWatch) DisableAlarmActionsRequest(input *DisableAlarmActionsInput) (req *request.Request, output *DisableAlarmActionsOutput)
- func (c *CloudWatch) EnableAlarmActions(input *EnableAlarmActionsInput) (*EnableAlarmActionsOutput, error)
- func (c *CloudWatch) EnableAlarmActionsRequest(input *EnableAlarmActionsInput) (req *request.Request, output *EnableAlarmActionsOutput)
- func (c *CloudWatch) GetMetricStatistics(input *GetMetricStatisticsInput) (*GetMetricStatisticsOutput, error)
- func (c *CloudWatch) GetMetricStatisticsRequest(input *GetMetricStatisticsInput) (req *request.Request, output *GetMetricStatisticsOutput)
- func (c *CloudWatch) ListMetrics(input *ListMetricsInput) (*ListMetricsOutput, error)
- func (c *CloudWatch) ListMetricsPages(input *ListMetricsInput, ...) error
- func (c *CloudWatch) ListMetricsRequest(input *ListMetricsInput) (req *request.Request, output *ListMetricsOutput)
- func (c *CloudWatch) PutMetricAlarm(input *PutMetricAlarmInput) (*PutMetricAlarmOutput, error)
- func (c *CloudWatch) PutMetricAlarmRequest(input *PutMetricAlarmInput) (req *request.Request, output *PutMetricAlarmOutput)
- func (c *CloudWatch) PutMetricData(input *PutMetricDataInput) (*PutMetricDataOutput, error)
- func (c *CloudWatch) PutMetricDataRequest(input *PutMetricDataInput) (req *request.Request, output *PutMetricDataOutput)
- func (c *CloudWatch) SetAlarmState(input *SetAlarmStateInput) (*SetAlarmStateOutput, error)
- func (c *CloudWatch) SetAlarmStateRequest(input *SetAlarmStateInput) (req *request.Request, output *SetAlarmStateOutput)
- func (c *CloudWatch) WaitUntilAlarmExists(input *DescribeAlarmsInput) error
- type Datapoint
- type DeleteAlarmsInput
- type DeleteAlarmsOutput
- type DescribeAlarmHistoryInput
- type DescribeAlarmHistoryOutput
- type DescribeAlarmsForMetricInput
- type DescribeAlarmsForMetricOutput
- type DescribeAlarmsInput
- type DescribeAlarmsOutput
- type Dimension
- type DimensionFilter
- type DisableAlarmActionsInput
- type DisableAlarmActionsOutput
- type EnableAlarmActionsInput
- type EnableAlarmActionsOutput
- type GetMetricStatisticsInput
- type GetMetricStatisticsOutput
- type ListMetricsInput
- type ListMetricsOutput
- type Metric
- type MetricAlarm
- type MetricDatum
- type PutMetricAlarmInput
- type PutMetricAlarmOutput
- type PutMetricDataInput
- type PutMetricDataOutput
- type SetAlarmStateInput
- type SetAlarmStateOutput
- type StatisticSet
Examples ¶
- CloudWatch.DeleteAlarms
- CloudWatch.DescribeAlarmHistory
- CloudWatch.DescribeAlarms
- CloudWatch.DescribeAlarmsForMetric
- CloudWatch.DisableAlarmActions
- CloudWatch.EnableAlarmActions
- CloudWatch.GetMetricStatistics
- CloudWatch.ListMetrics
- CloudWatch.PutMetricAlarm
- CloudWatch.PutMetricData
- CloudWatch.SetAlarmState
Constants ¶
const ( // @enum ComparisonOperator ComparisonOperatorGreaterThanOrEqualToThreshold = "GreaterThanOrEqualToThreshold" // @enum ComparisonOperator ComparisonOperatorGreaterThanThreshold = "GreaterThanThreshold" // @enum ComparisonOperator ComparisonOperatorLessThanThreshold = "LessThanThreshold" // @enum ComparisonOperator ComparisonOperatorLessThanOrEqualToThreshold = "LessThanOrEqualToThreshold" )
const ( // @enum HistoryItemType HistoryItemTypeConfigurationUpdate = "ConfigurationUpdate" // @enum HistoryItemType HistoryItemTypeStateUpdate = "StateUpdate" // @enum HistoryItemType HistoryItemTypeAction = "Action" )
const ( // @enum StandardUnit StandardUnitSeconds = "Seconds" // @enum StandardUnit StandardUnitMicroseconds = "Microseconds" // @enum StandardUnit StandardUnitMilliseconds = "Milliseconds" // @enum StandardUnit StandardUnitBytes = "Bytes" // @enum StandardUnit StandardUnitKilobytes = "Kilobytes" // @enum StandardUnit StandardUnitMegabytes = "Megabytes" // @enum StandardUnit StandardUnitGigabytes = "Gigabytes" // @enum StandardUnit StandardUnitTerabytes = "Terabytes" // @enum StandardUnit StandardUnitBits = "Bits" // @enum StandardUnit StandardUnitKilobits = "Kilobits" // @enum StandardUnit StandardUnitMegabits = "Megabits" // @enum StandardUnit StandardUnitGigabits = "Gigabits" // @enum StandardUnit StandardUnitTerabits = "Terabits" // @enum StandardUnit StandardUnitPercent = "Percent" // @enum StandardUnit StandardUnitCount = "Count" // @enum StandardUnit StandardUnitBytesSecond = "Bytes/Second" // @enum StandardUnit StandardUnitKilobytesSecond = "Kilobytes/Second" // @enum StandardUnit StandardUnitMegabytesSecond = "Megabytes/Second" // @enum StandardUnit StandardUnitGigabytesSecond = "Gigabytes/Second" // @enum StandardUnit StandardUnitTerabytesSecond = "Terabytes/Second" // @enum StandardUnit StandardUnitBitsSecond = "Bits/Second" // @enum StandardUnit StandardUnitKilobitsSecond = "Kilobits/Second" // @enum StandardUnit StandardUnitMegabitsSecond = "Megabits/Second" // @enum StandardUnit StandardUnitGigabitsSecond = "Gigabits/Second" // @enum StandardUnit StandardUnitTerabitsSecond = "Terabits/Second" // @enum StandardUnit StandardUnitCountSecond = "Count/Second" // @enum StandardUnit StandardUnitNone = "None" )
const ( // @enum StateValue StateValueOk = "OK" // @enum StateValue StateValueAlarm = "ALARM" // @enum StateValue StateValueInsufficientData = "INSUFFICIENT_DATA" )
const ( // @enum Statistic StatisticSampleCount = "SampleCount" // @enum Statistic StatisticAverage = "Average" // @enum Statistic StatisticSum = "Sum" // @enum Statistic StatisticMinimum = "Minimum" // @enum Statistic StatisticMaximum = "Maximum" )
const ServiceName = "monitoring"
A ServiceName is the name of the service the client will make API calls to.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlarmHistoryItem ¶
type AlarmHistoryItem struct { // The descriptive name for the alarm. AlarmName *string `min:"1" type:"string"` // Machine-readable data about the alarm in JSON format. HistoryData *string `min:"1" type:"string"` // The type of alarm history item. HistoryItemType *string `type:"string" enum:"HistoryItemType"` // A human-readable summary of the alarm history. HistorySummary *string `min:"1" type:"string"` // The time stamp for the alarm history item. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // contains filtered or unexported fields }
The AlarmHistoryItem data type contains descriptive information about the history of a specific alarm. If you call DescribeAlarmHistory, Amazon CloudWatch returns this data type as part of the DescribeAlarmHistoryResult data type.
func (AlarmHistoryItem) GoString ¶
func (s AlarmHistoryItem) GoString() string
GoString returns the string representation
func (AlarmHistoryItem) String ¶
func (s AlarmHistoryItem) String() string
String returns the string representation
type CloudWatch ¶
Amazon CloudWatch monitors your Amazon Web Services (AWS) resources and the applications you run on AWS in real-time. You can use CloudWatch to collect and track metrics, which are the variables you want to measure for your resources and applications.
CloudWatch alarms send notifications or automatically make changes to the resources you are monitoring based on rules that you define. For example, you can monitor the CPU usage and disk reads and writes of your Amazon Elastic Compute Cloud (Amazon EC2) instances and then use this data to determine whether you should launch additional instances to handle increased load. You can also use this data to stop under-used instances to save money.
In addition to monitoring the built-in metrics that come with AWS, you can monitor your own custom metrics. With CloudWatch, you gain system-wide visibility into resource utilization, application performance, and operational health. The service client's operations are safe to be used concurrently. It is not safe to mutate any of the client's properties though.
func New ¶
func New(p client.ConfigProvider, cfgs ...*aws.Config) *CloudWatch
New creates a new instance of the CloudWatch client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.
Example:
// Create a CloudWatch client from just a session. svc := cloudwatch.New(mySession) // Create a CloudWatch client with additional configuration svc := cloudwatch.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
func (*CloudWatch) DeleteAlarms ¶
func (c *CloudWatch) DeleteAlarms(input *DeleteAlarmsInput) (*DeleteAlarmsOutput, error)
Deletes all specified alarms. In the event of an error, no alarms are deleted.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.DeleteAlarmsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.DeleteAlarms(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) DeleteAlarmsRequest ¶
func (c *CloudWatch) DeleteAlarmsRequest(input *DeleteAlarmsInput) (req *request.Request, output *DeleteAlarmsOutput)
DeleteAlarmsRequest generates a request for the DeleteAlarms operation.
func (*CloudWatch) DescribeAlarmHistory ¶
func (c *CloudWatch) DescribeAlarmHistory(input *DescribeAlarmHistoryInput) (*DescribeAlarmHistoryOutput, error)
Retrieves history for the specified alarm. Filter alarms by date range or item type. If an alarm name is not specified, Amazon CloudWatch returns histories for all of the owner's alarms.
Amazon CloudWatch retains the history of an alarm for two weeks, whether
or not you delete the alarm.
Example ¶
package main import ( "fmt" "time" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.DescribeAlarmHistoryInput{ AlarmName: aws.String("AlarmName"), EndDate: aws.Time(time.Now()), HistoryItemType: aws.String("HistoryItemType"), MaxRecords: aws.Int64(1), NextToken: aws.String("NextToken"), StartDate: aws.Time(time.Now()), } resp, err := svc.DescribeAlarmHistory(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) DescribeAlarmHistoryPages ¶
func (c *CloudWatch) DescribeAlarmHistoryPages(input *DescribeAlarmHistoryInput, fn func(p *DescribeAlarmHistoryOutput, lastPage bool) (shouldContinue bool)) error
func (*CloudWatch) DescribeAlarmHistoryRequest ¶
func (c *CloudWatch) DescribeAlarmHistoryRequest(input *DescribeAlarmHistoryInput) (req *request.Request, output *DescribeAlarmHistoryOutput)
DescribeAlarmHistoryRequest generates a request for the DescribeAlarmHistory operation.
func (*CloudWatch) DescribeAlarms ¶
func (c *CloudWatch) DescribeAlarms(input *DescribeAlarmsInput) (*DescribeAlarmsOutput, error)
Retrieves alarms with the specified names. If no name is specified, all alarms for the user are returned. Alarms can be retrieved by using only a prefix for the alarm name, the alarm state, or a prefix for any action.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.DescribeAlarmsInput{ ActionPrefix: aws.String("ActionPrefix"), AlarmNamePrefix: aws.String("AlarmNamePrefix"), AlarmNames: []*string{ aws.String("AlarmName"), // Required // More values... }, MaxRecords: aws.Int64(1), NextToken: aws.String("NextToken"), StateValue: aws.String("StateValue"), } resp, err := svc.DescribeAlarms(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) DescribeAlarmsForMetric ¶
func (c *CloudWatch) DescribeAlarmsForMetric(input *DescribeAlarmsForMetricInput) (*DescribeAlarmsForMetricOutput, error)
Retrieves all alarms for a single metric. Specify a statistic, period, or unit to filter the set of alarms further.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.DescribeAlarmsForMetricInput{ MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, Period: aws.Int64(1), Statistic: aws.String("Statistic"), Unit: aws.String("StandardUnit"), } resp, err := svc.DescribeAlarmsForMetric(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) DescribeAlarmsForMetricRequest ¶
func (c *CloudWatch) DescribeAlarmsForMetricRequest(input *DescribeAlarmsForMetricInput) (req *request.Request, output *DescribeAlarmsForMetricOutput)
DescribeAlarmsForMetricRequest generates a request for the DescribeAlarmsForMetric operation.
func (*CloudWatch) DescribeAlarmsPages ¶
func (c *CloudWatch) DescribeAlarmsPages(input *DescribeAlarmsInput, fn func(p *DescribeAlarmsOutput, lastPage bool) (shouldContinue bool)) error
func (*CloudWatch) DescribeAlarmsRequest ¶
func (c *CloudWatch) DescribeAlarmsRequest(input *DescribeAlarmsInput) (req *request.Request, output *DescribeAlarmsOutput)
DescribeAlarmsRequest generates a request for the DescribeAlarms operation.
func (*CloudWatch) DisableAlarmActions ¶
func (c *CloudWatch) DisableAlarmActions(input *DisableAlarmActionsInput) (*DisableAlarmActionsOutput, error)
Disables actions for the specified alarms. When an alarm's actions are disabled the alarm's state may change, but none of the alarm's actions will execute.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.DisableAlarmActionsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.DisableAlarmActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) DisableAlarmActionsRequest ¶
func (c *CloudWatch) DisableAlarmActionsRequest(input *DisableAlarmActionsInput) (req *request.Request, output *DisableAlarmActionsOutput)
DisableAlarmActionsRequest generates a request for the DisableAlarmActions operation.
func (*CloudWatch) EnableAlarmActions ¶
func (c *CloudWatch) EnableAlarmActions(input *EnableAlarmActionsInput) (*EnableAlarmActionsOutput, error)
Enables actions for the specified alarms.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.EnableAlarmActionsInput{ AlarmNames: []*string{ // Required aws.String("AlarmName"), // Required // More values... }, } resp, err := svc.EnableAlarmActions(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) EnableAlarmActionsRequest ¶
func (c *CloudWatch) EnableAlarmActionsRequest(input *EnableAlarmActionsInput) (req *request.Request, output *EnableAlarmActionsOutput)
EnableAlarmActionsRequest generates a request for the EnableAlarmActions operation.
func (*CloudWatch) GetMetricStatistics ¶
func (c *CloudWatch) GetMetricStatistics(input *GetMetricStatisticsInput) (*GetMetricStatisticsOutput, error)
Gets statistics for the specified metric.
The maximum number of data points that can be queried is 50,850, whereas
the maximum number of data points returned from a single GetMetricStatistics request is 1,440. If you make a request that generates more than 1,440 data points, Amazon CloudWatch returns an error. In such a case, you can alter the request by narrowing the specified time range or increasing the specified period. Alternatively, you can make multiple requests across adjacent time ranges. GetMetricStatistics does not return the data in chronological order.
Amazon CloudWatch aggregates data points based on the length of the period
that you specify. For example, if you request statistics with a one-minute granularity, Amazon CloudWatch aggregates data points with time stamps that fall within the same one-minute period. In such a case, the data points queried can greatly outnumber the data points returned.
The following examples show various statistics allowed by the data point
query maximum of 50,850 when you call GetMetricStatistics on Amazon EC2 instances with detailed (one-minute) monitoring enabled:
Statistics for up to 400 instances for a span of one hour Statistics for
up to 35 instances over a span of 24 hours Statistics for up to 2 instances over a span of 2 weeks For information about the namespace, metric names, and dimensions that other Amazon Web Services products use to send metrics to CloudWatch, go to Amazon CloudWatch Metrics, Namespaces, and Dimensions Reference (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/CW_Support_For_AWS.html) in the Amazon CloudWatch Developer Guide.
Example ¶
package main import ( "fmt" "time" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.GetMetricStatisticsInput{ EndTime: aws.Time(time.Now()), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Int64(1), // Required StartTime: aws.Time(time.Now()), // Required Statistics: []*string{ // Required aws.String("Statistic"), // Required // More values... }, Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.GetMetricStatistics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) GetMetricStatisticsRequest ¶
func (c *CloudWatch) GetMetricStatisticsRequest(input *GetMetricStatisticsInput) (req *request.Request, output *GetMetricStatisticsOutput)
GetMetricStatisticsRequest generates a request for the GetMetricStatistics operation.
func (*CloudWatch) ListMetrics ¶
func (c *CloudWatch) ListMetrics(input *ListMetricsInput) (*ListMetricsOutput, error)
Returns a list of valid metrics stored for the AWS account owner. Returned metrics can be used with GetMetricStatistics to obtain statistical data for a given metric.
Up to 500 results are returned for any one call. To retrieve further results,
use returned NextToken values with subsequent ListMetrics operations. If you create a metric with the PutMetricData action, allow up to fifteen minutes for the metric to appear in calls to the ListMetrics action. Statistics about the metric, however, are available sooner using GetMetricStatistics.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.ListMetricsInput{ Dimensions: []*cloudwatch.DimensionFilter{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), }, // More values... }, MetricName: aws.String("MetricName"), Namespace: aws.String("Namespace"), NextToken: aws.String("NextToken"), } resp, err := svc.ListMetrics(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) ListMetricsPages ¶
func (c *CloudWatch) ListMetricsPages(input *ListMetricsInput, fn func(p *ListMetricsOutput, lastPage bool) (shouldContinue bool)) error
func (*CloudWatch) ListMetricsRequest ¶
func (c *CloudWatch) ListMetricsRequest(input *ListMetricsInput) (req *request.Request, output *ListMetricsOutput)
ListMetricsRequest generates a request for the ListMetrics operation.
func (*CloudWatch) PutMetricAlarm ¶
func (c *CloudWatch) PutMetricAlarm(input *PutMetricAlarmInput) (*PutMetricAlarmOutput, error)
Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric. Optionally, this operation can associate one or more Amazon Simple Notification Service resources with the alarm.
When this operation creates an alarm, the alarm state is immediately set
to INSUFFICIENT_DATA. The alarm is evaluated and its StateValue is set appropriately. Any actions associated with the StateValue is then executed.
When updating an existing alarm, its StateValue is left unchanged. If
you are using an AWS Identity and Access Management (IAM) account to create or modify an alarm, you must have the following Amazon EC2 permissions: ec2:DescribeInstanceStatus and ec2:DescribeInstances for all alarms on Amazon EC2 instance status metrics. ec2:StopInstances for alarms with stop actions. ec2:TerminateInstances for alarms with terminate actions. ec2:DescribeInstanceRecoveryAttribute, and ec2:RecoverInstances for alarms with recover actions. If you have read/write permissions for Amazon CloudWatch but not for Amazon EC2, you can still create an alarm but the stop or terminate actions won't be performed on the Amazon EC2 instance. However, if you are later granted permission to use the associated Amazon EC2 APIs, the alarm actions you created earlier will be performed. For more information about IAM permissions, see Permissions and Policies (http://docs.aws.amazon.com//IAM/latest/UserGuide/PermissionsAndPolicies.html) in Using IAM.
If you are using an IAM role (e.g., an Amazon EC2 instance profile), you cannot stop or terminate the instance using alarm actions. However, you can still see the alarm state and perform any other actions such as Amazon SNS notifications or Auto Scaling policies.
If you are using temporary security credentials granted using the AWS Security Token Service (AWS STS), you cannot stop or terminate an Amazon EC2 instance using alarm actions.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.PutMetricAlarmInput{ AlarmName: aws.String("AlarmName"), // Required ComparisonOperator: aws.String("ComparisonOperator"), // Required EvaluationPeriods: aws.Int64(1), // Required MetricName: aws.String("MetricName"), // Required Namespace: aws.String("Namespace"), // Required Period: aws.Int64(1), // Required Statistic: aws.String("Statistic"), // Required Threshold: aws.Float64(1.0), // Required ActionsEnabled: aws.Bool(true), AlarmActions: []*string{ aws.String("ResourceName"), // Required // More values... }, AlarmDescription: aws.String("AlarmDescription"), Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, InsufficientDataActions: []*string{ aws.String("ResourceName"), // Required // More values... }, OKActions: []*string{ aws.String("ResourceName"), // Required // More values... }, Unit: aws.String("StandardUnit"), } resp, err := svc.PutMetricAlarm(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) PutMetricAlarmRequest ¶
func (c *CloudWatch) PutMetricAlarmRequest(input *PutMetricAlarmInput) (req *request.Request, output *PutMetricAlarmOutput)
PutMetricAlarmRequest generates a request for the PutMetricAlarm operation.
func (*CloudWatch) PutMetricData ¶
func (c *CloudWatch) PutMetricData(input *PutMetricDataInput) (*PutMetricDataOutput, error)
Publishes metric data points to Amazon CloudWatch. Amazon CloudWatch associates the data points with the specified metric. If the specified metric does not exist, Amazon CloudWatch creates the metric. When Amazon CloudWatch creates a metric, it can take up to fifteen minutes for the metric to appear in calls to the ListMetrics action.
Each PutMetricData request is limited to 8 KB in size for HTTP GET requests
and is limited to 40 KB in size for HTTP POST requests.
Although the Value parameter accepts numbers of type Double, Amazon CloudWatch rejects values that are either too small or too large. Values must be in the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are not supported. Data that is timestamped 24 hours or more in the past may take in excess of 48 hours to become available from submission time using GetMetricStatistics.
Example ¶
package main import ( "fmt" "time" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.PutMetricDataInput{ MetricData: []*cloudwatch.MetricDatum{ // Required { // Required MetricName: aws.String("MetricName"), // Required Dimensions: []*cloudwatch.Dimension{ { // Required Name: aws.String("DimensionName"), // Required Value: aws.String("DimensionValue"), // Required }, // More values... }, StatisticValues: &cloudwatch.StatisticSet{ Maximum: aws.Float64(1.0), // Required Minimum: aws.Float64(1.0), // Required SampleCount: aws.Float64(1.0), // Required Sum: aws.Float64(1.0), // Required }, Timestamp: aws.Time(time.Now()), Unit: aws.String("StandardUnit"), Value: aws.Float64(1.0), }, // More values... }, Namespace: aws.String("Namespace"), // Required } resp, err := svc.PutMetricData(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) PutMetricDataRequest ¶
func (c *CloudWatch) PutMetricDataRequest(input *PutMetricDataInput) (req *request.Request, output *PutMetricDataOutput)
PutMetricDataRequest generates a request for the PutMetricData operation.
func (*CloudWatch) SetAlarmState ¶
func (c *CloudWatch) SetAlarmState(input *SetAlarmStateInput) (*SetAlarmStateOutput, error)
Temporarily sets the state of an alarm. When the updated StateValue differs from the previous value, the action configured for the appropriate state is invoked. For example, if your alarm is configured to send an Amazon SNS message when an alarm is triggered, temporarily changing the alarm's state to ALARM will send an Amazon SNS message. This is not a permanent change. The next periodic alarm check (in about a minute) will set the alarm to its actual state. Because the alarm state change happens very quickly, it is typically only visibile in the alarm's History tab in the Amazon CloudWatch console or through DescribeAlarmHistory.
Example ¶
package main import ( "fmt" "github.com/djannot/aws-sdk-go/aws" "github.com/djannot/aws-sdk-go/aws/session" "github.com/djannot/aws-sdk-go/service/cloudwatch" ) func main() { svc := cloudwatch.New(session.New()) params := &cloudwatch.SetAlarmStateInput{ AlarmName: aws.String("AlarmName"), // Required StateReason: aws.String("StateReason"), // Required StateValue: aws.String("StateValue"), // Required StateReasonData: aws.String("StateReasonData"), } resp, err := svc.SetAlarmState(params) if err != nil { // Print the error, cast err to awserr.Error to get the Code and // Message from an error. fmt.Println(err.Error()) return } // Pretty-print the response data. fmt.Println(resp) }
Output:
func (*CloudWatch) SetAlarmStateRequest ¶
func (c *CloudWatch) SetAlarmStateRequest(input *SetAlarmStateInput) (req *request.Request, output *SetAlarmStateOutput)
SetAlarmStateRequest generates a request for the SetAlarmState operation.
func (*CloudWatch) WaitUntilAlarmExists ¶
func (c *CloudWatch) WaitUntilAlarmExists(input *DescribeAlarmsInput) error
type Datapoint ¶
type Datapoint struct { // The average of metric values that correspond to the datapoint. Average *float64 `type:"double"` // The maximum of the metric value used for the datapoint. Maximum *float64 `type:"double"` // The minimum metric value used for the datapoint. Minimum *float64 `type:"double"` // The number of metric values that contributed to the aggregate value of this // datapoint. SampleCount *float64 `type:"double"` // The sum of metric values used for the datapoint. Sum *float64 `type:"double"` // The time stamp used for the datapoint. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The standard unit used for the datapoint. Unit *string `type:"string" enum:"StandardUnit"` // contains filtered or unexported fields }
The Datapoint data type encapsulates the statistical data that Amazon CloudWatch computes from metric data.
type DeleteAlarmsInput ¶
type DeleteAlarmsInput struct { // A list of alarms to be deleted. AlarmNames []*string `type:"list" required:"true"` // contains filtered or unexported fields }
func (DeleteAlarmsInput) GoString ¶
func (s DeleteAlarmsInput) GoString() string
GoString returns the string representation
func (DeleteAlarmsInput) String ¶
func (s DeleteAlarmsInput) String() string
String returns the string representation
func (*DeleteAlarmsInput) Validate ¶
func (s *DeleteAlarmsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DeleteAlarmsOutput ¶
type DeleteAlarmsOutput struct {
// contains filtered or unexported fields
}
func (DeleteAlarmsOutput) GoString ¶
func (s DeleteAlarmsOutput) GoString() string
GoString returns the string representation
func (DeleteAlarmsOutput) String ¶
func (s DeleteAlarmsOutput) String() string
String returns the string representation
type DescribeAlarmHistoryInput ¶
type DescribeAlarmHistoryInput struct { // The name of the alarm. AlarmName *string `min:"1" type:"string"` // The ending date to retrieve alarm history. EndDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The type of alarm histories to retrieve. HistoryItemType *string `type:"string" enum:"HistoryItemType"` // The maximum number of alarm history records to retrieve. MaxRecords *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` // The starting date to retrieve alarm history. StartDate *time.Time `type:"timestamp" timestampFormat:"iso8601"` // contains filtered or unexported fields }
func (DescribeAlarmHistoryInput) GoString ¶
func (s DescribeAlarmHistoryInput) GoString() string
GoString returns the string representation
func (DescribeAlarmHistoryInput) String ¶
func (s DescribeAlarmHistoryInput) String() string
String returns the string representation
func (*DescribeAlarmHistoryInput) Validate ¶
func (s *DescribeAlarmHistoryInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DescribeAlarmHistoryOutput ¶
type DescribeAlarmHistoryOutput struct { // A list of alarm histories in JSON format. AlarmHistoryItems []*AlarmHistoryItem `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` // contains filtered or unexported fields }
The output for the DescribeAlarmHistory action.
func (DescribeAlarmHistoryOutput) GoString ¶
func (s DescribeAlarmHistoryOutput) GoString() string
GoString returns the string representation
func (DescribeAlarmHistoryOutput) String ¶
func (s DescribeAlarmHistoryOutput) String() string
String returns the string representation
type DescribeAlarmsForMetricInput ¶
type DescribeAlarmsForMetricInput struct { // The list of dimensions associated with the metric. If the metric has any // associated dimensions, you must specify them in order for the DescribeAlarmsForMetric // to succeed. Dimensions []*Dimension `type:"list"` // The name of the metric. MetricName *string `min:"1" type:"string" required:"true"` // The namespace of the metric. Namespace *string `min:"1" type:"string" required:"true"` // The period in seconds over which the statistic is applied. Period *int64 `min:"60" type:"integer"` // The statistic for the metric. Statistic *string `type:"string" enum:"Statistic"` // The unit for the metric. Unit *string `type:"string" enum:"StandardUnit"` // contains filtered or unexported fields }
func (DescribeAlarmsForMetricInput) GoString ¶
func (s DescribeAlarmsForMetricInput) GoString() string
GoString returns the string representation
func (DescribeAlarmsForMetricInput) String ¶
func (s DescribeAlarmsForMetricInput) String() string
String returns the string representation
func (*DescribeAlarmsForMetricInput) Validate ¶
func (s *DescribeAlarmsForMetricInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DescribeAlarmsForMetricOutput ¶
type DescribeAlarmsForMetricOutput struct { // A list of information for each alarm with the specified metric. MetricAlarms []*MetricAlarm `type:"list"` // contains filtered or unexported fields }
The output for the DescribeAlarmsForMetric action.
func (DescribeAlarmsForMetricOutput) GoString ¶
func (s DescribeAlarmsForMetricOutput) GoString() string
GoString returns the string representation
func (DescribeAlarmsForMetricOutput) String ¶
func (s DescribeAlarmsForMetricOutput) String() string
String returns the string representation
type DescribeAlarmsInput ¶
type DescribeAlarmsInput struct { // The action name prefix. ActionPrefix *string `min:"1" type:"string"` // The alarm name prefix. AlarmNames cannot be specified if this parameter is // specified. AlarmNamePrefix *string `min:"1" type:"string"` // A list of alarm names to retrieve information for. AlarmNames []*string `type:"list"` // The maximum number of alarm descriptions to retrieve. MaxRecords *int64 `min:"1" type:"integer"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` // The state value to be used in matching alarms. StateValue *string `type:"string" enum:"StateValue"` // contains filtered or unexported fields }
func (DescribeAlarmsInput) GoString ¶
func (s DescribeAlarmsInput) GoString() string
GoString returns the string representation
func (DescribeAlarmsInput) String ¶
func (s DescribeAlarmsInput) String() string
String returns the string representation
func (*DescribeAlarmsInput) Validate ¶
func (s *DescribeAlarmsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DescribeAlarmsOutput ¶
type DescribeAlarmsOutput struct { // A list of information for the specified alarms. MetricAlarms []*MetricAlarm `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` // contains filtered or unexported fields }
The output for the DescribeAlarms action.
func (DescribeAlarmsOutput) GoString ¶
func (s DescribeAlarmsOutput) GoString() string
GoString returns the string representation
func (DescribeAlarmsOutput) String ¶
func (s DescribeAlarmsOutput) String() string
String returns the string representation
type Dimension ¶
type Dimension struct { // The name of the dimension. Name *string `min:"1" type:"string" required:"true"` // The value representing the dimension measurement Value *string `min:"1" type:"string" required:"true"` // contains filtered or unexported fields }
The Dimension data type further expands on the identity of a metric using a Name, Value pair.
For examples that use one or more dimensions, see PutMetricData.
type DimensionFilter ¶
type DimensionFilter struct { // The dimension name to be matched. Name *string `min:"1" type:"string" required:"true"` // The value of the dimension to be matched. // // Specifying a Name without specifying a Value returns all values associated // with that Name. Value *string `min:"1" type:"string"` // contains filtered or unexported fields }
The DimensionFilter data type is used to filter ListMetrics results.
func (DimensionFilter) GoString ¶
func (s DimensionFilter) GoString() string
GoString returns the string representation
func (DimensionFilter) String ¶
func (s DimensionFilter) String() string
String returns the string representation
func (*DimensionFilter) Validate ¶
func (s *DimensionFilter) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DisableAlarmActionsInput ¶
type DisableAlarmActionsInput struct { // The names of the alarms to disable actions for. AlarmNames []*string `type:"list" required:"true"` // contains filtered or unexported fields }
func (DisableAlarmActionsInput) GoString ¶
func (s DisableAlarmActionsInput) GoString() string
GoString returns the string representation
func (DisableAlarmActionsInput) String ¶
func (s DisableAlarmActionsInput) String() string
String returns the string representation
func (*DisableAlarmActionsInput) Validate ¶
func (s *DisableAlarmActionsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type DisableAlarmActionsOutput ¶
type DisableAlarmActionsOutput struct {
// contains filtered or unexported fields
}
func (DisableAlarmActionsOutput) GoString ¶
func (s DisableAlarmActionsOutput) GoString() string
GoString returns the string representation
func (DisableAlarmActionsOutput) String ¶
func (s DisableAlarmActionsOutput) String() string
String returns the string representation
type EnableAlarmActionsInput ¶
type EnableAlarmActionsInput struct { // The names of the alarms to enable actions for. AlarmNames []*string `type:"list" required:"true"` // contains filtered or unexported fields }
func (EnableAlarmActionsInput) GoString ¶
func (s EnableAlarmActionsInput) GoString() string
GoString returns the string representation
func (EnableAlarmActionsInput) String ¶
func (s EnableAlarmActionsInput) String() string
String returns the string representation
func (*EnableAlarmActionsInput) Validate ¶
func (s *EnableAlarmActionsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type EnableAlarmActionsOutput ¶
type EnableAlarmActionsOutput struct {
// contains filtered or unexported fields
}
func (EnableAlarmActionsOutput) GoString ¶
func (s EnableAlarmActionsOutput) GoString() string
GoString returns the string representation
func (EnableAlarmActionsOutput) String ¶
func (s EnableAlarmActionsOutput) String() string
String returns the string representation
type GetMetricStatisticsInput ¶
type GetMetricStatisticsInput struct { // A list of dimensions describing qualities of the metric. Dimensions []*Dimension `type:"list"` // The time stamp to use for determining the last datapoint to return. The value // specified is exclusive; results will include datapoints up to the time stamp // specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z). EndTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The name of the metric, with or without spaces. MetricName *string `min:"1" type:"string" required:"true"` // The namespace of the metric, with or without spaces. Namespace *string `min:"1" type:"string" required:"true"` // The granularity, in seconds, of the returned datapoints. Period must be at // least 60 seconds and must be a multiple of 60. The default value is 60. Period *int64 `min:"60" type:"integer" required:"true"` // The time stamp to use for determining the first datapoint to return. The // value specified is inclusive; results include datapoints with the time stamp // specified. The time stamp must be in ISO 8601 UTC format (e.g., 2014-09-03T23:00:00Z). // // The specified start time is rounded down to the nearest value. Datapoints // are returned for start times up to two weeks in the past. Specified start // times that are more than two weeks in the past will not return datapoints // for metrics that are older than two weeks. Data that is timestamped 24 hours // or more in the past may take in excess of 48 hours to become available from // submission time using GetMetricStatistics. StartTime *time.Time `type:"timestamp" timestampFormat:"iso8601" required:"true"` // The metric statistics to return. For information about specific statistics // returned by GetMetricStatistics, see Statistics (http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html#Statistic) // in the Amazon CloudWatch Developer Guide. Statistics []*string `min:"1" type:"list" required:"true"` // The unit for the metric. Unit *string `type:"string" enum:"StandardUnit"` // contains filtered or unexported fields }
func (GetMetricStatisticsInput) GoString ¶
func (s GetMetricStatisticsInput) GoString() string
GoString returns the string representation
func (GetMetricStatisticsInput) String ¶
func (s GetMetricStatisticsInput) String() string
String returns the string representation
func (*GetMetricStatisticsInput) Validate ¶
func (s *GetMetricStatisticsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type GetMetricStatisticsOutput ¶
type GetMetricStatisticsOutput struct { // The datapoints for the specified metric. Datapoints []*Datapoint `type:"list"` // A label describing the specified metric. Label *string `type:"string"` // contains filtered or unexported fields }
The output for the GetMetricStatistics action.
func (GetMetricStatisticsOutput) GoString ¶
func (s GetMetricStatisticsOutput) GoString() string
GoString returns the string representation
func (GetMetricStatisticsOutput) String ¶
func (s GetMetricStatisticsOutput) String() string
String returns the string representation
type ListMetricsInput ¶
type ListMetricsInput struct { // A list of dimensions to filter against. Dimensions []*DimensionFilter `type:"list"` // The name of the metric to filter against. MetricName *string `min:"1" type:"string"` // The namespace to filter against. Namespace *string `min:"1" type:"string"` // The token returned by a previous call to indicate that there is more data // available. NextToken *string `type:"string"` // contains filtered or unexported fields }
func (ListMetricsInput) GoString ¶
func (s ListMetricsInput) GoString() string
GoString returns the string representation
func (ListMetricsInput) String ¶
func (s ListMetricsInput) String() string
String returns the string representation
func (*ListMetricsInput) Validate ¶
func (s *ListMetricsInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type ListMetricsOutput ¶
type ListMetricsOutput struct { // A list of metrics used to generate statistics for an AWS account. Metrics []*Metric `type:"list"` // A string that marks the start of the next batch of returned results. NextToken *string `type:"string"` // contains filtered or unexported fields }
The output for the ListMetrics action.
func (ListMetricsOutput) GoString ¶
func (s ListMetricsOutput) GoString() string
GoString returns the string representation
func (ListMetricsOutput) String ¶
func (s ListMetricsOutput) String() string
String returns the string representation
type Metric ¶
type Metric struct { // A list of dimensions associated with the metric. Dimensions []*Dimension `type:"list"` // The name of the metric. MetricName *string `min:"1" type:"string"` // The namespace of the metric. Namespace *string `min:"1" type:"string"` // contains filtered or unexported fields }
The Metric data type contains information about a specific metric. If you call ListMetrics, Amazon CloudWatch returns information contained by this data type.
The example in the Examples section publishes two metrics named buffers
and latency. Both metrics are in the examples namespace. Both metrics have two dimensions, InstanceID and InstanceType.
type MetricAlarm ¶
type MetricAlarm struct { // Indicates whether actions should be executed during any changes to the alarm's // state. ActionsEnabled *bool `type:"boolean"` // The list of actions to execute when this alarm transitions into an ALARM // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). AlarmActions []*string `type:"list"` // The Amazon Resource Name (ARN) of the alarm. AlarmArn *string `min:"1" type:"string"` // The time stamp of the last update to the alarm configuration. AlarmConfigurationUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The description for the alarm. AlarmDescription *string `type:"string"` // The name of the alarm. AlarmName *string `min:"1" type:"string"` // The arithmetic operation to use when comparing the specified Statistic and // Threshold. The specified Statistic value is used as the first operand. ComparisonOperator *string `type:"string" enum:"ComparisonOperator"` // The list of dimensions associated with the alarm's associated metric. Dimensions []*Dimension `type:"list"` // The number of periods over which data is compared to the specified threshold. EvaluationPeriods *int64 `min:"1" type:"integer"` // The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // The current WSDL lists this attribute as UnknownActions. InsufficientDataActions []*string `type:"list"` // The name of the alarm's metric. MetricName *string `min:"1" type:"string"` // The namespace of alarm's associated metric. Namespace *string `min:"1" type:"string"` // The list of actions to execute when this alarm transitions into an OK state // from any other state. Each action is specified as an Amazon Resource Name // (ARN). OKActions []*string `type:"list"` // The period in seconds over which the statistic is applied. Period *int64 `min:"60" type:"integer"` // A human-readable explanation for the alarm's state. StateReason *string `type:"string"` // An explanation for the alarm's state in machine-readable JSON format StateReasonData *string `type:"string"` // The time stamp of the last update to the alarm's state. StateUpdatedTimestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The state value for the alarm. StateValue *string `type:"string" enum:"StateValue"` // The statistic to apply to the alarm's associated metric. Statistic *string `type:"string" enum:"Statistic"` // The value against which the specified statistic is compared. Threshold *float64 `type:"double"` // The unit of the alarm's associated metric. Unit *string `type:"string" enum:"StandardUnit"` // contains filtered or unexported fields }
The MetricAlarm data type represents an alarm. You can use PutMetricAlarm to create or update an alarm.
func (MetricAlarm) GoString ¶
func (s MetricAlarm) GoString() string
GoString returns the string representation
func (MetricAlarm) String ¶
func (s MetricAlarm) String() string
String returns the string representation
type MetricDatum ¶
type MetricDatum struct { // A list of dimensions associated with the metric. Note, when using the Dimensions // value in a query, you need to append .member.N to it (e.g., Dimensions.member.N). Dimensions []*Dimension `type:"list"` // The name of the metric. MetricName *string `min:"1" type:"string" required:"true"` // A set of statistical values describing the metric. StatisticValues *StatisticSet `type:"structure"` // The time stamp used for the metric in ISO 8601 Universal Coordinated Time // (UTC) format. If not specified, the default value is set to the time the // metric data was received. Timestamp *time.Time `type:"timestamp" timestampFormat:"iso8601"` // The unit of the metric. Unit *string `type:"string" enum:"StandardUnit"` // The value for the metric. // // Although the Value parameter accepts numbers of type Double, Amazon CloudWatch // rejects values that are either too small or too large. Values must be in // the range of 8.515920e-109 to 1.174271e+108 (Base 10) or 2e-360 to 2e360 // (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are // not supported. Value *float64 `type:"double"` // contains filtered or unexported fields }
The MetricDatum data type encapsulates the information sent with PutMetricData to either create a new metric or add new values to be aggregated into an existing metric.
func (MetricDatum) GoString ¶
func (s MetricDatum) GoString() string
GoString returns the string representation
func (MetricDatum) String ¶
func (s MetricDatum) String() string
String returns the string representation
func (*MetricDatum) Validate ¶
func (s *MetricDatum) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type PutMetricAlarmInput ¶
type PutMetricAlarmInput struct { // Indicates whether or not actions should be executed during any changes to // the alarm's state. ActionsEnabled *bool `type:"boolean"` // The list of actions to execute when this alarm transitions into an ALARM // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. AlarmActions []*string `type:"list"` // The description for the alarm. AlarmDescription *string `type:"string"` // The descriptive name for the alarm. This name must be unique within the user's // AWS account AlarmName *string `min:"1" type:"string" required:"true"` // The arithmetic operation to use when comparing the specified Statistic and // Threshold. The specified Statistic value is used as the first operand. ComparisonOperator *string `type:"string" required:"true" enum:"ComparisonOperator"` // The dimensions for the alarm's associated metric. Dimensions []*Dimension `type:"list"` // The number of periods over which data is compared to the specified threshold. EvaluationPeriods *int64 `min:"1" type:"integer" required:"true"` // The list of actions to execute when this alarm transitions into an INSUFFICIENT_DATA // state from any other state. Each action is specified as an Amazon Resource // Name (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. InsufficientDataActions []*string `type:"list"` // The name for the alarm's associated metric. MetricName *string `min:"1" type:"string" required:"true"` // The namespace for the alarm's associated metric. Namespace *string `min:"1" type:"string" required:"true"` // The list of actions to execute when this alarm transitions into an OK state // from any other state. Each action is specified as an Amazon Resource Name // (ARN). // // Valid Values: arn:aws:automate:region (e.g., us-east-1):ec2:stop | arn:aws:automate:region // (e.g., us-east-1):ec2:terminate | arn:aws:automate:region (e.g., us-east-1):ec2:recover // // Valid Values (for use with IAM roles): arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Stop/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Terminate/1.0 // | arn:aws:swf:us-east-1:{customer-account}:action/actions/AWS_EC2.InstanceId.Reboot/1.0 // // Note: You must create at least one stop, terminate, or reboot alarm using // the Amazon EC2 or CloudWatch console to create the EC2ActionsAccess IAM role // for the first time. After this IAM role is created, you can create stop, // terminate, or reboot alarms using the CLI. OKActions []*string `type:"list"` // The period in seconds over which the specified statistic is applied. Period *int64 `min:"60" type:"integer" required:"true"` // The statistic to apply to the alarm's associated metric. Statistic *string `type:"string" required:"true" enum:"Statistic"` // The value against which the specified statistic is compared. Threshold *float64 `type:"double" required:"true"` // The statistic's unit of measure. For example, the units for the Amazon EC2 // NetworkIn metric are Bytes because NetworkIn tracks the number of bytes that // an instance receives on all network interfaces. You can also specify a unit // when you create a custom metric. Units help provide conceptual meaning to // your data. Metric data points that specify a unit of measure, such as Percent, // are aggregated separately. // // Note: If you specify a unit, you must use a unit that is appropriate for // the metric. Otherwise, this can cause an Amazon CloudWatch alarm to get stuck // in the INSUFFICIENT DATA state. Unit *string `type:"string" enum:"StandardUnit"` // contains filtered or unexported fields }
func (PutMetricAlarmInput) GoString ¶
func (s PutMetricAlarmInput) GoString() string
GoString returns the string representation
func (PutMetricAlarmInput) String ¶
func (s PutMetricAlarmInput) String() string
String returns the string representation
func (*PutMetricAlarmInput) Validate ¶
func (s *PutMetricAlarmInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type PutMetricAlarmOutput ¶
type PutMetricAlarmOutput struct {
// contains filtered or unexported fields
}
func (PutMetricAlarmOutput) GoString ¶
func (s PutMetricAlarmOutput) GoString() string
GoString returns the string representation
func (PutMetricAlarmOutput) String ¶
func (s PutMetricAlarmOutput) String() string
String returns the string representation
type PutMetricDataInput ¶
type PutMetricDataInput struct { // A list of data describing the metric. MetricData []*MetricDatum `type:"list" required:"true"` // The namespace for the metric data. // // You cannot specify a namespace that begins with "AWS/". Namespaces that // begin with "AWS/" are reserved for other Amazon Web Services products that // send metrics to Amazon CloudWatch. Namespace *string `min:"1" type:"string" required:"true"` // contains filtered or unexported fields }
func (PutMetricDataInput) GoString ¶
func (s PutMetricDataInput) GoString() string
GoString returns the string representation
func (PutMetricDataInput) String ¶
func (s PutMetricDataInput) String() string
String returns the string representation
func (*PutMetricDataInput) Validate ¶
func (s *PutMetricDataInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type PutMetricDataOutput ¶
type PutMetricDataOutput struct {
// contains filtered or unexported fields
}
func (PutMetricDataOutput) GoString ¶
func (s PutMetricDataOutput) GoString() string
GoString returns the string representation
func (PutMetricDataOutput) String ¶
func (s PutMetricDataOutput) String() string
String returns the string representation
type SetAlarmStateInput ¶
type SetAlarmStateInput struct { // The descriptive name for the alarm. This name must be unique within the user's // AWS account. The maximum length is 255 characters. AlarmName *string `min:"1" type:"string" required:"true"` // The reason that this alarm is set to this specific state (in human-readable // text format) StateReason *string `type:"string" required:"true"` // The reason that this alarm is set to this specific state (in machine-readable // JSON format) StateReasonData *string `type:"string"` // The value of the state. StateValue *string `type:"string" required:"true" enum:"StateValue"` // contains filtered or unexported fields }
func (SetAlarmStateInput) GoString ¶
func (s SetAlarmStateInput) GoString() string
GoString returns the string representation
func (SetAlarmStateInput) String ¶
func (s SetAlarmStateInput) String() string
String returns the string representation
func (*SetAlarmStateInput) Validate ¶
func (s *SetAlarmStateInput) Validate() error
Validate inspects the fields of the type to determine if they are valid.
type SetAlarmStateOutput ¶
type SetAlarmStateOutput struct {
// contains filtered or unexported fields
}
func (SetAlarmStateOutput) GoString ¶
func (s SetAlarmStateOutput) GoString() string
GoString returns the string representation
func (SetAlarmStateOutput) String ¶
func (s SetAlarmStateOutput) String() string
String returns the string representation
type StatisticSet ¶
type StatisticSet struct { // The maximum value of the sample set. Maximum *float64 `type:"double" required:"true"` // The minimum value of the sample set. Minimum *float64 `type:"double" required:"true"` // The number of samples used for the statistic set. SampleCount *float64 `type:"double" required:"true"` // The sum of values for the sample set. Sum *float64 `type:"double" required:"true"` // contains filtered or unexported fields }
The StatisticSet data type describes the StatisticValues component of MetricDatum, and represents a set of statistics that describes a specific metric.
func (StatisticSet) GoString ¶
func (s StatisticSet) GoString() string
GoString returns the string representation
func (StatisticSet) String ¶
func (s StatisticSet) String() string
String returns the string representation
func (*StatisticSet) Validate ¶
func (s *StatisticSet) Validate() error
Validate inspects the fields of the type to determine if they are valid.
Directories ¶
Path | Synopsis |
---|---|
Package cloudwatchiface provides an interface for the Amazon CloudWatch.
|
Package cloudwatchiface provides an interface for the Amazon CloudWatch. |