2012-02-07 15 views
5

क्या वे चल रहे हैं (संभवतः ईवेंट लॉग पाइप) पर प्रोग्राम की निगरानी की जा सकती है? या निष्पादन के बाद ईवेंट लॉग देखना केवल संभव है। यदि उत्तरार्द्ध मामला है, तो हास्केल रनटाइम कैसे काम करता है इसके संबंध में गहरा कारण है?थ्रेस्स्कोप कार्यक्षमता

संपादित करें: मुझे रनटाइम टीबीएच के बारे में बहुत कुछ पता नहीं है, लेकिन dflemstr की प्रतिक्रिया दी गई है, मैं इस बारे में उत्सुक था कि ईवेंट निगरानी रनटाइम विकल्प जोड़कर प्रदर्शन कितना और खराब हो गया है। मुझे आरडब्लूएच में याद है कि उन्होंने उल्लेख किया है कि आरटीएस को लागत केंद्र जोड़ना है, लेकिन मुझे इस बात की पूरी तरह से यकीन नहीं था कि इस तरह की चीज़ कितनी महंगी थी।

उत्तर

1

प्रत्यक्ष उत्तर यह है कि, नहीं, यह संभव नहीं है। और, नहीं, इसके लिए कोई कारण नहीं है सिवाय इसके कि किसी ने अब तक आवश्यक लेगवर्क नहीं किया है।

मुझे लगता है कि यह मुख्य रूप से

  1. संशोधित करना ghc-events तो यह घटना पढ़ने का समर्थन करता है की बात होगी हिस्सा वार लॉग करता है और आंशिक परिणाम प्रदान करते हैं। शायद इसे attoparsec पर पोर्टिंग करने में मदद मिलेगी?

  2. Threadscope में नए डेटा धाराओं के रूप में अपने आंतरिक पेड़ डेटा संरचनाओं को अद्यतन करने के लिए होगा।

कुछ नहीं बहुत कठिन है, लेकिन किसी को यह करने के लिए की आवश्यकता होगी। मुझे लगता है कि मैंने इस सुविधा को पहले से जोड़ने के बारे में चर्चा सुनी है ... तो यह अंततः हो सकता है।

संपादित करें: और इसे स्पष्ट करने के लिए, कोई वास्तविक कारण नहीं है कि आपको ईवेंट लॉग या लागत केंद्र प्रोफाइलिंग के साथ जो कुछ मिलता है उससे परे प्रदर्शन को कम करना होगा।

1

यदि आप चल रहे समय एप्लिकेशन के प्रदर्शन की निगरानी करना चाहते हैं, तो उदाहरण के लिए आप this blog post में वर्णित the ekg package का उपयोग कर सकते हैं। यह ThreadScope के रूप में विस्तृत नहीं है, लेकिन यह वेब सेवाओं के लिए काम करता है, उदाहरण के लिए।

रनटाइम क्या कर रहा है, इसके बारे में लाइव जानकारी प्राप्त करने के लिए, आप कुछ जीएचसी रनटाइम जांच द्वारा पोस्ट की गई गतिशील घटनाओं को कैप्चर करने के लिए dtrace प्रोग्राम का उपयोग कर सकते हैं। यह कैसे किया जाता है this wiki page में उल्लिखित है। फिर आप इस जानकारी का उपयोग एक और सुसंगत घटना लॉग को एक साथ रखने के लिए कर सकते हैं।

+0

ठंडा! हम्म, मैंने अभी थ्रेडस्कोप के लिए स्रोत ब्राउज़ करना शुरू कर दिया है, लेकिन लंबे समय तक मुझे थ्रेडस्कोप के अंदर कुछ बुनियादी सूचनाएं बनाने में दिलचस्पी थी, और सोचा कि यह रीयलटाइम में इसे देखने के लिए अच्छा लगेगा, हालांकि यह एक सौदा ब्रेकर नहीं है, बस सोच रहा है कि यह करना आसान है या नहीं। –

+0

मैंने जीएचसी रनटाइम द्वारा किए गए कार्यों को और कैसे पता लगाया जा सकता है इसके बारे में विवरण जोड़ा है। यह आपके प्रश्न के पहले भाग का बेहतर जवाब देना चाहिए। – dflemstr

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