Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Hazvishamisi kune mainjiniya eSRE/DevOps kuti rimwe zuva mutengi (kana sisitimu yekutarisa) anosvika ovaudza kuti "zvese zvarasika": webhusaiti haina kushanda, mari yekubhadhara haisi kufamba, hupenyu hwakaoma ... Kunyangwe uchida kubatsira mumamiriro ezvinhu akadaro, kuita izvozvo pasina chishandiso chiri nyore uye chakajeka kunogona kuoma. Kazhinji, dambudziko racho rakavanzwa mukodhi yeapplication - chaunongoda kuita kungoriona.

Mukurwadziwa uye mumufaro...

Zvinongoitika kuti tave tichida New Relic kwenguva yakati rebei ikozvino. Yave iri uye ichiri chishandiso chakanaka chekutarisa mashandiro eapplication, uye inobvumirawo hunyanzvi hwe microservice architecture (ichishandisa agent yayo), nezvimwe zvakawanda. Uye zvese zvingadai zvakanaka, dai pasina shanduko mumutemo wemitengo webasa: mutengo kubva mugore re2013 yakawedzera nekatatu zvichikwiraPamusoro pezvo, kubvira gore rapfuura, kuwana account yekuedza kunoda kutaurirana nemaneja wega, izvo zvinoita kuti zviome kuratidza chigadzirwa kune mutengi angangovepo.

Mamiriro ezvinhu akajairika: New Relic haidiwi "chigarire"; inongotaurwa chete kana paine matambudziko. Asi ichiri kuda muripo wenguva dzose (US$140 pasevha pamwedzi), uye nekuvandudzwa kwegore, mitengo inowedzera. Kunyange zvazvo paine sarudzo ye "Pay-As-You-Go", kugonesa New Relic kunoda kutangazve application, izvo zvinogona kukonzera kurasikirwa nemamiriro ezvinhu ane dambudziko iro raive chinangwa chikuru. New Relic ichangobva kuunza hurongwa hutsva hwemitengo: zvinokosha, iyo pakutanga inotaridzika seimwe nzira inonzwisisika panzvimbo peNyanzvi... asi kana yanyatso tarisa, zvinoonekwa kuti pane zvimwe zvinhu zvakakosha zvisipo (kunyanya, haina Kutengeserana Kunokosha, Kutevedza Maitiro Ekushandisa Pamuchinjikwa, Distributed Tracing).

Nekuda kweizvozvo, takatanga kutsvaga imwe nzira yakachipa, uye sarudzo yedu yakawira pamasevhisi maviri: Datadog naAtatus. Sei izvi zviviri?

Nezvevakwikwidzi

Regai ndijekese kuti kune dzimwe mhinduro dziri pamusika. Takatofunga nezvesarudzo dze open source, asi havasi vese vatengi vane mukana wekugamuchira mhinduro dzinozvigadzirira ivo pachavo… uyezve, dzinoda kugadziriswa kwakawedzerwa. Peya yatakasarudza ndiyo yaive pedyo zvikuru. zvatinoda:

  • Rutsigiro rwakavakirwa mukati uye rwepamusoro rwemapurogiramu ePHP (vatengi vedu vane zvakawanda zvakasiyana-siyana, asi uyu ndiye mutungamiri akajeka mukutsvaga imwe nzira panzvimbo peNew Relic);
  • mutengo unokwanisika (uri pasi pe100 USD pamwedzi pamunhu wese anotambira);
  • zvishandiso otomatiki;
  • kubatanidzwa neKubernetes;
  • Kufanana neNew Relic interface chinhu chakanaka chinoonekwa (nekuti mainjiniya edu akajaira).

Saka, panguva yekutanga sarudzo, takabvisa dzimwe mhinduro dzakakurumbira, kunyanya:

  • Tideways, AppDynamics uye Dynatrace - pamutengo wakaderera;
  • Stackify yakavharwa muRussia uye inoratidza data shoma.

Zvimwe zvese zviri muchinyorwa chino zvakarongeka kuitira kuti nditange ndataura muchidimbu nezvemhinduro dziri kukurukurwa, mushure mezvo ndichakurukura nezvekudyidzana kwatinoita neNew Relic uye ruzivo rwangu/maonero angu kubva pakuita mabasa akafanana mune mamwe masevhisi.

