diff --git a/wol/scripts/wakeonlanservice.sh b/wol/scripts/wakeonlanservice.sh index 678c66a862a0dccf2303acf02c066d89f4789dcc..32c1e9836a6734e502bb011e91e5b955bc05bf9b 100755 --- a/wol/scripts/wakeonlanservice.sh +++ b/wol/scripts/wakeonlanservice.sh @@ -79,6 +79,8 @@ do then answer $logfile else + # Choose last log file with desired host + logfile=$(grep -l $name /var/log/upgrade_all.sh_* | sort | tail -n 1) tempfile="/tmp/$$" # Extract the pertinent part of the log awk 'BEGIN{IN=0} /Begin host/{if($4=="'$name'"){IN=1}} {if(IN){print $0}} /End host/{if($4=="'$name'"){IN=0}}' \ diff --git a/wol/www/index.php b/wol/www/index.php index fbc6c97e9e41920248c5bf35cdbbca26c6d9c3e7..e22934a97ef56034d168374b4f5c993faf1391c7 100644 --- a/wol/www/index.php +++ b/wol/www/index.php @@ -235,7 +235,13 @@ if(!isset($action)){ $lines = array(); exec("../scripts/actions.sh ".escapeshellarg($action)." " .escapeshellarg($name), $lines, $code); - echo "<p>Action effectuée, code : $code</p>"; + echo "<p>Action '$action' effectuée, code : $code</p>"; + // Retrieve logs + if(preg_match('/^upgrade/', $action) && $code == 0 ){ + echo "<p>Les logs ne se rafraichissent pas tous seuls, vous pouvez utiliser le bouton prévu à cet effet</p>"; + exec("../scripts/actions.sh getLog " + .escapeshellarg($name), $lines, $code); + } if(!empty($lines)){ echo "<pre>"; foreach($lines as $line){ @@ -245,6 +251,13 @@ if(!isset($action)){ }else{ echo "<p>Erreur : pas de réponse</p>"; } + ?> + <form action="index.php" method="post"> + <input type="hidden" name="action" value="getLog"> + <input type="hidden" name="name" value="<?php echo $name; ?>"> + <input type="submit" value="Rafraichir les logs" title="Rafraichir les logs"> + </form> + <? } } }