Bonjour,
Notre administrateur système est débordé et il m’a juste donné une petite recette à exécuter « à la main » dès lors que « nous n’avons plus de téléphone » dans nos bureaux :/
1°) me connecter au serveur (en ssh)
2°) asterisk -rv
3°) module load app_stack.so
4°) Ctrl+C (pour sortir de là)
5°) se déconnecter du serveur (Ctrl+D)
Et ça fonctionne, dans 90 % des cas. Car le problème est parfois plus grave et nécessite, soit un redémarrage du service, soit une intervention divine (= le sysadmin débordé).
Je sais pas exactement ce qui se passe ni l’origine du problème :(
Mais j’aimerais bien que cela soit scripté dans un cron exécuté chaque minute…
Il faudrait
• pouvoir tester et détecter la panne
• le cas échéant faire l’équivalent de la petite recette ci-dessus.
(Asterisk 11.13.1~dfsg-2+deb8u8)
Qu’en pensez-vous ?
PS: Je suis capable de comprendre des commandes bash et d’ajouter un cron.
Merci d’avance.
# script via ssh
Posté par BAud (site web personnel) . Évalué à 4 (+2/-0). Dernière modification le 13 juin 2024 à 13:38.
ssh te permet d'exécuter des scripts distants :
tu auras déclaré ta clé publique (
id_rsa.pub
) sur le compte admin du serveur asterisk.example.com au préalable, pour ne pas avoir à rentrer ton mot de passe…ça, ce n'est pas la meilleure idée du monde, surtout si le traitement peut durer plus d'une minute… outre les logs à outrance que cela peut générer si le traitement part en vrille (il y a toujours des cas d'erreur auquel on n'a pas pensé :/)
si chaque utilisateur commence à faire cela, cela peut faire pas mal de connexions concurrentes…
déjà identifier les commandes permettant d'avoir le statut de fonctionnement (soit par un client local, soit par une commande sur le serveur) ce serait pas mal ;-)
bref, t'en as trop dit, ou pas assez :-) ça manque de contexte :/ (notamment, tes commandes sont-elles interactives ?)
qui le lancerait ? qui l'utilise ? traçabilité des accès ?
combien de fois ça arrive ? combien de personnes concernées ?
comment ça se passe si tu n'es pas là ? comment c'est géré s'il y a un changement de version d'asterisk qui modifie le comportement ?
[^] # Re: script via ssh
Posté par Sébastien Wilmet (site web personnel) . Évalué à 3 (+1/-0). Dernière modification le 13 juin 2024 à 14:24.
Je pense que le
module load app_stack.so
n'est pas une commande shell mais une commande propre à Asterisk.Il faut sûrement créer un script Asterisk, et l'exécuter avec :
[^] # Re: script via ssh
Posté par BAud (site web personnel) . Évalué à 5 (+3/-0).
La doc' d'asterisk est peu claire sur les options de lancement :/ (manque de précision et d'exhaustivité : 2-3 exemples qui se battent en duel, c'est pas vraiment ce que j'appelle une documentation :/ mais je ne suis peut-être pas tombé sur les bonnes pages :p)
https://docs.asterisk.org/Operation/Asterisk-Command-Line-Interface/
https://docs.asterisk.org/Operation/Asterisk-Command-Line-Interface/CLI-Syntax-and-Help-Commands/ (en gros : regardez l'aide…)
https://docs.asterisk.org/Operation/Asterisk-Command-Line-Interface/Creating-and-Manipulating-Channels-from-the-CLI/ ne correspond pas au cas d'usage regardé
dans ce cas, faire quelque chose du genre :
ça injecte le texte (donc la commande) à
asterisk
ah sinon, j'ai trouvé une page de
man
https://linux.die.net/man/8/asteriskdonc bon le plus simple est de lancer :
ça devrait faire le taf'…
# automatisation
Posté par bertrand . Évalué à 2 (+1/-0).
S'il faut croner, c'est sur le serveur.
Et un script avec un check de bon fonctionnement et la commande de résolution mis en daemon est probablementune meilleure solution.
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.