Class: RightScale::CloudApi::AWS::CW::Manager

Inherits:
Manager
  • Object
show all
Defined in:
lib/cloud/aws/cw/manager.rb

Overview

Amazon CloudWatch (CW) compatible manager (thread safe).

Examples:

require "right_aws_api"

cw = RightScale::CloudApi::AWS::CW::Manager::new(key, secret, 'https://monitoring.us-east-1.amazonaws.com')

# Get a list of valid metrics stored for the AWS account owner.
cw.ListMetrics #=>
  {"ListMetricsResponse"=>
    {"@xmlns"=>"http://monitoring.amazonaws.com/doc/2010-08-01/",
     "ListMetricsResult"=>
      {"Metrics"=>
        {"member"=>
          [{"Dimensions"=>
             {"member"=>{"Name"=>"InstanceId", "Value"=>"i-29fc074d"}},
            "MetricName"=>"DiskReadOps",
            "Namespace"=>"AWS/EC2"},
           {"Dimensions"=>
             {"member"=>
               {"Name"=>"QueueName",
                "Value"=>"dano7_audit_queue_server_array_test"}},
            "MetricName"=>"ApproximateNumberOfMessagesDelayed",
            "Namespace"=>"AWS/SQS"},
           {"Dimensions"=>
             {"member"=>
               {"Name"=>"QueueName",
                "Value"=>"dano_input_queue_server_array_test"}},
            "MetricName"=>"ApproximateNumberOfMessagesNotVisible",
            "Namespace"=>"AWS/SQS"}]},
       "NextToken"=>
        "w9...xhCEA=="},
     "ResponseMetadata"=>{"RequestId"=>"bd188949-4f61-11e2-9a69-59e1411d80ca"}}}
# Get alarms history.
cw.DescribeAlarmHistory #=>
  {"DescribeAlarmHistoryResponse"=>
    {"@xmlns"=>"http://monitoring.amazonaws.com/doc/2010-08-01/",
     "DescribeAlarmHistoryResult"=>{"AlarmHistoryItems"=>nil},
     "ResponseMetadata"=>{"RequestId"=>"2f087a3b-4f62-11e2-b8d8-754622cf5638"}}}

# Get a history for the specified alarm.
cw.DescribeAlarmHistory('AlarmName' => 'MyAlarm')

See Also: