0

J'ai suivi les étapes de cet article, http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html#mon-scripts-systems pour surveiller l'utilisation de la mémoire de mon serveur et soumettre les données à CloudWatch.Impossible de surveiller la mémoire Linux Amazon avec des tampons et un cache à l'aide de scripts Amazon CloudWatch Monitoring

L'une des métriques pouvant être utilisées est --mem-used-incl-cache-buff qui collecte et envoie les métriques MemoryUsed, rapportées en mégaoctets. Cette option affiche les rapports utilisés dans le cache et les tampons, ainsi que la mémoire allouée par les applications et le système d'exploitation. Cette mesure de la mémoire est importante par rapport aux autres mesures de la mémoire car cette métrique recueille également la mémoire utilisée dans le cache et les tampons. Les autres mesures de mémoire collectent simplement la mémoire free et used pour déterminer si mon serveur manque de mémoire.

Malheureusement, c'est la sortie quand j'ai essayé d'exécuter le script:

[[email protected] ~]# ~/aws-scripts-mon/mon-put-instance-data.pl --mem-used-incl-cache-buff --verify --verbose 

ERROR: No metrics specified for collection and submission to CloudWatch. 

For more information, run 'mon-put-instance-data.pl --help' 

J'ai suivi la condition sine qua non dans la documentation pour assurer que tous les outils nécessaires sont installés en premier. Qu'est-ce que j'ai raté?

Répondre

-1

essayer quelque chose comme ceci:

[si vous voulez envoyer vos données personnalisées] /usr/local/bin/aws CloudWatch mis métriques-données --namespace "TomcatOpenFiles" --dimensions INSTANCE_ID = » curl -s http://169.254.169.254/latest/meta-data/instance-id "--metric-name "TomcatOpenFiles" --value $ Tomcat_Openfiles --region ap-sud-1

[si vous souhaitez envoyer des données définies aws] /opt/aws-scripts mon/mon-vente -instance-data.pl --mem-util --mem -utilisé --mem-avail --disk-espace-util --disk-space-utilisé --disk-space-avail --memory-units = gigaoctets - -disk-space-units = gigaoctets --disk-path =/--from-cron

1

Je pense que ce dont vous avez besoin est:

~/aws-scripts-mon/mon-put-instance-data.pl --mem-used-incl-cache-buff --mem-used 

--mem-used drapeau dire le script que vous voulez utiliser la mémoire et --mem-used-incl-cache-buff indique pour inclure le cache et les tampons.

Pour vérifier cela, vous pouvez exécuter ces 2 commandes et comparer la sortie:

~/aws-scripts-mon/mon-put-instance-data.pl --mem-used --verify --verbose 
~/aws-scripts-mon/mon-put-instance-data.pl --mem-used-incl-cache-buff --mem-used --verify --verbose 
0

J'utilise dans mes paramètres personnalisés. Tel que mentionné par @Tartaglia, vous devez activer le commutateur mem-used pour signaler les statistiques de la mémoire. Vous pouvez voir le script Perl et voir comment cela est calculé.

Sans tampons et cache:

mon-put-instance-data.pl --mem-used 

Sortie:

Payload:{"MetricData":[{"MetricName":"MemoryUsed","Unit":"Megabytes","Value":4915.6640625,"Timestamp":1501356451} 

Avec tampons et cache:

mon-put-instance-data.pl --mem-used-incl-cache-buff --mem-used 

Sortie:

Payload:{"MetricData":[{"MetricName":"MemoryUsed","Unit":"Megabytes","Value":5690.55078125,"Timestamp":1501356486}