مراقبة اباتشي اشعال. تم على أكمل وجه

لقد صنعنا نظامين فرعيين داخل Apache Ignite.


في المقالة سأخبر عن هندستها:


  • كيف فعل النظام الفرعي للمقاييس والنظام الفرعي لعرض النظام.
  • ما الذي تم عمله وماذا سنفعل؟


تحية للجميع! اسمي نيكولاي إيزيكوف. أنا أعمل في Sberbank Technologies لتطوير منتجات مفتوحة المصدر.


ملاحظة 1 : "تم" تعني أن هذه الوظيفة متاحة في Apache Ignite الرئيسي ، يمكنك بناء ومعرفة كيف يعمل كل شيء. سيتم إصدار الوظيفة في إصدار Apache Ignite 2.8 ، والذي سيتم إصداره في أوائل عام 2020.


ملاحظة 2 : لن تحتوي المقالة الخاصة بالهندسة المعمارية على أرقام محددة ستكون مطلوبة لمراقبة Apache Ignite.


ملاحظة 3 : ستتوفر الوظيفة في الإصدار 2.8 ، والذي سيحدث قريبًا ، أو ربما قبل ذلك.


أباتشي إغنايت وزعت منصة في الذاكرة. يوفر الكثير من واجهات برمجة التطبيقات: من أجل التخزين المؤقت ، والحوسبة الموزعة ، والخدمات (بناء بنية الخدمات الصغيرة) ، فإنه يوفر المعاملات.


لماذا



دعنا نقول لديك نظام ويعمل بطريقة أو بأخرى في همز. سيأتي إليك المسؤولون بالتأكيد ويسألون: "لكن كيف ترى ما يحدث في الداخل ، وكيف يتصرف النظام؟ نريد أن نعرف عن العمليات الجارية ، حتى تؤدي إلى انخفاض أو تغيير في السلوك لا يمكن إخفاؤه." تتلخص الأسئلة في جوهرها فيما يلي:


  • ? — , , .
  • ? — , , : , , , . , .
  • ? — .
  • ? — " " — ?

.


:


  • .
  • — , .
  • . : , .
  • : , , , , .

, . , , . :


  • API : transaction manager, cache manager, etc.
  • - .
  • API: JMX, SQL, Java. API.


:


  • : , ? . , , , - . , .
  • «» : , API.
  • : jmx, sql, http(Prometheus) , , .
  • : , .

Open Source community . , Ignite Enhancement Proposal (IEP), , , API, .
:



Ignite : , . , . , . , Ignite . , Ignite — . — . (prometheus, zabbix) .



Ignite . Ignite : jvm, , , . Ignite . , .


: — .


: , data region', .. , , .


: io.dataregion.myregion.TotalAllocatedPages — Data Region "myregion".



:


  • Metric, Gauge — .
  • MetricRegistry — (, ) .
  • MetricExporterSpi — .
  • ReadOnlyMetricRegistry — , exporter’-. read only access + listeners.
  • GridMetricManager — .

:


  • Metric — . .
    : LongAddterMetric, DoubleMetricImpl, ObjectMetricImpl.
  • Gauge — . , Supplier. . , , .
    : LongGauge, DoubleGauge, ObjectGauge.
  • HistogramMetric — + . , .
    : , 250 , 500 , 1 .
  • HitRateMetric — X .
    : , .

MetricExporterSpi — , . , . JMX, SQL, Log, OpenCensus.



GridMetricManager mmgr = ...;
MetricRegistry mreg = mmgr.registry("io.dataregion." + name);
LongAdderMetric replacedPages = mreg.longAdderMetric("PagesReplaced",
            "Number of pages replaced from last restart.");
//....
replacedPages.increment();


JMX

SQL

, " ?" .
.


System View — ?


— . system view, SQL. ( JMX).



  • SystemView — (). : , , compute task', sql table . .
  • SystemViewExporterSpi — .
  • ReadOnlySystemViewRegistry — exporter'. read only access + listeners.
  • GridSystemViewManager


:


  • . , , - . .
  • overhead. .
  • . . .

: . java-. :


POJO. , . . . : reflection?

:


  • compile time.
  • .
  • .
  • .

:
(SystemViewRowAttributeWalker.java), . . system view . .


        ctx.systemView().registerView(CACHES_VIEW, CACHES_VIEW_DESC,
            new CacheViewWalker(),
            registeredCaches.values(),
            CacheView::new);

        ctx.systemView().registerView(CACHE_GRPS_VIEW, CACHE_GRPS_VIEW_DESC,
            new CacheGroupViewWalker(),
            registeredCacheGrps.values(),
            CacheGroupView::new);

Reflection — , . dev-list JMH benchmark. reflection . walker . Walker 4 .



SQL

JMX

, " ?" .



  • : , . .
  • « » (prometheus, zabbix)
  • . , . — .
  • . Oracle , , : , , , .
  • — Ignite , . . threshold «compute 30 », , .


  • dev@ignite.apache.org
  • user@ignite.apache.org
    تعال! لدينا مجتمع ناطق باللغة الروسية تقريبًا ، وجميع المساهمين تقريبًا من روسيا ، لذا يمكنك بسهولة الانضمام والمساهمة في Open Source.

مادة بنجمة

dev- " ?", API


عرض - https://www.highload.ru/moscow/2019/ab abstracts/ 6111
فيديو:


Source: https://habr.com/ru/post/undefined/


All Articles