Как я могу получить статистику EC2 через Cloudwatch с драгоценным камнем amazon-ec2? - PullRequest
3 голосов
/ 07 сентября 2011

Я не уверен, что делаю неправильно, но у меня проблемы с использованием этого драгоценного камня для получения статистики EC2: https://github.com/grempe/amazon-ec2

Я могу подключиться к своим экземплярам EC2 через Cloudwatch:

@cw = AWS::Cloudwatch::Base.new(:access_key_id => ACCESS_KEY_ID, :secret_access_key => SECRET_KEY_ID)

Я вижу все доступные мне метрики:

@cw.list_metrics

Но когда я пытаюсь использовать метод get_metric_statistics, я не могу понять, какие параметры опций ссылаются на фактические поля метрики.

# Fails
@cw.get_metric_statistics(namespace: 'AWS/EC2', measure_name: 'CPUUtilization', statistics: "Average")

Я получаю общую ошибку "NoMethodError: undefined метод` elements 'for nil: NilClass ", и я не могу узнать, как правильно использовать get_metric_statistics (). У кого-нибудь есть пример кода, который они использовали для подобных вещей? Меня смущают параметры «статистика» и «измерения».

Если я смогу предоставить какую-либо дополнительную информацию, дайте мне знать.

Ответы [ 2 ]

1 голос
/ 21 марта 2012

выберите базу сервера на вашем экземпляре, в какой зоне

Amazon CloudWatch Endpoints
US-East (Northern Virginia)         monitoring.us-east-1.amazonaws.com
US-West (Northern California)       monitoring.us-west-1.amazonaws.com
EU (Ireland)                        monitoring.eu-west-1.amazonaws.com
Asia Pacific (Singapore)            monitoring.ap-southeast-1.amazonaws.com

in your example u miss to set server zone that why its not working 



 @cw = AWS::Cloudwatch::Base.new(:access_key_id => 'key', :secret_access_key => 'key',:server => 'monitoring.eu-west-1.amazonaws.com')
    instance_id ='instanceid'
    time = Time.new
    time.gmtime
    @result = @cw.get_metric_statistics(namespace: 'AWS/EC2', measure_name: 'CPUUtilization',  statistics: 'Average', start_time: time-1000, dimensions: "InstanceId=#{instance_id}")

попробуйте использовать этот код и поделитесь своими результатами.этот код работает для меня

0 голосов
/ 07 сентября 2011

Итак, я выяснил это после проверки источника драгоценного камня, он должен выглядеть следующим образом.

@cw.get_metric_statistics(namespace: 'AWS/EC2', measure_name: 'CPUUtilization',  statistics: 'Average', start_time: 1.minute.ago.to_time, dimensions: "InstanceId=#{instance_id}")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...