IngleseFranceseSpagnolo

Esegui server | Ubuntu > | Fedora > |


Favicon di OnWorks

echo_supervisord_conf - Online nel cloud

Esegui echo_supervisord_conf nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando echo_supervisord_conf che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


echo_supervisord_conf - Documentazione di configurazione del supervisore

Supervisor è un sistema client/server che consente ai suoi utenti di monitorare e controllare un numero
di processi su sistemi operativi di tipo UNIX.

Condivide alcuni degli stessi obiettivi di programmi come launchd, daemontools e runit. a differenza di
alcuni di questi programmi, non è pensato per essere eseguito come sostituto di init come "ID processo
1". Invece è pensato per essere utilizzato per controllare i processi relativi a un progetto o a
cliente ed è pensato per avviarsi come qualsiasi altro programma al momento dell'avvio.

DOCUMENTAZIONE


Creazione a Configurazione Compila il
Una volta completata l'installazione di Supervisor, eseguire eco_supervisord_conf. Questo sarà
stampa un file di configurazione "campione" di Supervisor sullo stdout del tuo terminale.

Una volta che vedi il file echo sul tuo terminale, invoca nuovamente il comando come
eco_supervisord_conf > /etc/supervisord.conf. Questo non funzionerà se non hai root
accesso.

