Drupal

2009-11-10 17 views
31

में त्रुटि संदेश लॉग इन कैसे करें हमारे खुद त्रुटि संदेश लॉग इन करने के लिए कैसे (पूर्व के लिए: अमान्य उपयोगकर्ता तिथि प्रविष्टि के कारण त्रुटि) जो करने के लिए Drupal त्रुटि लॉगphp कार्यक्रम में उत्पन्न होता है।Drupal

उत्तर

45

आप watchdog function उपयोग कर सकते हैं:

watchdog($type, $message, $variables = array(), $severity = WATCHDOG_NOTICE, $link = NULL) 

मैनुअल का हवाला देते हुए, मानकों हैं:

  • $type श्रेणी इस संदेश अंतर्गत आता है जो करने के लिए।
  • $message लॉग में स्टोर करने के लिए संदेश।
  • $variables प्रदर्शन या संदेश पर संदेश में प्रतिस्थापित करने के लिए चर के ऐरे अगर संदेश पहले से अनुवादित है या अनुवाद करने के लिए संभव नहीं है।
  • $severity संदेश की गंभीरता, प्रति आरएफसी 3164
  • $link संदेश के साथ संबद्ध करने के लिए एक कड़ी के रूप में।

और त्रुटि स्तर watchdog_severity_levels के पृष्ठ पर पाए जा सकते हैं। किसी त्रुटि के लिए, आप शायद WATCHDOG_ERROR का उपयोग करेंगे, या शायद त्रुटि के प्रकार के आधार पर कुछ और "महत्वपूर्ण" भी हो सकते हैं।

+3

'$ type' आमतौर पर आपके द्वारा विकसित किए जा रहे मॉड्यूल का नाम होता है। –

6

1) वास्तव में, वॉचडॉग अपनी PHP त्रुटियों को रिकॉर्ड करने का एक मानक तरीका है।

2) वैकल्पिक रूप से, यदि आपको अपने ड्रूपल पृष्ठों को डिबग करते समय तुरंत त्रुटि संदेश देखने की आवश्यकता है, तो आप फ़ायरबग कंसोल में संबंधित पेज पर उन्हें लॉग/मुद्रित देखना चाहते हैं। कभी-कभी यह बहुत सुविधाजनक होता है जब आप पृष्ठ से संबंधित समय-समय पर लॉग देख सकते हैं। इसकी आवश्यकता है - Devel मॉड्यूल, Firebug फ़ायरफ़ॉक्स और संभवतः Firephp पर विस्तार।

आप सामान्य फ़ायरबग कंसोल पर सीधे लॉग संदेश लिखने के लिए dfb() फ़ंक्शन का उपयोग कर सकते हैं।

dfb($input, $label = NULL) 

आप अपने Drupal से संबंधित लॉग संदेशों सामान्य Firebug कंसोल से बाहर रखना चाहते हैं, तो आप firep() फ़ंक्शन के साथ Drupal for Firebug लॉग करने के लिए संदेश लिख सकते हैं:

firep($item, $optional_title) 
+0

बस फायरबग एक्सटेंशन के लिए Drupal स्थापित - सुंदर मीठा। – DilbertDave

3

निगरानी है उत्पादन प्रणाली के लिए जाने का तरीका कोई संदेह नहीं है लेकिन डिबगिंग के दौरान मुझे drupal_set_message फ़ंक्शन उपयोगी लगता है।

यह स्क्रीन पर संदेश आउटपुट करता है जहां 'ऑपरेशन सफल'-प्रकार संदेश सामान्य रूप से प्रदर्शित होते हैं (इसलिए सुनिश्चित करें कि आप साइट को लाइव करने से पहले उन्हें हटा दें)।

http://api.drupal.org/api/function/drupal_set_message/6

6

Drupal 8

// Logs a notice 
\Drupal::logger('my_module')->notice($message); 
// Logs an error 
\Drupal::logger('my_module')->error($message); 

How to Log Messages in Drupal 8 पर अधिक उदाहरण देखें।

संबंधित मुद्दे