[Python] Ubuntu Server 13.10 + Python come Servizio

Dario Concilio dario.concilio a hotmail.it
Gio 17 Apr 2014 16:42:31 CEST


Ciao a tutti,sono alle prese con un progetto in python che, al suo avvio, si occupa di aprire 2 seriali e un web socket, dopodiché rimane in ascolto (su 3 thread paralleli).Riceverà diverse richieste che, avranno come effetto, l'aggiornamento di dati su un database postgresql.
Fin qui siamo nella norma, adesso vorrei automatizzare il tutto.Ho preparato un piccolo server (Intel NUC) con Ubuntu Server 13.10, vorrei fare in modo di avviare il mio python all'avvio e gestirlo come servizio.Quindi gestire start, stop e restart, ma anche poter consultare gli eventi generati dal python/servizio.Per gli eventi ho usato la libreria logging, quindi traccio già info, warning ed error.
Adesso il mio dilemma è: qual'è la via migliore al momento? Non ho mai fatto un servizio su linux/python, quindi mi trovo a corto di nozioni in merito.
Ho questo post per le mani, secondo voi è la via giusta?http://stackoverflow.com/questions/4705564/python-script-as-linux-service-daemon
Avevo già preparato il file miopython.conf sotto init, ma non mi è chiaro il punto di contatto tra un eventuale comando di restart o stop da terminal, e un paio di metodi in python che si occupano, a fronte (ad esempio di "service mypython stop"), la chiusura delle seriali, del socket e i relativi thread.
PS: Ricordate che sono junior in ambito python/linux (solo 2 anni di esperienza), quindi abbiate pazienza, se commetto errori, magari nella terminologia (sto cercando di uscire dallo schema mentale MS Windows)
A presto.Dario Concilio

