2015-05-03 10 views
10

मैंने अपने कोड में net/http/pprof पैकेज शामिल किया है। मैं तो आराम से (Debian पर) pprof प्रोफाइलर चला सकते हैं: इस तरह के top10 के रूप में या यहाँ तक कि कॉल रेखांकन अपेक्षित तरीके से पैदागोलांग प्रोफाइलर को स्रोत कोड नहीं मिला

go tool pprof http://localhost:9000/debug/pprof/profile 

आदेश। हालांकि, जैसे ही मैंने एक समारोह में जाने के लिए प्रयास करें, यह विफल रहता है:

(pprof) list MyFunc 
No source information for mypkg.MyFunc 

मेरे GOPATH अपने प्रोजेक्ट की निर्देशिका को तैयार है। क्या मुझे अपना सोर्स कोड बनाने या पीआरएफओफ़ चलाने के दौरान किसी भी विशेष झंडे या पर्यावरण चर की आवश्यकता है?

+0

क्या आप अपना कोड – MIkCode

+0

जोड़ सकते हैं बिल्कुल सही नहीं है कि आपका क्या मतलब है। यही मेरा सवाल है। मैं अपने कोड के बारे में 'pprof' कैसे जान सकता हूं? – Oliver

उत्तर

17

गोलांग-नट लोगों की मदद से उत्तर मिला।

go tool pprof mybinary http://localhost:9000/debug/pprof/profile 

इस तरह स्रोत कोड पाया जाता है और "सूची" कमांड के साथ सूचीबद्ध किया जा सकता: मैं द्विआधारी निर्दिष्ट करने के लिए की जरूरत है।

0

मुझे विंडोज़ पर यद्यपि "net/http/pprof" के साथ एक ही समस्या थी। "runtime/pprof" का उपयोग करते हुए, pprof.StartCPUProfile/StopCPUProfile के साथ हल किया गया।

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