หัวหน้างานเป็นระบบไคลเอ็นต์ / เซิร์ฟเวอร์ที่ช่วยให้ผู้ใช้ในการควบคุมจำนวนของกระบวนการในระบบปฏิบัติการ UNIX เหมือน มันเป็นแรงบันดาลใจต่อไปนี้:
- มันมักจะไม่สะดวกที่จะต้องเขียน "rc.d" สคริปต์สำหรับทุกเช่นขั้นตอนเดียว สคริปต์ rc.d เป็นรูปแบบที่ดีต่ำสุดทั่วไปส่วนของการเริ่มต้น / autostart / การจัดการ แต่พวกเขาจะเจ็บปวดในการเขียนและการบำรุงรักษา นอกจากนี้สคริปต์ rc.d ไม่สามารถรีสตาร์ทโดยอัตโนมัติกระบวนการ crashed และหลายโปรแกรมไม่ต้องรีสตาร์ทตัวเองอย่างถูกต้องในความผิดพลาด Supervisord เริ่มกระบวนการเป็นกระบวนการย่อยของตนและสามารถกำหนดค่าให้เริ่มการทำงานของพวกเขาโดยอัตโนมัติเมื่อเกิดความผิดพลาด นอกจากนี้ยังสามารถกำหนดค่าโดยอัตโนมัติจะเริ่มต้นกระบวนการในการภาวนาของตัวเอง
- มันมักจะยากที่จะได้รับความถูกต้องขึ้น / ลงสถานะของกระบวนการบน UNIX Pidfiles มักจะโกหก Supervisord เริ่มกระบวนการเป็นกระบวนการย่อยดังนั้นจึงมักจะรู้สถานะที่แท้จริงขึ้น / ลงของเด็กและสามารถสอบถามข้อมูลที่สะดวกสำหรับการนี้
- ผู้ใช้ที่จำเป็นต้องควบคุมกระบวนการของรัฐมักจะต้องเดียวที่จะทำ พวกเขาไม่ได้ต้องการหรือจำเป็นต้องเข้าถึงเปลือกเต็มเป่าไปยังเครื่องที่กระบวนการกำลังทำงานอยู่ Supervisorctl ช่วยให้รูปแบบที่ จำกัด มากในการเข้าถึงเครื่องเป็นหลักช่วยให้ผู้ใช้เพื่อดูสถานะของกระบวนการและการควบคุมกระบวนการย่อย supervisord ควบคุมโดยเปล่ง "หยุด", "เริ่มต้น" และ "เริ่มต้นใหม่" คำสั่งจากเปลือกง่ายหรือเว็บ UI
- ผู้ใช้มักจะต้องควบคุมกระบวนการในเครื่องจำนวนมาก ผู้บังคับบัญชาให้ง่ายปลอดภัยและกลไกชุดสำหรับการโต้ตอบโดยอัตโนมัติและการควบคุมกระบวนการที่กลุ่มของเครื่อง
- กระบวนการที่ฟังที่ "ต่ำ" TCP พอร์ตมักจะต้องเริ่มต้นและเริ่มต้นใหม่เป็นผู้ใช้ราก (misfeature UNIX) ก็มักจะเป็นกรณีที่มันสมบูรณ์ดีเพื่อให้ "ปกติ" คนที่จะหยุดหรือเริ่มต้นกระบวนการดังกล่าว แต่ให้พวกเขาด้วยการเข้าถึงเปลือกมักจะทำไม่ได้และให้พวกเขามีการเข้าถึงรากหรือการเข้าถึง sudo มักจะเป็นไปไม่ได้ นอกจากนี้ยังมี (ถูกต้อง) ยากที่จะอธิบายให้พวกเขาว่าทำไมปัญหานี้อยู่ หาก supervisord จะเริ่มต้นเป็นรากก็เป็นไปได้ที่จะอนุญาตให้ "ปกติ" ผู้ใช้สามารถควบคุมกระบวนการดังกล่าวโดยไม่จำเป็นต้องอธิบายความซับซ้อนของปัญหาที่เกิดขึ้นกับพวกเขา
- กระบวนการที่มักจะต้องมีการเริ่มต้นและหยุดในกลุ่มบางครั้งแม้จะอยู่ใน "ลำดับความสำคัญ" มันมักจะยากที่จะอธิบายให้คนวิธีการทำเช่นนี้ หัวหน้าช่วยให้คุณสามารถกำหนดลำดับความสำคัญกับกระบวนการและช่วยให้ผู้ใช้ในการเปล่งคำสั่งผ่านลูกค้า supervisorctl เช่น "เริ่มต้น" และ "รีสตาร์ททุกคน" ซึ่งเริ่มต้นพวกเขาในลำดับความสำคัญแลนด์โรเวอร์ นอกจากนี้กระบวนการสามารถแบ่งออกเป็น "กลุ่มกระบวนการ" และชุดของกระบวนการที่เกี่ยวข้องมีเหตุผลสามารถหยุดและเริ่มเป็นระบบ unit.otification ถูกเพิ่มเข้ามา.
มีอะไรใหม่ ใน ข่าวประชาสัมพันธ์ฉบับนี้:
- พฤติกรรมของผู้ใช้เลือกโปรแกรมที่มีการเปลี่ยนแปลง ในรุ่นก่อนหน้าทั้งหมดถ้า supervisord ล้มเหลวที่จะเปลี่ยนไปใช้คำเตือนจะถูกส่งไปยังล็อก stderr แต่กระบวนการเด็กจะยังคงมาจากกระบอกไม้ไผ่ ซึ่งหมายความว่าผิดพลาดในไฟล์ config อาจส่งผลให้กระบวนการเด็กถูกกลับกลายเป็นรากโดยไม่ได้ตั้งใจ ตอนนี้ supervisord จะไม่วางไข่เด็กเว้นแต่จะก็สามารถที่จะประสบความสำเร็จในการสลับไปยังผู้ใช้ ขอบคุณที่อิกอร์ Partola สำหรับการรายงานปัญหานี้.
- หากผู้ใช้ที่ระบุไว้ในไฟล์ config ไม่ได้อยู่ในระบบ supervisord จะพิมพ์ผิดพลาดและปฏิเสธที่จะเริ่มต้น.
- ยกเลิกการเปลี่ยนแปลงที่จะนำมาใช้ในบันทึกของ 3.0b1 ที่ตั้งใจจะช่วยให้กระบวนการต่างๆเพื่อเข้าสู่ระบบไปยังแฟ้มเดียวกันกับการเข้าสู่ระบบการจัดการการหมุน การดำเนินการที่เกิด supervisord ผิดพลาดในระหว่างการโหลดและการรั่วไหลจับไฟล์ นอกจากนี้เนื่องจากการหมุนตัวเลือกเข้าสู่ระบบจะได้รับในแต่ละโปรแกรมการกำหนดค่าเป็นไปไม่ได้จะถูกสร้างขึ้น (การหมุนตัวเลือกที่ขัดแย้งกันสำหรับไฟล์เดียวกัน) ป.ร. ให้ไว้ supervisord นี้และว่าขณะนี้ได้รับการสนับสนุน syslog มันก็ตัดสินใจที่จะเอาคุณลักษณะนี้ คำเตือนถูกบันทึกอยู่ในเอกสารที่สองกระบวนการอาจจะไม่เข้าสู่ระบบไปยังแฟ้มเดียวกัน.
- แก้ไข bug ที่แยกคำสั่ง = อาจก่อให้เกิด supervisord ที่จะผิดพลาดถ้า shlex.split () ล้มเหลวเช่นไม่ดีอ้าง แพทช์โดยสกอตต์วิลสัน.
- ตอนนี้มันเป็นไปได้ที่จะใช้ supervisorctl บนเครื่องกับแฟ้ม supervisord.conf ไม่มีโดยการจัดหาข้อมูลการเชื่อมต่อในตัวเลือกบรรทัดคำสั่ง แพทช์โดย Jens Rantil.
- แก้ไขข้อผิดพลาดที่ supervisord จะผิดพลาดถ้าจัดการ syslog ถูกนำมาใช้และได้รับ supervisord SIGUSR2 (log เปิดคำขอ).
- แก้ไขข้อผิดพลาด XML-RPC ที่เรียก supervisor.getProcessInfo () ที่มีชื่อที่ไม่ดีจะทำให้เกิดข้อผิดพลาดภายในเซิร์ฟเวอร์ 500 มากกว่าการกลับมาของความผิด BAD_NAME.
- เพิ่ม favicon อินเตอร์เฟซเว็บ แพทช์โดย Caio Ariede.
- แก้ไขความล้มเหลวในการทดสอบเนื่องจากการจัดการไม่ถูกต้องของกลางวันเวลาออมทรัพย์ในการทดสอบ childutils แพทช์โดย Ildar Hizbulin.
- คงที่จำนวนของคำเตือน pyflakes สำหรับตัวแปรที่ไม่ได้ใช้การนำเข้าและรหัสตาย แพทช์โดยฟิลิป Ombredanne.
มีอะไรใหม่ ในรุ่น 3.0 Beta 1:
- แก้ไขข้อผิดพลาดที่สภาพแวดล้อมการแยก = ไม่ได้ตรวจสอบ ที่สำคัญ / คู่ค่าถูกแยกออกได้อย่างถูกต้อง แพทช์โดย Martijn Pieters.
- แก้ไขข้อผิดพลาดในรหัสเซิร์ฟเวอร์ HTTP ที่อาจทำให้เกิดความล่าช้าที่ไม่จำเป็นเมื่อมีการส่งการตอบสนองที่มีขนาดใหญ่ แพทช์โดยฟิลิป Zeyliger.
- เมื่อ supervisord เริ่มขึ้นเป็นรากถ้า c- ธงไม่ได้ให้คำเตือนถูกปล่อยออกมาในขณะนี้ไปยังคอนโซล เหตุผล: supervisord ดูในไดเรกทอรีการทำงานปัจจุบันสำหรับแฟ้ม supervisord.conf; บางคนอาจจะหลอกให้ผู้ใช้รากลงไปในขณะที่เริ่มต้น supervisord cd'ed ลงในไดเรกทอรีที่มี supervisord.conf โกง.
- เตือนถูกบันทึกอยู่ในเอกสารเกี่ยวกับความหมายของการเริ่มต้นการรักษาความปลอดภัยโดยไม่ต้อง supervisord ธง -c.
- เพิ่มตัวเลือกโปรแกรมแบบบูล stopasgroup, ผิดนัดเป็นเท็จ เมื่อความจริง, ธงบังคับบัญชาสาเหตุที่จะส่งสัญญาณหยุดกับกลุ่มกระบวนการทั้งหมด นี้จะเป็นประโยชน์สำหรับโปรแกรมเช่นกระติกน้ำในโหมดการแก้ปัญหาที่ไม่ได้เผยแพร่สัญญาณหยุดกับเด็กของพวกเขาออกจากพวกเขากำพร้า.
- Python 2.3 ได้รับการสนับสนุนอีกต่อไป รุ่นสุดท้ายที่ได้รับการสนับสนุน Python 2.3 เป็นหัวหน้า 3.0a12.
- การแกะที่ไม่ได้ใช้ & quot; supervisor_rpc & quot; จุดเริ่มต้นจาก setup.py.
- แก้ไขบั้กในตัวจัดการล็อกการหมุนที่จะทำให้เกิดผลที่ไม่คาดคิดเมื่อสองกระบวนการถูกกำหนดให้เข้าสู่ระบบไปยังแฟ้มเดียวกัน แพทช์โดยมอร์ริสวิท.
- แก้ไขบั้กในไฟล์ config โหลดที่แต่ละโหลดอาจรั่วไหลของหน่วยความจำเพราะรายการของข้อความคำเตือนจะถูกผนวก แต่ไม่เคยล้าง แพทช์โดยฟิลิป Zeyliger.
- เพิ่มเข้าสู่ระบบ Syslog ใหม่จัดการ ขอบคุณที่เดนิส Bilenko นาธานสมิ ธ ลิตรและเจสันอาร์คูมบ์ส, ที่แต่ละคนมีส่วนทำให้แพทช์.
- ใส่ประวัติการเปลี่ยนแปลงทั้งหมดเป็นไฟล์เดียว (CHANGES.txt).
มีอะไรใหม่ ในรุ่น 3.0 Alpha 12:
- ปล่อยตัวเพื่อแทนที่หัก 3.0a11 แพคเกจที่ไม่ ไฟล์ -Python ไม่รวมอยู่ในแพคเกจ.
มีอะไรใหม่ ในรุ่น 3.0 Alpha 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 กับแพคเกจ (เรียกใช้ผ่านทางพิษในแพคเกจผบ) ผู้บังคับบัญชาการทดสอบในรุ่นหลามหลาย.
ต้องการ
- หลาม
ความคิดเห็นที่ไม่พบ