2010-03-10 4 views
18

मैं अपने सी # प्रोजेक्ट में कुछ प्रदर्शन काउंटर जोड़ रहा हूं और एक नया प्रदर्शन काउंटर श्रेणी बना रहा हूं। इस श्रेणी में, मैं कई काउंटर/टाइमर रखना चाहता हूं जो विभिन्न चीजों को ट्रैक करते हैं। मुझे कई औसत टाइमर का उपयोग करने की आवश्यकता है और यह समझने की कोशिश कर रहा है कि CoutnerCreationDataCollection में एक से अधिक होने पर औसतबेसट काउंटर सही औसतTimer32 काउंटर से कैसे जुड़ा हुआ है।प्रदर्शन काउंटर औसत टाइमर उनके आधार से कैसे जुड़े होते हैं?

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

var dataColl = new CounterCreationDataCollection 
{ 
    new CounterCreationData 
    { 
    CounterType = PerformanceCounterType.AverageTimer32, 
    CounterName = "AverageTime1", 
    CounterHelp = "AverageTime1_Help" 
    }, 
    new CounterCreationData   // Does this get linked to AverageTime1 simply 
            // because it is being added after it? 
    { 
    CounterType = PerformanceCounterType.AverageBase, 
    CounterName = "AverageTime1Base" 
    }, 
    new CounterCreationData 
    { 
    CounterType = PerformanceCounterType.AverageTimer32, 
    CounterName = "AverageTime2", 
    CounterHelp = "AverageTime2_Help" 
    }, 
    new CounterCreationData 
    { 
    CounterType = PerformanceCounterType.AverageBase, 
    CounterName = "AverageTime2_Base" 
    }, 
} 

PerformanceCounterCategory.Create(
          "MyCategoryName" 
          , "My Category Help" 
          , PerformanceCounterCategoryType.SingleInstance 
          , dataColl); 

उत्तर

18

स्थिति:

यहाँ मैं क्या करना है कोशिश कर रहा हूँ का एक उदाहरण है। जिन काउंटरों को आधार की आवश्यकता होती है उन्हें परिभाषा सूची में आधार द्वारा तुरंत पालन करने की आवश्यकता होती है। तो आपका कोड सही है, आपके पास दो औसत टिमर 32 हैं, प्रत्येक के बाद औसतबेस है।

एक साइड नोट के रूप में, जब आप एक ही कोड को बार-बार टाइप करने से ऊब जाएंगे, तो आपको Using XSLT to generate Performance Counters code पर विचार करना चाहिए।

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