Se non disponi dell'accesso root o preferisci non inserire il conf.supervisore file nella
/etc/supervisord.conf`, puoi inserirlo nella directory corrente (eco_supervisord_conf >
conf.supervisore) e inizia supervisore con il -c flag per specificare il
posizione del file di configurazione.

Per esempio, supervisore -c conf.supervisore. Usando il -c flag in realtà è ridondante in
questo caso, perché supervisore cerca nella directory corrente per a conf.supervisore
prima che cerchi il file in altre posizioni, ma funzionerà.

Una volta che hai un file di configurazione sul tuo filesystem, puoi iniziare a modificarlo sul tuo
simpatia.

Configurazione Compila il
Il file di configurazione del supervisore è convenzionalmente denominato conf.supervisore. È usato da
entrambi supervisore e supervisore. Se una delle applicazioni viene avviata senza il -c
opzione (l'opzione usata per indicare all'applicazione il nome del file di configurazione
esplicitamente), l'applicazione cercherà un file denominato conf.supervisore all'interno
seguenti posizioni, nell'ordine specificato. Utilizzerà il primo file che troverà.

1. $CWD/supervisore.conf

2. $CWD/etc/supervisord.conf

3. /etc/supervisord.conf

4. ../etc/supervisord.conf (Relativo all'eseguibile)

5. ../supervisore.conf (Relativo all'eseguibile)

NOTA:
Alcune distribuzioni hanno impacchettato Supervisor con le proprie personalizzazioni. Queste
le versioni modificate di Supervisor possono caricare il file di configurazione da altre posizioni
rispetto a quelli qui descritti. In particolare, sono stati trovati pacchetti Ubuntu che usano
/etc/supervisor/supervisord.conf.

Compila il Formato
conf.supervisore è un file in stile Windows INI (Python ConfigParser). Ha sezioni (ognuna
indicato con a [intestazione]) e coppie chiave/valore all'interno delle sezioni. Le sezioni e le loro
i valori consentiti sono descritti di seguito.

Ambiente Variabili
Variabili di ambiente che sono presenti nell'ambiente nel momento in cui supervisore is
avviato può essere utilizzato nel file di configurazione utilizzando la sintassi dell'espressione stringa Python
%(ENV_X)s:

[programma:esempio]
comando=/usr/bin/esempio --loglevel=%(ENV_LOGLEVEL)s

Nell'esempio sopra, l'espressione %(ENV_LOGLEVEL)s sarebbe ampliato al valore di
la variabile d'ambiente LIVELLO LOG.

NOTA:
In Supervisore 3.2 e versioni successive, %(ENV_X)s le espressioni sono supportate in tutte le opzioni. In
versioni precedenti, alcune opzioni le supportano, ma la maggior parte no. Vedere la documentazione per
ciascuna opzione di seguito.

[server_http_unix] Sezione Impostazioni
conf.supervisore il file contiene una sezione denominata [server_http_unix] sotto il quale
i parametri di configurazione per un server HTTP che ascolta su un socket di dominio UNIX dovrebbero essere
inserito. Se il file di configurazione non ha [server_http_unix] sezione, un dominio UNIX
il server HTTP socket non verrà avviato. I valori di configurazione consentiti sono come
segue.

[server_http_unix] Sezione Valori
filetto
Un percorso per un socket di dominio UNIX (es /tmp/supervisore.sock) su quale supervisore sarà
ascolta le richieste HTTP/XML-RPC. supervisore utilizza XML-RPC per comunicare con
supervisore su questo porto. Questa opzione può includere il valore %(qui)s, che si espande
alla directory in cui si trova supervisore è stato trovato il file di configurazione.

Predefinito: Nessuno.

Obbligatorio: No.

Introdotto: 3.0

chmod
Modificare i bit della modalità di autorizzazione UNIX del socket del dominio UNIX con questo valore in
avviare.

Predefinito: 0700

Obbligatorio: No.

Introdotto: 3.0

chown
Modificare l'utente e il gruppo del file socket con questo valore. Potrebbe essere un nome utente UNIX
(per esempio crisma) o un nome utente UNIX e un gruppo separati da due punti (es crisma:ruota).

Predefinito: Utilizza il nome utente e il gruppo dell'utente che avvia supervisord.

Obbligatorio: No.

Introdotto: 3.0

nome utente
Il nome utente richiesto per l'autenticazione a questo server HTTP.

Predefinito: Nessun nome utente richiesto.

Obbligatorio: No.

Introdotto: 3.0

parola d'ordine
La password richiesta per l'autenticazione a questo server HTTP. Questo può essere un testo chiaro
password o può essere specificato come hash SHA-1 se preceduto dalla stringa {SHA}. For
esempio, {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d è la versione memorizzata in SHA del
password "la password".

Nota che la password con hash deve essere in formato esadecimale.

Predefinito: Nessuna password richiesta.

Obbligatorio: No.

Introdotto: 3.0

[server_http_unix] Sezione Esempio
[server_http_unix]
file = /tmp/supervisor.sock
chmod = 0777
chown= nessuno: nessun gruppo
nome utente = utente
password = 123

[inet_http_server] Sezione Impostazioni
conf.supervisore il file contiene una sezione denominata [inet_http_server] sotto il quale
parametri di configurazione per un server HTTP che ascolta su un socket TCP (internet) dovrebbe
essere inserito. Se il file di configurazione non ha [inet_http_server] sezione, un inet HTTP
server non verrà avviato. I valori di configurazione consentiti sono i seguenti.

[inet_http_server] Sezione Valori
porto
Un host TCP:valore della porta o (es 127.0.0.1:9001) su cui il supervisore ascolterà
Richieste HTTP/XML-RPC. supervisore utilizzerà XML-RPC per comunicare con supervisore
su questo porto. Per ascoltare su tutte le interfacce della macchina, utilizzare : 9001 or *:9001.

Predefinito: Nessuna impostazione predefinita.

Obbligatorio: Sì.

Introdotto: 3.0

nome utente
Il nome utente richiesto per l'autenticazione a questo server HTTP.

Predefinito: Nessun nome utente richiesto.

Obbligatorio: No.

Introdotto: 3.0

parola d'ordine
La password richiesta per l'autenticazione a questo server HTTP. Questo può essere un testo chiaro
password o può essere specificato come hash SHA-1 se preceduto dalla stringa {SHA}. For
esempio, {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d è la versione memorizzata in SHA del
password "la password".

Nota che la password con hash deve essere in formato esadecimale.

Predefinito: Nessuna password richiesta.

Obbligatorio: No.

Introdotto: 3.0

[inet_http_server] Sezione Esempio
[inet_http_server]
porta = 127.0.0.1:9001
nome utente = utente
password = 123

[supervisore] Sezione Impostazioni
conf.supervisore il file contiene una sezione denominata [supervisore] in quali impostazioni globali
relativo al supervisore dovrebbe essere inserito il processo. Questi sono i seguenti.

[supervisore] Sezione Valori
file di log
Il percorso del registro attività del processo supervisiond. Questa opzione può includere il
APPREZZIAMO %(qui)s, che si espande nella directory in cui è stata configurata la supervisione
è stato trovato il file.

Predefinito: $CWD/supervisore.log

Obbligatorio: No.

Introdotto: 3.0

logfile_maxbytes
Il numero massimo di byte che possono essere consumati dal file di registro delle attività prima che sia
ruotato (i moltiplicatori del suffisso come "KB", "MB" e "GB" possono essere utilizzati nel valore). Set
questo valore su 0 per indicare una dimensione del registro illimitata.

Predefinito: 50MB

Obbligatorio: No.

Introdotto: 3.0

logfile_backup
Il numero di backup da conservare risultanti dalla rotazione del file di registro delle attività. Se impostato
a 0, non verranno conservati backup.

Predefinito: 10

Obbligatorio: No.

Introdotto: 3.0

loglevel
Il livello di registrazione, che detta ciò che viene scritto nel registro delle attività del supervisore. Uno di
critico, errore, avvertire, info, mettere a punto, tracciare, o ciarlare. Nota che a livello di registro mettere a punto,
il file di log supervisord registrerà l'output stderr/stdout dei suoi processi figlio
e informazioni estese sulle modifiche allo stato del processo, utili per il debug di a
processo che non si avvia correttamente. Vedi anche: activity_log_levels.

Predefinito: Informazioni

Obbligatorio: No.

Introdotto: 3.0

file pid
La posizione in cui supervisord conserva il suo file pid. Questa opzione può includere il
APPREZZIAMO %(qui)s, che si espande nella directory in cui è stata configurata la supervisione
è stato trovato il file.

Predefinito: $CWD/supervisore.pid

Obbligatorio: No.

Introdotto: 3.0

umask
L'umask del processo di supervisione.

Predefinito: 022

Obbligatorio: No.

Introdotto: 3.0

nododemon
Se true, supervisord verrà avviato in primo piano invece di demonizzare.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0

menti
Il numero minimo di descrittori di file che devono essere disponibili prima che supervisord lo faccia
iniziare con successo. Verrà fatta una chiamata a setrlimit per tentare di rilanciare il soft e
limiti rigidi del processo di supervisione da soddisfare menti. Il limite rigido può essere solo
sollevato se supervisord viene eseguito come root. supervisord utilizza liberamente i descrittori di file e
entrerà in una modalità di errore quando non è possibile ottenerne una dal sistema operativo, quindi è utile essere
in grado di specificare un valore minimo per garantire che non li esaurisca durante l'esecuzione.
Questa opzione è particolarmente utile su Solaris, che ha un limite fd per processo basso di
predefinito.

Predefinito: 1024

Obbligatorio: No.

Introdotto: 3.0

minproc
Il numero minimo di descrittori di processo che devono essere disponibili prima del supervisore
inizierà con successo. Verrà fatta una chiamata a setrlimit per tentare di rilanciare il soft
e rigidi limiti del processo di supervisione da soddisfare minproc. Il limite duro può
essere sollevata solo se supervisord viene eseguito come root. supervisord entrerà in una modalità di guasto
quando il sistema operativo esaurisce i descrittori di processo, quindi è utile assicurarsi che sia sufficiente
i descrittori di processo sono disponibili su supervisore avviare.

Predefinito: 200

Obbligatorio: No.

Introdotto: 3.0

nessuna pulizia
Impedisci al supervisore di cancellare qualsiasi esistente AUTO file di registro figlio all'avvio.
Utile per il debug.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0

figlio dir
La directory utilizzata per AUTO file di registro figlio. Questa opzione può includere il valore
%(qui)s, che si espande nella directory in cui supervisore file di configurazione
è stato trovato.

Predefinito: valore di Python filetemp.get_tempdir()

Obbligatorio: No.

Introdotto: 3.0

Utente
istruire supervisore per passare gli utenti a questo account utente UNIX prima di eseguire qualsiasi operazione
elaborazione significativa. L'utente può essere cambiato solo se supervisore è iniziato come il
utente root. Se supervisore non può cambiare utente, continuerà comunque ma scriverà a
registrare il messaggio al critico level dicendo che non può perdere i privilegi.

Predefinito: non cambiare utente

Obbligatorio: No.

Introdotto: 3.0

elenco
quando supervisore daemonizes, passa a questa directory. Questa opzione può includere il
APPREZZIAMO %(qui)s, che si espande nella directory in cui supervisore configurazione
è stato trovato il file.

Predefinito: non cd

Obbligatorio: No.

Introdotto: 3.0

strip_ansi
Elimina tutte le sequenze di escape ANSI dai file di registro figlio.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0

ambiente
Un elenco di coppie chiave/valore nel modulo KEY="val",KEY2="val2" che verrà inserito nel
supervisore processo' ambiente (e di conseguenza in tutto il suo processo figlio'
ambienti). Questa opzione può includere il valore %(qui)s, che si espande in
directory in cui è stato trovato il file di configurazione supervisord. Valori contenenti
i caratteri non alfanumerici devono essere tra virgolette (es KEY="val:123",KEY2="val,456").
In caso contrario, la citazione dei valori è facoltativa ma consigliata. Per sfuggire per cento
caratteri, usane semplicemente due. (per esempio URI="/first%%20name") Note: che i sottoprocessi lo faranno
eredita le variabili d'ambiente della shell utilizzata per l'avvio supervisore fatta eccezione per il
quelli sovrascritti qui e all'interno del programma ambiente opzione. Vedere
subprocess_environment.

Predefinito: nessun valore

Obbligatorio: No.

Introdotto: 3.0

identificatore
La stringa identificativa per questo processo supervisore, utilizzata dall'interfaccia RPC.

Predefinito: supervisore

Obbligatorio: No.

Introdotto: 3.0

[supervisore] Sezione Esempio
[supervisore]
logfile = /tmp/supervisord.log
logfile_maxbytes = 50 MB
logfile_backups=10
loglevel = informazioni
pidfile = /tmp/supervisord.pid
nodemone = falso
mente = 1024
minproc = 200
maschera = 022
utente = crisma
identificatore = supervisore
directory = / Tmp
nocleanup = vero
registro figlio = / Tmp
strip_ansi = falso
ambiente = CHIAVE1="valore1",CHIAVE2="valore2"

[supervisore] Sezione Impostazioni
Il file di configurazione può contenere le impostazioni per il supervisore shell interattiva
programma. Queste opzioni sono elencate di seguito.

[supervisore] Sezione Valori
URL del server
L'URL da utilizzare per accedere al server supervisord, ad es
http://localhost: 9001. Per i socket di dominio UNIX, utilizzare
unix:///absolute/path/to/file.sock.

Predefinito: http://localhost: 9001

Obbligatorio: No.

Introdotto: 3.0

nome utente
Il nome utente da passare al server supervisord per l'utilizzo nell'autenticazione. Questo dovrebbe
essere uguale a nome utente dalla configurazione del server supervisore per la porta o UNIX
socket di dominio a cui stai tentando di accedere.

Predefinito: Nessun nome utente

Obbligatorio: No.

Introdotto: 3.0

parola d'ordine
La password da passare al server supervisord per l'utilizzo nell'autenticazione. Questo dovrebbe
essere la versione in chiaro di parola d'ordine dalla configurazione del server supervisore per il
port o socket di dominio UNIX a cui stai tentando di accedere. Questo valore non può essere passato come
un hash SHA. A differenza di altre password specificate in questo file, deve essere fornito in
testo chiaro.

Predefinito: No Password

Obbligatorio: No.

Introdotto: 3.0

pronto
Stringa utilizzata come prompt supervisorctl.

Predefinito: supervisore

Obbligatorio: No.

Introdotto: 3.0

file_storia
Un percorso da usare come readline file di cronologia persistente. Se abiliti questa funzione con
scegliendo un percorso, i tuoi comandi supervisorctl verranno conservati nel file e potrai utilizzare
readline (es. freccia su) per richiamare i comandi che hai eseguito nell'ultimo supervisorctl
sessione.

Predefinito: Nessun file

Obbligatorio: No.

Introdotto: 3.0a5

[supervisore] Sezione Esempio
[supervisore]
serverurl = unix:///tmp/supervisor.sock
nome utente = chris
password = 123
prompt = miosupervisore

[programma:x] Sezione Impostazioni
Il file di configurazione deve contenere uno o più <font style="vertical-align: inherit;" class="">Programma</font> sezioni in ordine per la supervisioned
per sapere quali programmi deve avviare e controllare. Il valore dell'intestazione è un valore composto.
È la parola "programma", seguita direttamente da due punti, quindi dal nome del programma. un'intestazione
valore di [programma:pippo] descrive un programma con il nome di "foo". Il nome è usato
all'interno delle applicazioni client che controllano i processi che vengono creati a seguito di ciò
configurazione. È un errore creare un <font style="vertical-align: inherit;" class="">Programma</font> sezione che non ha un nome. Il
il nome non deve includere un carattere due punti o un carattere parentesi. Il valore del nome è
usato come valore per %(nome_programma)s espansione dell'espressione di stringa all'interno di altri valori
dove specificato.

NOTA:
A [programma:x] la sezione rappresenta in realtà un "gruppo di processi omogeneo" per il supervisore
(dal 3.0). I membri del gruppo sono definiti dalla combinazione di numprocs
e nome del processo parametri nella configurazione. Per impostazione predefinita, se numprocs e
process_name sono lasciati invariati dai loro valori predefiniti, il gruppo rappresentato da
[programma:x] sarà nominato x e avrà un singolo processo chiamato x dentro. Questo
fornisce un minimo di retrocompatibilità con le versioni precedenti del supervisore, il che non ha funzionato
non trattare le sezioni di programma come definizioni di gruppi di processi omogenei.

Ma per esempio, se hai un [programma:pippo] sezione con a numprocs di 3 e a
nome del processo espressione di %(nome_programma)s_%(num_processo)02d, il gruppo "pippo" lo farà
contengono tre processi, denominati foo_00, foo_01e foo_02. Questo rende possibile
avviare una serie di processi molto simili utilizzando un unico [programma:x] sezione. Tutto
possono contenere anche i nomi dei file di log, tutte le stringhe di ambiente e il comando dei programmi
espressioni di stringa Python simili, per passare parametri leggermente diversi a ciascuna
processo.

[programma:x] Sezione Valori
command
Il comando che verrà eseguito all'avvio di questo programma. Il comando può essere sia
assoluto (es /percorso/di/nomeprogramma) o relativo (es nome del programma). Se è
parente, l'ambiente del supervisore $ PERCORSO verrà cercato l'eseguibile.
I programmi possono accettare argomenti, ad es /percorso/per/programma foo bar. La riga di comando può usare
virgolette doppie per raggruppare argomenti con spazi da passare al programma, ad es
/percorso/del/programma/nome -p "pippo" bar". Notare che il valore di command può includere Python
espressioni stringa, ad es /percorso/di/nomeprogramma --port=80%(num_processo)02d potrebbe espandersi
a /percorso/di/nomeprogramma --porta=8000 in fase di esecuzione. Le espressioni stringa vengono valutate
contro un dizionario contenente le chiavi nome del gruppo, nome_nodo_host, numero_processo,
nome del programma, qui (la directory del file di configurazione supervisord), e tutto
variabili d'ambiente di supervisord precedute da ENV_. I programmi controllati dovrebbero
essi stessi non sono demoni, poiché supervisord presume di essere responsabile della demonizzazione dei suoi
sottoprocessi (vedere non daemonizing_of_subprocesses).

Predefinito: Nessuna impostazione predefinita.

Obbligatorio: Sì.

Introdotto: 3.0

nome del processo
Un'espressione stringa Python utilizzata per comporre il nome del processo supervisore per questo
processi. Di solito non devi preoccuparti di impostarlo a meno che tu non cambi
numprocs. L'espressione stringa viene valutata rispetto a un dizionario che include
nome del gruppo, nome_nodo_host, numero_processo, nome del programmae qui (l'elenco delle
file di configurazione supervisord).

Predefinito: %(nome_programma)s

Obbligatorio: No.

Introdotto: 3.0

numprocs
Supervisor avvierà tante istanze di questo programma quante sono indicate da numprocs. Nota
che se numprocs > 1, il nome del processo l'espressione deve includere %(num_processo)s (o qualsiasi
altra espressione stringa Python valida che includa numero_processo) al suo interno.

Predefinito: 1

Obbligatorio: No.

Introdotto: 3.0

numprocs_start
Un offset intero utilizzato per calcolare il numero in corrispondenza del quale numprocs inizia.

Predefinito: 0

Obbligatorio: No.

Introdotto: 3.0

priorità
La priorità relativa del programma nell'ordine di avvio e arresto. Inferiore
le priorità indicano i programmi che si avviano per primi e si chiudono per ultimi all'avvio e quando
i comandi aggregati sono usati in vari client (es. "start all"/"stop all"). Più alto
le priorità indicano i programmi che iniziano per ultimi e si chiudono per primi.

Predefinito: 999

Obbligatorio: No.

Introdotto: 3.0

avvio automatico
Se true, questo programma si avvierà automaticamente all'avvio di supervisord.

Predefinito: vero

Obbligatorio: No.

Introdotto: 3.0

secondi di partenza
Il numero totale di secondi di cui il programma ha bisogno per rimanere in esecuzione dopo un avvio per
considerare l'inizio riuscito (spostando il processo dal DI PARTENZA stato al
JOGGING vs RUNNING stato). Impostato 0 per indicare che il programma non deve rimanere in esecuzione per nessuno
determinato periodo di tempo.

NOTA:
Anche se un processo esce con un codice di uscita "previsto" (vedi codici di uscita), la partenza
sarà comunque considerato un fallimento se il processo termina più velocemente di secondi di partenza.

Predefinito: 1

Obbligatorio: No.

Introdotto: 3.0

tentativi di partenza
Il numero di tentativi di errore seriale che supervisore consentirà quando si tenta di
avviare il programma prima di arrendersi e mettere il processo in un FATAL stato. Vedere
process_states per la spiegazione del FATAL stato.

Predefinito: 3

Obbligatorio: No.

Introdotto: 3.0

autorestart
Specifica se supervisore dovrebbe riavviare automaticamente un processo se esce quando lo è
presso JOGGING vs RUNNING stato. Potrebbe essere uno di falso, inaspettato, o vero. Se falso, il processo
non verrà riavviato automaticamente. Se inaspettato, il processo verrà riavviato quando il
il programma esce con un codice di uscita che non è uno dei codici di uscita associati a questo
configurazione del processo (vedi codici di uscita). Se vero, il processo sarà incondizionatamente
riavviato quando esce, indipendentemente dal suo codice di uscita.

NOTA:
autorestart controlla se supervisore avvierà automaticamente un programma se esce
dopo che è stato avviato con successo (il processo è in JOGGING vs RUNNING stato).

supervisore ha un meccanismo di riavvio diverso per l'avvio del processo
(il processo è in DI PARTENZA stato). I tentativi durante l'avvio del processo sono
controllato da secondi di partenza e tentativi di partenza.

Predefinito: inaspettato

Obbligatorio: No.

Introdotto: 3.0

codici di uscita
L'elenco dei codici di uscita "previsti" per questo programma utilizzato con autorestart. Se il
autorestart parametro è impostato su inaspettato, e il processo termina in un modo diverso da
a seguito di una richiesta di arresto del supervisore, supervisore riavvierà il processo se
esce con un codice di uscita non definito in questo elenco.

Predefinito: 0,2

Obbligatorio: No.

Introdotto: 3.0

segnale di stop
Il segnale utilizzato per terminare il programma quando viene richiesto un arresto. Questo può essere uno qualsiasi dei TERM,
HUP, INT, ESCI, KILL, USR1 o USR2.

Predefinito: TERMINE

Obbligatorio: No.

Introdotto: 3.0

stopwaitsec
Il numero di secondi di attesa prima che il sistema operativo restituisca un SIGCHILD a supervisore dopo l'
programma è stato inviato un segnale di stop. Se questo numero di secondi trascorre prima
supervisore riceve un SIGCHILD dal processo, supervisore tenterà di ucciderlo
con un SIGKILL finale.

Predefinito: 10

Obbligatorio: No.

Introdotto: 3.0

stopasgroup
Se vero, il flag fa sì che il supervisore invii il segnale di arresto all'intero gruppo di processi
e implica killasgroup è vero. Questo è utile per i programmi, come Flask in debug
modalità, che non propagano segnali di stop ai propri figli, lasciandoli orfani.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0b1

killasgroup
Se vero, quando si ricorre all'invio di SIGKILL al programma per terminarlo, inviarlo al suo
invece l'intero gruppo di processi, che si prende cura anche dei suoi figli, utile ad esempio con
Programmi Python che usano multiprocessing.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0a11

Utente
istruire supervisore per utilizzare questo account utente UNIX come account che esegue il
programma. L'utente può essere cambiato solo se supervisore viene eseguito come utente root. Se
supervisore impossibile passare all'utente specificato, il programma non verrà avviato.

NOTA:
L'utente verrà modificato utilizzando setuido soltanto. Questo non avvia una shell di accesso e
non cambia le variabili d'ambiente come UTENTE or HOME. Vedere
subprocess_environment per i dettagli.

Predefinito: Non cambiare utente

Obbligatorio: No.

Introdotto: 3.0

redirect_stderr
Se vero, fa in modo che l'output stderr del processo venga restituito a supervisore sul suo stdout
descrittore di file (in termini di shell UNIX, questo è l'equivalente dell'esecuzione /il programma
2> e 1).

NOTA:
Non impostare redirect_stderr = true Organizza una [ascoltatore di eventi:x] sezione. Ascoltatori di eventi
uso stdout e stdin con cui comunicare supervisore. Se stderr viene reindirizzato,
uscita da stderr interferirà con il protocollo eventlistener.

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0, sostituisce 2.0's log_stdout e log_stderr

stdout_logfile
Metti l'output dello stdout del processo in questo file (e se redirect_stderr è vero, inserisci anche
stderr in questo file). Se stdout_logfile non è impostato o è impostato su AUTO, supervisore
sceglierà automaticamente una posizione del file. Se è impostato su NONE, supervisore sarà
non creare alcun file di registro. AUTO i file di registro e i relativi backup verranno eliminati quando supervisore
si riavvia. Il stdout_logfile value può contenere espressioni stringa Python che lo faranno
valutato rispetto a un dizionario che contiene le chiavi nome del gruppo, nome_nodo_host,
numero_processo, nome del programmae qui (la directory del file di configurazione supervisord).

NOTA:
Non è possibile che due processi condividano un singolo file di registro (stdout_logfile)
quando la rotazione (stdout_logfile_maxbytes) è abilitato. Questo risulterà nel file
essere corrotto.

Predefinito: AUTO

Obbligatorio: No.

Introdotto: 3.0, sostituisce 2.0's file di log

stdout_logfile_maxbytes
Il numero massimo di byte che possono essere consumati da stdout_logfile prima che venga ruotato
(nel valore possono essere utilizzati moltiplicatori di suffisso come "KB", "MB" e "GB"). Imposta questo
valore su 0 per indicare una dimensione del registro illimitata.

Predefinito: 50MB

Obbligatorio: No.

Introdotto: 3.0, sostituisce 2.0's logfile_maxbytes

stdout_logfile_backups
Il numero di stdout_logfile backup da tenere in giro risultanti dal registro stdout del processo
rotazione dei file. Se impostato su 0, non verranno conservati backup.

Predefinito: 10

Obbligatorio: No.

Introdotto: 3.0, sostituisce 2.0's logfile_backup

stdout_capture_maxbytes
Numero massimo di byte scritti per acquisire FIFO quando il processo è in "modalità di acquisizione stdout"
(vedi modalità_acquisizione). Dovrebbe essere un numero intero (moltiplicatori del suffisso come "KB", "MB" e "GB"
può essere utilizzato nel valore). Se questo valore è 0, la modalità di acquisizione del processo sarà disattivata.

Predefinito: 0

Obbligatorio: No.

Introdotto: 3.0, sostituisce 2.0's logfile_backup

stdout_events_enabled
Se vero, gli eventi PROCESS_LOG_STDOUT verranno emessi quando il processo scrive sul suo
descrittore di file stdout. Gli eventi verranno emessi solo se il descrittore di file non lo è
in modalità acquisizione al momento della ricezione dei dati (vedi modalità_acquisizione).

Predefinito: 0

Obbligatorio: No.

Introdotto: 3.0a7

stderr_logfile
Metti l'output stderr del processo in questo file a meno che redirect_stderr è vero. Accetta il
stessi tipi di valore di stdout_logfile e può contenere le stesse espressioni stringa Python.

NOTA:
Non è possibile che due processi condividano un singolo file di registro (stderr_logfile)
quando la rotazione (stderr_logfile_maxbytes) è abilitato. Questo risulterà nel file
essere corrotto.

Predefinito: AUTO

Obbligatorio: No.

Introdotto: 3.0

stderr_logfile_maxbytes
Il numero massimo di byte prima della rotazione del file di registro per stderr_logfile. Accetta il
stessi tipi di valore di stdout_logfile_maxbytes.

Predefinito: 50MB

Obbligatorio: No.

Introdotto: 3.0

stderr_logfile_backups
Il numero di backup da conservare risultanti dalla rotazione del file di registro stderr del processo.
Se impostato su 0, non verranno conservati backup.

Predefinito: 10

Obbligatorio: No.

Introdotto: 3.0

stderr_capture_maxbytes
Numero massimo di byte scritti per acquisire FIFO quando il processo è in "modalità di acquisizione stderr"
(vedi modalità_acquisizione). Dovrebbe essere un numero intero (moltiplicatori del suffisso come "KB", "MB" e "GB"
può essere utilizzato nel valore). Se questo valore è 0, la modalità di acquisizione del processo sarà disattivata.

Predefinito: 0

Obbligatorio: No.

Introdotto: 3.0

stderr_events_enabled
Se vero, gli eventi PROCESS_LOG_STDERR verranno emessi quando il processo scrive sul suo
descrittore di file stderr. Gli eventi verranno emessi solo se il descrittore di file non lo è
in modalità acquisizione al momento della ricezione dei dati (vedi modalità_acquisizione).

Predefinito: falso

Obbligatorio: No.

Introdotto: 3.0a7

ambiente
Un elenco di coppie chiave/valore nel modulo KEY="val",KEY2="val2" che verrà inserito nel
ambiente del processo bambino. La stringa dell'ambiente può contenere una stringa Python
espressioni che verranno valutate rispetto a un dizionario contenente nome del gruppo,
nome_nodo_host, numero_processo, nome del programmae qui (l'elenco del supervisore)
file di configurazione). I valori contenenti caratteri non alfanumerici devono essere citati (es.
KEY="val:123",KEY2="val,456"). Altrimenti, citare i valori è facoltativo ma
raccomandato. Note: che il sottoprocesso erediterà le variabili di ambiente del
shell utilizzata per avviare "supervisord" ad eccezione di quelli sovrascritti qui. Vedere
subprocess_environment.

Predefinito: Nessun ambiente extra

Obbligatorio: No.

Introdotto: 3.0

elenco
Un percorso di file che rappresenta una directory alla quale supervisore dovrebbe temporaneamente chdir
prima di eseguire il bambino.

Predefinito: Nessuna chdir (eredita il supervisore)

Obbligatorio: No.

Introdotto: 3.0

umask
Un numero ottale (es. 002, 022) che rappresenta l'umask del processo.

Predefinito: Nessuna umask speciale (eredita il supervisore)

Obbligatorio: No.

Introdotto: 3.0

URL del server
L'URL passato nell'ambiente al processo del sottoprocesso come SUPERVISOR_SERVER_URL
(Vedi supervisore.childutils) per consentire al sottoprocesso di comunicare facilmente con il
server HTTP interno. Se fornito, dovrebbe avere la stessa sintassi e struttura del
[supervisore] opzione di sezione con lo stesso nome. Se è impostato su AUTO o non è impostato,
il supervisore costruirà automaticamente un URL del server, dando la preferenza a un server
che ascolta su socket di dominio UNIX su uno che ascolta su un socket Internet.

Predefinito: AUTO

Obbligatorio: No.

Introdotto: 3.0

[programma:x] Sezione Esempio
[programma:gatto]
comando =/bin/gatto
nome_processo=%(nome_programma)s
numprocs=1
directory=/ Tmp
maschera=022
priority = 999
autostart = true
avvio automatico=inaspettato
secondi di inizio=10
tentativi di partenza=3
codici di uscita=0,2
segnale di stop=TERM
stopwaitsec=10
stopasgroup=falso
killasgroup=falso
utente=crisma
redirect_stderr=falso
stdout_logfile=/a/percorso
stdout_logfile_maxbytes=1 MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1 MB
stdout_events_enabled=falso
stderr_logfile=/a/percorso
stderr_logfile_maxbytes=1 MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1 MB
stderr_events_enabled=falso
ambiente=A="1",B="2"
serverurl=AUTO

[includere] Sezione Impostazioni
conf.supervisore il file può contenere una sezione denominata [includere]. Se la configurazione
il file contiene un [includere] sezione, deve contenere un'unica chiave denominata "files". Il
i valori in questa chiave specificano altri file di configurazione da includere all'interno di
configurazione.

[includere] Sezione Valori
file
Una sequenza di file glob separati da spazi. Ogni glob di file può essere assoluto o relativo.
Se il file glob è relativo, viene considerato relativo alla posizione del
file di configurazione che lo include. Un "glob" è un modello di file che corrisponde a a
pattern specificato in base alle regole utilizzate dalla shell Unix. Nessuna espansione della tilde è
fatto, ma *, ?, e gli intervalli di caratteri espressi con [] sarà abbinato correttamente.
Le inclusioni ricorsive dai file inclusi non sono supportate.

Predefinito: Nessuna impostazione predefinita (richiesto)

Obbligatorio: Sì.

Introdotto: 3.0

[includere] Sezione Esempio
[includere]
file = /an/assoluto/nomefile.conf /an/assoluto/*.conf foo.conf config??.conf

[gruppo:x] Sezione Impostazioni
È spesso utile raggruppare gruppi di processi "omogenei" (noti anche come "programmi") in a
gruppo di processi "eterogenei" in modo che possano essere controllati come un'unità dal supervisore
varie interfacce di controllo.

Per inserire i programmi in un gruppo in modo da poterli trattare come un'unità, definire a [gruppo:x] del prodotto
nel tuo file di configurazione. Il valore dell'intestazione del gruppo è un composto. È la parola
"gruppo", seguito direttamente da due punti, quindi dal nome del gruppo. Un valore di intestazione di [gruppo:pippo]
descrive un gruppo con il nome di "foo". Il nome viene utilizzato all'interno delle applicazioni client
che controllano i processi che vengono creati a seguito di questa configurazione. È un
errore per creare a gruppo sezione che non ha un nome. Il nome non deve includere a
due punti o un carattere parentesi.

Per un [gruppo:x], ce ne devono essere uno o più [programma:x] sezioni altrove nel tuo
file di configurazione, e il gruppo deve fare riferimento a loro per nome nel programmi valore.

Se i gruppi di processi "omogenei" (rappresentati da sezioni di programma) vengono inseriti in a
gruppo "eterogeneo" via [gruppo:x] sezioni programmi linea, i gruppi omogenei che
sono impliciti nella sezione del programma non esisterà in fase di esecuzione nel supervisore. Invece, tutto
processi appartenenti a ciascuno dei gruppi omogenei saranno collocati nel
gruppo eterogeneo. Ad esempio, data la seguente configurazione di gruppo:

[gruppo:pippo]
programmi=bar,baz
priority = 999

Alla luce di quanto sopra, all'avvio della supervisione, il bar e baz i gruppi omogenei non lo faranno
esistono, e i processi che sarebbero stati sotto di loro verranno ora spostati nel foo
gruppo.

[gruppo:x] Sezione Valori
programmi
Un elenco separato da virgole di nomi di programmi. I programmi elencati diventano membri
del gruppo.

Predefinito: Nessuna impostazione predefinita (richiesto)

Obbligatorio: Sì.

Introdotto: 3.0

priorità
Un numero di priorità analogo a a [programma:x] valore di priorità assegnato al gruppo.

Predefinito: 999

Obbligatorio: No.

Introdotto: 3.0

[gruppo:x] Sezione Esempio
[gruppo:pippo]
programmi=bar,baz
priority = 999

[programma fcgi:x] Sezione Impostazioni
Il supervisore può gestire gruppi di Fast CGI processi che sono tutti in ascolto sullo stesso socket.
Fino ad ora, la flessibilità di implementazione per FastCGI era limitata. Per ottenere il processo completo
gestione, potresti usare mod_fastcgi sotto Apache ma poi eri bloccato con Apache
modello di concorrenza inefficiente di un processo o thread per connessione. Inoltre
richiedendo più risorse di CPU e memoria, il modello di processo/thread per connessione può essere
rapidamente saturato da una risorsa lenta, impedendo che altre risorse vengano servite. In
per sfruttare i nuovi server Web basati su eventi come lighttpd o nginx che
non includere un gestore di processi integrato, dovevi usare script come cgi-fcgi o
spawn-fcgi. Questi possono essere utilizzati in combinazione con un gestore di processo come supervisord
o daemontools ma richiedono che ogni processo figlio FastCGI si leghi al proprio socket. Il
gli svantaggi di questo sono: configurazione del server web inutilmente complicata, sgraziata
riavvii e ridotta tolleranza agli errori. Con meno socket da configurare, server web
le configurazioni sono molto più piccole se i gruppi di processi FastCGI possono condividere i socket. Condiviso
i socket consentono riavvii regolari perché il socket rimane vincolato dal processo padre
mentre uno qualsiasi dei processi figlio viene riavviato. Infine, le prese condivise sono più
tollerante agli errori perché se un determinato processo fallisce, altri processi possono continuare a funzionare
connessioni in entrata.

Con il supporto di generazione FastCGI integrato, Supervisor ti offre il meglio di entrambi i mondi.
Ottieni una gestione completa dei processi con gruppi di processi FastCGI che condividono socket
senza essere legato a un particolare server web. È una netta separazione delle preoccupazioni,
consentendo al server Web e al gestore dei processi di fare ciascuno ciò che sanno fare meglio.

NOTA:
Il gestore socket in Supervisor è stato originariamente sviluppato per supportare i processi FastCGI
ma non è limitato a FastCGI. Possono essere utilizzati anche altri protocolli senza particolari
configurazione. Qualsiasi programma che può accedere a un socket aperto da un descrittore di file (es
con presa.dafd in Python) può utilizzare il gestore socket. Il supervisore lo farà
crea automaticamente il socket, associa e ascolta prima di eseguire il fork del primo figlio in a
gruppo. Il socket verrà passato a ciascun figlio sul numero del descrittore di file 0 (zero).
Quando l'ultimo figlio del gruppo esce, Supervisor chiuderà il socket.

Tutte le opzioni disponibili per [programma:x] le sezioni sono rispettate anche da fcgi-programma
.

[programma fcgi:x] Sezione Valori
[programma fcgi:x] le sezioni hanno un'unica chiave che [programma:x] sezioni non hanno.

presa di corrente
Il socket FastCGI per questo programma, socket di dominio TCP o UNIX. Per i socket TCP,
usa questo formato: tcp://localhost:9002. Per i socket di dominio UNIX, utilizzare
unix:///absolute/path/to/file.sock. Le espressioni di stringa vengono valutate rispetto a a
dizionario contenente le chiavi "nome_programma" e "qui" (la directory del
file di configurazione supervisord).

Predefinito: Nessuna impostazione predefinita.

Obbligatorio: Sì.

Introdotto: 3.0

socket_proprietario
Per i socket di dominio UNIX, questo parametro può essere utilizzato per specificare l'utente e il gruppo per
la presa FastCGI. Può essere un nome utente UNIX (ad es. chrism) o un nome utente UNIX e un gruppo
separati da due punti (es. crisma:ruota).

Predefinito: Utilizza l'utente e il gruppo impostati per il programma fcgi

Obbligatorio: No.

Introdotto: 3.0

socket_mode
Per i socket di dominio UNIX, questo parametro può essere utilizzato per specificare la modalità di autorizzazione.

Predefinito: 0700

Obbligatorio: No.

Introdotto: 3.0

Consultare [programma:x] Sezione Impostazioni per altre chiavi consentite, delta i vincoli di cui sopra
e aggiunte.

[programma fcgi:x] Sezione Esempio
[programma-fcgi:nomeprogrammafcgi]
comando=/usr/bin/example.fcgi
socket=unix:///var/run/supervisor/%(nome_programma)s.sock
socket_owner=crisma
socket_mode=0700
nome_processo=%(nome_programma)s_%(num_processo)02d
numprocs=5
directory=/ Tmp
maschera=022
priority = 999
autostart = true
avvio automatico=inaspettato
secondi di inizio=1
tentativi di partenza=3
codici di uscita=0,2
segnale di stop=QUIT
stopasgroup=falso
killasgroup=falso
stopwaitsec=10
utente=crisma
redirect_stderr = true
stdout_logfile=/a/percorso
stdout_logfile_maxbytes=1 MB
stdout_logfile_backups=10
stdout_events_enabled=falso
stderr_logfile=/a/percorso
stderr_logfile_maxbytes=1 MB
stderr_logfile_backups=10
stderr_events_enabled=falso
ambiente=A="1",B="2"
serverurl=AUTO

[ascoltatore di eventi:x] Sezione Impostazioni
Supervisor consente a gruppi di processi omogenei specializzati ("pool di ascoltatori di eventi") di essere
definito all'interno del file di configurazione. Questi pool contengono processi che hanno lo scopo di
ricevere e rispondere alle notifiche degli eventi dal sistema degli eventi del supervisore. Vedi gli eventi per
una spiegazione di come funzionano gli eventi e come implementare programmi che possono essere dichiarati come
ascoltatori di eventi

Nota che tutte le opzioni disponibili per [programma:x] le sezioni sono rispettate da eventlistener
sezioni tranne per stdout_capture_maxbytes e stderr_capture_maxbytes (ascoltatori di eventi
non può emettere eventi di comunicazione di processo, vedere modalità_acquisizione).

[ascoltatore di eventi:x] Sezione Valori
[ascoltatore di eventi:x] le sezioni hanno alcune chiavi che [programma:x] sezioni non hanno.

dimensione buffer
La dimensione del buffer della coda degli eventi del pool di listener di eventi. Quando il buffer degli eventi di un pool di ascoltatori
è traboccato (come può succedere quando un pool di ascoltatori di eventi non può tenere il passo con tutti i
eventi inviati ad esso), l'evento più vecchio nel buffer viene scartato.

eventi
Un elenco separato da virgole di nomi di tipi di eventi a cui questo ascoltatore è "interessato"
ricevere notifiche per (vedi event_types per un elenco di nomi di tipi di eventi validi).

gestore_risultato
A risorse_pkg iscrizione punto stringa che si risolve in un chiamabile Python. Il predefinito
valore è supervisor.dispatcher:default_handler. Specificare un risultato alternativo
gestore è una cosa molto rara da fare e, di conseguenza, come crearne uno è
non documentato.

Consultare [programma:x] Sezione Impostazioni per altre chiavi consentite, delta i vincoli di cui sopra
e aggiunte.

[ascoltatore di eventi:x] Sezione Esempio
[ascoltatore di eventi: nome dell'ascoltatore di eventi]
comando=/bin/eventlistener
nome_processo=%(nome_programma)s_%(num_processo)02d
numprocs=5
eventi=PROCESS_STATE
dimensione_tampone=10
directory=/ Tmp
maschera=022
priorità=-1
autostart = true
avvio automatico=inaspettato
secondi di inizio=1
tentativi di partenza=3
codici di uscita=0,2
segnale di stop=QUIT
stopwaitsec=10
stopasgroup=falso
killasgroup=falso
utente=crisma
redirect_stderr=falso
stdout_logfile=/a/percorso
stdout_logfile_maxbytes=1 MB
stdout_logfile_backups=10
stdout_events_enabled=falso
stderr_logfile=/a/percorso
stderr_logfile_maxbytes=1 MB
stderr_logfile_backups=10
stderr_events_enabled=falso
ambiente=A="1",B="2"
serverurl=AUTO

[interfaccia rpc:x] Sezione Impostazioni
Aggiunta interfaccia rpc:x impostazioni nel file di configurazione è utile solo per le persone che
desidera estendere il supervisore con un comportamento personalizzato aggiuntivo.

Nel file di configurazione di esempio, c'è una sezione che si chiama [rpcinterface:supervisore].
Per impostazione predefinita, sembra il seguente.

[rpcinterface:supervisore]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[rpcinterface:supervisore] del prodotto devi obbligatoriamente rimanere nella configurazione per lo standard
configurazione del supervisore per funzionare correttamente. Se non vuoi che il supervisore faccia nulla
non fa già fuori dagli schemi, questo è tutto ciò che devi sapere su questo tipo di
.

Tuttavia, se desideri aggiungere spazi dei nomi dell'interfaccia rpc per personalizzare il supervisore,
può aggiungere ulteriori [rpcinterface:foo] sezioni, dove "pippo" rappresenta lo spazio dei nomi di
l'interfaccia (dalla radice web) e il valore denominato da supervisor.rpcinterface_factory
è un factory callable che dovrebbe avere una firma di funzione che accetta un singolo
argomento posizionale supervisore e tutti gli argomenti delle parole chiave necessari per eseguire
configurazione. Eventuali coppie chiave/valore aggiuntive definite all'interno di [interfaccia rpc:x] la sezione sarà
essere passati come argomenti della parola chiave alla fabbrica.

Ecco un esempio di una funzione di fabbrica, creata nel __init__.py file del Python
pacchetto mio.pacchetto.

da my.package.rpcinterface import AnotherRPCInterface

def make_another_rpcinterface(supervisord, **config):
tentativi = int(config.get('riprova', 0))
Another_rpc_interface = AnotherRPCInterface(supervisore, tentativi)
restituisce un'altra_rpc_interface

E una sezione nel file di configurazione destinata a configurarlo.

[rpcinterface:altro]
supervisor.rpcinterface_factory = mio.pacchetto:make_another_rpcinterface
tentativi = 1

[interfaccia rpc:x] Sezione Valori
supervisor.rpcinterface_factory
risorse_pkg nome "punto di ingresso" puntato alla funzione di fabbrica dell'interfaccia RPC.

Predefinito: N / A

Obbligatorio: No.

Introdotto: 3.0

[interfaccia rpc:x] Sezione Esempio
[rpcinterface:altro]
supervisor.rpcinterface_factory = mio.pacchetto:make_another_rpcinterface
tentativi = 1

Glossario
strumenti del demonio
A processi controllo sistema by DJ Bernstein.

launchd
A processi controllo sistema utilizzato by Apple come processo 1 in Mac OS X.

eseguirlo A processi controllo sistema.

Superlance
Un pacchetto che fornisce varie implementazioni di ascoltatori di eventi che si collegano a
Supervisore che può aiutare a monitorare l'utilizzo della memoria del processo e lo stato di arresto anomalo:
http://pypi.python.org/pypi/superlance.

umask abbreviazione di Utente mask: imposta la maschera di creazione della modalità file del processo corrente.
Andate a http://en.wikipedia.org/wiki/Umask.

Usa echo_supervisord_conf online utilizzando i servizi onworks.net


Ad


Ad