2012-04-05 14 views
8

मैं अपने Erlang आवेदन की प्रक्रियाओं के बीच कार्य वितरण के बारे में अधिक जानने की कोशिश कर रहा हूं। प्रक्रिया द्वारा निष्पादित कटौती की संख्या, दूसरों के बीच में, मेरी रुचि रखने वाली चीज़ों में से एक है।Erlang प्रक्रियाओं की कमी की गणना

तो मैं बाहर निकलने पर प्रक्रिया में कटौती की संख्या को पढ़ने का माध्यम ढूंढ रहा हूं। हालांकि प्राप्त करने के लिए यह काफी सरल है, जबकि प्रक्रियाएं अभी भी निष्पादित हो रही हैं, उन्हें प्राप्त करने से पहले (या ठीक बाद में) बाहर निकलने की एक और कहानी है। मेरे पास दुर्भाग्यवश, किसी भी लाभ के लिए, सभी दस्तावेज, विशेष रूप से डीबीजी: * फ़ंक्शंस, पर देखा गया है। अधिकतर क्योंकि जब भी मुझे प्रक्रिया के बाहर निकलने के बारे में अधिसूचित किया जाता है, तो इसके बारे में कुछ भी करने में बहुत देर हो चुकी है।

प्रक्रियाओं से बाहर निकलने से पहले इन मानों को पढ़ने के लिए पूरे एप्लिकेशन के कोड को बदलना असंभव है। वीएम कोड में डाइविंग के अलावा ऐसा करने का कोई तरीका है और इसे वाद्य यंत्र?

धन्यवाद

उत्तर

1

मुझे नहीं लगता कि आप प्रक्रियाओं के लिए reductions प्राप्त कर सकते हैं, लेकिन आप running और timestamp विकल्पों के साथ एक erlang:trace/3 करके समय-आधारित काम वितरण मिल सकता है। जो आपको लगता है वह आपको मिल जाएगा। स्वाभाविक रूप से आपको डेटा एकत्र करना होगा और कुछ पोस्ट-प्रोसेसिंग या शायद-इन-टाइम प्रोसेसिंग करना होगा।

मैं भी आवश्यक मेटा जानकारी पाने के लिए पता लगाने के लिए विकल्प procs का प्रयोग करेंगे, यानी शुरू कर दिया, समाप्त आदि

+0

ठीक है, मैं कर रहा वास्तव में ... यह एक दया है समाप्त हो गया है कि पता लगाने/3 , और इसके परिणामस्वरूप डीबीजी: इस तरह का विस्तृत विकल्प नहीं है। – Francesquini

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