Шлях 05Урок 4 / 8

Назірайце за сэрвісам і яго карыстальнікамі

Звязвайце метрыкі, журналы і трасіроўкі з мэтамі сэрвісу. Праектуйце апавяшчэнні, межы даных і праверкі адсутнай тэлеметрыі.

Практыка11 хвПраверана

Выдавец Як мы пішам

Праверце сваё разуменнеЗатрымка экспарту расце. Выбраныя трасіроўкі паказваюць павольныя ўчасткі span базы даных. Якую выснову можна зрабіць?Выканайце практыкаванне
Затрымка экспарту расце. Выбраныя трасіроўкі паказваюць павольныя ўчасткі span базы даных. Якую выснову можна зрабіць?

Чаму вы навучыцеся

  • Выбіраць тэлеметрыю, якая адказвае на канкрэтнае эксплуатацыйнае пытанне.
  • Адрозніваць сімптом сэрвісу ад унутранай прычыны.
  • Абараняць тэлеметрыю і выяўляць адсутныя або састарэлыя доказы.

Пачніце з пытання

Маніторынг правярае вядомыя ўмовы. Назіральнасць дапамагае даследаваць паводзіны сістэмы, уключаючы збоі, якіх вы не прадбачылі. Больш панэляў не даюць аўтаматычна лепшых адказаў.

Для выдуманага сэрвісу экспарту пачніце з пытання карыстальніка: ці можа ўпаўнаважаны карыстальнік атрымаць правільны экспарт за ўзгоднены час? Затым выберыце сігналы, якія падтрымліваюць гэтае пытанне і дапамагаюць тлумачыць збоі.

OpenTelemetry дае інструменты збору і стандарты тэлеметрыі. Ён можа адпраўляць сігналы ў сумяшчальныя бэкэнды. Вам усё роўна патрэбныя захоўванне, запыты, сродкі кантролю доступу, тэрміны захоўвання і людзі, якія дзейнічаюць паводле доказаў. Уводзіны ў назіральнасць.

Звязвайце розныя формы доказаў

Метрыка вымярае велічыню з цягам часу. Журнал запісвае падзею. Трасіроўка звязвае аперацыі, калі запыт праходзіць праз сістэму. Span прадстаўляе адну аперацыю ў трасіроўцы.

Эксплуатацыйнае пытаннеПрыклад доказуАбмежаванне, якое трэба памятаць
Колькі дапушчальных экспартаў не выконваецца?Колькасць няўдач і колькасць дапушчальных запытаўНяправільны назоўнік дае падманлівую долю
Што адбылося з адным экспартам?Структураваны журнал з ID задачы, вынікам і версіяйАдсутныя падзеі пакідаюць прабелы
На што пайшоў час?Трасіроўка праз API, чаргу, працэс-апрацоўшчык і базу даныхВыбарка і зламаная перадача кантэксту могуць схаваць працу
Што змянілася перад сімптомам?Запісы разгортвання і канфігурацыіАдна часавая сувязь не вызначае прычыны

Для асінхроннай працы захоўвайце бяспечную сувязь паміж пададзенай задачай і выкананнем працэсам-апрацоўшчыкам. Адказ HTTP 202 можа азначаць, што праца прынята. Ён не даказвае завяршэння экспарту.

Апавяшчайце, калі патрэбнае дзеянне

Вызначце SLI і яго назоўнік перад заданнем SLO. Для прыкладу падлічвайце дапушчальныя экспарты, правільна завершаныя за ўзгодненую працягласць. Вызначце, як доўгія і пакінутыя задачы ўваходзяць у вымярэнне.

Бюджэт памылак апісвае дазволеныя няўдачы ў межах акна SLO. Хуткасць расходавання паказвае, як хутка няўдачы расходуюць гэты бюджэт. Рэкамендацыі Google выкарыстоўваюць некалькі вокнаў для балансу своечасовага выяўлення і шуму апавяшчэнняў. Апавяшчэнні на аснове SLO.

Выклікайце адказнага, калі ўмова патрабуе своечасовага дзеяння. Менш тэрміновую працу адпраўляйце ў чаргу. Кожнаму апавяшчэнню патрэбныя адказны, апісанне ўплыву, спасылка для даследавання і інструкцыя рэагавання. Пераглядайце апавяшчэнні, якія паўторна не прыводзяць да дзеянняў.

Не выкарыстоўвайце адзін агульны парог для кожнага сэрвісу. Уплыў на карыстальнікаў, трафік, працоўны час і рэсурсы рэагавання ўплываюць на рашэнне.

Абараняйце канвеер тэлеметрыі

Тэлеметрыя можа змяшчаць персанальныя даныя, токены, параметры запытаў і канфідэнцыяльныя дакументы. Вызначайце дазволеныя палі перад зборам. Абмяжоўвайце доступ і захоўванне. Выдаляйце сакрэты перад экспартам у знешні бэкэнд. Канфідэнцыяльная тэлеметрыя.

Не выкарыстоўвайце email кліента або ўнікальны ID задачы як пазнаку метрыкі. Неабмежаваныя пазнакі павялічваюць колькасць часавых радоў і могуць раскрываць ідэнтыфікатары. Выкарыстоўвайце для метрык параметры групавання з кантраляваным наборам значэнняў. Змяшчайце ўхваленыя ідэнтыфікатары карэляцыі ў журналы або трасіроўкі з кантролем доступу.

Вымярайце сам канвеер. Правярайце збоі прыёму, страчаныя даныя і ўзрост апошняга назірання. Роўны графік памылак можа азначаць адсутнасць памылак або адсутнасць уваходнай тэлеметрыі. Паказвайце гэтую розніцу.

Даследуйце канкрэтны збой

Выдуманы сэрвіс вяртае HTTP 202 для кожнага запыту. Час знаходжання задач у чарзе расце з секунд да 15 хвілін. Журналы працэсаў-апрацоўшчыкаў паказваюць паўторныя тайм-аўты базы даных. Трасіроўкі з выбаркі адносяць большую частку часу апрацоўшчыкаў да выклікаў базы даных.

Гэтыя доказы падтрымліваюць мэтанакіраванае даследаванне. Яны не вызначаюць, ці прычына ў змене запыту, вычарпаных злучэннях або магутнасці базы даных. Параўнайце гэтыя гіпотэзы з метадам адладкі.

Taiga Monitoring дае агляд стану прадукту з сігналамі даступнасці і браўзернага досведу. Ён дапаўняе назіральнасць інфраструктуры і праграмы; ён не замяняе гэтых сістэм. Monitoring.

Выканайце практыкаванне

Для выдуманага экспарту з гэтага ўрока вызначце адзін SLI, адно апавяшчэнне з канкрэтным дзеяннем, тры дазволеныя палі тэлеметрыі і два забароненыя. Укажыце, як выявіце зламаны канвеер тэлеметрыі.

Спампаваць працоўны ліст (Markdown)
Праверце сваё разуменне ↑

Працягнуць навучанне

Крыніцы і дадатковыя матэрыялы

Звязаныя матэрыялы Taiga

Папярэдні ўрок: Пастаянна знаходзьце і выпраўляйце ўразлівасці