1 votes

Exemple de publication de métriques personnalisées AWS CloudWatch

J'ai beaucoup de mal à publier une métrique personnalisée dans AWS CloudWatch. Le problème est que ma mesure "testmetric" ne s'affiche pas sur l'interface utilisateur de CloudWatch. Il se peut qu'il me manque la partie de l'interface utilisateur où la mesure devrait être visible, ou que je n'aie pas activé quelque chose quelque part... Clueless

J'ai essayé avec Boto (paquet Python boto==2.8.0)

from boto.ec2.cloudwatch import CloudWatchConnection
cwc = CloudWatchConnection(settings.AWS_ACCESS_KEY_ID, settings.AWS_SECRET_ACCESS_KEY)
cwc.put_metric_data(**{
    "namespace" : "testns",
    "name" : "testmetric",
    "unit" : "Count",
    "value" : 3
})

J'ai également essayé ce module simple de Loggly : https://github.com/loggly/loggly-watch/blob/master/cloudwatch.py

Thx

3voto

P.J Douillard Points 11

Vous passez les arguments à put_metric_data de manière incorrecte. Vous les passez comme un seul dictionnaire, alors qu'ils devraient être des arguments individuels comme ceci :

cwc.put_metric_data(namespace="testns",name="testmetric",unit="Count",value=3.0)

De plus, la valeur doit être un flottant, comme indiqué ci-dessus, et non un entier.

0voto

alpha1 Points 11

Si la région n'est pas fournie pour le CloudWatchConnection il capte automatiquement us-east-1 la métrique devrait y être disponible.

Soyez également prudent avec l'obtention de votre région, à partir de boto v2.27.0, boto.ec2.get_region("us-west-1") retourne CloudWatchConnection:ec2.us-west-1.amazonaws.com alors que vous auriez besoin de CloudWatchConnection:monitoring.us-west-1.amazonaws.com . Utilisez plutôt quelque chose comme le code ci-dessous :

for r in boto.ec2.cloudwatch.regions():
    if (r.name == 'us-west-1'):
        region = r

L'interface utilisateur AWS devrait afficher la mesure si vous la recherchez par son nom ou si vous pouvez l'atteindre en sélectionnant votre espace de nom personnalisé dans la liste déroulante :

enter image description here

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X