comment utiliser le logiciel de surveillance linux
Salut quelqu'un peut-il me dire comment gérer la surveillance des logiciels sous linux .J'ai un programme "SampleApplication" qui fonctionne en permanence et j'ai besoin de le redémarrer si sa se bloque ou se ferme de façon inattendue.
J'ai été googler sur ce et a trouvé linux a chien de garde à /dev/chien de garde, mais ne sais pas comment l'utiliser.Quelqu'un pourrait-il m'aider avec un exemple.
Ma question est de savoir où je indiquer mon nom de l'application et de l'intervalle de temps pour redémarrer . Comme je suis nouveau sur linux merci de me avec des exemples si possible. Grâce
source d'informationauteur Verve Innovation
Vous devez vous connecter pour publier un commentaire.
La plupart des Unix/Linux
init
programmes sera de gérer les démons pour vous et de les redémarrer. Regarder en plaçant votre service dans/etc/inittab
. Ou vous pourriez être en utilisantUpstart
ousystemd
.Tous ces programmes s'exécutent en tant que
PID 1
et il est de leur devoir de surveiller et de redémarrer les processus du système.De votre Busybox tag, je suppose que vous exécutez un système embarqué. Sur ceux, le Système de style de V scripts d'initialisation avec l'ensemble de leurs scripts shell sont vraiment exagéré. Vous devriez probablement rip tout ça et de le remplacer avec des entrées dans
/etc/inittab
ou upstart ou systemd emplois.Depuis les modérateurs ignorer post-améliorations de maintenant, je vais devoir le publier séparément
Eh bien, ce n'est tout simplement pas vrai, il est très possible de redémarrer un seul ou de multiples processus après que le chien de garde des signaux que les systèmes de suspension, vous pouvez même ANNULER le redémarrage de l'ordinateur ou de faire un SOFT reboot, on est en mesure de configurer "test" et "réparation"-scripts /fichiers binaires qui faire ce que vous voulez qu'ils fassent. La busybox-version du watchdog est dépouillé à un quasi-inutilisable niveau ... je pense que le monde ne saura jamais pourquoi le busybox-devs ont décidé d'abandonner primaire fonctionnalités - pour l'instant, il serait préférable d'éviter les busybox --> la vitesse des améliorations sont presque inexistants, la taille-diminution ne permet pas de compenser l'énorme perte de fonctionnalité. /bin/bash est plutôt faible - tout recompiler avec le drapeau "-Os" si les sujets de taille et vous êtes bon pour aller au - dehors-de-le-boîte de chien de garde qui permet pour à peu près tout ce que l'on pourrait le souhaitez.
Oh et s'il vous PLAÎT ne PAS créer votre propre chien de garde qui aurez plus de chances de vous laisser avec des erreurs non gérées et faire de votre vie un mauvais jour.
Comment sur l'utilisation de cron? Mettre en place une petite tâche cron qui s'exécute à chaque minute. Vérifiez si votre demande est en place (à l'aide de ps) et si pas, redémarrez-le.
Faire un petit script comme ceci:
Vous tester si "myapp" est dans la liste des processus. "!" inverse le test. Si elle n'est pas là, il exécute "myapp". "&" il est juste tellement il commence en arrière-plan.
Ajouter à cron. Selon votre système et les préférences il y a plusieurs façons de le faire. Le classique est d'utiliser crontab. Il existe beaucoup de documentation sur la façon de spécifier votre crontab ligne, mais vous voudrez probablement quelque chose comme ceci:
Cette va lancer votre test de chaque minute de chaque heure de chaque... Vous voyez l'idée.
Utilisation
/etc/inittab
vous pouvez l'utiliser pour démarrer dans les niveaux d'exécution et s'il est tué, il doit être redémarré automatiquementCela fera réapparition dans les niveaux d'exécution 2345 vous aurez probablement besoin de 3 et 5 mais cela fonctionne très bien et est intégré dans Linux.
De la Documentation pour le chien de garde est ici: http://linux.die.net/man/8/watchdog
Mais il semble que ce n'est pas ce que vous voulez. Linux logiciel de surveillance va redémarrer la machine, pas juste redémarrer votre processus.
Vous pouvez facilement faire votre propre chien de garde. Par exemple, vous pourriez avoir votre programme périodiquement écrire des fichiers temp, et de lancer un script qui vérifie le fichier une fois dans un certain temps, puis redémarre le processus s'il n'a pas mis à jour depuis un certain temps.
Si vous êtes en utilisant systemd il y a 2 chiens de garde: une pour le matériel (à l'aide de systemd.conf ou à l'aide d'un chien de garde démon) et un pour les démons initialisé en tant que services.
Si systemd est votre option de regarder le suivant:
http://0pointer.de/blog/projects/watchdog.html
Si quelqu'un est arrivé sur cette page à la recherche d'un système d'exploitation chien de garde (qui n'est pas directement ce que l'OP voulait), c'est ce que vous avez besoin de:
Pour vérifier qu'il fonctionne de l'exécuter:
Vous devriez voir quelque chose comme:
J'espère que je vais répondre correctement à la question. Toutes les autres réponses semblent être très différents.
Vous pouvez essayer wdog qui est un utilitaire écrit en c++ et en les reliant à l'encontre de la Kahless_9 cadre. Le code source peut être téléchargé à partir de: https://github.com/zepher999/wdog et, par conséquent, mis à jour à la suite de vos propres besoins. Il y a encore quelques TODO liste des changements requis pour l'avenir, mais qu'est ce qui devrait répondre à vos exigences actuelles.
L'utilitaire nécessite un fichier csv d'entrée dans lequel tous les processus pour être regardé avec leurs arguments sont contenues. Au démarrage, le démarrage de l'utilitaire tous ces processus désigné dans le fichier csv, et les surveille pour quitter/fin après quoi il redémarre le processus.
Actuellement wdog permet l'arrêt et la mise à mort des processus contrôlés ainsi que la capacité de démarrage de l'utilitaire de chaud ou de froid mode. Chaud mode vous permet de l'utilitaire à utiliser la mise en cache des dossiers à surveiller déjà commencé un processus alors que le froid mode de départ des rejets de telles valeurs en cache ainsi la tentative de démarrage de tous les processus.
Également, l'utilitaire a la capacité de lancer une instance de lui-même à se contrôler elle-même, et ainsi avoir un chien de garde pour le chien de garde.
Vous pouvez utiliser "Monit" utilitaire de redémarrer et de surveiller vos services.
Il suffit de l'installer par l'émission d'une commande `"apt-get install monit".