Mharidzo yemakwikwi akasarudzwa

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus
pamusoro New RelicPamwe wakambonzwa nezvazvo here? Sevhisi iyi yakatanga kugadzirwa makore anopfuura gumi apfuura, muna 2008. Tave tichiishandisa kubvira muna 2012 uye hatina kusangana nematambudziko ekubatanidza nhamba yakakura yemapurogiramu ePHP, Ruby, nePython, uye takabatanawo neC# neGo. Vagadziri vesevhisi iyi vanopa mhinduro dzekutarisa mashandisirwo esoftware nezvivakwa, kutsvaga mapurojekiti emicroservice, maapplication ari nyore kushandisa evashandisi vekupedzisira, nezvimwe zvakawanda.

Zvisinei, mumiriri weNew Relic anoshandisa maprotocol ega ega uye haana rutsigiro rweOpenTracing. Zvishandiso zvepamusoro zvinoda kugadziriswa zvakanangana neNew Relic. Chekupedzisira, rutsigiro rweKubernetes ruchiri kuyedzwa.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus
Yakatanga kugadzirwa kwayo muna 2010 datadog New Relic inotaridzika zvakanaka kupfuura New Relic yekushandisa munzvimbo dzeKubernetes. Zvikuru, inotsigira kubatanidzwa neNGINX Ingress, kuunganidzwa kwemagwaro, uye statsd neOpenTracing protocols, zvichikubvumidza kuteedzera chikumbiro chemushandisi kubva pakubatana kwacho kusvika chapera, pamwe nekuwana magwaro echikumbiro ichocho (pawebhu server uye kudivi remutengi).

Pandaishandisa Datadog, takasangana nematambudziko nekuti dzimwe nguva yaikanganisa kugadzira ma microservices nemazvo uye mamwe matambudziko ehunyanzvi. Semuenzaniso, yakaona mhando yebasa zvisirizvo (ichifunga kuti Django ibasa rekuchengetedza data) uye yakakonzera zvikanganiso mazana mashanu muPHP application ichishandisa raibhurari yakakurumbira yePredis.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus
Atatus — chishandiso chitsva; sevhisi iyi yakatanga muna 2014. Bhajeti rayo rekushambadzira riri pachena kuti harina kunyanya kuderera pane makwikwi ataurwa pamusoro apa, uye kutaurwa kwacho hakuna kuwanda zvakanyanya. Kunyange zvakadaro, chishandiso ichi chakafanana zvikuru neNew Relic, kwete chete mukushanda kwacho (APM, browser monitoring, nezvimwewo) asiwo muchimiro chayo.

Dambudziko guru nderekuti inotsigira Node.js nePHP chete. Kune rumwe rutivi, yakaitwa zviri nani kupfuura Datadog. Kusiyana neDatadog, Atatus haidi kugadziriswa kweapplication kana mamwe macode tag.

Mashandiro atinoita neNew Relic

Iye zvino ngatitarisei mashandisiro atinoita New Relic. Ngatitii tine dambudziko rinoda kugadziriswa:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zviri nyore kuona pagirafu splash — ngatizviongororei. MuNew Relic, mawebhusaiti akatosarudzwa kare ewebhusaiti, girafu yekushanda inoratidza zvikamu zvese, uye kune mapaneru echiyero chekukanganisa uye chiyero chekukumbira. Chinonyanya kukosha, unogona kufamba pakati pezvikamu zvakasiyana zveapplication zvakananga kubva pamapaneru aya (semuenzaniso, kudzvanya paMySQL kunokusvitsa kuchikamu chedatabases).

Sezvo mumuenzaniso uri kufungwa nezvawo tichiona kuwedzera kwebasa PHP, tinya pachati iyi uye tichaenda otomatiki ku Transactions:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Rondedzero yekutengeserana, iyo inonyanya kuve vanodzora kubva kuMVC model, yakatorongwa zvichienderana ne Zvinotora nguva yakawanda, izvo zviri nyore kwazvo: tinogona kuona zviri kuitwa neapplication ipapo ipapo. Kunewo mienzaniso yemibvunzo inogara kwenguva refu iyo New Relic inounganidza otomatiki. Nekuchinja kurongeka, zviri nyore kuwana:

  • mutariri wekushandisa ane basa guru;
  • mutongi anonyanya kukumbirwa;
  • inononoka kupfuura dzose pane dzinodzora.

