سرپرست سیستم / سرور مشتری که اجازه می دهد تا کاربران آن را کنترل تعدادی از فرآیندهای در سیستم عامل های یونیکس مانند است. این توسط زیر الهام گرفته شده بود:
- این است که اغلب ناخوشایند به نیاز به ارسال "rc.d" اسکریپت برای هر مثال پروسه. اسکریپت rc.d یک فرم پایین ترین گذاری مشترک زیادی از روند دهی اولیه / autostart / مدیریت، اما آنها می تواند دردناک به ارسال و حفظ کند. علاوه بر این، اسکریپت rc.d نمی تواند به طور خودکار یک فرایند سقوط کرد راه اندازی مجدد و بسیاری از برنامه های خود را به درستی در یک تصادف راه اندازی مجدد نیست. Supervisord شروع می شود فرآیندهای عنوان subprocesses آن، و می توان به پیکربندی به طور خودکار آنها را در یک تصادف راه اندازی مجدد. همچنین می تواند به طور خودکار پیکربندی شود برای شروع پروسه در نیایش خود را دارد.
- این اغلب دشوار است برای گرفتن دقیق به بالا / پایین وضعیت در فرآیندهای در یونیکس. Pidfiles اغلب دروغ. Supervisord شروع می شود فرآیندهای عنوان subprocesses، پس از آن همیشه می داند که درست بالا / پایین وضعیت کودکان خود را و می تواند به راحتی برای این داده ها درخواست.
- کاربرانی که نیاز به کنترل دولت روند اغلب تنها نیاز به انجام این کار. آنها نمی خواهند و یا نیاز به دسترسی پوسته تمام عیار به دستگاه که در آن فرایندهای در حال اجرا هستند. Supervisorctl اجازه می دهد تا به صورت بسیار محدود دسترسی به دستگاه، در اصل کاربران اجازه می دهد برای دیدن وضعیت پروسه است و کنترل-supervisord کنترل subprocesses با انتشار "توقف"، "شروع"، و "راه اندازی مجدد" فرمان از یک پوسته ساده و یا UI وب.
- کاربران اغلب نیاز به کنترل فرآیندهای در بسیاری از ماشین آلات. سرپرست فراهم می کند مکانیزم ساده، امن، و لباس به آن برای تعاملی و به طور خودکار کنترل فرآیندهای در گروه ماشین آلات.
- فرایند که در گوش پورت TCP "کم" اغلب نیاز به شروع شود و دوباره به عنوان کاربر ریشه (misfeature یونیکس). این معمولا مورد که این کاملا خوب به مردم اجازه می دهد "عادی" به متوقف کردن و یا راه اندازی مجدد چنین روند، اما ارائه آنها را با دسترسی پوسته اغلب غیر عملی و ارائه آنها را با دسترسی ریشه و یا دسترسی sudo را اغلب غیر ممکن است. این هم (به درستی) دشوار برای توضیح به آنها به همین دلیل این مشکل وجود دارد. اگر supervisord است به عنوان ریشه آغاز شده، ممکن است به کاربران اجازه می دهد "عادی" برای کنترل فرآیندهای بدون نیاز به توضیح پیچیدگیهای مشکل به آنها.
- فرایند اغلب نیاز به آغاز شود و متوقف در گروه، گاهی اوقات حتی در یک "نظم اولویت". این اغلب دشوار است برای توضیح به مردم است که چگونه به انجام این کار. استاد اجازه می دهد تا به شما اختصاص اولویت به فرآیندها، و اجازه می دهد تا کاربر را به منتشر می کنند دستورات از طریق مشتری supervisorctl مانند "شروع همه"، و "راه اندازی مجدد همه"، که آنها را در جهت اولویت قبلا تخصیص داده شده شروع می شود. علاوه بر این، فرایند را می توان به "گروه پروسه" گروه بندی و مجموعه ای از فرآیندهای منطقی مربوط می تواند متوقف شود و شروع به عنوان یک سیستم unit.otification اضافه شد
چه در این نسخه جدید است.
در رفتار کاربر گزینه برنامه تغییر کرده است. در تمام نسخه های قبلی، اگر supervisord موفق به تبدیل به کاربر، هشدار خواهد بود به ورود stderr فرستاده اما پروسه فرزند هنوز هم باعث می شود. این به این معنی است که یک اشتباه در فایل پیکربندی می تواند در یک پروسه فرزند شدن ناخواسته به عنوان ریشه باعث می شود. در حال حاضر، supervisord خواهد کودک تخم ریزی نمی شود مگر اینکه آن را قادر به موفقیت به کاربر تغییر بود. با تشکر از ایگور Partola برای گزارش این موضوع است.
اگر یک کاربر مشخص شده در فایل پیکربندی می کند بر روی سیستم وجود ندارد، supervisord در حال حاضر خطایی چاپ و شروع به امتناع.
واگردانی تغییر به ورود به سیستم معرفی شده در 3.0b1 که در نظر گرفته شده بود تا به فرآیندهای متعدد برای ورود به همان فایل با چرخش کنترل ورود. اجرای باعث supervisord در طول بازنگری به سقوط و نشت فایل دسته. همچنین، از آنجایی گزینه چرخش ورود بر اساس هر برنامه داده می شود، تنظیمات غیر ممکن می شود (گزینه چرخش متضاد برای فایل همان) ایجاد شده است. با توجه به این و که supervisord در حال حاضر پشتیبانی syslog را، آن را به حذف این ویژگی تصمیم گرفته شد. هشدار به مدارکی که دو فرایند ممکن است به همان فایل ورود به سیستم اضافه شد.
رفع اشکال که در آن تجزیه دستور = می تواند supervisord باعث به سقوط اگر shlex.split () می افتد، مانند بد به نقل از. پچ های اسکات ویلسون.
در حال حاضر امکان استفاده از supervisorctl بر روی یک ماشین با هیچ فایل supervisord.conf توسط تهیه اطلاعات اتصال در گزینه های خط فرمان. پچ توسط Jens Rantil.
رفع اشکال که در آن supervisord می تصادف اگر کنترل syslog را مورد استفاده قرار گرفت و supervisord SIGUSR2 دریافت (ورود بازگشایی درخواست).
ثابت اشکال XML-RPC که در آن خواستار supervisor.getProcessInfo () با نام بد را 500 خطای داخلی سرور به جای بازگشت گسل BAD_NAME شود.
اضافه شده فاویکون به رابط وب. پچ های Caio Ariede.
ثابت یک شکست آزمون خاطر دست زدن به نادرست از زمان صرفه جویی در نور روز در آزمون childutils. پچ های ایلدار Hizbulin.
ثابت تعدادی از pyflakes هشدار برای متغیرهای استفاده نشده، واردات، و کد مرده است. پچ های فیلیپ Ombredanne.
جدید در نسخه 3.0 بتا 1 است:
رفع اشکال که در آن تجزیه محیط زیست = اید معتبر نیست که جفت کلید / مقدار صحیح از هم جدا شدند. پچ های مارتین پیترز هستند.
رفع اشکال در کد سرور HTTP است که می تواند تاخیر غیر ضروری در هنگام ارسال پاسخ بزرگ شود. پچ های فیلیپ Zeyliger.
هنگامی که supervisord شروع می شود تا به عنوان ریشه، اگر پرچم -c ارائه نشده است، یک هشدار است در حال حاضر به کنسول منتشر می شود. منطق: supervisord به نظر می رسد در دایرکتوری جاری برای یک فایل supervisord.conf. ممکن است کسی کاربر ریشه به شروع supervisord در حالی که به یک دایرکتوری است که supervisord.conf سرکش cd'ed فریب.
هشدار به مستندات مورد پیامدهای امنیتی از شروع supervisord بدون پرچم -c اضافه شد.
اضافه کردن stopasgroup گزینه برنامه بولی، متخلف به نادرست است. وقتی درست است که سرپرست پرچم علل برای ارسال سیگنال توقف به کل گروه روند. این برای برنامه ها، مانند فلاسک در حالت اشکال زدایی، که سیگنال های توقف انتشار به فرزندان خود نیست، ترک آنها را یتیم مفید است.
پایتون 2.3 دیگر پشتیبانی. آخرین نسخه ای که حمایت پایتون 2.3 سرپرست 3.0a12 است.
حذف استفاده نشده & quot؛ را supervisor_rpc ها & quot؛ نقطه ورود از setup.py.
رفع اشکال در چرخش کنترل ورود که نتایج غیر منتظره باعث زمانی که دو فرایند برای ورود به همان فایل تنظیم شد. پچ های گلریزان Morriss.
رفع اشکال در فایل پیکربندی مجدد که در آن هر بازنگری می تواند حافظه نشت به دلیل یک لیست از پیام های هشدار دهنده خواهد بود اضافه اما هرگز پاک. پچ های فیلیپ Zeyliger.
اضافه شده کنترل جدید ورود syslog استفاده میشود. با تشکر از دنیس Bilenko، ناتان L. اسمیت، و جیسون R. کومبس، که هر کدام به پچ کمک کرده است.
قرار دادن تمام تاریخ تغییر را در یک فایل (CHANGES.txt).
چه جدید در نسخه 3.0 آلفا 12 است:
در عرضه به جای شکسته 3.0a11 بسته که در آن فایل های غیر پایتون در بسته گنجانده نشده است.
چه جدید در نسخه 3.0 آلفا 10 است:
به ثابت شیوه از رابط وب تا خط بالا و پایین صفحه یک لیست فرآیند طولانی با هم تداخل نمی کند. با تشکر از درک DeVries برای پچ.
اجازه پلاگین رابط RPC ثبت نام انواع رویدادهای جدید.
رفع اشکال برای FCGI سوکت نمی تمیز تا زمانی که دستور بازنگری است از supervisorctl صادر شده است. همچنین، رفتار پیش فرض برای سوکت FCGI تغییر کرده است. آنها جدید بسته است هر زمان که تعداد فرآیندهای ofrunning در یک گروه بازدید صفر است. پیش از این، سوکت باز نگه داشته شد مگر اینکه یک دستور در سطح گروه توقف صادر شد.
پیغام خطا بهتر از وقتی که HTTP سرور نمی تواند معکوس حل و فصل نام میزبان را به آدرس IP. رفتار قبلی: نشان می دهد یک خطای سوکت. رفتار کنونی: تف یک پیشنهاد به STDOUT.
متغیرهای محیط زیست را از طریق محیط = ارزش در
[supervisord] بخش اثر نداشت. با تشکر از وایات بالدوین برای یک پچ.
رفع اشکال که در آن روند توقف خواهد خروجی فرایند است که پس از درخواست توقف صادر شد به دست داده است اتفاق افتاده شود. https://github.com/Supervisor/supervisor/issues/11 را ببینید.
تغییر 2.X منتقل مطالب ورود به HISTORY.txt.
تبدیل CHANGES.txt و readme.txt و به ReStructuredText مناسب و آنها را در long_description در setup.py گنجانده شده است.
اضافه شده tox.ini به بسته بندی شده (اجرا از طریق TOX در دیر بسته). سرپرست آزمایش بر روی نسخه های پایتون متعدد.
مورد نیاز:
پایتون
نظر یافت نشد