Tracciamento su Database

Ogni richiesta ricevuta dal gateway viene gestita tramite un processo riassumibile nella figura Fig. 365 in cui il tracciamento, nella configurazione di default, avviene in fondo al processo dopo aver consegnato la risposta al client. Nel caso non fosse possibile attuare il tracciamento richiesto (es. connessione al database non disponibile) l’anomalia viene registrata nei log di GovWay e si attiva il processo di failover in cui la traccia verrà serializzata su filesystem per poi essere riversata nella base dati in un successivo momento da un timer dedicato al recupero.

../../../_images/TracciamentoDBFasiDefault.png

Fig. 365 Fasi di tracciamento su database: configurazione di default

Nel caso siano state attivate ulteriori fasi di tracciamento descritte nella sezione Fasi di Tracciamento, il processo di failover si attiva solamente in caso di problematiche di tracciamento durante l’ultima fase dopo che la risposta al client è già stata consegnata (figura Fig. 366).

../../../_images/TracciamentoDBFasiCustom.png

Fig. 366 Fasi di tracciamento su database: configurazione personalizzata

La figura Fig. 367 mostra uno scenario in cui il tracciamento su database non va a buon fine già nelle prime fasi ed essendo configurate come “bloccanti” la transazione terminare con errore e viene restituito un fault al client. Nell’ultima fase viene attivato il processo di failover.

../../../_images/TracciamentoDBFasiError.png

Fig. 367 Fasi di tracciamento su database: configurazione personalizzata con errore durante il tracciamento con fasi bloccanti

La figura Fig. 368 mostra uno scenario simile al precedente dove però le fasi sono configurate come “non bloccanti” e quindi il mancato tracciamento non inficia sulla corretta gestione della richiesta. Nell’ultima fase viene attivato il processo di failover.

../../../_images/TracciamentoDBFasiErrorFailOver.png

Fig. 368 Fasi di tracciamento su database: configurazione personalizzata con errore durante il tracciamento con fasi non bloccanti

La configurazione del processo di failover è personalizzabile a livello di configurazione locale in “/etc/govway/govway_local.properties” (assumendo sia /etc/govway la directory di configurazione indicata in fase di installazione).

Di seguito un esempio di configurazione effettuabile in cui vengono riportate tutte le opzioni presenti con i valori di default del prodotto.

# ================================================
# Directory dove vengono serializzate le transazioni non registrate
org.openspcoop2.pdd.resources.fileSystemRecovery.repository=/var/govway/resources

# Indica se è abilitato il livello di debug durante la gestione
org.openspcoop2.pdd.resources.fileSystemRecovery.debug=false

# Indicazione se il timer dedicato al riversamento delle tracce serializzate su db è attivo o meno
org.openspcoop2.pdd.resources.fileSystemRecovery.enabled=true

# Parametri del timer
# - il timeout indica una unità di misura in secondi
# - dopo il numero di tentativi indicati in maAttempts la traccia verrà spostata in una directory 'dlq'
org.openspcoop2.pdd.resources.fileSystemRecovery.timeout=300
org.openspcoop2.pdd.resources.fileSystemRecovery.maxAttempts=10
# ================================================