La journalisation de la commande VMStat les données dans un fichier
Je suis en train de créer une certaine capacité de planification de rapports et l'un des requrements est d'avoir d'info sur l'utilisation de la Mémoire pour un peu de Serveurs Unix.
Maintenant, ma connaissance de Unix est très faible. J'ai l'habitude de simplement vous connecter et exécuter quelques scripts.
Mais pour ce rapport, j'ai besoin de recueillir des VMStat des données et produire des rapports sur la base de précédentes les semaines précédentes données ventilées par heure, ce qui est un moyen de la commande Vmstat données prises toutes les 10 secondes.
Donc première question: est la commande VMStat de journalisation par défaut, et si oui quel emplacement sur le serveur est la sortie de données?
Si non, comment puis-je le configurer?
Grâce
OriginalL'auteur Sutty1000 | 2012-07-02
Vous devez vous connecter pour publier un commentaire.
vmstat
est une commande que vous exécutez.Pour générer une semaine de la Mémoire Virtuelle stats espacées à intervalle de dix secondes (moins le dernier) est 60,479 10 secondes
Ainsi la commande est:
Cela va faire un très gros fichier myvmstatfile.dat
EDIT: RobKielty (Le
&
va mettre ce travail en arrière-plan, lanohup
permettra d'éviter la tâche à partir de raccrocher lorsque vous vous déconnecter de l'interface de commande. Si vous avez exécuté cette commande, il serait prudent de surveiller la partition de disque pour lequel ce fichier est en cours d'écriture. Utilisationdf -h /path/to/directory/where/outputfile/resides
pour surveiller l'utilisation de l'espace disque.)Je n'ai aucune idée de ce que vous devez faire avec les données, donc je ne peux pas vous aider là-bas.
Créer un crontab entrée (crontab -e) à l'instar de ce
Le fichier
vmstat_script.sh
contiendra le suivre script bash commandes.Cela va créer un fichier par semaine avec un nom comme
myvmstatfile.dat.2012-07-01
Je voudrais diviser par 10 au lieu de multiplier par 10
Je ne comprends toujours pas. Cette ligne: la commande vmstat 10 604879 dit à la sortie d'une ligne toutes les 10 secondes et de s'arrêter après 604879 lignes. Donc, si pour 1 ligne nous avons besoin de 10 secondes, pour 604879 lignes nous avons besoin de 604879 temps de 10 secondes. Cela signifie que le script sera exécuté pour 6048790 secondes, ce qui est d'approx. égale à 70 jours. Quelle est mon erreur ici?
Ah, je vois votre point de maintenant. Quand j'ai rédigé le présent, j'ai quitté la commande vmstat inchangé. Afin de vous proposer que le deuxième argument est divisé par 10 à lire dire vmstat 10 60488 ?
Je vais prendre un coup d'oeil quand je reçois une chance. Je vais au crédit de votre effort sur la modifier.
OriginalL'auteur jim mcnamara
La commande que j'utilise pour le suivi de la machine virtuelle Linux mesures sont ci-dessous:
nohup commande vmstat 10 720| (while read; do echo "$(date +%d-%m-%Y" "%H:%M:%S) $REPLY"; done) >> nameofLogfile.journal
Ici nohup est utilisé pour l'exécution du processus en arrière-plan.
Il se déroulera pendant 2 heures avec un intervalle de 10 secondes.
C'est la meilleure de commande pour la génération des graphiques et des rapports d'horodatage sera également inclus dans les journaux avec des paramètres différents, de sorte que nous pouvons filtrer les journaux en conséquence.
OriginalL'auteur Gaurav Pandey