เซิร์ฟเวอร์ OpenVPN ควรเขียนบันทึกของตนที่ไหน และเพราะเหตุใด
log, log-append และ syslog ต่างกัน และตัวจัดการบริการก็เก็บสำเนาของตนเองไว้ เลือกสตรีมเดียวที่เป็นทางการ รักษาวงจรชีวิตให้อ่านได้ และกำหนดระยะเวลาการเก็บรักษา
การออกแบบบันทึกต้องตอบสามคำถาม: กระบวนการใดสร้างระเบียน ระเบียนนั้นไปลงที่ไหน และอยู่ได้นานเท่าไร OpenVPN เขียนลงไฟล์ได้ ส่งข้อความให้ตัวบันทึกของระบบได้ หรือปล่อยให้ตัวจัดการบริการเก็บไว้เองก็ได้ และสิ่งเหล่านี้ไม่ใช่สำเนาสามชุดของสตรีมเดียว ทุกทางเลือกเปลี่ยนว่าใครเป็นเจ้าของการหมุนเวียน ผู้ใช้คนใดอ่านผลลัพธ์ได้ และเกิดอะไรขึ้นระหว่างเริ่มระบบ ควรตกลงคำตอบก่อนเกิดเหตุ เพราะหลังจากนั้นคุณจะได้รับสิ่งที่ตั้งค่าไว้
สิ่งที่เดมอนทำกับไดเรกทีฟจริง ๆ
ไดเรกทีฟไม่ใช่เรื่องนามธรรม แต่ละตัวกำหนดว่ากระบวนการเขียนข้อความของตนที่ใด log /path เปิดไฟล์นั้น log-append /path เปิดไฟล์เพื่อต่อท้าย และ syslog ส่งข้อความให้ตัวบันทึกของระบบภายในผ่านซ็อกเก็ตของตน หากไม่มีเลย เอาต์พุตจะไปที่เอาต์พุตมาตรฐานและตัวจัดการบริการจะเป็นผู้ตัดสินใจว่าจะเกิดอะไรต่อไป อ่านยูนิตที่ใช้งานได้และโปรไฟล์ไปพร้อมกันก่อนสรุปว่าเดมอนเพิกเฉยต่อการตั้งค่าของคุณ
กรณีหลังเป็นเรื่องปกติในการติดตั้งแบบแพ็กเกจ และอธิบายว่าทำไมผู้ดูแลสองคนไม่เห็นตรงกันว่าบันทึกอยู่ที่ใด คนหนึ่งอ่านเจอร์นัลของยูนิต อีกคนอ่านไฟล์ที่เดมอนไม่เคยเขียน
ตรวจสอบการตั้งค่าที่กำลังทำงาน ไม่ใช่ไฟล์บนดิสก์ การแทนที่ยูนิตแบบ drop-in หรือไฟล์สภาพแวดล้อมสามารถเปลี่ยนไดเรกทีฟที่มีผลได้โดยไม่แตะโปรไฟล์ที่คุณกำลังอ่าน
log ตัดทอน แต่ log-append ไม่ตัดทอน
log ตัดทอนไฟล์ที่มีอยู่เมื่อไดเรกทีฟมีผล ดังนั้นการรีสตาร์ตจะลบหลักฐานก่อนหน้านั้น log-append เก็บสิ่งที่มีไว้และต่อท้าย ทั้งสองทางเลือกไม่หมุนเวียนสิ่งใด และทั้งสองไม่เปิดไฟล์ใหม่ด้วยตนเองในภายหลัง การหมุนเวียนจึงต้องอาศัยความร่วมมือ
หากการหมุนเวียนเปลี่ยนชื่อไฟล์ในขณะที่เดมอนยังเขียนไปยังตัวอธิบายเดิม ไฟล์ใหม่จะว่างเปล่าและการใช้ดิสก์จะเพิ่มขึ้นในไฟล์ที่เปลี่ยนชื่อแล้ว ส่งสัญญาณให้กระบวนการเปิดใหม่ หรือหมุนเวียนด้วยกลยุทธ์คัดลอกแล้วตัดทอนและยอมรับช่วงเวลาคัดลอก
ไดเรกทอรี ความเป็นเจ้าของ และสิทธิ์เป็นส่วนหนึ่งของการออกแบบ เดมอนอาจทำงานเป็นผู้ใช้ที่ไม่มีสิทธิพิเศษหลังเริ่มระบบ และไดเรกทอรีที่ root สร้างตอนติดตั้งอาจเขียนไม่ได้ในตอนนั้น เตรียมไดเรกทอรีผ่านการแพ็กเกจหรือกระบวนการติดตั้งใช้งาน แทนการแก้สิทธิ์ระหว่างเกิดเหตุ
ตัวจัดการบริการเก็บสำเนาที่สอง
systemd ดักจับเอาต์พุตมาตรฐานและข้อผิดพลาดมาตรฐานโดยค่าเริ่มต้น ยูนิตที่ไม่มีการเปลี่ยนเส้นทางอย่างชัดเจนจึงมีบันทึกอยู่แล้ว การเพิ่มไดเรกทีฟไฟล์ทำให้ได้สองสตรีมที่มีระยะเก็บรักษา ผู้อ่าน และเวลาแตกต่างกัน
นั่นไม่ได้ผิดโดยอัตโนมัติ แต่ต้องเป็นการตัดสินใจ เก็บระเบียนเริ่มระบบไว้ในเจอร์นัล เพราะความล้มเหลวก่อนไฟล์ที่ตั้งค่าจะมีอยู่ไม่ปรากฏที่อื่น จากนั้นทำให้ไฟล์เป็นทางการสำหรับเหตุการณ์ในสภาวะคงที่และเขียนไว้ใน runbook สตรีมทางการสองสายหมายถึงสองคำตอบสำหรับทุกคำถาม
ยืนยันทางเลือกด้วยการทดสอบที่ล้มเหลวโดยเจตนา เริ่มเดมอนด้วยใบรับรองที่อ่านไม่ได้และดูว่าสตรีมใดบันทึกข้อผิดพลาด
ความละเอียดไม่เหมือนกับรายละเอียดที่ใช้ได้
ระดับ verb ที่สูงขึ้นเพิ่มบรรทัด และเมื่อเลยจุดหนึ่งก็เพิ่มบรรทัดที่ไม่มีใครอ่าน ระดับ 3 เป็นสภาวะคงที่ที่สมเหตุสมผลสำหรับการติดตั้งส่วนใหญ่ ส่วนระดับ 4 ขึ้นไปเหมาะกับการสอบสวนที่มีขอบเขตและมีคำถามที่รู้อยู่แล้ว การระงับการซ้ำช่วยลดเสียงรบกวน แต่ต้องไม่ซ่อนว่ามีเหตุการณ์เกิดซ้ำบ่อยเพียงใด ตั้งระดับที่คุณรักษาไว้ได้ และเพิ่มขึ้นเฉพาะการสอบสวนที่ตั้งชื่อและมีจุดสิ้นสุด
เก็บตัวระบุอินสแตนซ์และเวลาไว้ในระเบียน การเชื่อมต่อใหม่ดูเหมือนการเชื่อมต่อครั้งแรกทุกประการเมื่อไฟล์ถูกต่อท้ายมาหลายเดือนและไม่มีชื่ออินสแตนซ์
ระวังสิ่งที่อื่นตกลงไปในไฟล์นั้น เอาต์พุตที่เปลี่ยนเส้นทางอาจมีข้อความจากสคริปต์ที่ถูกเรียก และโปรแกรมช่วยที่พิมพ์สภาพแวดล้อมของตนจะใส่ข้อมูลรับรองและเส้นทางคีย์ลงในบันทึกที่อ่านได้ มองการเข้าถึงบันทึกเป็นการตัดสินใจด้านความปลอดภัยแม้เดมอนเองจะไม่พิมพ์สิ่งอ่อนไหวใด ๆ
การหมุนเวียน การเก็บรักษา และสัญญาณที่โหลดใหม่
ตัดสินใจเรื่องการเก็บรักษากับผู้ที่เป็นเจ้าของดิสก์ และกำหนดก่อนที่โวลุ่มจะตัดสินใจแทนคุณ สัญญาณโหลดใหม่ไม่ใช่คำสั่งบำรุงรักษาบันทึก: การส่งสัญญาณผิดจะรีสตาร์ตอุโมงค์และตัดผู้ใช้ทุกคน เขียนขั้นตอนการเปิดใหม่ไว้ข้างกฎการหมุนเวียนเพื่อไม่ให้ทั้งสองแยกจากกัน
ผลลัพธ์ควรเป็นบริการที่ผู้ปฏิบัติงานอธิบายได้: สตรีมทางการหนึ่งสาย แต่ละเหตุการณ์ถูกวางไว้ในวงจรชีวิต และระเบียนที่ได้มาโดยไม่ต้องรวบรวมทุกไฟล์ที่มีความลับบนโฮสต์ คำอธิบายนั้นคือการทดสอบการยอมรับของการออกแบบ และการตรวจสอบก่อนเหตุครั้งถัดไปนั้นไม่แพง