ซอฟต์แวร์ก็เหมือนเครื่องบินนั่นแหล่ะครับ ที่มีโอกาสจะเกิดอุบัติเหตุได้ทุกเมื่อ ดังนั้นเราจำเป็นที่ต้องให้ซอฟต์แวร์ที่เราสร้างขึ้นเก็บประวัติการทำงานของตนเองครับ หรือภาษาทางคอมพิวเตอร์ที่เรียกว่า Log File
เจ้า Log File ถือว่าสำคัญมาก หากซอฟต์แวร์ดังกล่าว เราพัฒนามันขึ้นมาเพื่อให้มันทำงานแบบอัตโนมัติและทำงานอยู่ตลอดเวลาทั้งวันทั้งคืนโดยที่ไม่มีใครเฝ้า เราจำเป็นอย่างยิ่งครับที่ต้องมี Log File เพราะไม่รู้วันดีคืนดีซอฟต์แวร์ดังกล่าว จะเดี้ยงขึ้นมาเมื่อไหร่
แต่ถ้าซอฟต์แวร์ที่เราสร้างขึ้น ถูกใช้โดยเจ้าหน้าที่ระบบ Front Office หรือว่า Back Office ความจำเป็นในการมี Log File ก็จะน้อยลงไปมาก เพราะเจ้าหน้าที่เหล่านั้น ส่วนใหญ่จะทำงานตามวันเวลาปรกติ ดังนั้นหากซอฟต์แวร์เกิดปัญหาขึ้น ก็ย่อมสามารถตามทีม support เข้าไปดูแลได้โดยง่ายอยู่แล้ว
ปรกติผมจะกำหนดให้ทีมงานพัฒนาซอฟต์แวร์ซึ่งร่วมงานกับผม สร้างซอฟต์แวร์แล้วใส่คุณสมบัติการเขียน Log File เข้าไปด้วย เพราะระบบที่ทีมงานผมสร้างส่วนใหญ่เป็นระบบอัตโนมัติ โดย Log File ที่ดีควรจะมีองค์ประกอบดังนี้ครับ
- Log File ควรถูกเก็บไว้ใน Folder ภายใต้ Folder ของโปรแกรมนั้น ๆ
- ชื่อของ Log File ควรสื่อถึงระบบ, วันที่ เช่น AR25490922.LOG หมายถึง Log File ของซอฟต์แวร์ระบบ Account Receivable วันที่ 22 กันยายน 2549
- บางครั้ง Log File เมื่อถูกเขียนไปเรื่อย ๆ ในแต่ล่ะวันอาจะมีขนาดใหญ่มาก หลายเมกะไบต์ จึงควรกำหนดให้ Log File แยกออกเป็นชุด ๆ ได้เช่น AR254909220001.LOG หมายถึง Log File ในข้อ 2 แต่ว่าเป็นไฟล์ลำดับที่ 1 เป็นต้น แล้วก็นับเพิ่มไปเรื่อย ๆ จนกว่าจะหมดวัน แล้วก็นับใหม่
- ภายใน Log File ควรมีวันที่และเวลากำกับแต่ล่ะเหตุการณ์ เช่น 22/09/2549 22:16:15 – ทำไอ้นั่น ไอ้โน่น ไอ้นี่
- ควรแยก Log File ออกเป็นหลายประเภท ไม่ใช่ให้ทุกเหตุการณ์ที่เกิดขึ้นเก็บไว้ใน Log File เดียว อย่างผมจะให้แยกเป็น 3 File ประกอบด้วย Log File เก็บเหตุการณ์แบบสรุป, Log File เก็บการต่อเชื่อม TCP/IP Socket และ Log File เก็บคำสั่ง SQL ทั้งหมดที่ใช้กับฐานข้อมูล เป็นต้น
รู้อย่างนี้แล้ว ก็พัฒนาซอฟต์แวร์ของคุณให้มี Log File นะครับ เพราะไม่แน่ว่า Log File ซึ่งเก็บรายละเอียดไว้มากมายเหล่านี้ อาจจะช่วยคุณไม่วันใดวันนึงก็ได้ 🙂
ดีนะครับ