Pamusoro pezvo, unogona kutarisisa kutengeserana kwega kwega kuti uone zvaiitwa neapplication payakaitwa kodhi:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Chekupedzisira, app inochengetedza mienzaniso yemibvunzo yagara ichibvunzwa (iyo inotora anopfuura masekondi maviri). Heino dashboard yekutengeserana kwenguva refu:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zviri pachena kuti nzira mbiri dziri kutora nguva yakareba, uye nguva yakaitwa chikumbiro, URI yaro, uye domain zvinoratidzwawo. Izvi zvinowanzobatsira kuwana chikumbiro mumalogi. Nekuenda ku Ruzivo rwekutevera, unogona kuona kuti nzira idzi dzinodanwa kubva kupi:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Uye mukati Mibvunzo yedatabase — ongorora mibvunzo yedatabase yakaitwa apo application yaishanda:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Tiine ruzivo urwu, tinogona kuongorora chikonzero chekudzikira kwekushanda kweapplication uye kushanda nemugadziri weapplication kugadzira nzira yekugadzirisa dambudziko. Muchokwadi, New Relic haisi nguva dzose inopa mufananidzo wakajeka, asi inotibatsira kusarudza nzira yekuferefeta:

  • refu PDO::Construct zvakatitungamirira kukushanda kusinganzwisisike kwepgpoll;
  • kusagadzikana nekufamba kwenguva Memcache::Get yakaratidza gadziriro yemuchina wevirtual isiriyo;
  • nguva yakawedzerwa zvinofungidzirwa yekugadzirisa template yakatungamira kurobho rakaiswa nested ne cheki yekuvapo kwemaavatar mazana mashanu mukuchengetedza chinhu;
  • nezvimwe…

Zvinoitikawo kuti pachinzvimbo chekushandisa kodhi, chimwe chinhu chine chekuita nekuchengetwa kwedata rekunze chinoonekwa pachiratidziro chikuru - uye hazvina basa kuti chii: Redis kana PostgreSQL - zvese zvakavanzwa mu tab Databases.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Unogona kusarudza database chaiyo yekuongorora nekuronga mibvunzo—yakafanana nemaitiro aunoita muTransactions. Uye nekuenda ku query tab, unogona kuona kuti query yakapihwa inoonekwa kangani mu controllers yega yega yeapplication, pamwe nekufungidzira kuti inodanwa kangani. Izvi zviri nyore kwazvo:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Tabhu ine data rakafanana. Mabasa Ekunze, iyo inovanza zvikumbiro kumasevhisi ekunze eHTTP, akadai sekuwana nzvimbo yekuchengetera zvinhu, kutumira zviitiko kune sentry, nezvimwewo. Zviri mukati meiyi tab zvakafanana zvachose neDatabases tab:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Vakwikwidzi: Mikana uye Maonero

Zvino panouya chikamu chinonakidza zvikuru: kuenzanisa kugona kweNew Relic nekwevakwikwidzi vayo. Zvinosuwisa kuti hatina kukwanisa kuyedza maturusi ese matatu pashanduro imwe chete yekugadzira application. Zvisinei, takaedza nepese patinogona kuenzanisa mamiriro ezvinhu nemagadzirirwo akafanana sezvinobvira.

1.Datadog

Datadog inotikwazisa nepaneru ine madziro emabasa:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Inoedza kupatsanura maapplication kuita zvikamu/microservices, saka semuenzaniso Django application tichaona 2 connections kuPostgreSQL (defaultdb и postgres), pamwe neCelery neRedis. Kushanda neDatadog kunoda ruzivo rushoma rwemitemo yeMVC: unofanirwa kunzwisisa kuti zvikumbiro zvevashandisi zviri kubva kupi. Kazhinji, kushandisa mepu yebasa:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Nenzira, New Relic ine chimwe chinhu chakafanana:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

...uye mepu yavo, mukuona kwangu, inogadzirwa nyore uye yakajeka: hairatidzi zvikamu zve application imwe chete (izvo zvinoita kuti ive yakadzama zvakanyanya, sezvakaita Datadog), asi masevhisi chaiwo kana microservices chete.

