Pencatatan JSON memberi Anda kemampuan untuk mengurai file log secara terprogram bahkan jika formatnya telah berubah dalam waktu .
Contoh yang baik adalah log Apache. Secara default Apache menggunakan common
format untuk access.log:
"%h %l %u %t \"%r\" %>s %b"
Katakanlah Anda telah membuat parser offline yang mengambil salah satu file log tersebut dan menghitung beberapa statistik darinya.
Pada suatu saat Anda memperkenalkan subdomain ke aplikasi Anda dan memasukkannya virtual_host
ke log Anda (hanya agar Anda dapat men-debug jika muncul masalah dengan salah satu subdomain):
"%v %h %l %u %t \"%r\" %>s %b"
Parser Anda tidak menggunakan virtual_hosts
, tetapi Anda masih perlu menyesuaikan parser Anda dengan:
- terima format log baru (perhatikan bagian
%v
atas format log)
- masih mendukung format log lama (untuk file log lama)
Tetapi jika Anda masuk JSON , parser Anda bahkan tidak akan melihat bidang yang ditambahkan dan dengan senang hati dapat mengurai log baru serta log lama. Dan beberapa parser lain dapat menggunakan bidang yang ditambahkan jika ada .
Dan tentu saja untuk Anda , parsing JSON lebih mudah daripada menulis regexps
ke parse string log.