> From: python-request a lists.python.it
> Subject: Digest di Python, Volume 98, Numero 36
> To: python a lists.python.it
> Date: Thu, 17 Apr 2014 12:00:01 +0200
> 
> Invia le richieste di iscrizione alla lista Python all'indirizzo
> 	python a lists.python.it
> 
> Per iscriverti o cancellarti attraverso il web, visita
> 	http://lists.python.it/mailman/listinfo/python
> oppure, via email, manda un messaggio con oggetto `help' all'indirizzo
> 	python-request a lists.python.it
> 
> Puoi contattare la persona che gestisce la lista all'indirizzo
> 	python-owner a lists.python.it
> 
> Se rispondi a questo messaggio, per favore edita la linea dell'oggetto
> in modo che sia più utile di un semplice "Re: Contenuti del digest
> della lista Python..."
> 
> 
> Argomenti del Giorno:
> 
>    1. Re: Variabili nella barra di navigazione (Carlos Catucci)
>    2. Re: Variabili nella barra di navigazione (Simone Federici)
>    3. Re: Variabili nella barra di navigazione (Lorena Doria)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Thu, 17 Apr 2014 11:34:18 +0200
> From: Carlos Catucci <carlos.catucci a gmail.com>
> To: Discussioni generali sul linguaggio Python
> 	<python a lists.python.it>
> Subject: Re: [Python] Variabili nella barra di navigazione
> Message-ID:
> 	<CAEaPG9THYhqNz1FR+WF2FuNj8u_egm59L_4K3x9hidMxxRS+CA a mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> 2014-04-17 11:17 GMT+02:00 Lorena Doria <ldoria9 a gmail.com>:
> 
> > epdv è un dizionario con due chiavi, esito e testo, inizializzate vuote.
> > Ma questo non ha nulla a che vedere con la visualizzazione delle variabili
> > nella barra di navigazione.
> >
> 
> Questo si ma non capivo cosa volesse dire del codice in quel modo.
> 
> 
> > Per quanto riguarda le sessioni...non ho capito nulla :-(( ...siete troppo
> > avanti!! :-)
> >
> 
> La sessione e' quella che viene gestita tra browser e web server (lo so sto
> semplificando ma per iniziare va bene).
> In pratica e' il collegamento, che ha delle caratteristiche. Ad esempio ha
> delle sue variabili, che puo' usare anche il programma.
> 
> Carlos
> -- 
> Coloro che sognano di giorno sono uomini pericolosi, perche' sono capaci di
> recitare a occhi aperti il loro sogno fino a renderlo possibile. Ed e'
> questo che feci anch'io. - (T.E. Lawrence)
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <http://lists.python.it/pipermail/python/attachments/20140417/d0c21819/attachment-0001.html>
> 
> ------------------------------
> 
> Message: 2
> Date: Thu, 17 Apr 2014 11:42:51 +0200
> From: Simone Federici <s.federici a gmail.com>
> To: Discussioni generali sul linguaggio Python
> 	<python a lists.python.it>
> Subject: Re: [Python] Variabili nella barra di navigazione
> Message-ID:
> 	<CAKsNYugdyt0OaLy1BxsaE_gvW4m-xbSgJQ7YeTb70gOKaZgO_w a mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> 2014-04-17 11:34 GMT+02:00 Carlos Catucci <carlos.catucci a gmail.com>:
> 
> > La sessione e' quella che viene gestita tra browser e web server (lo so
> > sto semplificando ma per iniziare va bene).
> > In pratica e' il collegamento, che ha delle caratteristiche. Ad esempio ha
> > delle sue variabili, che puo' usare anche il programma.
> >
> 
> tu usi la TG 1.0?
> http://turbogears.org/1.0/docs/Sessions.html
> 
> la sessione è un posto dove salvare delle variabili permanenti per tutta la
> durata della navigazione di un utente. Ogni utente ha la sua. Quando fa
> logout, tutto il contenuto viene cancellato.
> 
> in pratica prima della redirect se metti il sessione qualcosa, poi in
> anagratica te la ritrovi in sessione.
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <http://lists.python.it/pipermail/python/attachments/20140417/4c69642e/attachment-0001.html>
> 
> ------------------------------
> 
> Message: 3
> Date: Thu, 17 Apr 2014 11:49:39 +0200
> From: Lorena Doria <ldoria9 a gmail.com>
> To: Discussioni generali sul linguaggio Python
> 	<python a lists.python.it>
> Subject: Re: [Python] Variabili nella barra di navigazione
> Message-ID:
> 	<CAB8C5=yJt+Fn3yR8qhW5ociXAK-agx=sOocj=3DtwtD=ufUC0A a mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> uso TurboGears-1.0.9 provo guardare il riferimento che mi hai dato...
> Grazie!!
> Lori
> 
> 
> Il giorno 17 aprile 2014 11:42, Simone Federici <s.federici a gmail.com> ha
> scritto:
> 
> >
> > 2014-04-17 11:34 GMT+02:00 Carlos Catucci <carlos.catucci a gmail.com>:
> >
> > La sessione e' quella che viene gestita tra browser e web server (lo so
> >> sto semplificando ma per iniziare va bene).
> >> In pratica e' il collegamento, che ha delle caratteristiche. Ad esempio
> >> ha delle sue variabili, che puo' usare anche il programma.
> >>
> >
> > tu usi la TG 1.0?
> > http://turbogears.org/1.0/docs/Sessions.html
> >
> > la sessione è un posto dove salvare delle variabili permanenti per tutta
> > la durata della navigazione di un utente. Ogni utente ha la sua. Quando fa
> > logout, tutto il contenuto viene cancellato.
> >
> > in pratica prima della redirect se metti il sessione qualcosa, poi in
> > anagratica te la ritrovi in sessione.
> >
> >
> >
> > _______________________________________________
> > Python mailing list
> > Python a lists.python.it
> > http://lists.python.it/mailman/listinfo/python
> >
> >
> 
> 
> -- 
> Lorena D'oria
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <http://lists.python.it/pipermail/python/attachments/20140417/3b9c29bc/attachment-0001.html>
> 
> ------------------------------
> 
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
> 
> 
> Fine di Digest di Python, Volume 98, Numero 36
> **********************************************
 		 	   		  
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20140417/0384c3aa/attachment.html>


Maggiori informazioni sulla lista Python