简体   繁体   English

Amazon Cloudwatch 服务未返回指标信息

[英]Amazon Cloudwatch service not returning metrics information

I am writing a Java code for retrieving Amazon EC2 metrics using Amazon Cloudwatch.我正在编写用于使用 Amazon Cloudwatch 检索 Amazon EC2 指标的 Java 代码。 Below is the code:下面是代码:

        AWSCredentials awsCredentials =  new BasicAWSCredentials(aws_accessKey, aws_secretKey);
        AmazonCloudWatchClient cloudWatch = new AmazonCloudWatchClient(awsCredentials);

        Dimension instanceDimension = new Dimension();
        instanceDimension.setName("InstanceId");
        instanceDimension.setValue("i-480de11e");


        GetMetricStatisticsRequest request = new GetMetricStatisticsRequest();
        request.setNamespace("AWS/EC2");
        request.setPeriod(60 * 5);

        ArrayList<String> stats = new ArrayList<String>();
        stats.add("Average");
        request.setStatistics(stats);

        ArrayList<Dimension> dimensions = new ArrayList<Dimension>();
        dimensions.add(instanceDimension);
        request.setDimensions(dimensions);
        request.setMetricName("CPUUtilization");

        SimpleDateFormat format = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
        Calendar cal = Calendar.getInstance();
        cal.setTime(new Date());
        cal.add(Calendar.HOUR_OF_DAY, -5);
        cal.add(Calendar.MINUTE, -30);
        Date endTime = format.parse(cal.getTime().toString());     
        request.setEndTime(endTime);

        cal.add(Calendar.MINUTE, -10);
        Date startTime = format.parse(cal.getTime().toString());     
        request.setStartTime(startTime);

        GetMetricStatisticsResult getMetricStatisticsResult = cloudWatch.getMetricStatistics(request);
       System.out.println(getMetricStatisticsResult.getDatapoints().size());

The above is returning zero though I can see the metrics data in AWS console.尽管我可以在 AWS 控制台中看到指标数据,但上述内容返回零。 Few thing I would like to clarify:我想澄清的几件事:

  1. Do I need to set endpoint like cloudWatch.setEndpoint(....)?我是否需要设置像cloudWatch.setEndpoint(....)?这样的端点cloudWatch.setEndpoint(....)?
  2. Could there be an issue with setting start/end time related to format etc?设置与格式等相关的开始/结束时间是否有问题?

通过设置cloudWatch.setEndpoint(....)解决了该问题

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM