2015-04-08 1 views
1

J'écris un code Java pour récupérer les données Amazon EC2 metrics en utilisant Amazon Cloudwatch. Voici l'exemple de code qui fonctionne bien.Obtention de données métriques de deux serveurs à l'aide d'Amazon Cloudwatch

Dimension instanceDimension = new Dimension(); 
    instanceDimension.setName("InstanceId); 
    instanceDimension.setValue(instanceId); 

    GetMetricStatisticsRequest request = new GetMetricStatisticsRequest().withStartTime(startTime) 
               .withNamespace("AWS/EC2") 
               .withPeriod(60 * 5) 
               .withDimensions(instanceDimension) 
               .withMetricName("CPUUtilization") 
               .withStatistics("Average") 
               .withEndTime(endTime); 

    GetMetricStatisticsResult getMetricStatisticsResult = cloudWatch.getMetricStatistics(request); 

Dans le code ci-dessus, je passe l'ID d'instance d'un serveur. J'ai besoin d'obtenir les données métriques de deux serveurs ayant un identifiant d'instance différent. Donc, ma requête est que je peux le faire en un seul appel en spécifiant deux dimensions comme liste et le passer à withDimensions OU ai-je besoin de faire deux appels différents pour obtenir les données métriques de deux serveurs?

Répondre

0

C'est une question fréquente. Vous devez effectuer deux requêtes distinctes pour chaque entité. La combinaison de plusieurs instances dans une requête n'est actuellement pas prise en charge par l'API CloudWatch.