IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

[CRON] Timeout lors de l'execution?


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 240
    Par défaut [CRON] Timeout lors de l'execution?
    Bonjour

    Quand on lance un script via cron, existe-t-il un timeout particulier qui arrête l'exécution du script? Je m'explique.

    j'ai un script sh qui lance successivement 2 programmes Java. Le premier peut mettre + de 4h de traitements. (je sais c'est beaucoup mais je peux pas faire autrement). le script se présente comme ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    cd /home/monrepertoire
    echo "[SH] Re initialisation de la console">>console
    rm -Rf console
    #lancement1
    echo "[SH] lancement1">>console
    java -Xmx1024M -jar execution1.jar>>console
    #celui qui dure plus de 4h
     
    #lancement2
    echo "[SH] Lancement2">>console
    java -jar -Xmx1024M -jar lancement2.jar>>console
    #celui la dure quelques secondes
    echo "[SH]END OF SCRIPT reportgenerator.sh">>console
    Quand je le lance manuellement, dans les même conditions que cron (même utilisateur par exemple) tout se passe bien.

    Cron lance le script à la bonne heure, execute bien le premier programme mais ne lance jamais le second (je ne vois même pas la "[SH] lancement2" dans le fichier console, ni celui d'après).

    Alors je me dis que :
    -soit au bout d'un certains temps cron arrête lui même le script (mais pas l'execution java) pensant que le script ne reponds plus
    -soit il n'exécute pas les taches séquentiellement (un peu comme si j'avais mis un & à la fin de la commande) que mon programme2 soit exécuté bien avant la fin du programme. Mais dans ce cas pourquoi je ne vois pas les traces? et pourquoi il ne me fait pas la même chose quand je le lance moi même dans le shell?

    Bref je penche plus pour la première hypothèse et si c'est ça comment résoudre ce problème?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Peux-tu fusionner l'erreur standard avec l'output standard afin de voir les éventuelles erreurs?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java -jar -Xmx1024M -jar lancement2.jar>>console 2>&1

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 240
    Par défaut
    Citation Envoyé par Mygale1978 Voir le message
    Salut,

    Peux-tu fusionner l'erreur standard avec l'output standard afin de voir les éventuelles erreurs?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java -jar -Xmx1024M -jar lancement2.jar>>console 2>&1
    Merci pour la réponse. je vais changer le script mais compte tenu du temps d'execution je n'aurais de réponse que demain. Pour aller un peu plus vite cette sortie d'erreur je ne peux pas la lire ailleurs? par défaut cela se situe où ça?

    je suis sur un serveur ubuntu hardy. merci

    EDIT: je me pose un petite question comme ça. Si il y avait une erreur au lancement de lancement2.jar, je devrais voir le message "[SH] lancement2" non?

  4. #4
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 240
    Par défaut
    Petit bilan de l'execution d'hier soir.

    comme log de script ne ne vois que
    et rien d'autre ni erreur ni rien du tout! simplement la fin du premier programme java.

    Je reste donc sur mon hypothèse :
    -cron lance mon script en donnant un PID.
    -le programme java se lance avec un autre PID.
    -Voyant qu'au bout d'un certains temps le script ne bouge pas (vu que le programme java dure 4h!!!), cron croit que le script ne réponds plus et donc arrête l'execution. Une fois le programme java terminé, on ne peut plus lancer la suite du script.

    Donc existe-t-il un moyen de paramétrer ceci? ou puis je voir les logs de cron afin de voir si mon script s'arrête bien de manière forcée????

    merci d'avance

  5. #5
    Membre éprouvé Avatar de exodev
    Inscrit en
    Septembre 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2009
    Messages : 201
    Par défaut
    Hello,

    Une autre solution pourrait-être lié au premier lancement qui renverrait un signal de terminaison.

    Rajouter la redirection du flux d'erreurs ( 2>&1 ) pour le premier lancement permettrait peut-être de déceler une erreur de ce côté

  6. #6
    Membre éclairé
    Inscrit en
    Novembre 2005
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 240
    Par défaut
    Citation Envoyé par exodev Voir le message
    Hello,

    Une autre solution pourrait-être lié au premier lancement qui renverrait un signal de terminaison.

    Rajouter la redirection du flux d'erreurs ( 2>&1 ) pour le premier lancement permettrait peut-être de déceler une erreur de ce côté
    Oups c'est une erreur de ma part de na pas l'avoir mis

    Mais ce que je comprends pas c'est pourquoi, ça marche bien lorsque je lance le même script à la main???

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/09/2005, 15h03
  2. Erreur lors de l'execution d'un script jsp
    Par tuxor dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 06/08/2004, 13h35
  3. [ADO] Probleme lors de l'execution d'une requete...
    Par NoisetteProd dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/06/2004, 13h43
  4. erreur "ORA-22905" lors de l'execution d'un requet
    Par benji999 dans le forum Administration
    Réponses: 26
    Dernier message: 14/04/2004, 12h47
  5. [langage] Passage de parametre lors de l execution
    Par WetzlarMan dans le forum Langage
    Réponses: 4
    Dernier message: 16/03/2004, 14h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo