JSON लॉगिंग आपको लॉग फाइल प्रोग्राम को पार्स करने की क्षमता देता है भले ही प्रारूप समय में बदल गया हो ।
एक अच्छा उदाहरण अपाचे लॉग्स है। डिफ़ॉल्ट रूप से 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
को पार्स करना स्ट्रिंग लॉग को लिखने से आसान है ।