मैज :: लॉग () मैगेंटो द्वारा उपयोग की जाने वाली सभी फाइलों में लॉग नहीं होता है?


11

मैंने ओवरराइट Sitemap.phpकिया है app/code/local/Mage/Sitemap/Model/Sitemap.php। फ़ाइल का उपयोग किया जा रहा है, अगर मैं सभी सामग्री को हटाता हूं, तो उम्मीद के अनुसार एक त्रुटि है।

मैंने मानक की पूरी सामग्री को कॉपी किया Sitemap.php, एक भी बदलाव के साथ। मैंने कहा

public function generateXml() {
    Mage::log('test');
    ...
}

जब मैं इस कहीं और करते हैं, यह प्रिंट testमें var/log/system.logअपेक्षा के अनुरूप, केवल इस फ़ाइल में, यह संदेश लॉग नहीं।

कोई भी मदद बहुत ही सराहनीय होगी


संपादित करें

का उपयोग करते हुए

Mage::log('text', null, <file>, true);

काम भी नहीं करता है


क्या सिस्टम कॉन्फ़िगरेशन में लॉगिंग सक्षम है? है var/log/अपने वेब उपयोगकर्ता (द्वारा लिखने योग्य apache, httpd, www-data, आदि)
musicliftsme

लॉगिंग में काम करता है SitemapController.php, तो हाँ, यह है। और हाँ var/log, लिखने योग्य है। आपके विचारों के लिए धन्यवाद
Yorrd

शायद दाना कोर लोड नहीं है? शायद Mage :: app ()
टिम हॉलमैन

@TimHallman बिना कोर के काम कैसे करेगा? साइट ठीक काम करती है
योरड

क्योंकि यह साइटमैप है। app/code/local/Mage/Sitemap/Model/Observer.phpइसके बजाय लॉग इन करने की कोशिश करेंSitemap.php
टिम हॉलमैन

जवाबों:


12

मुझे लगता है, फ़ाइल भरी हुई है, लेकिन विधि नहीं है। तो बस die()अपने तरीके में एक ब्रेकपॉइंट (या खराब तरीका ) सेट करें और सुनिश्चित करें कि इसे कहा जाता है।

Magento के आरंभिक होने के बाद Mage::logकम से कम $forceपैरामीटर इसके लॉग को लिखता है


हाँ। धन्यवाद। मुझे लगता है कि मैं एक और सवाल खोलूंगा कि मेरा जेनरेटएक्सएमएल लोड क्यों नहीं है। क्योंकि नहीं, यह ब्रेकपॉइंट तक नहीं पहुंचता है।
योरड

29

का उपयोग करें Mage::log('text here', null, 'system.log', true)
वह हर समय काम करना चाहिए।


या उदाहरण के लिए एक साइटमैप। यदि आप चाहते हैं कि आपका साइटमैप यादृच्छिक सामान के साथ मिश्रित न हो।
जुलिएन लाछल

@JulienLachal। सच। फ़ाइल नाम कुछ भी हो सकता है।
मेरियस

कृपया मेरा संपादन देखें, यह या तो काम नहीं करता है
योरड

2

यहां एक और अनुमान है - साइटमैप पीढ़ी को आमतौर पर क्रोनजोब द्वारा ट्रिगर किया जाता है। यदि आपका क्रोनजॉब आपके वेबसर्वर की तुलना में एक अलग उपयोगकर्ता के अंतर्गत चलता है और आपके पास अपने मौजूदा system.log फ़ाइल को लिखने की अनुमति नहीं है, तो आपको कोई प्रविष्टि नहीं मिलेगी।


सही है, लेकिन मैं साइटमैप व्यवस्थापक पृष्ठ पर "जनरेट" पर क्लिक करके इसका परीक्षण कर रहा हूं। इसलिए मुझे लगता है कि उसे अनुमति होनी चाहिए। EDIT: यह या तो काम नहीं करता है यदि अनुमति 777 पर
रखी गई है

0

अपने var/फ़ोल्डर को सही परमिट दें :

chmod -Rv 777 var/

तो नीचे दिए गए इस कोड का उपयोग करें:

Mage::log(print_r($yourTest), null, 'customLogFile.log', true);

Print_r कुछ अपने चर के प्रकार से संबंधित त्रुटियों को रोकने जाएगा।


0

इस लाइन को किसी भी फंक्शन या फाइल में डालें

दाना :: लॉग ("आपका संदेश -", अशक्त, 'आपका लॉग-फाइल-नाम');

यह फ़ाइल आपके रूट फ़ोल्डर पथ के अंदर आपके जैसे बनाई जाएगी

/var/log/your-log-filename.log

आशा है कि यह आपके लिए काम करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.