JSON เข้าสู่ระบบช่วยให้คุณสามารถที่จะแยกแฟ้มบันทึกโปรแกรมแม้ว่ารูปแบบมีการเปลี่ยนแปลงในเวลา
ตัวอย่างที่ดีคือบันทึก Apache โดยค่าเริ่มต้น Apache ใช้common
รูปแบบสำหรับ access.log:
"%h %l %u %t \"%r\" %>s %b"
สมมติว่าคุณได้สร้างตัวแยกวิเคราะห์ออฟไลน์ที่ใช้หนึ่งในล็อกไฟล์เหล่านั้นและคำนวณสถิติบางอย่างจากมัน
ในขณะที่คุณแนะนำโดเมนย่อยให้กับแอปพลิเคชันของคุณและรวมvirtual_host
ถึงบันทึกของคุณ (เพื่อให้คุณสามารถแก้ไขข้อบกพร่องหากปัญหาปรากฏขึ้นพร้อมกับหนึ่งในโดเมนย่อย):
"%v %h %l %u %t \"%r\" %>s %b"
โปรแกรมแยกวิเคราะห์ของคุณไม่ได้ใช้ประโยชน์virtual_hosts
แต่คุณยังต้องปรับโปรแกรมแยกวิเคราะห์เป็น:
- ยอมรับรูปแบบบันทึกใหม่ (สังเกต
%v
ที่ส่วนหัวของรูปแบบบันทึก)
- ยังรองรับรูปแบบบันทึกเก่า (สำหรับไฟล์บันทึกเก่า)
แต่ถ้าคุณเข้าสู่ระบบJSON โปรแกรมแยกวิเคราะห์ของคุณจะไม่สังเกตเห็นฟิลด์เพิ่มและสามารถแยกวิเคราะห์บันทึกใหม่และบันทึกเก่าได้อย่างมีความสุข และบางตัวแยกวิเคราะห์อื่น ๆ สามารถทำให้การใช้งานของเขตข้อมูลเพิ่ม ถ้าพวกเขามีอยู่
และแน่นอนสำหรับคุณการแยกวิเคราะห์ JSON นั้นง่ายกว่าการเขียนregexps
ไปที่การแยกวิเคราะห์บันทึกสตริง