New Relic – výkon serverů a aplikací pod kontrolou
New Relic jsme zkoušeli využít pro monitoring serverů, optimalizaci výkonu eshopů Magento 1.x a report chyb aplikací již před mnoha lety. Bohužel, cenová politika byla nepřehledná a nástroj pro nás vzhledem k ceně zůstal po dlouhou dobu nedostupný. New Relic v roce 2020 změnil ceny služeb a zpřístupnil tak plejádu nástrojů pro monitoring serverů, procesů a aplikací široké veřejnosti. Po registraci máte možnost bezplatně sledovat servery a aplikace až do limitu 100 GB přenesených dat. Každý další GB pak stojí 25 centů (USD).
New Relic detailně sleduje a přehledně, v podobě tabulek a grafů, zobrazuje informace o stavu serverů, navštívených stránkách, pomalých SQL dotazech, chybách v aplikacích (včetně trasování). Nádavkem můžete definovat upozornění na kritické hodnoty a spouštět syntetické testy v simulovaném prohlížeči pro pravidelné monitorování chodu aplikací.
Instalace New Relic
V první řadě nainstalujte New Relic infrastructure agenta na server. Postup je jednoduchý, služba má připraveno několik instalátorů. Stačí zvolit vhodnou platformu a následovat pár jednoduchých kroků.
Pokud vše proběhne bez problému, získáte během pár minut přehled o zatížení serveru a služba začne sbírat informace ze systémových logů.
Dejte si pozor aby v souboru /etc/newrelic-infra.yml
bylo nastaveno enable_process_metrics: false
, pokud nechcete sledovat podrobné informace o každém běžícím procesů. Procesy generují obrovské množství dat, a to může znamenat vysoké náklady na provoz.
Instalace integrací – Apache, MySQL, Redis
Zajímají Vás podrobnější údaje o webovém a databázovém serveru a dalších službách? New Relic nabízí velký počet rozšíření pro sledování rozšířených parametrů dalších služeb.
Po instalaci agenta máte dostupné integrace na dosah – ve správci instalačních balíčků. V Centosu tak snadno získáte jejich seznam:
yum search nri-
Sledování provozu webových stránek Apache
Pokud chcete znát detaily chodu webového serveru, nainstalujte integraci nri-apache
yum install nri-apache -y
Po instalaci integraci aktivujte změnou názvu konfigurační souboru.
cd /etc/newrelic-infra/integrations.d/ && mv apache-config.yml.sample apache-config.yml
Modul status
Další data o Apache serveru získáte po instalaci modulu status. Ověřte zda je v Apachi aktivovaný:
cat /etc/httpd/conf.modules.d/00-base.conf | grep status_module
# LoadModule status_module modules/mod_status.so
Výstupem příkazu by měl být výše uvedený řádek. Pokud není, přidejte řádek do /etc/httpd/conf/httpd.conf
nebo /etc/httpd/conf.modules.d/00-base.conf
.
V souboru /etc/httpd/conf/httpd.conf
nebo /etc/httpd/sites-enabled/localhost.conf
zpřístupněte statistiky serveru na adrese http://127.0.0.1/server-status
<VirtualHost *:80 *:443>
ServerAdmin webmaster@localhost
ServerName localhost
ServerAlias 127.0.0.1
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1 ::1
</Location>
</VirtualHost>
Po restartu Apache systemctl restart httpd
byste měli vidět statistiky lynx "http://127.0.0.1/server-status"
Nyní restartujte New Relic Agenta
systemctl restart newrelic-infra
Informace o provozu Apache serveru pak můžete sledovat pod záložkou Infrastructure > Third party services > Apache.
Sledování provozu serveru MySQL
Instalace MySQL integrace vyžaduje založení uživatele s přístupem k proměnným databáze. Nainstalujte integraci, přesuňte konfigurační soubor.
yum install nri-mysql -y
cd /etc/newrelic-infra/integrations.d/ && mv mysql-config.yml.sample mysql-config.yml
Nyní postupujte dle návodu a založte pro New Relic MySQL uživatele s potřebnými oprávněními. Nakonec agenta restartujte.
systemctl restart newrelic-infra
Informace o provozu MySQL serveru pak můžete sledovat pod záložkou Infrastructure > Third party services > MySQL.
Redis
Instalace Redis integrace je velmi jednoduchá. Stačí nainstalovat balíček, aktivovat modul změnou názvu konfiguračního souboru a restartovat New Relic agenta. Pokud máte Redis na nestandardním portu nebo jiném serveru, upravte konfiguraci.
yum install nri-redis -y
cd /etc/newrelic-infra/integrations.d/ && mv redis-config.yml.sample redis-config.yml
cat /etc/redis.conf | grep -i "^port"
Pokud je ve výstupu port 6379 pak restartujte agenta systemctl restart newrelic-infra
. V opačném případě změňte číslo portu v souboru redis-config.yml
Informace o provozu MySQL serveru pak můžete sledovat pod záložkou Infrastructure > Third party services > Redis.
Application Monitoring
Instalací application monitoringu Vás provede průvodce po kliknutí na záložku APM a tlačítko + Add more data
Synthetics
Syntetické testy umožňují opakovaně procházet stránky skriptovaným prohlížečem. Díky němu můžete kontrolovat funkčnost stránek, měřit rychlost odezvy ap. Skripty lze snadno zakládat pomocí několika kroků v průvodci. Když potřebujete zvládnout větší operace, máte k dispozici editor skriptů s plnou kontrolu nad stránkou. Časový limit běhu jednoho skriptu je 180 sekund, měsíčně tak můžete spustit milióny syntetických testů. Více o syntetickém testování New Relic.
Závěrem
Monitorování výkonu a sledování chyb Vám pomůže vyladit servery a aplikace pro maximální funkčnost a výkon. Získáte přehled o tom, co se na serveru děje, kde máte rezervy a kde je naopak potřeba optimalizovat. Upozornění a syntetické testy New Relic Vás včas informují o aktuálních problémech. Doporučujeme New Relic všem správcům serverů.