अच्छा भगवान बैटमैन। यह अविश्वसनीय रूप से निराशाजनक था। यहाँ xhprof काम करने के लिए एक गाइड है। (नोट: मैं लिनक्स के लिए बहुत नया हूं। मुझे यकीन नहीं है कि मैं जिन अनुमतियों का उपयोग करता हूं वे सुरक्षित हैं, या क्या ऐसा करने का कोई बेहतर तरीका है। मैं केवल एक परीक्षण वातावरण पर ऐसा करूंगा।)
महत्वपूर्ण: यह आपको कुछ नहीं बताएगा कि इसकी व्याख्या कैसे करें। मुझे नहीं पता कि कैसे, मुझे खुशी है कि यह काम करता है।
XHProf कार्य करना
1. आप कौन सा ऑपरेटिंग सिस्टम चला रहे हैं?
मैक या लिनक्स?
यह संभव है।
खिड़कियाँ?
शायद ऩही। खिड़कियों पर xhprof चलाने के लिए आपके पास संकलित dll होना चाहिए। इस थ्रेड में एक के लिए एक लिंक है , लेकिन जब मैं XAMPP पर इसका उपयोग करने की कोशिश करता था तो मेरे पास हमेशा इसके साथ संगतता के मुद्दे थे।
मुझे लगता है कि यह अपाचे के एक अलग संस्करण के साथ संकलित किया गया था।
2. इसे उबंटू पर काम करना
यह मैक पर संभव है। यहां दो उपयोगी लिंक दिए गए हैं:
http://www.lullabot.com/blog/article/installing-xhprof-mamp-and-php-52-mac-os-106-snow-leopard
http://www.midwesternmac.com/blogs/jeff-geerling / रही-xhprof काम अच्छी तरह से
लेकिन मैंने ऐसा नहीं किया है। मैं इसे Ubuntu सर्वर 13.04 पर काम करने में कामयाब रहा, हालांकि मुझे लगता है कि Ubuntu सर्वर का कोई भी हालिया संस्करण काम करेगा।
मैंने VirtualBox पर अपना सर्वर सेट किया। वर्चुअलबॉक्स मुक्त है, लेकिन इसे स्थापित करने का तरीका सीखने में थोड़ा समय लग सकता है।
3. XHProf को रोकना
मैं मान रहा हूं कि हमारे पास पूरी तरह से काम करने वाला उबंटू सर्वर है।
पहले हमें नाशपाती स्थापित करने की आवश्यकता है। हम XHProf स्थापित करने के लिए इसका उपयोग करेंगे।
sudo apt-get install pear
हम इसके लिए phpdev का अनुसरण करते हैं, जिसकी आवश्यकता भी है।
sudo apt-get install php5-dev
यदि ये कमांड काम नहीं करते हैं और मैंने उन्हें गलत कर दिया है, तो बस सीधे आगे बढ़ें:
sudo pecl install -f xhprof
उबंटू आपको बताएगा कि आप क्या याद कर रहे हैं और आपको इसे स्थापित करने का संकेत देगा। एक बार जब आप सभी निर्भरताएँ xhprof स्थापित कर लेते हैं।
आपको xhprof को स्थापित करने में त्रुटि हो सकती है, यह बीटा डाउनलोड करने और विफल होने का प्रयास करेगा। उस मामले में प्रयास करें:
sudo pecl install -f xhprof-beta
उम्मीद है कि xhprof अब स्थापित हो गया है।
अब हमें इसे कॉन्फ़िगर करने की आवश्यकता है। अपने php.ini को खोलें जो /etc/php5/apache2/php.ini
कि एक्सटेंशन सेक्शन के तहत निम्नलिखित दो पंक्तियों को जोड़ता है:
extension=xhprof.so
xhprof.output_dir="/var/tmp/xhprof"
दूसरी पंक्ति आउटपुट डायरेक्टरी को सेट करती है। यदि यह फ़ोल्डर मौजूद नहीं है, तो आपको इसे बनाना होगा। आपने उस रीबूट एप का उपयोग कर लिया है
sudo service apache2 restart
4. जाँच कर रहा है कि क्या XHProf चल रहा है
अब हमें जांचने की जरूरत है कि क्या काम किया है।
टेस्ट 1:
दर्ज php -m
यदि आप सूची में xhprof देखते हैं तो आप जाने के लिए अच्छे हैं। यदि नहीं, तो चिंता न करें, अगर यह काम कर रहा है, तो यह जांचने के लिए इसे आज़माएं:
अपने वेबरॉट पर जाएं /var/www/
और केवल एक php फाइल बनाएं:
phpinfo();
इसे phpinfo.php के रूप में सहेजें। इसे अपने ब्राउज़र में खोलें और आपको PHP की जानकारी देखनी चाहिए। Xhprof के लिए खोजें और यदि आप इसे देखते हैं तो यह चल रहा है।
5. द्रुपाल के साथ काम करना
मैं इसे Drupal मॉड्यूल के साथ काम नहीं कर सका। इसलिए इसके बजाय मैं आपको यह बताने जा रहा हूं कि इसे कैसे काम करना है?
पहले कुछ विन्यास जो मैंने यहां से उधार लिए थे । मैं वास्तव में इस हिस्से का पालन नहीं करता था, लेकिन यह बहुत सारे घोड़े और उपहार का काम करता है।
निम्नलिखित कमांड के साथ एक नई कॉन्फिग फ़ाइल बनाएँ:
sudo nano /etc/apache2/conf.d/xhprof.conf
और निम्न कोड डालें।
alias /xhprof_html "/usr/share/php/xhprof_html/"
तब हमें संभवतः अपने xhprof_html फोल्डर में एक सिमिलिंक बनाने की आवश्यकता होती है। तो बस इस मामले में सेट करें:
ln -s / usr / share / php / xhprof_html / var / www / xhprof_html
यह आपके वेबरूट में एक फ़ोल्डर बनाएगा जो मौजूदा xhprof फ़ाइल की ओर इशारा करता है। फिर अपने ब्राउज़र में आप अपने द्वारा बनाए गए सभी रनों को देखने के लिए http://mywebsitehere.com/xhprof खोल सकते हैं।
फिर अपाचे को पुनरारंभ करें। अब यह थोड़ा devel config के लिए समय है। डेवेल सेटिंग्स पर जाएं, xhprof को सक्षम करें और सेट करें:
xhprof directory = /usr/share/php
XHProf URL = /xhprof_html
अब प्रत्येक पृष्ठ के नीचे आपको xhprof के लिए थोड़ा लिंक देखना चाहिए।
और इसे क्लिक करने पर आपको इस तरह दिखने वाले पेज पर ले जाना चाहिए। हो गया। बधाई हो!
यदि वह काम नहीं करता है और आपको रन एरर मिल रहा है तो शायद यह इसलिए है क्योंकि Drupal को tmp फ़ोल्डर में लिखने की अनुमति नहीं है जिसे हमने पहले सेट किया था:
sudo chown -R www-data /var/tmp/xhprof
और उम्मीद है कि काम करता है। हमारा काम हो गया। Hoorah!
जब तक आप रेखांकन कार्य नहीं करना चाहते। शुक्र है कि यह जितना आसान है:
sudo apt-get install graphviz
sudo service apache2 restart
और अब आपको रेखांकन कार्य करना चाहिए। उम्मीद है कि मदद करता है!