{"id":37901,"date":"2019-10-31T22:20:26","date_gmt":"2019-10-31T19:20:26","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus\/"},"modified":"2019-10-31T22:20:26","modified_gmt":"2019-10-31T19:20:26","slug":"ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus","status":"publish","type":"post","link":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus","title":{"rendered":"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/8f8e3d96daed74986ef3cbe293356302.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA SRE\/DevOps engineer environment is no surprise when a client (or monitoring system) suddenly reports that \"everything is lost\": the site is not working, payments are failing, life feels bleak... No matter how much we want to help in such a situation, doing so without a simple and clear tool can be quite difficult. Often, the problem is hidden within the application's code \u2014 it just needs to be localized.<\/p>\n<h2>In both sorrow and joy\u2026<\/h2>\n<p>\nIt so happened that we have loved New Relic for quite some time now. It has been and continues to be an excellent tool for application performance monitoring, as well as allowing for the instrumentation of microservice architecture (using its agent) and much, much more. Everything could be wonderful if it weren't for the changes in the pricing policy of the service: its <b>\u00e1r <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.newrelic.com\/product-news\/new-relic-new-pricing-startups\/\">has increased over 3 times since 2013<\/a><\/noindex> . Additionally, since last year, obtaining a trial account requires communication with a personal manager, which complicates the presentation of the product to potential clients.<\/b>A common situation: New Relic is not needed on a \"permanent basis\"; it is only remembered when problems arise. But payment is still required regularly (140 USD per server per month), and in an automatically scalable cloud infrastructure, these amounts add up significantly. Although there is a \"Pay-As-You-Go\" option, enabling New Relic requires restarting the application, which can lead to losing the problematic situation that initiated everything. Recently, New Relic introduced a new pricing plan \u2014<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Essentials <noindex><a rel=\"nofollow\" href=\"https:\/\/newrelic.com\/products\/infrastructure\/pricing\">, \u2014 which at first glance seems a reasonable alternative to Professional\u2026 but upon closer examination, it turned out that some important features are missing (specifically, it lacks<\/a><\/noindex>Key Transactions <i>Cross Application Tracing<\/i>, <i>Distributed Tracing<\/i>, <i>As a result, we began to consider searching for a cheaper alternative, and we settled on two services: Datadog and Atatus. Why exactly them?<\/i>).<\/p>\n<p>On competitors<\/p>\n<h2>I would like to clarify that there are other solutions available in the market. We even considered Open Source options, but not every client has the spare resources to host self-hosted solutions... \u2014 moreover, they require additional maintenance. The pair we chose turned out to be the closest to<\/h2>\n<p>\nour needs <b>sz\u00fcks\u00e9gleteinknek<\/b>:<\/p>\n<ul>\n<li>be\u00e9p\u00edtett \u00e9s fejlett t\u00e1mogat\u00e1s PHP-alkalmaz\u00e1sokhoz (az \u00fcgyfeleinkn\u00e9l haszn\u00e1lt technol\u00f3giai stack nagyon v\u00e1ltozatos, de ez egy\u00e9rtelm\u0171 vezet\u0151 az alternat\u00edva keres\u00e9s\u00e9ben a New Relic-hez k\u00e9pest);<\/li>\n<li>megfizethet\u0151 \u00e1r (kevesebb mint 100 USD havonta a hoszt\u00e9rt);<\/li>\n<li>automatikus eszk\u00f6zbe\u00e1ll\u00edt\u00e1s;<\/li>\n<li>Kubernetes integr\u00e1ci\u00f3;<\/li>\n<li>a New Relic fel\u00fclet\u00e9nek hasonl\u00f3s\u00e1ga \u2014 szembet\u0171n\u0151 el\u0151ny (mert m\u00e9rn\u00f6keink hozz\u00e1szoktak).<\/li>\n<\/ul>\n<p>\nEz\u00e9rt az els\u0151 sz\u0171r\u00e9si szakaszban n\u00e9h\u00e1ny m\u00e1s n\u00e9pszer\u0171 megold\u00e1st kiz\u00e1rtunk, t\u00f6bbek k\u00f6z\u00f6tt:<\/p>\n<ul>\n<li> Tideways, AppDynamics \u00e9s Dynatrace \u2014 az \u00e1r miatt;<\/li>\n<li> Stackify \u2014 Oroszorsz\u00e1gban blokkolva van \u00e9s t\u00fal kev\u00e9s adatot mutat.<\/li>\n<\/ul>\n<p>\nA k\u00f6vetkez\u0151 \u00edr\u00e1s \u00fagy van fel\u00e9p\u00edtve, hogy el\u0151sz\u00f6r r\u00f6viden bemutatjuk a vizsg\u00e1lt megold\u00e1sokat, majd mes\u00e9lek a New Relic-kel folytatott tipikus egy\u00fcttm\u0171k\u00f6d\u00e9s\u00fcnkr\u0151l \u00e9s a m\u00e1s szolg\u00e1ltat\u00e1sokban v\u00e9gzett hasonl\u00f3 m\u0171veletek tapasztalatair\u00f3l\/benyom\u00e1sair\u00f3l.<\/p>\n<h3>A kiv\u00e1lasztott versenyt\u00e1rsak bemutat\u00e1sa<\/h3>\n<p>\n<img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/b8960097f729d56abeb9d1b0f5931e7d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nA <noindex><a rel=\"nofollow\" href=\"https:\/\/newrelic.com\/\"><b>New Relic<\/b><\/a><\/noindex>, tal\u00e1n m\u00e1r hallott r\u00f3la mindenki? Ez a szolg\u00e1ltat\u00e1s t\u00f6bb mint 10 \u00e9ve, 2008-ban indult. 2012 \u00f3ta akt\u00edvan haszn\u00e1ljuk, \u00e9s nem tapasztaltunk probl\u00e9m\u00e1t a val\u00f3ban nagy sz\u00e1m\u00fa PHP, Ruby \u00e9s Python nyelv\u0171 alkalmaz\u00e1s integr\u00e1l\u00e1s\u00e1val, valamint tapasztalatunk volt a C# \u00e9s Go integr\u00e1ci\u00f3j\u00e1val is. A szolg\u00e1ltat\u00e1s szerz\u0151inek megold\u00e1sai vannak az alkalmaz\u00e1sok, infrastrukt\u00far\u00e1k monitoroz\u00e1s\u00e1ra, mikroserviz alap\u00fa infrastrukt\u00far\u00e1k nyomoz\u00e1s\u00e1ra, k\u00e9nyelmes alkalmaz\u00e1sokat k\u00e9sz\u00edtettek felhaszn\u00e1l\u00f3i eszk\u00f6z\u00f6kre \u00e9s m\u00e9g sok m\u00e1st.<\/p>\n<p>Azonban a New Relic \u00fcgyn\u00f6k saj\u00e1t protokollokon m\u0171k\u00f6dik, \u00e9s nem t\u00e1mogatja az OpenTracing-et. A kiterjesztett eszk\u00f6zbe\u00e1ll\u00edt\u00e1shoz k\u00fcl\u00f6n m\u00f3dos\u00edt\u00e1sokat kell v\u00e9grehajtani a New Relic sz\u00e1m\u00e1ra. V\u00e9g\u00fcl, a Kubernetes t\u00e1mogat\u00e1s jelenleg k\u00eds\u00e9rleti st\u00e1tusz\u00fa.<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/6807ed78ff3d053d0aa910dbc81f1414.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n2010-ben indult fejleszt\u00e9se <noindex><a rel=\"nofollow\" href=\"https:\/\/www.datadoghq.com\/\"><b>Datadog<\/b><\/a><\/noindex> szembet\u0171n\u0151en \u00e9rdekesebbnek t\u0171nik a New Relic-n\u00e9l, k\u00fcl\u00f6n\u00f6sen a Kubernetes-k\u00f6rnyezetekben val\u00f3 alkalmaz\u00e1sa szempontj\u00e1b\u00f3l. K\u00fcl\u00f6n\u00f6sen t\u00e1mogatja az integr\u00e1ci\u00f3t az NGINX Ingress-szel, a napl\u00f3gy\u0171jt\u00e9st, a statsd \u00e9s OpenTracing protokollokat, ami lehet\u0151v\u00e9 teszi a felhaszn\u00e1l\u00f3i k\u00e9r\u00e9s nyomon k\u00f6vet\u00e9s\u00e9t a csatlakoz\u00e1s pillanat\u00e1t\u00f3l a munka befejez\u00e9s\u00e9ig, valamint a k\u00e9r\u00e9shez tartoz\u00f3 napl\u00f3k megkeres\u00e9s\u00e9t (mind a webszerver, mind a fogyaszt\u00f3k oldal\u00e1n).<\/p>\n<p>A Datadog haszn\u00e1lata sor\u00e1n szembes\u00fclt\u00fcnk azzal, hogy n\u00e9ha hib\u00e1san \u00e9p\u00edtette fel a mikroservizek t\u00e9rk\u00e9p\u00e9t, \u00e9s n\u00e9h\u00e1ny technikai hi\u00e1nyoss\u00e1ggal. P\u00e9ld\u00e1ul t\u00e9vesen hat\u00e1rozta meg a szolg\u00e1ltat\u00e1s t\u00edpus\u00e1t (a Django-t gyors\u00edt\u00f3t\u00e1raz\u00f3 szolg\u00e1ltat\u00e1sk\u00e9nt \u00e9rtelmezte) \u00e9s 500-as hib\u00e1kat okozott egy PHP-alkalmaz\u00e1sban, amely a n\u00e9pszer\u0171 Predis k\u00f6nyvt\u00e1rat haszn\u00e1lta.<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/dd1f3f840cd686265a1616343d832f28.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.atatus.com\/\"><b>Atatus<\/b><\/a><\/noindex> \u2014 a leg\u00fajabb eszk\u00f6z; a szolg\u00e1ltat\u00e1s 2014-ben indult. A marketingk\u00f6lts\u00e9gvet\u00e9se nyilv\u00e1nval\u00f3an elmarad a kor\u00e1bban eml\u00edtett versenyt\u00e1rsak\u00e9t\u00f3l, eml\u00edt\u00e9sek sokkal ritk\u00e1bbak. Ennek ellen\u00e9re maga az eszk\u00f6z nagyon hasonl\u00edt a New Relic-re, \u00e9s nemcsak a funkci\u00f3kban (APM, b\u00f6ng\u00e9sz\u0151megfigyel\u00e9s stb.), hanem a megjelen\u00e9s\u00e9ben is.<\/p>\n<p>Jelent\u0151s h\u00e1tr\u00e1ny, hogy csak a Node.js-t \u00e9s a PHP-t t\u00e1mogatja. M\u00e1sr\u00e9szt, a megval\u00f3s\u00edt\u00e1sa l\u00e9nyegesen jobb, mint a Datadog eset\u00e9ben. Elt\u00e9r\u0151en az ut\u00f3bbit\u00f3l, az Atatus nem ig\u00e9nyli az alkalmaz\u00e1sok m\u00f3dos\u00edt\u00e1s\u00e1t \u00e9s tov\u00e1bbi c\u00edmk\u00e9k be\u00e1ll\u00edt\u00e1s\u00e1t a k\u00f3dban.<\/p>\n<h2>Hogyan dolgozunk a New Relic-kel<\/h2>\n<p>\nMost n\u00e9zz\u00fck meg, hogyan haszn\u00e1ljuk \u00e1ltal\u00e1ban a New Relic-t. Tegy\u00fck fel, hogy van egy probl\u00e9ma, amely megold\u00e1st ig\u00e9nyel:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/615f56cd69a4360f5a659d135840ad8a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA grafikonon k\u00f6nnyen \u00e9szlelhet\u0151 <b>kiugr\u00e1s<\/b> \u2014 elemezz\u00fck ezt. A New Relic-ben a webalkalmaz\u00e1s sz\u00e1m\u00e1ra azonnal kiv\u00e1laszt\u00e1sra ker\u00fcltek a webes tranzakci\u00f3k, a teljes\u00edtm\u00e9nygrafikonban szerepelnek az \u00f6sszes komponens, valamint megtal\u00e1lhat\u00f3k a hibasebess\u00e9g, k\u00e9r\u00e9ssebess\u00e9g panelek\u2026 Ami a legfontosabb \u2014 k\u00f6zvetlen\u00fcl ezekb\u0151l a panelekb\u0151l navig\u00e1lhatunk az alkalmaz\u00e1s k\u00fcl\u00f6nb\u00f6z\u0151 r\u00e9szeibe (p\u00e9ld\u00e1ul a MySQL-re kattintva a adatb\u00e1zisok r\u00e9sz\u00e9hez juthatunk).<\/p>\n<p>Mivel a vizsg\u00e1lt p\u00e9ld\u00e1ban l\u00e1that\u00f3 a tev\u00e9kenys\u00e9g kiugr\u00e1sa, <b>PHP<\/b>, kattintsunk erre a grafikonra, \u00e9s automatikusan \u00e1tker\u00fcl\u00fcnk a <b>Transactions<\/b>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/9fbbde055a88d6f63aa6dca4998f925b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA tranzakci\u00f3k list\u00e1ja, amelyek l\u00e9nyeg\u00e9ben az MVC modell vez\u00e9rl\u0151i, m\u00e1r a <b>Legid\u0151ig\u00e9nyesebb<\/b>, ami nagyon k\u00e9nyelmes: azonnal l\u00e1tjuk, mivel foglalkozik az alkalmaz\u00e1s. Itt tal\u00e1lhat\u00f3k a New Relic \u00e1ltal automatikusan \u00f6sszegy\u0171jt\u00f6tt hossz\u00fa k\u00e9r\u00e9sek p\u00e9ld\u00e1i. A rendez\u00e9s \u00e1tkapcsol\u00e1s\u00e1val k\u00f6nnyen megtal\u00e1lhatjuk:<\/p>\n<ul>\n<li> a legnagyobb terhel\u00e9s alatt \u00e1ll\u00f3 alkalmaz\u00e1svez\u00e9rl\u0151t;<\/li>\n<li> a leggyakrabban k\u00e9rt vez\u00e9rl\u0151t;<\/li>\n<li> a leglassabb vez\u00e9rl\u0151t.<\/li>\n<\/ul>\n<p>\nEzenk\u00edv\u00fcl minden tranzakci\u00f3 kib\u0151v\u00edthet\u0151, \u00e9s l\u00e1thatjuk, mivel foglalkozott az alkalmaz\u00e1s a k\u00f3d v\u00e9grehajt\u00e1sa sor\u00e1n:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/9c3136cb973a1f47729c305256ee1836.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV\u00e9g\u00fcl, az alkalmaz\u00e1s t\u00e1rolja a hossz\u00fa k\u00e9r\u00e9sek nyomvonalainak p\u00e9ld\u00e1it (amelyek t\u00f6bb mint 2 m\u00e1sodpercig futnak). Itt a hossz\u00fa tranzakci\u00f3 panelje:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/bca8a9f1b0ccd8158eaff41067681e2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nL\u00e1that\u00f3, hogy sok id\u0151t ig\u00e9nyel k\u00e9t metodus, \u00e9s mellette megjelenik az is, mikor hajtott\u00e1k v\u00e9gre a k\u00e9r\u00e9st, annak URI-ja \u00e9s domain neve. Nagyon gyakran ez seg\u00edt megtal\u00e1lni a k\u00e9r\u00e9st a napl\u00f3kban. \u00c1tmenve a <b>Trace details<\/b>, megn\u00e9zhetj\u00fck, honnan h\u00edvj\u00e1k ezeket a met\u00f3dusokat:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/aef8bbd86278aa31d595aa353e6387e0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00c9s a <b>Database queries<\/b> \u2014 \u00e9rt\u00e9kelni a k\u00e9rd\u00e9seket az adatb\u00e1zisokhoz, amelyek az alkalmaz\u00e1s m\u0171k\u00f6d\u00e9se k\u00f6zben futottak:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/40d942b57b87237f378dc617676f00fc.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEz a tud\u00e1s felv\u00e9rtez minket az alkalmaz\u00e1s lassul\u00e1s\u00e1nak okainak felm\u00e9r\u00e9s\u00e9re, \u00e9s lehet\u0151v\u00e9 teszi, hogy a fejleszt\u0151vel k\u00f6z\u00f6sen kidolgozzunk egy probl\u00e9ma-megold\u00e1si strat\u00e9gi\u00e1t. Val\u00f3j\u00e1ban a New Relic nem mindig ad vil\u00e1gos k\u00e9pet, de seg\u00edt meghat\u00e1rozni a nyomoz\u00e1s ir\u00e1ny\u00e1t:<\/p>\n<ul>\n<li> hossz\u00fa <code>PDO::Construct<\/code> furcsa m\u0171k\u00f6d\u00e9shez vezetett minket a pgpoll;<\/li>\n<li> id\u0151beli instabilit\u00e1s <code>Memcache::Get<\/code> arra utalt, hogy a virtu\u00e1lis g\u00e9p be\u00e1ll\u00edt\u00e1sa nem megfelel\u0151;<\/li>\n<li> a gyan\u00fasan megemelkedett sablonfeldolgoz\u00e1si id\u0151 pedig egy be\u00e1gyazott ciklushoz vezetett, amely ellen\u0151rizte, hogy 500 avatar megtal\u00e1lhat\u00f3-e a objektum t\u00e1rol\u00f3ban;<\/li>\n<li> \u00e9s \u00edgy tov\u00e1bb\u2026<\/li>\n<\/ul>\n<p>\nEl\u0151fordulhat az is, hogy a f\u0151 k\u00e9perny\u0151n a k\u00f3d v\u00e9grehajt\u00e1sa helyett valami a k\u00fcls\u0151 adatok t\u00e1rol\u00e1s\u00e1val kapcsolatos n\u0151 \u2014 \u00e9s mindegy, hogy ez mi lesz: Redis vagy PostgreSQL, mindegyik a <b>Adatb\u00e1zisok<\/b>.<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/5ff39a5a6e02be329e3c40d54c3b4a1d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKiv\u00e1laszthatunk egy adott adatb\u00e1zist a vizsg\u00e1lathoz \u00e9s v\u00e9grehajthatjuk a lek\u00e9rdez\u00e9sek sz\u0171r\u00e9s\u00e9t \u2014 hasonl\u00f3an ahhoz, ahogyan ezt a Transactions f\u00fcl alatt tessz\u00fck. Ha \u00e1tmegy\u00fcnk a lek\u00e9rdez\u00e9s f\u00fclre, l\u00e1thatjuk, hogy az a lek\u00e9rdez\u00e9s h\u00e1ny alkalommal fordul el\u0151 az alkalmaz\u00e1s minden egyes kontroller\u00e9ben, \u00e9s azt is felbecs\u00fclhetj\u00fck, hogy milyen gyakran h\u00edvj\u00e1k meg. Ez nagyon k\u00e9nyelmes:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/92b3bca78f0aa0f27e5700cd6fe283fe.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHasonl\u00f3 adatokat tartalmaz a <b>External Services<\/b>, amely a k\u00fcls\u0151 HTTP-szolg\u00e1ltat\u00e1sokra tett lek\u00e9rdez\u00e9seket rejti, mint p\u00e9ld\u00e1ul az objektumt\u00e1rol\u00f3 el\u00e9r\u00e9se, esem\u00e9nyek k\u00fcld\u00e9se a sentry-be vagy hasonl\u00f3. A tartalma szempontj\u00e1b\u00f3l a f\u00fcl teljesen anal\u00f3g a Databases-szel:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/417d6ed0d5fb266e1a338d8277278000.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Versenyt\u00e1rsak: lehet\u0151s\u00e9gek \u00e9s benyom\u00e1sok<\/h2>\n<p>\nMost k\u00f6vetkezik a leg\u00e9rdekesebb r\u00e9sz \u2014 hasonl\u00edtsuk \u00f6ssze a New Relic lehet\u0151s\u00e9geit a versenyt\u00e1rsak \u00e1ltal k\u00edn\u00e1ltakkal. Sajnos nem tudtuk tesztelni mindh\u00e1rom eszk\u00f6zt egyetlen, a gy\u00e1rt\u00e1sban m\u0171k\u00f6d\u0151 alkalmaz\u00e1s egy verzi\u00f3j\u00e1n. Ennek ellen\u00e9re megpr\u00f3b\u00e1ltuk \u00f6sszehasonl\u00edtani a lehet\u0151 legink\u00e1bb hasonl\u00f3 helyzeteket \/ konfigur\u00e1ci\u00f3kat.<\/p>\n<h3>1. Datadog<\/h3>\n<p>\nA Datadog egy szolg\u00e1ltat\u00e1si falat bemutat\u00f3 panellel fogad minket:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/fa4eb4ba2349b900d5c04238552e5329.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMegpr\u00f3b\u00e1lja sz\u00e9tbontani az alkalmaz\u00e1sokat komponensekre \/ mikroszolg\u00e1ltat\u00e1sokra, ez\u00e9rt a megadott p\u00e9lda Django-alkalmaz\u00e1sban k\u00e9t PostgreSQL-kapcsolatot fogunk l\u00e1tni (<code>defaultdb<\/code> \u00e9s <code>postgres<\/code>), valamint Celeryt, Redist. A Datadog haszn\u00e1lata minim\u00e1lis MVC-elm\u00e9leti ismereteket ig\u00e9nyel: meg kell \u00e9rteni, hov\u00e1 \u00e9rkeznek a felhaszn\u00e1l\u00f3i lek\u00e9rdez\u00e9sek. Ezt \u00e1ltal\u00e1ban seg\u00edti a <b>szolg\u00e1ltat\u00e1sok t\u00e9rk\u00e9pe<\/b>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/2f5f7c9ce171af671a65fb41401451e5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEgy\u00e9bk\u00e9nt hasonl\u00f3 tal\u00e1lhat\u00f3 a New Relic-ben:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/b4e14f15b900f5c19856f1077873c9c0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u2026 v\u00e9lem\u00e9nyem szerint azonban a t\u00e9rk\u00e9pe egyszer\u0171bb \u00e9s \u00e9rthet\u0151bb: nem egy alkalmaz\u00e1s komponenseit \u00e1br\u00e1zolja (ami feleslegess\u00e9 tenn\u00e9 a r\u00e9szletess\u00e9g\u00e9t, mint a Datadog eset\u00e9ben), hanem csak konkr\u00e9t szolg\u00e1ltat\u00e1sokat vagy mikroszolg\u00e1ltat\u00e1sokat mutat.<\/p>\n<p>Visszat\u00e9rve a Datadogra: a szolg\u00e1ltat\u00e1si t\u00e9rk\u00e9pb\u0151l l\u00e1that\u00f3, hogy a felhaszn\u00e1l\u00f3i k\u00e9r\u00e9sek Django-ba \u00e9rkeznek. L\u00e9pj\u00fcnk a Django szolg\u00e1ltat\u00e1sra, \u00e9s v\u00e9gre l\u00e1thatjuk, amire v\u00e1rtunk:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/fe907532184004ec02238ccd5e7d0ce6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSajnos itt alap\u00e9rtelmezetten nincs grafikon <b>Web tranzakci\u00f3s id\u0151<\/b>, hasonl\u00f3an ahhoz, amit a New Relic f\u0151 panelj\u00e9n l\u00e1tunk. Azonban a grafikon helyett be\u00e1ll\u00edthat\u00f3 <b>% az elt\u00f6lt\u00f6tt id\u0151b\u0151l<\/b>. El\u00e9g, ha \u00e1tkapcsoljuk <b>K\u00e9r\u00e9s szerinti \u00e1tlagos id\u0151t\u00edpusok szerint<\/b>\u2026 \u00e9s m\u00e1ris egy ismer\u0151s grafikon n\u00e9z r\u00e1nk!<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/4576b27658d257fa5b062ffc7bb5464a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nK\u00e9rd\u00e9s sz\u00e1munkra, hogy mi\u00e9rt el\u0151nyben r\u00e9szes\u00edtette a Datadog a m\u00e1sik grafikont \u2014 ez titok marad. Az is elszomor\u00edt\u00f3 volt, hogy a rendszer nem jegyzi meg a felhaszn\u00e1l\u00f3 v\u00e1laszt\u00e1s\u00e1t (ellent\u00e9tben mindk\u00e9t versenyt\u00e1rssal), ez\u00e9rt csak a felhaszn\u00e1l\u00f3i panelek l\u00e9trehoz\u00e1sa seg\u00edt.<\/p>\n<p>Viszont \u00f6r\u00f6mteli volt a Datadogban, hogy ezekr\u0151l a grafikonokr\u00f3l az \u00f6sszekapcsolt szerverek m\u00e9r\u00e9seire lehet \u00e1tt\u00e9rni, olvasni a napl\u00f3kat \u00e9s \u00e9rt\u00e9kelni a webkiszolg\u00e1l\u00f3 feldolgoz\u00f3inak terhel\u00e9s\u00e9t (Gunicorn). Minden majdnem ugyanolyan, mint a New Relic\u2026 \u00e9s t\u00f6bb (napl\u00f3k) is!<\/p>\n<p>A grafikonok alatt tranzakci\u00f3k tal\u00e1lhat\u00f3k, teljesen anal\u00f3g a New Relic-hez:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/3ab831fce57abe39e27bea12b6eb0f67.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA Datadogban a tranzakci\u00f3kat nevezz\u00fck <b>er\u0151forr\u00e1soknak<\/b>. A vez\u00e9rl\u0151ket a k\u00e9r\u00e9sek sz\u00e1ma alapj\u00e1n, az \u00e1tlagos v\u00e1laszid\u0151 szerint, vagy a kiv\u00e1lasztott id\u0151szak alatt elt\u00f6lt\u00f6tt maxim\u00e1lis id\u0151 szerint lehet rendezni. <\/p>\n<p>Az er\u0151forr\u00e1st ki lehet bontani, \u00e9s mindazt l\u00e1thatjuk, amit m\u00e1r a New Relic eset\u00e9ben figyelemmel k\u00eds\u00e9rt\u00fcnk:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/8005dfb15d878c6025d745982114cc02.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKaphat\u00f3k statisztik\u00e1k az er\u0151forr\u00e1sr\u00f3l, \u00f6sszes\u00edtett lista a bels\u0151 h\u00edv\u00e1sokr\u00f3l \u00e9s p\u00e9ld\u00e1k a k\u00e9r\u00e9sekre, amelyeket a v\u00e1laszk\u00f3d szerint lehet rendezni\u2026 E sorba rendez\u00e9s nagyon tetszett m\u00e9rn\u00f6keinknek.<\/p>\n<p>B\u00e1rmely er\u0151forr\u00e1s p\u00e9lda a Datadogban kib\u0151v\u00edthet\u0151 \u00e9s tanulm\u00e1nyozhat\u00f3:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/0e98c9c3924bd248d048b8587f19f922.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAzt \u00e1ll\u00edtj\u00e1k, hogy a k\u00e9r\u00e9s param\u00e9terei, az elt\u00f6lt\u00f6tt id\u0151 \u00f6sszefoglal\u00f3 diagramja minden komponensre \u00e9s egy v\u00edzes\u00e9s-diagram, amely a h\u00edv\u00e1sok sorrendj\u00e9t mutatja. Tov\u00e1bb\u00e1 el\u00e9rhet\u0151 a v\u00edzes\u00e9s-diagram f\u00e1ban val\u00f3 megjelen\u00edt\u00e9s\u00e9re is:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/c1d12e79d5c170bb88d9261267756fb8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00c9s a leg\u00e9rdekesebb \u2014 a terhel\u00e9s megtekint\u00e9se a hoszton, ahol a k\u00e9r\u00e9s v\u00e9grehajt\u00e1sra ker\u00fclt, \u00e9s a k\u00e9r\u00e9s napl\u00f3inak megn\u00e9z\u00e9se. <\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/849a299b05596eb6ba4906c7f3851de0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKiv\u00e1l\u00f3 integr\u00e1ci\u00f3!<\/p>\n<p>Felmer\u00fclhet a k\u00e9rd\u00e9s, hogy hol vannak a lapok <b>Adatb\u00e1zisok<\/b> \u00e9s <b>External Services<\/b>, mint a New Relicben. Itt nincsenek: mivel a Datadog sz\u00e9tszedi az alkalmaz\u00e1st komponensekre, a PostgreSQL egy <b>k\u00fcl\u00f6n szolg\u00e1ltat\u00e1snak<\/b>min\u0151s\u00fcl, a K\u00fcls\u0151 Szolg\u00e1ltat\u00e1sok helyett pedig az <code>aws.storage<\/code> (ugyanaz lesz, mint b\u00e1rmely m\u00e1s k\u00fcls\u0151 szolg\u00e1ltat\u00e1s eset\u00e9ben, amelyhez az alkalmaz\u00e1s hozz\u00e1f\u00e9rhet).<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/7a2585778478cdd7abab2e31c1858e68.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nItt van egy p\u00e9lda a <code>postgres<\/code>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/76710537a8c7f436d207ef52efb50214.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAlapvet\u0151en minden megvan, amit akartunk:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/152e882d964bd5c77aef69f9c140f350.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nL\u00e1that\u00f3, hogy melyik \u00abszolg\u00e1ltat\u00e1sb\u00f3l\u00bb j\u00f6tt a k\u00e9r\u00e9s. <\/p>\n<p>Nem \u00e1rt eml\u00e9keztetni, hogy a Datadog t\u00f6k\u00e9letesen integr\u00e1l\u00f3dik az NGINX Ingress-szel, \u00e9s lehet\u0151v\u00e9 teszi a teljes nyomk\u00f6vet\u00e9st a k\u00e9r\u00e9s be\u00e9rkez\u00e9s\u00e9t\u0151l a klaszterbe, valamint k\u00e9pes statsd metrik\u00e1k fogad\u00e1s\u00e1ra, logok \u00e9s hoszt metrik\u00e1k gy\u0171jt\u00e9s\u00e9re.<\/p>\n<p>A Datadog hatalmas el\u0151nye, hogy az \u00e1ra <i>megfelel<\/i> az infrastrukt\u00fara monitoroz\u00e1s\u00e1nak, APM-nek, Log Management-nek \u00e9s Synthetics tesztnek, azaz rugalmasan kiv\u00e1laszthat\u00f3 a terv.<\/p>\n<h3>2. Atatus<\/h3>\n<p>\nAz Atatus csapata azt \u00e1ll\u00edtja, hogy a szolg\u00e1ltat\u00e1suk \u201eilyen, mint a New Relic, de jobb\u201d. N\u00e9zz\u00fck meg, hogy ez val\u00f3ban \u00edgy van-e.<\/p>\n<p>A fejl\u00e9ct\u00e1bla val\u00f3ban hasonl\u00f3an n\u00e9z ki, de nem siker\u00fclt meghat\u00e1rozni az alkalmaz\u00e1sban haszn\u00e1lt Redis \u00e9s memcached inform\u00e1ci\u00f3kat.<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/1b2271bf779f93d4696b8f5fb90c548b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAz APM alap\u00e9rtelmez\u00e9s szerint az \u00f6sszes tranzakci\u00f3t kiv\u00e1lasztja, b\u00e1r \u00e1ltal\u00e1ban csak a Web sz\u00fcks\u00e9ges. Ahogyan a Datadogn\u00e1l, itt sincs lehet\u0151s\u00e9g, hogy az alap panelen a megfelel\u0151 szolg\u00e1ltat\u00e1sra l\u00e9pj\u00fcnk. R\u00e1ad\u00e1sul a tranzakci\u00f3k a hib\u00e1k ut\u00e1n szerepelnek a list\u00e1ban, ami az APM sz\u00e1m\u00e1ra nem annyira logikus.<\/p>\n<p>Az Atatus tranzakci\u00f3in\u00e1l minden maxim\u00e1lisan hasonl\u00edt a New Relichez. H\u00e1tr\u00e1ny, hogy az egyes vez\u00e9rl\u0151k dinamik\u00e1j\u00e1t azonnal nem l\u00e1tni. Ezt a vez\u00e9rl\u0151k t\u00e1bl\u00e1zat\u00e1ban kell keresni, a k\u00f6vetkez\u0151re rendezve: <b>Legt\u00f6bb id\u0151t fogyaszt\u00f3<\/b>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/57a1640dc1c99732e5d008051ea08f4a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA megszokott vez\u00e9rl\u0151list\u00e1nk el\u00e9rhet\u0151 a <b>Felfedez\u00e9s<\/b>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/9f77e8af1b19460a490f6d57f57c7902.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEz a t\u00e1bl\u00e1zat egy kicsit hasonl\u00edt a Datadogra, \u00e9s jobban tetszik a New Relichez hasonl\u00edt\u00f3 verzi\u00f3n\u00e1l.<\/p>\n<p>Minden tranzakci\u00f3 kib\u0151v\u00edthet\u0151, \u00e9s meg lehet n\u00e9zni, hogy mivel foglalkozott az alkalmaz\u00e1s:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/7a74af09bc90449557a797b7898aa827.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA panel is ink\u00e1bb a Datadogra hasonl\u00edt: l\u00e1that\u00f3 a k\u00e9relmek sz\u00e1ma, a h\u00edv\u00e1sok \u00e1ltal\u00e1nos k\u00e9pe. A fels\u0151 panel egy hib\u00e1kra vonatkoz\u00f3 lapot biztos\u00edt: <b>HTTP hib\u00e1k<\/b> \u00e9s lass\u00fa lek\u00e9r\u00e9sek p\u00e9ld\u00e1i <b>Munkamenet nyomoz\u00e1sok<\/b>:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/d528b528b14e3e0ba0550296a07d27db.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nHa bel\u00e9p\u00fcnk egy tranzakci\u00f3ba, l\u00e1thatjuk a nyomoz\u00e1s p\u00e9ld\u00e1j\u00e1t, kaphatunk egy k\u00e9r\u00e9st az adatb\u00e1zishoz, \u00e9s megn\u00e9zhetj\u00fck a k\u00e9relem fejl\u00e9c\u00e9t. Minden hasonl\u00edt a New Relichez:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/297cee55b9b32383c607eb6860ffe20e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nT\u00e9nyleg, az Atatus r\u00e9szletes nyomoz\u00e1sokat mutatott \u2014 a New Relic tipikus h\u00edv\u00e1sainak \u00f6sszevon\u00e1sa n\u00e9lk\u00fcl a reminder-blokkba:<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/eb40bb051d7a5435072b96cd659bfebf.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/0232a197ee2d28489fcf86c4921f7080.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAzonban itt hi\u00e1nyzik egy sz\u0171r\u0151, amely (mint a New Relicben) kisz\u0171rn\u00e9 a t\u00fal gyors h\u00edv\u00e1sokat (&lt;5ms). M\u00e1sr\u00e9szr\u0151l a tranzakci\u00f3 v\u00e9gs\u0151 v\u00e1lasz\u00e1nak (sikeres vagy hiba) megjelen\u00edt\u00e9se tetszett.<\/p>\n<p>Panel <b>Adatb\u00e1zisok<\/b> seg\u00edt tanulm\u00e1nyozni a k\u00fcls\u0151 adatb\u00e1zisokhoz int\u00e9zett k\u00e9r\u00e9seket, amelyeket az alkalmaz\u00e1s v\u00e9gez. Eml\u00e9keztetem, hogy az Atatus csak a PostgreSQL-t \u00e9s a MySQL-t tal\u00e1lta, b\u00e1r a projektben m\u00e9g a Redis \u00e9s a memcached is haszn\u00e1latban van.<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/01bd3b1f4e5f25bb86e9aa79a22588c0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA lek\u00e9rdez\u00e9sek a megszokott krit\u00e9riumok alapj\u00e1n vannak rendezve: a h\u00edv\u00e1sok gyakoris\u00e1ga, a v\u00e1laszid\u0151k \u00e1tlaga \u00e9s \u00edgy tov\u00e1bb. K\u00fcl\u00f6n\u00f6sen megemeln\u00e9m a leglassabb lek\u00e9rdez\u00e9sek f\u00fcl\u00e9t - ez nagyon hasznos. S\u0151t, az ezen a lapon tal\u00e1lhat\u00f3 adatok a PostgreSQL eset\u00e9ben megegyeznek a b\u0151v\u00edtm\u00e9ny adataival. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.postgresql.org\/docs\/11\/pgstatstatements.html\">pg_stat_statements<\/a><\/noindex> \u2014 kiv\u00e1l\u00f3 eredm\u00e9ny!<\/p>\n<p><img decoding=\"async\" alt=\"Nem csak a New Relic: n\u00e9z\u0151pont a Datadogr\u00f3l \u00e9s az Atatusr\u00f3l\" src=\"\/wp-content\/uploads\/2019\/09\/128b3eb7ac1e636e47d4a66a292ca872.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nF\u00fcle <b>K\u00fcls\u0151 Lek\u00e9rdez\u00e9sek<\/b> teljesen azonos a Databases-el.<\/p>\n<h2>K\u00f6vetkeztet\u00e9sek<\/h2>\n<p>\nA bemutatott k\u00e9t eszk\u00f6z j\u00f3 teljes\u00edtm\u00e9nyt ny\u00fajtott az APM szerep\u00e9ben. B\u00e1rmelyik\u00fck k\u00e9pes a sz\u00fcks\u00e9ges minimumot megadni. R\u00f6viden \u00f6sszefoglalva a benyom\u00e1sainkat:<\/p>\n<h3>Datadog<\/h3>\n<p>\nEl\u0151ny\u00f6k:<\/p>\n<ul>\n<li> k\u00e9nyelmes \u00e1rk\u00e9pz\u00e9si strukt\u00fara (az APM 31 USD\/h\u00f3nap a hoszt\u00e9rt);<\/li>\n<li> kiv\u00e1l\u00f3an teljes\u00edtett Python eset\u00e9n;<\/li>\n<li> OpenTracing integr\u00e1ci\u00f3s lehet\u0151s\u00e9g<\/li>\n<li> Kubernetes integr\u00e1ci\u00f3;<\/li>\n<li> NGINX Ingress integr\u00e1ci\u00f3.<\/li>\n<\/ul>\n<p>\nH\u00e1tr\u00e1nyok:<\/p>\n<ul>\n<li> az egyetlen APM, amely a modul (predis) hib\u00e1ja miatt el\u00e9rhetetlenn\u00e9 tette az alkalmaz\u00e1st;<\/li>\n<li> gyenge PHP automatikus eszk\u00f6z\u00f6l\u00e9s;<\/li>\n<li> r\u00e9szben furcsa a szolg\u00e1ltat\u00e1sok \u00e9s feladatuk meghat\u00e1roz\u00e1sa.<\/li>\n<\/ul>\n<p><\/p>\n<h3>Atatus<\/h3>\n<p>\nEl\u0151ny\u00f6k:<\/p>\n<ul>\n<li> m\u00e9ly PHP eszk\u00f6z\u00f6l\u00e9s;<\/li>\n<li> a New Relic-hez hasonl\u00f3 felhaszn\u00e1l\u00f3i fel\u00fclet.<\/li>\n<\/ul>\n<p>\nH\u00e1tr\u00e1nyok:<\/p>\n<ul>\n<li> nem m\u0171k\u00f6dik r\u00e9gi oper\u00e1ci\u00f3s rendszereken (Ubuntu 12.05, CentOS 5);<\/li>\n<li> gyenge automatikus eszk\u00f6z\u00f6l\u00e9s;<\/li>\n<li> csak k\u00e9t programoz\u00e1si nyelvet t\u00e1mogat (Node.js \u00e9s PHP);<\/li>\n<li> lass\u00fa fel\u00fclet.<\/li>\n<\/ul>\n<p>\nFigyelembe v\u00e9ve az Atatus havi 69 USD-os \u00e1rat szerverenk\u00e9nt, ink\u00e1bb a Datadog-ot haszn\u00e1ln\u00e1nk, amely kiv\u00e1l\u00f3an integr\u00e1l\u00f3dik a mi ig\u00e9nyeinkhez (webalkalmaz\u00e1sok K8s alatt) \u00e9s sz\u00e1mos hasznos funkci\u00f3t k\u00edn\u00e1l.<\/p>\n<h2>P.S.<\/h2>\n<p>\nOlvasson tov\u00e1bbi inform\u00e1ci\u00f3kat a blogunkban:<\/p>\n<ul>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/462707\/\">Kubernetes 1.14: a legfontosabb \u00faj\u00edt\u00e1sok \u00e1ttekint\u00e9se<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/436112\/\">A kubectl-debug b\u0151v\u00edtm\u00e9ny a Kubernetes podokban t\u00f6rt\u00e9n\u0151 debugol\u00e1shoz<\/a><\/noindex>\u00bb;<\/li>\n<li> \u00ab<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/424531\/\">Mikroszolg\u00e1ltat\u00e1sok: a m\u00e9ret sz\u00e1m\u00edt, m\u00e9g ha Kubernetesed is van<\/a><\/noindex>\u00bb.<\/li>\n<\/ul>\n<p>Forr\u00e1s: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/flant\/blog\/465177\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u0441\u0440\u0435\u0434\u0435 SRE-\/DevOps-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435 \u0443\u0434\u0438\u0432\u0438\u0448\u044c, \u0447\u0442\u043e \u043e\u0434\u043d\u0430\u0436\u0434\u044b \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043b\u0438\u0435\u043d\u0442 (\u0438\u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430) \u0438 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442, \u0447\u0442\u043e \u00ab\u0432\u0441\u0451 \u043f\u0440\u043e\u043f\u0430\u043b\u043e\u00bb: \u0441\u0430\u0439\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043e\u043f\u043b\u0430\u0442\u044b \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442, \u0436\u0438\u0437\u043d\u044c \u2014 \u0442\u043b\u0435\u043d\u2026 \u041a\u0430\u043a \u0431\u044b \u043d\u0438 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u043f\u043e\u043c\u043e\u0447\u044c \u0432 \u0442\u0430\u043a\u043e\u0439 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0431\u0435\u0437 \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0438 \u043f\u043e\u043d\u044f\u0442\u043d\u043e\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 \u0431\u044b\u0432\u0430\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u043e. \u0417\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441\u043a\u0440\u044b\u0442\u0430 \u0432 \u043a\u043e\u0434\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u2014 \u043d\u0443\u0436\u043d\u043e \u043b\u0438\u0448\u044c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":28443,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-37901","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u0441\u0440\u0435\u0434\u0435 SRE-\/DevOps-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"hu_HU\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041d\u0435 New Relic\u2019\u043e\u043c \u043e\u0434\u043d\u0438\u043c: \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 Datadog \u0438 Atatus | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u0441\u0440\u0435\u0434\u0435 SRE-\/DevOps-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:20:26+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:20:26+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Nem csak a New Relic: egy pillant\u00e1s a Datadogra \u00e9s az Atatusra | ProHoster","description":"SRE-\/DevOps m\u00e9rn\u00f6k\u00f6k k\u00f6r\u00e9ben senki sincs.","canonical_url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"hu_HU","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041d\u0435 New Relic\u2019\u043e\u043c \u043e\u0434\u043d\u0438\u043c: \u0432\u0437\u0433\u043b\u044f\u0434 \u043d\u0430 Datadog \u0438 Atatus | ProHoster","og:description":"\u0412 \u0441\u0440\u0435\u0434\u0435 SRE-\/DevOps-\u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435.","og:url":"https:\/\/prohoster.info\/hu\/blog\/administrirovanie\/ne-new-relic-om-odnim-vzglyad-na-datadog-i-atatus","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:20:26+00:00","article:modified_time":"2019-10-31T19:20:26+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37901","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 19:41:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 18:39:28","updated":"2026-01-23 19:41:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/37901","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/comments?post=37901"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/posts\/37901\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media\/28443"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/media?parent=37901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/categories?post=37901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/hu\/wp-json\/wp\/v2\/tags?post=37901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}