यह एक प्रश्न है जिसका कोई निश्चित उत्तर नहीं है, लेकिन यहां हम Datadog पर यह कैसे करते हैं (हम एक होस्टेड निगरानी सेवा हैं इसलिए हम इन चीजों पर जुनून करते हैं)।
1. कौन से मेट्रिक्स अनिवार्य हैं? यह दर्शक पर निर्भर करता है। लेकिन एक उच्च स्तर पर, प्रत्येक टीम के लिए, कोई भी मीट्रिक जो संभवतः अपने लक्ष्यों के करीब है (जो इकट्ठा करने के लिए सबसे आसान नहीं हो सकता है)।
सिस्टम मीट्रिक (उदा। सिस्टम लोड, मेमोरी इत्यादि) इकट्ठा करने के लिए तुच्छ हैं लेकिन शायद ही कभी क्रियाशील हैं क्योंकि वे विश्वसनीय रूप से संभावित कारण से कनेक्ट करने के लिए बहुत कठिन हैं।
दूसरी तरफ पूरा उत्पाद पर्यटन की संख्या किसी भी व्यक्ति को यह सुनिश्चित करने के लिए जिम्मेदार है कि नए उपयोगकर्ता उत्पाद का उपयोग करने वाले पहले मिनट से खुश हैं। StatsD इस तरह की चीजें इकट्ठा करने में आसानी से आसान बनाता है।
हमने यह भी पाया है कि उत्पाद के रूप में किसी भी टीमchanges के लिए महत्वपूर्ण मीट्रिक का मूल सेट विकसित होता है, इसलिए निरंतर संपादकीय प्रक्रिया है।
जो बदले में है कि कंपनी में से किसी को भी चुनने और चुनने में सक्षम होना चाहिए कि कौन से मीट्रिक उनके लिए महत्वपूर्ण हैं। कोई अनुमति नहीं पूछा गया, डेटा प्राप्त करने के लिए कोई घर्षण नहीं।
2. नामकरण संरचना पदानुक्रम का उच्चतम स्तर उत्पाद लाइन या प्रक्रिया है। हमारे वेब फ्रंटएंड को आंतरिक रूप से dogweb कहा जाता है, इसलिए उस घटक से सभी मीट्रिक dogweb.
के साथ prefixed हैं। पदानुक्रम का अगला स्तर उप-घटक है, उदा। dogweb.db.
, dogweb.http.
, आदि पदानुक्रम का अंतिम स्तर मापने वाली चीज है (उदा। renderTime
या responseTime
)।
ग्रेफाइट में अनसुलझा मुद्दा मेट्रिक नाम में मीट्रिक मेटाडेटा का एन्कोडिंग है (और *
का उपयोग करके चयन, उदाहरण dogweb.http.browser.*.renderTime
) यह चालाक है लेकिन रास्ते में जा सकता है।
हमने अपने डेटा मॉडल में स्पष्ट मेटाडेटा लागू करने का अंत किया, लेकिन यह आंकड़े/ग्रेफाइट में नहीं है इसलिए मैं विवरण छोड़ दूंगा। यदि आप और जानना चाहते हैं, तो सीधे मुझसे संपर्क करें।
स्रोत
2013-08-08 16:27:12
[ग्रेफाइट और आंकड़े में नामकरण पैटर्न] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/17542088/naming-pattern-in-graphite-and-statsd) – Freiheit