Ngatidzokerei kuDatadog: mepu yebasa inoratidza kuti zvikumbiro zvevashandisi zviri kuuya kuDjango. Ngatiendei kuDjango service tozoona zvataitarisira:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zvinosuwisa kuti hapana girafu iripo. Nguva yekutengeserana pawebhu, zvakafanana nezvatinoona padashboard huru yeNew Relic. Zvisinei, inogona kugadziriswa pachinzvimbo chegirafu. % yenguva inopedzerwaZvakakwana kuchinjira ku Nguva yepakati pechikumbiro nerudzi...uye ikozvino girafu inozivikanwa iri kutitarisa!

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Kuti sei Datadog yakasarudza chati yakasiyana hazvitizivikanwi. Takaodzwawo mwoyo kuti sisitimu iyi haiyeuki sarudzo dzevashandisi (kusiyana nedzevakwikwidzi vese), saka mhinduro chete ndeyekugadzira madhibhodhi akagadzirwa.

Ndakafara kuziva kuti muDatadog, ndaigona kuchinja kubva pamagirafu aya kuenda kuma linked server metrics, kuverenga malog, uye kuongorora web server worker load (Gunicorn). Zvakafanana neNew Relic... uye zvakatowanda (malogs)!

Pasi pemagrafu pane kutengeserana kwakafanana zvachose neNew Relic:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

MuDatadog, kutengeserana kunonzi zviwanikwaUnogona kuronga ma controllers nenhamba yezvikumbiro, avhareji yenguva yekupindura, kana nguva yepamusoro inopedzerwa munguva yakasarudzwa.

Chiwanikwa ichi chinogona kuwedzerwa uye unogona kuona zvese zvatakatoona muNew Relic:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Tine nhamba dzezvishandiso, runyorwa rwemafoni emukati, uye zvikumbiro zvemuenzaniso zvinogona kurongwa nekodhi yekupindura... Nenzira, mainjiniya edu akafarira chaizvo basa iri rekuronga.

Chero muenzaniso wezviwanikwa muDatadog unogona kuwedzerwa uye kuongororwa:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zvinodiwa zvinoratidzwa, pamwe chete nechati pfupiso yenguva inoshandiswa pachikamu chimwe nechimwe, uye chati yemvura inoratidza kufona. Unogona zvakare kushandura kuenda kumufananidzo wemuti wechati yemvura:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Uye chinhu chinonyanya kufadza ndechekuona mutoro wehost iyo chikumbiro chakaitwa, uye kuona magwaro ekukumbira.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Kubatanidzwa kwakanaka!

Ungashamisika kuti ma tabo ari kupi. Databases и Mabasa Ekunze, sezvakaita muNew Relic. Hapana aripo pano: sezvo Datadog ichiparadzanisa application kuita zvikamu, PostgreSQL ichatariswa sevhisi yakasiyana, uye panzvimbo peExternal Services unofanira kutsvaga aws.storage (zvichave zvakafanana kune mamwe masevhisi ese ekunze ayo application inogona kuwana).

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Heino muenzaniso ne postgres:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Chaizvoizvo, ine zvese zvataida:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zviri pachena kuti chikumbiro chakabva pa "basa" ripi.

Zvakakosha kuziva kuti Datadog inobatanidza zvakanaka neNGINX Ingress uye inobvumira kuteverwa kwese kubva panguva iyo chikumbiro chinopinda muboka, pamwe nekugamuchira metrics dze statsd uye kuunganidza magwaro uye metrics dze host.

Chinhu chikuru chinobatsira Datadog ndechekuti mutengo wayo inovandudza kubva pakuongorora zvivakwa, APM, Log Management uye Synthetics test, kureva kuti unogona kusarudza chirongwa nenzira inochinjika.

2. Atatus

Chikwata cheAtatus chinoti basa ravo "rakafanana neNew Relic, asi riri nani." Ngationei kana izvozvo zviri zvechokwadi.

Bhawa remusoro rinotaridzika zvakafanana, asi handina kukwanisa kuziva kuti ndeapi Redis nememcached akashandiswa mukushandisa.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

APM inosarudza kutengeserana kwese, kunyangwe kazhinji kutengeserana kwepaWebhu chete ndiko kunodiwa. Sezvakaita neDatadog, hapana nzira yekuenda kune sevhisi yaunoda kubva pane guru remain panel. Uyezve, kutengeserana kwakanyorwa mushure mezvikanganiso, izvo zvinoita sezvisina musoro kune APM.

