NFsec Logo

Statystyki obciążenia serwera Apache w czasie rzeczywistym

03/07/2011 w Administracja Brak komentarzy.  (artykuł nr 321, ilość słów: 546)

Z

e względu na cenną wydajność bardzo rzadko w serwerze Apache włącza się takie moduły jak status w dodatku z włączoną opcją ExtendedStatus. W jaki, więc sposób sprawdzić w czasie rzeczywistym obciążenie naszego serwera dla wybranego wirtualnego hosta lub całej maszyny? Zakładając, że mamy jeszcze mały zapas związany z operacjami I/O na dysku możemy wykorzystać do tego takie narzędzia jak ApacheTop lub GoAccess.

ApacheTop monitoruje pliki dziennika generowane przez serwer Apache (w standardowym [CLF] lub łączonym [XLF/ELF] formacie) generując w czasie rzeczywistym bardziej przyjazne dla administratora informacje – tak jak robi to polecenie top dla systemu Linux. Uruchomienie ApacheTop jest bardzo podobne do przeglądania logów w czasie rzeczywistym za pomocą polecenia tail np. tail -f /var/log/messages – tylko w tym przypadku podajemy jeden lub więcej wirtualnych hostów obsługiwanych przez nasz serwer WWW:

apachetop -f /var/www/vhosts/nfsec/access.log
last hit: 20:25:06         atop runtime:  0 days, 00:11:55             20:25:08
All:        71679 reqs ( 101.0/sec)        459.6M (  662.8K/sec)    6723.1B/req
2xx:   71347 (99.5%) 3xx:     332 ( 0.5%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)
R ( 30s):    2170 reqs (  72.3/sec)         13.5M (  462.2K/sec)    6542.9B/req
2xx:    2169 (100.0%) 3xx:       1 ( 0.0%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

 REQS REQ/S    KB KB/S URL
   35  1.25  79.1  2.8 */
   35  1.25 475.4 17.0 /feed/

Możemy również użyć np. opcji -H 10 lub -T 120 w celu permanentnego (top 10) lub czasowego (2 minuty) zapamiętania TOP listy odwiedzanych adresów URL. Gwiazdka * przy liście top oznacza aktualne położenie kursora. W celu sprawdzenia szczegółów wywołania wybranego adresu URL wystarczy przycisnąć prawy klawisz strzałki (lewy, jeśli chcemy powrócić do ekranu głównego). Możemy również filtrować dane na wyjściu w przypadku, gdy zbyt wiele informacji pojawia nam się na ekranie. Służy do tego klawisz f po wciśnięciu, którego pojawią nam się możliwe opcje dodania, wyczyszczenia lub wyswietlenia aktywnych filtrów. Przy używaniu tego narzędzie należy pamiętać, aby monitoring serwera nie był prowadzony ze zbyt dużymi ramami czasowymi i zbyt dużą ilością trafień (opcje H i T), ponieważ w ten sposób będziemy używać zbyt wiele zasobów procesora i pamięci wpływając niekorzystnie na całe obciążenie naszej maszyny.

Bardzo podobną funkcje oferuje nam narzędzie o nazwie GoAccess – różnica polega na tym, że GoAccess parsuje cały plik dziennika i uzupełnia go na bieżąco, a ApacheTop wykonuje to od momentu uruchomienia. W dodatku GoAccess oferuje nam możliwość prezentowania większej ilości danych, takich jak:

  • Ogólną ilość żądań, wykorzystana przepustowość,
  • Top odwiedzający,
  • Żądane statyczne pliki (obrazki, js’y, css’y, swf’y itp.),
  • Adresy i strony odsyłające,
  • Systemy operacyjne, przeglądarki, roboty, hosty (+revDNS) i adresy IP,
  • Kody odpowiedzi HTTP

Jego odpalenie jest analogiczne do ApacheTop:

goaccess -f /var/www/vhosts/nfsec/access.log

Więcej informacji: FAQ GoAccess, man apachetop

Kategorie K a t e g o r i e : Administracja

Tagi T a g i : , , , , , , ,

Komentowanie tego wpisu jest zablokowane.