JET School

Observability nədir?

Observability (Müşahidəolunma) — bu, sistemin daxili vəziyyətini onun xarici nəticələrinə (məsələn, loglar, metriklər, treyslər) əsaslanaraq başa düşmək və izləmək qabiliyyətidir. Yəni, müşahidəolunma — yalnız problemləri aşkar etmək deyil, həm də onların nəyə görə və necə baş verdiyini dərin şəkildə anlamağa imkan verən anlayışdır. DevOps və Site Reliability Engineering (SRE) dünyasında Observability, mürəkkəb və paylanmış sistemlərin etibarlı işləməsi üçün əsas təməllərdən biridir.

Ənənəvi monitorinq sistemləri yalnız "nə baş verdi?" sualına cavab verir, lakin Observability isə bir addım irəli gedərək "nəyə görə baş verdi?" və "növbəti dəfə bunu necə qarşısını ala bilərik?" kimi suallara cavab tapmağa kömək edir.

Observability üç əsas komponent üzərində qurulur — bunlara “Three Pillars of Observability” (Müşahidəolunmanın Üç Sütunu) deyilir:

  1. Logs (Jurnallar):
  2. Loglar sistemin fəaliyyət tarixçəsini göstərən mətn əsaslı qeydlərdir. Onlar hadisələrin ardıcıllığını, səhvləri və sistemin müxtəlif komponentlərində baş verən prosesləri analiz etməyə imkan verir. Məsələn, veb serverin logları istifadəçi sorğularının statusunu, vaxtını və səhv mesajlarını göstərir.
  3. Metrics (Metriklər):
  4. Metriklər sayısal göstəricilərdir — məsələn, CPU yüklənməsi, yaddaş istifadəsi, sorğu cavab müddəti və s. Onlar sistemin performansını izləmək, trendləri təhlil etmək və anormallıqları vaxtında aşkar etmək üçün istifadə olunur.
  5. Traces (İzləmələr):
  6. Tracelər paylanmış sistemlərdə bir sorğunun hansı servislərdən keçdiyini addım-addım göstərir. Bu, mikroservis arxitekturasında performans problemlərini və gecikmələrin mənbəyini tapmaq üçün çox vacibdir.

Observability-nin məqsədi təkcə məlumat toplamaq deyil, həm də bu məlumatlardan anlayış çıxarmaqdır (insight generation). Yaxşı müşahidəolunma sistemi mühəndislərə problemin səbəbini sürətlə tapmaq, düzəlişləri tətbiq etmək və gələcəkdə oxşar halların qarşısını almaq imkanı verir.

Əsas xüsusiyyətlər:

  • Real-time görünürlük: Sistem hadisələri və performans göstəriciləri anında izlənilir.
  • Kontekstual əlaqələndirmə: Log, metrik və trace məlumatları bir-biri ilə əlaqələndirilir ki, hadisələrin tam mənzərəsi yaransın.
  • Anomaliya aşkarlanması: Süni intellekt və maşın öyrənməsi vasitəsilə normaldan kənar davranışlar avtomatik müəyyən edilir.
  • Root-cause analysis (səbəb analizi): Problemin əsas səbəbinin müəyyən edilməsi sürətləndirilir.
  • Visualization: Dashboard və qrafiklər vasitəsilə kompleks məlumatlar sadə vizual formada təqdim olunur.

Müasir Observability alətləri arasında Prometheus, Grafana, Elastic Stack (ELK), Jaeger, Datadog, New Relic, SplunkOpenTelemetry kimi platformalar geniş istifadə olunur.

DevOps mühitində Observability mühüm əhəmiyyət daşıyır, çünki bu yanaşma sistemin performansını, etibarlılığını və sabitliyini təmin etməklə yanaşı, fasiləsiz təkmilləşdirmə və avtomatlaşdırılmış qərarvermə proseslərini də dəstəkləyir.

Nəticə etibarilə, Observability — mürəkkəb sistemlərdə “nə baş verir?” sualından “nəyə görə belə baş verir və nə etməliyik?” sualına keçidi təmin edən mühəndislik fəlsəfəsidir. Bu, müasir infrastrukturun sabitliyini və çevikliyini qorumaq üçün vacib olan strateji yanaşmadır.

IT kurslarımız barədə məlumat almaq üçün formu doldurun

IT sahəsini dərindən öyrənmək üçün kurslarımıza qoşulun. Ətraflı məlumat almaq üçün sorğu göndərin!