<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>Process Monitor HOW-TO for Linux: Comando Unix/Linux: procautostart</TITLE> <LINK HREF="Process-Monitor-HOWTO-3.html" REL=next> <LINK HREF="Process-Monitor-HOWTO-1.html" REL=previous> <LINK HREF="Process-Monitor-HOWTO.html#toc2" REL=contents> </HEAD> <BODY> <A HREF="Process-Monitor-HOWTO-3.html">Avanti</A> <A HREF="Process-Monitor-HOWTO-1.html">Indietro</A> <A HREF="Process-Monitor-HOWTO.html#toc2">Indice</A> <HR> <H2><A NAME="s2">2. Comando Unix/Linux: procautostart</A></H2> <P>Usate il programma <B>procautostart</B> (si dice "Prok-Auto-Start" o Process AutoStart) per monitorare e automaticamente reinizializzare qualsiasi processo Unix/Linux che non sia terminato. Questo piccolo programma è molto utile ed è comparabile con grandi prodotti commerciali i quali <B>costano circa 80.000 $</B>. Procautostart può essere utilizzato per controllare le seguenti applicazioni: <UL> <LI> Per controlli in tempo reale di processi industriali come industrie chimiche, manifatturiere, generatori di potenza ed altri. Utilizzare nel programma <I>nano-seconds</I> per ottenere un controllo migliore.</LI> <LI> Per controllare i processi di applicazioni software come server web, server di database, o processi Unix critici, ecc.</LI> <LI> Come un sistema di allarme per quasiasi sistema di monitoraggio di software generale. Il programma può dar luogo ad una pagina o telefonare o accendere delle lampadine rosse sullo schermo del computer. Affinché chiami un numero di telefono dovreste utilizzare un modem.</LI> </UL> <P>Il listato del programma è dato nella sezione seguente di questo documento. <P><B>procautostart </B> <B>-n </B> <I>< delay_seconds ></I> <B>-c </B> "<I>< command_line ></I>" nohup & <P>In questo modo si inizializza il processo Unix <B>procautostart</B> ed anche il processo <B>command_line</B>. Il processo <B>procautostart</B> reinizializzerà il processo <B>command_line</B> se è terminato. L'opzione <I>-n</I> indica ogni quanti secondi <B>procautostart</B> deve verificare l'esecuzione di <B>command_line</B>. È consigliabile avviare procautostart come un processo in background, non interrotto dalla sessione di lavoro, utilizzando "nohup &". Vedere "man nohup". <P>Procautostart è stato scritto in "C" così che sia molto veloce ed efficiente, proprio perché il programma è chiamato ogni <I>n</I> secondi. Le risorse totali utilizzate da procautostart sono <B>molto ridotte</B> ed insignificanti inoltre il programma è piccolo e altamente ottimizzato con l'opzione di compilazione -o3. <P>Per esempio: <HR> <PRE> procautostart -n 12 -c "monitor_test -d $HOME -a dummy_arg " nohup & </PRE> <HR> Qui <B>procautostart</B> verificherà il processo monitor_test <B>ogni</B> 12 secondi. <P>Il programma fornirà in uscita un file di log nella sottodirectory "mon" creata con l'ora e la data in cui il processo è terminato e ripartito. Questi file forniscono informazioni su quanto spesso i processi sono terminati. <P>Potete anche utilizzare l'opzione "-m" per microsecondi o "-o" per nanosecondi, editando il codice sorgente di <B>procautostart.cpp</B> e non commentando le linee appropriate. <HR> <A HREF="Process-Monitor-HOWTO-3.html">Avanti</A> <A HREF="Process-Monitor-HOWTO-1.html">Indietro</A> <A HREF="Process-Monitor-HOWTO.html#toc2">Indice</A> </BODY> </HTML>