2011-09-08 3 views
2

Je suis en train de publier plusieurs métriques personnalisées pour CloudWatch. Lorsque les métriques sont sur mon propre espace de noms, tout se passe bien. Je veux maintenant publier une métrique par instance, similaire à CPUUtilization, avec les dimensions ImageId=i-XXXXXXXX, dans l'espace de noms AWS/EC2. Malheureusement, CloudWatch est en désaccord avec moi et me donne cette erreur: "La valeur AWS/pour le paramètre Namespace n'est pas valide."Comment publier des métriques par instance dans l'espace de noms AWS/EC2 pour Amazon CloudWatch?

  • Comment ajouter une mesure personnalisée à une instance spécifique?
  • Est-ce possible?

merci beaucoup,

Répondre

4

L'espace de noms AWS/EC2 est réservé pour des mesures publiées EC2, il est donc impossible. Je suis sûr que je l'ai lu dans la documentation mais je ne trouve pas la source aujourd'hui.

Vérifiez le dernier message dans ce fil: https://forums.aws.amazon.com/thread.jspa?threadID=86835

+0

Vous ne pouvez pas spécifier un espace de noms commençant par « AWS/». Les espaces de noms commençant par "AWS /" sont réservés aux produits Amazon Web Services. Pour plus d'informations: http://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html#Namespace –

1

je tentais de comprendre cela notre pour moi-même. Problème comme les namespaces/metricnames/dimensions n'étant pas bien défini dans les docs m'a laissé chercher un peu.

Voici le script que j'utilisais, et à l'écriture détaillée, vous pouvez voir l'explication de ce que les termes signifient et pourquoi les choses ont été faites comme elles l'étaient. J'espère que cela aide les autres à obtenir cette configuration :)

Detailed Writeup with examples/pictures/charts

#setup variables 
export AWS_CLOUDWATCH_HOME=/home/myuser/cloudwatch/CloudWatch-1.0.12.1 
export JAVA_HOME=/usr/lib/jvm/jre1.6.0_33 
export AWS_CREDENTIAL_FILE=$AWS_CLOUDWATCH_HOME/credential-file-path.template 
  
# get free memory and send to AWS CloudWatch 
FREEMEMKB=$(egrep -Eio "MemFree:\s*([0-9]*)" /proc/meminfo | egrep -Eio "[0-9]*") 
echo `/home/myuser/cloudwatch/CloudWatch-1.0.12.1/mon-put-data --namespace="MySite" --metric-name=FreeMemory --dimensions="InstanceId=i-d889e31d" --unit=Kilobytes --value=$FREEMEMKB` 
+0

Merci! C'est exactement ce que je cherchais - la documentation CloudWatch manque cruellement, et ce n'est qu'un exemple. J'utilise Ruby aws-sdk pour publier des métriques personnalisées, et cela fonctionne exactement de la même manière. – Guss

Questions connexes