मंगलवार, 23 फ़रवरी 2010

त्रुटियों को संभालना – कोड इग्नाइटर

कोड इग्नाइटर निम्नलिखित फ़ंग्शनों के द्वारा आपको अपने अनुप्रयोग के लिये "एरर रिपोर्टिंग" बनाने की सुविधा प्रदान करता है. इसके अलावा इसमें एक एरर लागिंग क्लास भी है जिसके द्वारा आप त्रुटियों और डिबगिंग संदेशों को एक पाठ्य(Text) फ़ाइल के तौर पर सुरक्षित कर सकते हैं.

नोट: सामान्य अवस्था में, कोड इग्नाइटर हर PHP त्रुटियों को दिखाता है. डेवलपमेंट पूरा होने के पश्चात आप कोड इग्नाइटर के इस व्यवहार को बदलना चाहेंगे. आपको अपनी मुख्य index.php फ़ाइल में सबसे ऊपर error_reporting() नाम का फ़ंग्शन मिलेगा. "एरर रिपोर्टिंग" को अक्षम करने से आपकी लाग फ़ाइलें लिखना बंद नही होंगी.

कोड इग्नाइटर के ज्यादातर तंत्रों के विपतीत, एरर फ़ंग्शन साधारण प्रक्रियात्मक फ़ंग्शन होते हैं जो कि हर जगह उपलब्ध होते हैं. ऐसा होने से बिना क्लास/फ़ंग्शन के स्कोप के बारे में सोचे एरर मैसेज दिखाए जा सकते हैं.

निम्नलिखित फ़ंग्शन आपको त्रुटियों को बनाने में मदत करेंगे:

show_error('message')

यह फ़ंग्शन निम्नलिखित टेम्प्लेट का प्रयोग करते हुये, बताये अनुसार त्रुटि संदेश दिखायेगा.

application/errors/error_general.php

show_404('page')

यह फ़ंग्शन निम्नलिखित टेम्प्लेट का प्रयोग करते हुये 404 त्रुटि संदेश दिखायेगा.

application/errors/error_404.php

यह फ़ंग्शन यह उम्मीद करता है कि जो स्ट्रिंग इससे गुजारी जाए वह उस पेज का पाथ हो जो कि नही मिला. यदि कंट्रोलर नही मिलते हैं तो कोड इग्नाइटर स्वत: ही 404 त्रुटि संदेश दिखाता है.

log_message('level', 'message')

इस फ़ंग्शन से आप अपनी लाग फ़ाइल में संदेश लिख सकते हैं. इस फ़ंग्शन में आपको ३ स्तरों में से कोई एक पहले पैरामीटर के तौर पर गुजारना होता है, जो कि यह बताता है कि संदेश का प्रकार क्या है. जैसे (debug, error, info). इसके साथ ही दूसरे पैरामीटर के तौर पर संदेश गुजारा जाता है. उदाहरण:

if ($some_var == "")
{
    log_message('error', 'Some variable did not contain a value.');
}
else
{
    log_message('debug', 'Some variable was correctly set');
}
log_message('info', 'The purpose of some variable is to provide some value.');

त्रुटि संदेशों के तीन प्रकार हैं:

  1. Error Messages. ये वास्तविक त्रुटियां होती हैं जैसे PHP errors या user errors.
  2. Debug Messages. ये वो संदेश होते हैं जो कि आपकी डिबगिंग के दौरान सहायता करते हैं. जैसे कि यदि किसी क्लास को आरंभ किया जा रहा है तो आप उस बात को डिबगिंग संदेश के तौर पर लाग कर सकते हैं.
  3. Informational Messages. ये सबसे कम वरीयता प्राप्त संदेश होते हैं. ये आपको किसी क्रिया से संबंधित केवल जानाकारी प्रदान करते हैं. कोड इग्नाइटर मूल रूप से कोई info message नही बनाता है पर आप चाहें तो अपने अनुप्रयोग में बना सकते हैं.

नोट:
लाग फ़ाइल लिखे जाने के लिये यह जरूरी है कि आपका "logs" वाला फ़ोल्डर लिखने योग्य हो. इसके अलावा लागिंग के लिये आपको threshold भी सेट करना होगा. यानि कि हो सकता है कि आप केवल error message ही लाग करना चाहें अन्य दो को नही. यदि आप इसे शून्य पर सेट कर देंगे तो लागिंग अक्षम हो जायेगी.

कोई टिप्पणी नहीं:

एक टिप्पणी भेजें

इस ब्लाग में प्रकाशित सामग्री कापीराईट द्वारा सुरक्षित है. बिना अनुमति इसका किसी भी प्रकार से अन्यत्र प्रयोग/प्रकाशन मूल रूप में/बदल कर उपयोग नही किया जा सकता है.

हिंदी में तकनीकी लेखन को प्रोत्साहित करें

please donate अभी तक वेब डेवलपमेंट अथवा प्रोग्रामिंग आदि से संबंधित जानकारी पर अंग्रेजी का एकाधिकार रहा है. भारत में इतने आई टी गुरू होने के बावजूद भारतीय भाषाओं में इस विषय पर लेखन नगण्य है. इस ब्लाग के माध्यम से मैं हिन्दी भाषिओं तक वेब डेवलपमेंट का ज्ञान पहुंचाने की कोशिश कर रहा हूं. अत: आप सभी से अनुरोध है कि हिंदी में तकनीकी लेखन के लिये सहयोग करें
मैं वेबसाइटें भी बनाता हूं. यदि आपको बनवानी हो तो बताएं.

ARCHIVES

इस ब्लॉग में खोजें

समर्थक