Мазмунга өтүү

Сабактын башталышы

Логгинг жана байкоолук (observability)

Иштеп жаткан Node-кызматты ичинен чындап көрө ала турган нерсеге айландырыңыз

Негизги идея: байкоолук (observability) — бул системаңыз продакшенде эмне кылып жатканы жөнүндө суроолорго — алдын ала ойлобогон суроолорго да — анын чыгарган сигналдарын колдонуп жооп бере алуу жөндөмү. Бул сигналдар — үч мамы: логдор (өзүнчө окуялар), метрикалар (убакыт боюнча топтолгон сандар) жана трейстер (бир суроо-талаптын көп операциядан өткөн жолу). Алар менен туура иштөө — сиз тынч башкарган кызматты, түнкү саат үчтө божомол менен оңдогон кызматтан айырмалайт.
Сабактын аягында сиз:
  • продакшенде эмнеге структураланган (JSON) логгинг console.logдон жакшы экенин түшүндүрүп, ал үчүн pino колдоно аласыз;
  • туура лог деңгээлин тандап, ар бир чөйрө үчүн ырастай аласыз;
  • суроо-талаптын ар бир лог сабагына AsyncLocalStorage аркылуу correlation id тиркей аласыз;
  • метрикаларды Prometheus форматында бере аласыз жана RED методу жөнүндө ой жүгүртө аласыз;
  • бөлүштүрүлгөн трассировка контекстти таратуу аркылуу спандарды бир трейске кантип бириктирерин сүрөттөй аласыз;
  • туура liveness жана readiness ден соолук текшерүүлөрүн жаза аласыз.

1. Байкоолук мониторингге каршы: үч мамы

Мониторинг системаңыз белгилүү босоголорго (порогдорго) карата ден соолукта экенин айтат ("CPU > 90%", "ката жыштыгы > 1%"). Байкоолук кеңири: ал симптомдон алдын ала аныктабаган түпкү себепке чейин из ээрчип, эмнеге экенин изилдөөгө мүмкүндүк берген касиет. Аны кийин кошуп болбойт — кызмат пайдалуу сигналдарды чыгарууга инструменттелген болсо гана байкалуучу болот.

Үч мамынын ар бири өзүнчө суроого жооп берет:

  • Логдор — "ушул учурда так эмне болду?" Убакыт белгиси жана контексти бар өзүнчө окуялар. Жогорку деталдаштыруу, чоң көлөм, бир байтка жогору баа.
  • Метрикалар — "убакыт боюнча канча / канчалык көп / канчалык тез?" Жакшы топтолгон арзан сандык убакыт катарлары (эсептегичтер, gauge, гистограммалар), дашборддорду жана алерттерди азыктандырат.
  • Трейстер — "бул бир суроо-талаптын учтан-учка жолу кандай болгон?" Кызматтар аркылуу убакыт боюнча ченелген спандардын дарагы, кечигүү чындыгында кайда кеткенин көрсөтөт.

Алар бири-бирин толуктайт, алмаштырбайт. Метрика боюнча алерт иштейт ("заказ таризделүүнүн p99 кечигүүсү секирди"); трейс жай спан — базага чакырык экенин көрсөтөт; ал спандагы логдор так суроону жана бөгөттөлгөн сапты ачат. Ар бирин өзүнүн максатына жараша колдонуңуз.

Node-кызмат суроону иштетүү Логдор "эмне болду?" Метрикалар "канча, убакытта?" Трейстер "убакыт кайда кетти?" Байкоолук бэкенди
Бир суроо-талап үч түрдүү сигнал чыгарат; чогуу алар пландабаган суроолорду берүүгө мүмкүндүк берет.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө