Увод у ОпенТелеметри за почетнике

Хајде да разговарамо о ОпенТелеметри – стандардном начину прикупљања телеметријских података који је неутралан од произвођача.

Понуда боље видљивости у апликацији је велики изазов за сваког програмера јер треба да ухвати телеметријске податке апликације. Кембриџ речник дефинише телеметрију као науку или процес прикупљања информација о објектима који су удаљени и слања информација негде електронским путем.

На пример, корисников један клик или сесија на веб локацији генерише много захтева и праћења који теку између мрежа, микросервиса, база података итд.

ОпенТелеметри је платформа за посматрање, скуп добро разрађених компоненти које се могу користити заједно или а ла царте. Штавише, програмери оквира и библиотека које сви ми данас користимо сада имају стандардни начин да испекују податке телеметрије у те библиотеке и оквире, дајући крајњим корисницима много неограничених увида у то шта ти оквири раде испод хаубе. .

Да бисте разумели ОпенТелеметри, прво морате да знате шта је дистрибуирано праћење.

Шта је дистрибуирано праћење?

Како наше апликације постају сложеније и све више услуга је укључено у опслуживање корисничког саобраћаја и довршавање трансакција, постаје све важније разумети како захтеви пролазе кроз наше услуге и како свака услуга доприноси укупном кашњењу. Ово ради дистрибуирано праћење. Он бележи кашњење корисничких захтева и колико времена је потребно свакој микроуслузи на путањи да врати одговор.

Када дође кориснички захтев, желимо да креирамо траг, односно укупну информацију која описује како наш систем одговара на кориснички захтев. Трагови се састоје од распона, а сваки распон означава одређени пар захтева и одговора који су укључени у опслуживање корисничког захтева. Родитељски распон описује кашњење како га примећује крајњи корисник. А дечији распон се користи да би се разумело како је одређена услуга у дистрибуираном систему позвана и одговорила са својим информацијама о кашњењу.

Шта је ОпенТелеметри?

ОпенТелеметри је пројекат отвореног кода чији је домаћин ЦНЦФ и који пружа стандардни начин за генерисање телеметријских података. Настала је спајањем ОпенТрацингстандард за генерисање података о траговима, и ОпенЦенсусшто је био стандард за генерисање метричких података.

  11 алата за разликовање и спајање за поједностављење прегледа датотека

ОпенТелеметри нуди један скуп АПИ-ја, агената, услуга сакупљача и библиотека за снимање дистрибуираних трагова и метрика из ваше апликације. ОпенТелеметри стандардизује начин на који прикупљамо телеметријске податке и шаљемо их на бацк-енд по вашем избору. Ово вам пружа неутралан пут до инструментације и даје вам флексибилност да промените позадину без поновног инструментирања кода.

Дакле, можете инструментирати своје апликације помоћу агента независног од добављача док и даље шаљете своје метрике и трагове СааС добављачу као што је Датадог. Затим, ако желите да промените добављача (нпр. са Датадог-а на Динатраце), можете то учинити без промене кода апликације.

Пројекат ОпенТелеметри има за циљ да обезбеди један скуп библиотека АПИ-ја и агената за хватање метрика и дистрибуираних трагова из ваших апликација. Ово важи за многе језике и платформе. Пројекат ОпенТелеметри такође укључује опциону услугу сакупљача и има наменско спремиште за спецификације. Да будемо јасни, ОпенТелеметри није Јаегер или Прометхеус, који су видљиви бацк-ендови. Али помаже у извозу података у опен-соурце и комерцијалне позадинске програме.

Испод су функције које ОпенТелеметри пружа:

  • Стандардизација прикупљања телеметријских података које организације могу да прате, што олакшава кретање између добављача
  • Семантичка конвенција отвореног стандарда која не зависи од добављача за процес прикупљања података
  • Колектор који се може применити као агент или гатеваи или на много различитих начина
  • Подржава више формата ширења контекста за миграцију
  • Решење од краја до краја за генерисање, емитовање, прикупљање, обраду и извоз података телеметрије
  • Могућност паралелног слања података на различите дестинације са потпуном контролом

ОпенТелеметри Цомпонентс

Испод су основне компоненте ОпенТелеметри:

  • Прото: Ова компонента се користи за дефинисање колектора, библиотека инструментација, итд., који су типови интерфејса независних од језика за ОпенТелеметри.
  • Колектор: Колектори се користе за пријем, обраду и извоз телеметријских података. Ова имплементација колектора мора бити агностична од добављача. Подразумевано, све телеметријске податке извозе библиотеке инструментације на овој локацији.
  • Спецификација: Ова компонента описује захтеве и очекивања имплементације на различитим језицима који се састоје од АПИ-ја, СДК-ова и података. АПИ генерише телеметријске податке, могућност обраде и извоза за имплементацију АПИ-ја које пружају СДК-ови. Подаци имају семантичке конвенције да подрже све врсте добављача без промене кода.
  • Библиотеке инструментације: Оне су доступне на више језика као део ОпенТелеметри пројекта. Ове библиотеке се користе да обезбеде видљивост за друге библиотеке да би све апликације које се посматрају упућивањем позива на ОпенТелеметри АПИ.
  Како су ЦПУ заправо направљени?

ОпенТелеметри Арцхитецтуре

Слика из Нове реликвије

На високом нивоу, ОпенТелеметри се састоји од три главна дела:

  • Скуп АПИ-ја за инструменталне апликације, библиотеке и оквире.
  • СДК имплементира АПИ-је.
  • Опциони сакупљач може да унесе, агрегира и извезе податке телеметрије где год вам затребају.

Сврха АПИ-ја је да омогући креирање инструментације за библиотеке и кода апликације. АПИ има четири главна одељка: праћење, мерење, заједнички контекст и семантичке конвенције.

  • Трацер АПИ подржава креирање, означавање и довршавање распона.
  • АПИ мерача се састоји од више метричких инструмената. Примери ових инструмената су посматрачи, регистратори вредности, бројачи.
  • Можете пратити и извршавати спан контекст омогућавањем контекстуалног АПИ-ја и пропагирањем тог контекста унутар и изван вашег система.
  • Сва упутства и правила за углавном именовање, као што је именовање распона, атрибута, ознака и метричких инструмената, присутна су у семантичким конвенцијама. Ове конвенције се примењују да би се обезбедила конзистентност у различитим језичким имплементацијама и за спољне инструменте.

У заједничком контексту, имплементација контекста лежи између трагача и мерача и омогућава да се сви метрички снимци који нису посматрачи одвијају у контексту извршног распона. Функција која омогућава пакетима за развој софтвера да снимају примерне распоне за вредности метрике. Можете прилагодити контекст помоћу пропагатора, који омогућавају ширење контекста распона уи из система који омогућава истинско дистрибуирано праћење.

Колектор је суштински део ОпенТелеметри архитектуре. То је самостална услуга која може да прима, обрађује и извози телеметријске податке из различитих извора, укључујући ОпенЦенсус, Зипкин, Јаегер и ОпенТелеметри протокол. Користећи колекторе, можете да извезете распоне и метрике код више добављача и телеметријских система отвореног кода.

  Да ли Ринг ради са Аппле ХомеКит-ом?

ОпенТелеметри архитектура нуди комплетно решење за телеметрију из кутије. Такође можете извршити прилагођавање коришћењем више тачака проширења према потреби.

Како функционише ОпенТелеметри?

Инсталирајте ОпенТелеметри клијент унутар сваке услуге у вашој имплементацији. Клијент је СДК; СДК, заузврат, има АПИ. Ваши оквири апликација и библиотеке користе овај инструментацијски АПИ да опишу посао који обављају. СДК затим извози прикупљена запажања у услугу за достављање података под називом Цоллецтор.

ОпенТелеметри има свој протокол података, ОТЛП, али сакупљач може да преведе ОТЛП у различите формате, укључујући Зипкин, Јаегери Прометеј. Значајно је да ОпенТелеметри не пружа сопствени позадински алат или алат за анализу; то је зато што је то напор стандардизације у срцу ОпенТелеметри. Циљ је да се дође до универзалног језика за описивање операција рачунара у окружењу облака. Циљ није да стандардизујемо начин на који анализирамо те податке. Уместо тога, надамо се да ће ОпенТелеметри помоћи да се свет посматрања унапреди тако што ће омогућити новим алатима за анализу да брзо почну без обнављања читавог екосистема софтвера за телеметрију.

Када шаљете много података широм система, много тога треба размотрити. Срећом, ОпенТелеметри је размислио о свим стварима и има решења за свако од тих питања. Прво и најважније, ОпенТелеметри је флексибилан и рукује вишеструким форматима ширења контекста. То значи да иако постоји стандард, ипак постоји могућност избора унутар тог стандарда. Дакле, ако користите нешто попут в3ц формата контекста праћења или б3 пропагације, ово су различити стандарди унутар стандарда који омогућавају вашим услугама да повежу тачке.

Закључак

ОпенТелеметри прикупља разна запажања, при чему су дистрибуиране метрике праћења и системски ресурси најважнији. Уместо да их третира као засебне сигнале, ОпенТелеметри их спаја заједно и обезбеђује индексирање и контекст који вам омогућава да агрегирате и унакрсно индексирате све ове сигнале на задњој страни.

Поред прикупљања података, ОпенТелеметри пружа могућност обраде података и цевовода који вам омогућава да мењате формате података, манипулишете својим подацима и све алате који су вам потребни за изградњу робусног телеметријског цевовода у модерном систему.

Дакле, то је било све о ОпенТелеметри, само напред и испробајте овај алат.