Domanda

Abbiamo oltre 50 processi batch Java che vengono eseguiti in diversi momenti della giornata. Funzionano su una scatola di Solaris e vengono avviati tramite cron. Al momento, l'unico modo per sapere se hanno esito positivo o negativo è tramite un'e-mail generata alla fine di ogni processo batch. Abbiamo un team di supporto che monitora queste e-mail. Di recente, abbiamo riscontrato problemi con la mancata ricezione delle e-mail, anche se i batch sono in esecuzione. Deve esserci un modo migliore.

Senza dover reinventare la ruota, ci sono applicazioni di monitoraggio batch open source?

E una domanda più generale, qual è il modo migliore per monitorare i processi batch?

È stato utile?

Soluzione

Esiste attualmente un sistema di gestione batch sul posto? O i lavori vengono eseguiti tramite lo scheduler del sistema operativo? (ad esempio, Task di pianificazione o * nix cron ) di Windows

Quartz è un programmatore di lavoro java basato su Open Source (licenza Apache) che ha infrastrutture in atto per ascoltatori che possono essere utilizzati a scopo di notifica, ma ci sarebbe un po 'di sviluppo del codice.

Altri suggerimenti

Non conosco le applicazioni di monitoraggio batch open source ma esiste un nuovo sottoprogetto di Spring: Spring-Batch che fornisce un framework di elaborazione batch. L'ho usato con successo in alcuni nuovi progetti.

Quando si avvia un lavoro batch, è possibile collegare un listener di esecuzione lavoro. Nel mio caso, quando il lavoro fallisce con un'eccezione, il mio listener di esecuzione lo intercetta e invia un'e-mail di errore con la traccia dello stack pertinente a un elenco di e-mail ben noto. Uso un Tasklet alla fine del batch per inviare una e-mail per indicare il normale completamento.

Naturalmente, se si verifica un errore nel sottosistema e-mail (e il messaggio non viene inviato) tutte le scommesse sono disattivate ...

Deve esserci un modo per usare Nagios per vedere se le attività quotidiane sono state eseguite correttamente, dato che può monitorare le cose in tanti modi diversi (dai file PID ai file di testo presenti, ai file di registro di traino, ecc.). Purtroppo Nagios non rientra nella mia linea di lavoro, quindi non posso andare oltre.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top