Školitel je systém klient / server, který umožňuje svým uživatelům ovládat celou řadu procesů na UNIXových operačních systémech. To bylo inspirováno tímto:
- To je často nevyhovující muset psát "rc.d" skripty pro každou instanci procesu. rc.d skripty jsou skvělým nejnižším společném jmenovateli forma procesu inicializace / autostart / řízení, ale mohou být bolestivé psát a udržovat. Kromě toho, rc.d skripty nelze automaticky znovu havarovaný proces a mnoho programů není správně znovu se na havárii. Supervisord začíná procesy jako jeho dílčí procesy, a může být nakonfigurován tak, aby automaticky restartuje je na zhroucení. To může také být konfigurován tak, aby automaticky spustit procesy na vlastní vyvolání.
- To je často obtížné získat přesné nahoru / dolů status na procesy v systému UNIX. Pidfiles často lžou. Supervisord spustí procesy jako dílčí procesy, takže to vždy zná skutečnou nahoru / dolů stav svých dětí, a mohou být dotazovány pohodlně k těmto údajům.
- Uživatelé, kteří potřebují řídit stavem procesu často stačí k tomu, že. Nechtějí potřebujete plnohodnotný shell přístup k zařízení, na kterém je spuštěn procesy. Supervisorctl umožňuje velmi omezenou formu přístupu ke stroji, v podstatě umožňuje uživatelům vidět stav a řízení procesu supervisord řízený podprocesy vysíláním "STOP", "start" a "restart" příkazy z jednoduchého skořápky nebo webové rozhraní.
- Uživatelé často potřebují kontrolovat procesy na mnoha počítačích. Supervisor poskytuje jednoduchý, bezpečný, a jednotný mechanismus pro interaktivně a automatické řízení procesů na skupiny strojů.
- Procesy, které poslouchají na "nízké" TCP porty je často nutné ke spuštění a restartování jako uživatel root (misfeature UNIX). To je obvykle případ, že je to naprosto v pořádku, aby "normální" lidi, aby zastavit nebo restartovat tento proces, ale poskytnout jim přístup shell je často nepraktické, a poskytuje jim s oprávněním root nebo sudo přístup je často nemožné. Je to také (správně), těžko se jim vysvětlit, proč tento problém existuje. Je-li spuštěna supervisord jako root, je možné, aby "normální" uživatelům ovládat takové procesy, aniž by bylo nutné vysvětlit složitosti problému se na ně.
- Procesy často je třeba spouštět a zastavovat ve skupinách, někdy dokonce v "priority order". Často je těžké vysvětlit lidem, jak to udělat. Supervisor umožňuje přiřadit priority procesů, a umožňuje uživateli vydávat příkazy přes supervisorctl klienta jako "začít", a "restartovat všechny", což je začíná v předvolená pořadí priority. Kromě toho, procesy mohou být rozděleny do "skupin procesů" a soubor logicky souvisejících procesů lze zastavit a spustit jako byl přidán unit.otification systém.
Co je nového v Toto vydání:
- Chování opčního programu uživatel změnil. Ve všech předchozích verzích, pokud supervisord se nepodařilo přejít na uživateli, varování bude zaslán do protokolu stderr, ale dítě proces bude stále třel. To znamená, že chyba v konfiguračním souboru, může dojít k dětským procesem nechtěnému plodil jako root. Nyní bude supervisord ne plodit dítě, pokud to bylo možné úspěšně přepnout na uživateli. Díky Igor Partola za nahlášení chyby.
- Pokud uživatel zadaný v konfiguračním souboru neexistuje v systému, bude supervisord nyní vytisknout chybu a odmítne spustit.
- Vrátit změnu s těžbou dřeva představen v 3.0b1, která má umožnit více procesů pro přihlášení do stejného souboru s rotujícím psovoda protokolu. Implementace způsobil supervisord zhroucení během znovuzavedení a k úniku rukojeti souborů. Také, protože možnosti rotace protokolu jsou uvedeny na základě jednotlivých programu, nemožné konfigurace by mohly být vytvořeny (protichůdné možnosti otáčení pro stejného souboru). Vzhledem k tomu, to a to supervisord nyní se Syslog podpora, bylo rozhodnuto odstranit tuto funkci. Upozornění byl přidán do dokumentace, že dva procesy mohou se přihlásit do stejného souboru.
- Opravena chyba, kdy analýzy příkaz = může způsobit supervisord pád, pokud shlex.split () selže, jako je například špatný citování. Patch Scott Wilson.
- Nyní je možné použít supervisorctl na stroji bez supervisord.conf souboru poskytování informací o připojení v příkazové řádce. Patch Jens Rantil.
- Opravena chyba, kdy by se supervisord selhat, pokud psovod syslog byl použit a supervisord přijal SIGUSR2 (log znovu požadavek).
- Pevná XML-RPC chyba, kdy volání supervisor.getProcessInfo () se špatným názvem by mělo za následek 500 Internal Server Error, než se vrátí chybu BAD_NAME.
- Přidal favicon do webového rozhraní. Patch Caio Ariede.
- Pevná selhání testu z důvodu nesprávného zacházení letního času v testech childutils. Patch by Ildar Hizbulin.
- Pevná řada pyflakes upozornění pro nepoužitých proměnných, dovozu a mrtvý kód. Patch Philippe Ombredanne.
Co je nového ve verzi 3.0 Beta 1:
- Opravena chyba, kdy analýzy prostředí = neověřil že páry klíč / hodnota byla správně odděleny. Patch Martijn Pieters.
- Opravena chyba v kódu HTTP serveru, který by mohl způsobit zbytečné prodlevy při odesílání velkých odpovědí. Patch Philip Zeyliger.
- Při supervisord spouští jako root, pokud se s -c, varování je nyní vypouštěny do konzole. Zdůvodnění: supervisord vypadá v aktuálním pracovním adresáři soubor supervisord.conf; někdo by mohl přimět uživatele root do zahájení supervisord zatímco cd'ed do adresáře, který má rogue supervisord.conf.
- upozornění byl přidán do dokumentace o bezpečnostních dopadech začíná supervisord bez -c.
- Přidat logickou volbu programu stopasgroup, prodlení na false. Když pravda, dohlížitel příčiny příznak vyslat signál k zastavení celé skupině procesů. To je užitečné pro programy, jako je například Baňka v režimu ladění, které se nešíří stop signály pro své děti, takže je kopie.
- Python 2.3 již není podporován. Poslední verze, která podporovala Python 2.3 je Supervisor 3.0a12.
- Odstraněna nepoužitý & quot; supervisor_rpc & quot; vstupní bod z setup.py.
- Opravena chyba v rotující protokolu psovoda, který by vést k neočekávaným výsledkům, kdy byly dva procesy nastaveny pro přihlášení do stejného souboru. Patch by svatodušní Morriss.
- Opravena chyba v konfiguračním souboru, přebíjení, kde každý jiný může dojít k úniku paměti, protože seznam varovných zpráv by se připojí, ale nikdy zrušeno. Patch Philip Zeyliger.
- Přidán nový Syslog popisovač protokolu. Díky Denis Bilenko, Nathan L. Smith a Jason R. Coombs, z nichž každý přispěl k opravy.
- Vložit celou historii změn do jednoho souboru (CHANGES.txt).
Co je nového ve verzi 3.0 Alpha 12:
- Vydáno vyměnit rozbité 3.0a11 balíček, kde non -Python soubory nebyly zahrnuty v balíčku.
Co je nového ve verzi 3.0 Alpha 10:
- Pevná styl webového rozhraní, tak zápatí linka nebude překrývat dlouhý seznam procesů. Díky Derek Devries na náplasti.
- Povolit pluginy RPC rozhraní registrovat nové typy akcí.
- Bug fix pro FCGI zásuvek nedostanou vyčištěn, když je příkaz Obnovit vydán z supervisorctl. Také výchozí chování změnila k FCGI zásuvky. Jedná se o nové uzavřen vždy číslo ofrunning procesy ve skupině klesne na nulu. Dříve, zásuvky zůstaly otevřené, pokud příkaz skupina na úrovni zastávky byla vydána.
- Lepší chybová zpráva při HTTP server není schopen zvrátit-li název hostitele na IP adresu. Předchozí chování: ukázat chybu zásuvky. Aktuální chování:. Vyplivnout návrh na standardní výstup
- Proměnné prostředí nastavit prostřednictvím životního prostředí = hodnota v
- [supervisord] oddíl neměl žádný vliv. Díky Wyatt Baldwina na opravy.
- Fix chyba, kdy zastavení procesu by způsobit výstupů procesu, co se stalo poté, co žádost o zastavení bylo vydáno ztraceny. Viz https://github.com/Supervisor/supervisor/issues/11.
- přeřazen změnit 2.X položky protokolu do history.txt.
- V přepočtu CHANGES.txt a README.txt do správného ReStructuredText a jejich zařazení do long_description v setup.py.
- přidána tox.ini balíčku (běh přes Tox v balíku r). Testy supervizor na více verzích Pythonu.
Požadavky na :
- Python
Komentáře nebyl nalezen