RSS: Si disattiva da solo se avviene un timeout

Difficoltà con il BOT ? Qui puoi esporre i tuoi problemi.
BuDuS
Amministratore
Messaggi: 364
Iscritto il: 19/07/2009, 14:15
Contatta:

RSS: Si disattiva da solo se avviene un timeout

Messaggioda BuDuS » 23/04/2010, 14:08

È stato riscontrato che il sistema di scaricamento automatico dei feed RSS, quando costretto ad interrompere l'aggiornamento per sopraggiunto timeout, esce brutalmente dalla procedura, senza configurare opportunamente il sistema per l'auto-invocazione, comportando così l'interruzione del servizio.

Fino a quando non sarà disponibile un aggiornamento del BOT è possibile mitigare il problema aumentando il valore del timeout (variabile rss_max_wait da configurare nel file budus_setup.sh) o addirittura rimuovendo i feed che causano il timeout.

Volendo esiste anche un'altra strada, più complicata e non testata, che consiste nel modificare lo script budus_rss.sh; a partire dalla riga 72 di suddetto file è presente il seguente codice:

Codice: Seleziona tutto

    if [ "${pid_of_lynx_process}" != "" ]; then
   echo "/budus sendsess ${network_name}/${channel_name} /NOTICE ${channel_name} Il tempo di ricerca dell'rss [ ${rss_url} ] richiede troppo tempo. Host irraggiungibile o banda satura."
   
   # Chiude il processo
   kill -9 ${pid_of_lynx_process} 2> /dev/null > /dev/null
   
   # Elimina il file temporaneo
   rm -f ${HOME}/tmp/budus_rss.tmp
   
   exit 1;
    fi

esso viene eseguito dopo che si è atteso il lasso di tempo stabilito dalla variabile di timeout citata sopra e, nel momento in cui individua il PID (Process ID) del software (lynx) - in fase di download del feed in background - ancora in esecuzione, provvede a "killarlo", cancellare il "file del semaforo binario" (budus_rss.tmp) e uscire dallo script.

Ecco è proprio "l'uscita dallo script" il problema. Penso che modificare il codice sopra in questo modo possa risolvere il problema:

Codice: Seleziona tutto

    if [ "${pid_of_lynx_process}" != "" ]; then
   echo "/budus sendsess ${network_name}/${channel_name} /NOTICE ${channel_name} Il tempo di ricerca dell'rss [ ${rss_url} ] richiede troppo tempo. Host irraggiungibile o banda satura."
   
   # Chiude il processo
   kill -9 ${pid_of_lynx_process} 2> /dev/null > /dev/null
   
   rm -f ${HOME}/tmp/budus_rss.tmp
    fi

Anziché terminare lo script, viene eliminato il file "${HOME}/tmp/budus_rss.tmp", che è il "contenitore" del feed rss.

Torna a “Supporto BOT”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite