Bash:
लॉगिंग
कैसे करें:
Bash में, लॉगिंग एक फाइल में आउटपुट को पुनर्निर्देशित या जोड़ने जितनी सरल हो सकती है। यहाँ एक मूल उदाहरण है:
echo "स्क्रिप्ट शुरू हो रही है..." >> script.log
# आपके स्क्रिप्ट कमांड्स यहाँ
echo "स्क्रिप्ट पूरी हुई $(date) पर" >> script.logकुछ और उन्नत के लिए, आप सिस्टम-वाइड लॉगिंग के लिए syslog को शामिल कर सकते हैं:
logger "मेरी स्क्रिप्ट से कस्टम संदेश"logger एक लॉग संदेश को syslog सेवा को भेजता है, जो फिर इसे सिस्टम के syslog कॉन्फ़िगरेशन के अनुसार संभालती है।
script.log में कैप्चर की गई सैंपल आउटपुट:
स्क्रिप्ट शुरू हो रही है...
स्क्रिप्ट पूरी हुई Tue Mar 23 09:26:35 PDT 2021 परगहराई से जानकारी
ऐतिहासिक रूप में Unix जैसे सिस्टमों में, syslog सेवा द्वारा लॉगिंग सुविधा दी गई है, जो विभिन्न ऐप्लिकेशनों और सिस्टम के भागों को केंद्रीय रूप से संदेशों को लॉग करने देता है। इससे सिस्टम भर में एक मानकीकृत लॉगिंग तंत्र की स्थापना संभव होती है।
विकल्पों की बात करें तो, कुछ लोग syslog-ng या rsyslog का उपयोग अधिक उन्नत लॉगिंग सूविधाओं के लिए करने की सोच सकते हैं, या विश्लेषणात्मक प्रयोजनों के लिए लॉग्स को एक समय-श्रृंखला डाटाबेस में लिखना सोच सकते हैं। जटिलता के उच्च स्तर वाले एप्लिकेशनों के लिए, एक समर्पित लॉगिंग लाइब्रेरी या एप्लिकेशन का उपयोग करना, जैसे कि Java इकोसिस्टम में Log4j या PHP में Monolog, जो संरचित और कॉन्फ़िगरेबल लॉगिंग विकल्प प्रदान कर सकते हैं, Bash जैसे स्क्रिप्टिंग भाषा के लिए भी समझ में आ सकता है।
लॉगिंग को लागू करने का तरीका आपके एप्लिकेशन की आवश्यकताओं पर बहुत निर्भर करता है। अगर आपको सिर्फ स्क्रिप्ट प्रगति को ट्रैक करने के लिए सरल आउटपुट की जरूरत है, तो एक फाइल में संदेशों को जोड़ना आसान और सुविधाजनक है। हालांकि, अधिक स्केलेबल और ठोस लॉगिंग के लिए, आप एक लॉगिंग सिस्टम के साथ एकीकरण करना चाहेंगे जो लॉग रोटेशन, लॉग स्तरों, और दूरस्थ लॉगिंग जैसी सुविधाएँ समर्थन करता हो।
इसे भी देखें
loggerऔरsyslogफंक्शनों के लिएmanपेजेज हमेशा आपके मित्र होते हैं,man loggerयाman syslogका प्रयास करें।- सिस्टम लॉगिंग पर गहरा दृष्टिकोण पाने के लिए,
rsyslogऔरsyslog-ngदस्तावेज़ीकरण को पढ़ा जा सकता है। - Unix जैसे सिस्टमों में लॉगिंग के ऐतिहासिक संदर्भ और सिद्धांतों के बारे में और जानने के लिए, RFC 5424 में दस्तावेजीकृत
Syslogप्रोटोकॉल व्यापक जानकारी प्रदान करता है।