জেএসএন লগিং আপনাকে সময়সূচী পরিবর্তিত হলেও ফর্ম্যাটটি লগ ফাইলকে প্রোগ্রামগতভাবে পার্স করার ক্ষমতা দেয় ।
একটি ভাল উদাহরণ অ্যাপাচি লগ হয়। ডিফল্টরূপে অ্যাপাচি common
অ্যাক্সেস.লগের জন্য ফর্ম্যাট ব্যবহার করে:
"%h %l %u %t \"%r\" %>s %b"
বলুন যে আপনি একটি অফলাইন পার্সার তৈরি করেছেন যা সেই লগ ফাইলগুলির মধ্যে একটি নেয় এবং এটি থেকে কিছু পরিসংখ্যান গণনা করে।
কিছু মুহুর্তে আপনি আপনার আবেদনের সাথে সাবডোমেনগুলি প্রবর্তন করেন এবং virtual_host
আপনার লগগুলিতে অন্তর্ভুক্ত করেন (কেবলমাত্র সাবডোমেনগুলির সাথে যদি কোনও সমস্যা দেখা দেয় তবে আপনি ডিবাগ করতে পারেন):
"%v %h %l %u %t \"%r\" %>s %b"
আপনার পার্সারটি এর ব্যবহার করে না virtual_hosts
, তবে আপনাকে এখনও আপনার পার্সারটির সাথে মানিয়ে নিতে হবে:
- নতুন লগ ফর্ম্যাটটি গ্রহণ করুন (লগ ফরম্যাটের শিরোনামে লক্ষ্য করুন
%v
)
- এখনও পুরানো লগ ফর্ম্যাট সমর্থন (পুরানো লগ ফাইলের জন্য)
আপনি যদি JSON এ লগইন করেন , আপনার পার্সার এমনকি যুক্ত ক্ষেত্রটি লক্ষ্য করবেন না এবং খুশিতে নতুন লগগুলি পাশাপাশি পুরানো লগগুলি পার্স করতে পারবেন। এবং অন্যান্য কিছু পার্সার যদি যোগ করা ক্ষেত্রগুলির উপস্থিত থাকে তবে তাদের ব্যবহার করতে পারে ।
এবং অবশ্যই আপনার জন্য , JSON কে পার্সিং করা regexps
স্ট্রিং লগগুলিতে পার্স করা চেয়ে সহজ ।