साजिश रचने के रास्ते पर

शुभ दोपहर, प्रिय पाठक! यह लेख विश्लेषिकी से परिचालन निगरानी को देखने के प्रयास से उत्पन्न हुआ। यह आपके लिए उपयोगी होगा यदि:

  • निम्न सूची में से कुछ परिचित है: ग्राफाना, इन्फ्लक्सबीडी, प्रोमेथियस, ज़ैबिक्स या इसी तरह के विचारों के साथ एक और निगरानी प्रणाली;
  • आप विभिन्न प्रकार के समय श्रृंखला प्रदर्शन और आंकड़ों में एक विशेषज्ञ / पेशेवर / आश्वस्त मध्यम व्यक्ति नहीं हैं (अन्यथा, यह आपके लिए बहुत उबाऊ होगा);
  • "माइक्रोस्कोप के तहत" कुछ पहलुओं को देखने की इच्छा है।

यदि आप तय करते हैं कि उपरोक्त शर्तें पूरी हो गई हैं, तो बिल्ली का स्वागत करें।




"मुझे बताओ, कृपया, मुझे यहाँ से कहाँ जाना चाहिए?"
"आप कहाँ जाना चाहते हैं?" - कैट ने जवाब दिया।
"मुझे परवाह नहीं है ..." ऐलिस ने कहा।
"तो यह कोई फर्क नहीं पड़ता कि कहाँ जाना है," बिल्ली ने कहा।
"" बस कहीं पाने के लिए, "ऐलिस ने समझाया।
"आप कहीं जाने के लिए निश्चित हैं," बिल्ली ने कहा। "आपको अभी बहुत लंबा जाना है।"
एलिस इन वंडरलैंड द्वारा लुईस कैरोल

यात्रा शुरू होती है ...


. , , , , . , «?» . ? , ( , )! , .



, RFC1065:



3.2.3.3. Counter

This application-wide type represents a non-negative integer which

Rose & McCloghrie [Page 8]

RFC 1065 SMI August 1988


monotonically increases until it reaches a maximum value, when it
wraps around and starts increasing again from zero. This memo
specifies a maximum value of 2^32-1 (4294967295 decimal) for
counters.

3.2.3.4. Gauge

This application-wide type represents a non-negative integer, which
may increase or decrease, but which latches at a maximum value. This
memo specifies a maximum value of 2^32-1 (4294967295 decimal) for
gauges.


, , 1988- , : . - , , , Prometheus.


. — : , , . — - . - …


UI Grafana, , , - , $__interval, , , . — , 4k. , , — . , , .


, ( ) « » . :


, “Step count” 200 300 (, , . : 10 , :

“”$group_time
InfluxQLWHERE time>now()-...GROUP BY time(...)
1h20s2
1d (24h)5m30
1w1h360
1month3h1080


, ! ( ) , , .



. ( Influx’, ):


InfluxDB, , : An instantaneous rate of change is equivalent to a derivative ( ), . , , , , (average rate of change). . , , mean ( ), , . , «» , - . , , , , , .



«» : , last, ( InfluxQL, promql ). last . , . , , 00 . non_negative_derivative(first(...)) . , , — , — : ( ) .



, ? .


mean, InfluxDB : max, min, last, , , — stddev. prometheus min_over_time, max_over_time, stddev_over_time, Influx ( , ). Last, , , , , mean: - , mean , «».


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



समान प्रतिपादन के उदाहरण:
  • zabbix में
  • Grafana


, min mean ( max avg) , , Grafana Legend -> Values , , , .


«»


, , stddev — standard deviation, - . , , . , , «» . , (, , , , ).


, : error bar. — “ ”, 1-, 2- 3- (25% , 75% ). , ? :) , , Grafana. , pandas seaborn ( plotly).


, , « » , , . “the Datasaurus Dozen animation” Google.




, , , . , , , .


, « » . ? seaborn! , : violinplot. , « » « -» , , - , : violinplot Grafana.



: , , ? , ? ? , ? - .


, , . : Google SRE book. « » (, , ): latency, traffic, errors, saturation. , - ( ), . : saturation % 100, : 100, «» , 0 — , , , . , , — , .



, : . , , , /. (, , ): pull push. , . , , , push — Riemann-tools, pull — Prometheus.


Telegraf, (input-plugins) , (output-plugins) . , discovery-plugins— input-plugins, . , , LLD (low-level discovery) Zabbix, . «»: ( ). (, prometheus-operator), , . , , … Kubernetes, — Influxdata. - ( API/RPC) snap, , , ( , ).


, pull- -, . , . , , , . . , : (, Riemann ). . , , , , (, - ). Graphite / statsd, , , UI. Prometheus recording rules Thanos Compact, TICK- , , : Continues Queries InfluxDB TICKscript Kapacitor. , , — , Histogram Summary Prometheus, Accumulator interface Telegraf.


B , , , , :


, UI, . : , , , UI-preprocessing. , . , «» UI-preprocessing UI, , . , , / — .


« » , 3- , , . , , .



, , : Prometheus, Telegraf . , , heatmap ( ), Grafana. , « », .


Grafana


, Grafana heatmap time series buckets, , , CPU :



, :

  1. :
    ;
    latency, traffic, errors saturation.
  2. , .
  3. ( ), , , .
  4. . - Grafana ( UI ), , , , - Python JS.


Grafana ) UI; ) ; ) .


— , : , , .



, , , . . latency .


All Articles