我在这里使用Newrelic的Cloudwatch插件: https://github.com/brettcave/newrelic_aws_cloudwatch_plugin
出于某种原因,我的回复全部归零:
[2014-09-19 12:43:15 UTC] INFO: Retrieving statistics: {:namespace=>"AWS/EC2", :metric_name=>"DiskWriteOps", :statistic=>"Sum", :unit=>"Count", :dimension=>{:name=>"AutoScalingGroupName", :value=>"AUTOSCALER-BackendGroup-19N8SYDEIPGYV"}, :period=>60, :start_time=>"2014-09-19T12:41:15Z", :component_name=>"AUTOSCALER-BackendGroup-19N8SYDEIPGYV", :end_time=>"2014-09-19T12:41:45Z", :dimensions=>[{:name=>"AutoScalingGroupName", :value=>"AUTOSCALER-BackendGroup-19N8SYDEIPGYV"}]}
[2014-09-19 12:43:15 UTC] INFO: Retrieved statistics: {:datapoints=>[], :label=>"DiskWriteOps", :response_metadata=>{:request_id=>"3cb0c8a6-3ffa-11e4-aea1-91b035de76f7"}}
[2014-09-19 12:43:15 UTC] DEBUG: metric_name: DiskWriteOps, statistic: Sum, unit: Count, response: nil
这是上面链接中描述的代码,它符合aws cloudwatch list-metrics --namespace "AWS/EC2"
命令输出。
module NewRelicAWS
module Collectors
class ASG < Base
def initialize(access_key, secret_key, region, options)
super(access_key, secret_key, region, options)
@asg = AWS::AutoScaling.new(
:access_key_id => @aws_access_key,
:secret_access_key => @aws_secret_key,
:region => @aws_region
)
end
def groups
@asg.groups
end
def metric_list
[
["CPUUtilization", "Average", "Percent"],
["DiskReadOps", "Sum", "Count"],
["DiskWriteOps", "Sum", "Count"],
["DiskWriteBytes" , "Sum", "Bytes"],
["NetworkIn", "Sum", "Bytes"],
["NetworkOut", "Sum", "Bytes"]
]
end
def collect
data_points = []
groups.each do |group|
metric_list.each do |(metric_name, statistic, unit)|
data_point = get_data_point(
:namespace => "AWS/EC2",
:metric_name => metric_name,
:statistic => statistic,
:unit => unit,
:dimension => {
:name => "AutoScalingGroupName",
:value => group.name
},
:period => 60,
:start_time => (Time.now.utc-120).iso8601,
:component_name => group.name
)
NewRelic::PlatformLogger.debug("metric_name: #{metric_name}, statistic: #{statistic}, unit: #{unit}, response: #{data_point.inspect}")
unless data_point.nil?
data_points << data_point
end
end
end
data_points
end
end
end
end
这与EC2插件几乎完全相同,不过EC2插件有效。知道什么可能是错的吗?
提前致谢。
答案 0 :(得分:0)
官方New Relic插件是否适合您? https://github.com/newrelic-platform/newrelic_aws_cloudwatch_plugin