Kutengeserana kwaAtatus kwakafanana zvikuru nekwaNew Relic. Dambudziko nderekuti mashandiro emutongi wega wega haaonekwe pakarepo. Unofanira kuatsvaga mutafura yemutongi, uchironga ne Nguva Yakawanda Inodyiwa:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Rondedzero inozivikanwa yevanodzora inowanikwa pane tab pasura:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Tafura iyi inoyeuchidza nezveDatadog uye ndinoifarira kupfuura yakafanana nayo muNew Relic.

Kutengeserana kwega kwega kunogona kuwedzerwa kuratidza zvaiitwa neapplication:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Dashboard inoyeuchidzawo Datadog zvakanyanya: inoratidza huwandu hwezvikumbiro uye ongororo yakajairika yekufona. Paneri yepamusoro inopa tabu yekukanganisa. Kukundikana kweHTTP uye mienzaniso yemibvunzo inononoka Mafambiro eSession:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Kana ukapinda mukutengeserana, uchaona muenzaniso wekutevera. Unogona kuwana runyorwa rwezvikumbiro zve database uye kuona misoro yezvikumbiro. Zvese zvakafanana neNew Relic:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Kazhinji, Atatus yakandifadza nezviratidzo zvayo zvakadzama—pasina kubatanidzwa kwemafoni eNew Relic kuita chiyeuchidzo:

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus
Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Zvisinei, haina firita (sezvakaita muNew Relic) iyo yaizosefa zvikumbiro zvinokurumidza (<5ms). Kune rumwe rutivi, ndakafarira kuratidzwa kwemhinduro yekupedzisira yekutengeserana (kubudirira kana kukanganisa).

Panel Databases ichakubatsira kuongorora mibvunzo yekunze yedatabase inogadzirwa neapp. Sechiyeuchidzo, Atatus yakawana PostgreSQL neMySQL chete, kunyangwe purojekiti iyi ichishandisawo Redis nememcached.

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Mibvunzo inorongwa zvichienderana nezvinodiwa: frequency, avhareji yenguva yekupindura, nezvimwewo. Tabhu yemibvunzo inononoka inonyanya kubatsira—iri nyore kwazvo. Uyezve, data riri muiyi tab yePostgreSQL rakafanana nedata kubva mukuwedzera. pg_stat_statements - mhedzisiro yakanaka kwazvo!

Kwete Nyowani Relic chete: kutarisa kuDatadog uye Atatus

Tab Zvikumbiro zvekunze zvakafanana zvachose neDatabases.

zvakawanikwa

Zvishandiso zvese zviri zviviri zvakaratidzwa zvakashanda zvakanaka sezvishandiso zveAPM. Chero chipi zvacho chinogona kupa zvishoma. Zvatinofunga zvinogona kupfupikiswa seizvi:

datadog

Pros:

  • hurongwa hwemitengo huri nyore (APM inodhura USD 31 pamunhu wese anotambira);
  • yakashanda zvakanaka nePython;
  • Kugona kubatanidzwa neOpenTracing
  • kubatanidzwa neKubernetes;
  • Kubatanidzwa ne NGINX Ingress.

Cons:

  • iyo chete APM yakakonzera kusawanikwa kweapplication nekuda kwemodule error (predis);
  • PHP isina simba otomatiki-zvishandiso;
  • Tsanangudzo isingawanzoitiki yemasevhisi nechinangwa chawo.

Atatus

Pros:

  • zvishandiso zvePHP zvakadzika;
  • chiratidziro chemushandisi chakafanana neNew Relic.

Cons:

  • haishande pama operating system ekare (Ubuntu 12.05, CentOS 5);
  • kushandisa otomatiki zvisina simba;
  • rutsigiro rwemitauro miviri chete yekuronga mapurogiramu (Node.js nePHP);
  • Kushanda zvishoma nezvishoma kweinterface.

Tichifunga nezvemutengo waAtatus we$69 pamwedzi pasevha imwe neimwe, tingada kushandisa Datadog, iyo inoenderana zvakanaka nezvatinoda (mapurogiramu ewebhu muK8s) uye ine zvinhu zvakawanda zvinobatsira.

PS

Verenga zvakare pablog yedu:

Source: www.habr.com

Tenga inovimbika yekutambira kwemasaiti ane DDoS dziviriro, VPS VDS maseva 🔥 Tenga webhusaiti yakavimbika ine dziviriro yeDDoS, maseva eVPS VDS | ProHoster