Ruby:
मानक त्रुटि के लिए लिखना
कैसे करें:
रुबी की मानक लाइब्रेरी stderr में लिखने का एक सरल तरीका प्रदान करती है जिसका उपयोग $stderr
या STDERR
से किया जा सकता है। इस मूलभूत कार्य के लिए आपको तीसरे पक्ष की लाइब्रेरियों की आवश्यकता नहीं है।
स्टीडेर में एक सरल संदेश लिखना:
$stderr.puts "गलती: फ़ाइल नहीं मिली."
# या समतुल्य
STDERR.puts "गलती: फ़ाइल नहीं मिली."
सैंपल आउटपुट (स्टीडेर पर):
गलती: फ़ाइल नहीं मिली.
स्टीडेर को एक फ़ाइल में पुनर्निर्देशित करना:
File.open('error.log', 'w') do |file|
STDERR.reopen(file)
STDERR.puts "कॉन्फ़िगरेशन खोलने में विफल।"
end
यह कोड स्निपेट stderr को error.log
नाम की एक फ़ाइल में पुनर्निर्देशित करता है, और उसके बाद सभी लिखी गई गलतियाँ वहाँ आउटपुट होंगी जब तक कि प्रोग्राम stderr पुनर्निर्देशन को रीसेट नहीं करता या समाप्त नहीं होता।
एक्सेप्शन हैंडलिंग के साथ stderr का उपयोग करना:
begin
# एक ऑपरेशन का अनुकरण करना जो विफल हो सकता है, जैसे कि एक फ़ाइल खोलना
File.open('nonexistent_file.txt')
rescue Exception => e
STDERR.puts "एक्सेप्शन आया: #{e.message}"
end
सैंपल आउटपुट (स्टीडेर पर):
एक्सेप्शन आया: No such file or directory @ rb_sysopen - nonexistent_file.txt
जबकि रुबी के बिल्ट-इन मेथड्स का उपयोग बहुत से अनुप्रयोगों के लिए पर्याप्त होता है, अधिक जटिल लॉगिंग आवश्यकताओं के लिए, आप logger
मानक लाइब्रेरी या बाहरी जेम्स जैसे Log4r
पर विचार कर सकते हैं। ये विन्यास योग्य लॉगिंग तंत्र प्रदान करते हैं, जिसमें गंभीरता स्तर, स्वरूपण, और विभिन्न आउटपुट्स में लिखने की क्षमता शामिल है, जैसे कि फ़ाइलें, ईमेल, और बहुत कुछ।