Apache web serweriniň ýüküne we sahypa statistikasyna nädip gözegçilik etmeli


Bu makalada, CentOS, RHEL we Fedora ýaly Linux paýlamalaryňyzda mod_status modulyny ulanyp, Apache web serweriniň ýüklerine we haýyşlaryna nädip gözegçilik etmelidigini öwrenersiňiz.

Mod_status näme?

mod_status, web brauzeri arkaly girip boljak HTML interfeýsi bilen web serweriniň ýüküni we häzirki httpd baglanyşyklaryny gözegçilikde saklamaga kömek edýän Apache modulydyr.

Apache-iň mod_statusy, web serweriniň häzirki statistikasy baradaky maglumatlary öz içine alýan ýönekeý HTML sahypasyny görkezýär.

  • Gelýän haýyşlaryň umumy sany
  • Baýtlaryň we san serweriniň umumy sany
  • Webserver-iň CPU ulanylyşy
  • Serwer ýükleri
  • Serweriň iş wagty
  • Jemi traffik
  • Işsizleriň umumy sany
  • Degişli müşderiler we başgalar bilen PID-ler.

Adaty Apache Taslamasy, serwer statistika sahypasyny köpçülige açdy. Işli web sahypasynyň status sahypasyny görkezmek üçin girip görüň.

  • https://status.apache.org/

Mod_status hakda käbir amaly mysallar we ekran suratlary bilen has giňişleýin öwrenmek üçin bu makala üçin aşakdaky synag gurşawyny ulandyk.

  1. Operasiýa ulgamy - CentOS 8/7
  2. Programma - Apache web serweri
  3. IP salgysy - 5.175.142.66
  4. DocumentRoot -/var/www/html
  5. Apache konfigurasiýa faýly - /etc/httpd/conf/httpd.conf
  6. Bellenen HTTP porty - 80 TCP
  7. Synag konfigurasiýa sazlamalary - httpd -t

Bu gollanmanyň deslapky şertleri, esasy Apache serwerini nädip gurmalydygyny we sazlamalydygyny eýýäm bilmelisiňiz. Apache-ni nädip sazlamalydygyny bilmeseňiz, öz Apache web serweriňizi gurmaga kömek edip biljek indiki makalany okaň.

  1. Öz web sahypaňyzy dörediň we Linux-da web sahypasyny ýerleşdiriň

Apache-de mod_statusy nädip işletmeli

Adaty Apache gurnamasy mod_status açyk. Notok bolsa, ony Apache konfigurasiýa faýlynda işlediň.

 vi /etc/httpd/conf/httpd.conf

\ Mod_status sözüni gözläň ýa-da bir setir tapýançaňyz aşak aýlaň.

#LoadModule status_module modules/mod_status.so

“LoadModule” -iň başynda “#” nyşan görseňiz, mod_status ýapyk diýmekdir. Mod_status-y işletmek üçin # -i aýyryň.

LoadModule status_module modules/mod_status.so

Indi\Locationerleşiş sözüni gözläň ýa-da mod_status üçin aşakdaky ýaly bolmaly bölüm tapýançaňyz aşak aýlaň.

# Allow server status reports generated by mod_status,
# with the URL of http://servername/server-status
# Change the ".example.com" to match your domain to enable.
#
#<Location /server-status>
#    SetHandler server-status
#    Order deny,allow
#    Deny from all
#    Allow from .example.com
#</Location>

Aboveokardaky bölümde, Locationerleşiş direktiwasy, SetHandler üçin setirleri we islegleriňize görä katalog çäklendirmelerini bölüň. Mysal üçin, “Allow Allow”, “inkär etmek” buýrugy bilen ýönekeý saklaýaryn we hemmeler üçin rugsat berilýär.

<Location /server-status>
   SetHandler server-status
   Order allow,deny
   Deny from all
   Allow from all 
</Location>

Bellik: aboveokardaky konfigurasiýa adaty Apache web sahypasy (ýekeje web sahypasy) üçin deslapky konfigurasiýa. Bir ýa-da birnäçe Apache Wirtual Host döreden bolsaňyz, ýokardaky konfigurasiýa işlemez.

Şeýlelik bilen, Apache-de düzen islendik domeniňiz üçin her wirtual host üçin birmeňzeş konfigurasiýany kesgitlemeli. Mysal üçin, mod_status üçin wirtual host konfigurasiýasy şuňa meňzeýär.

<VirtualHost *:80>
    ServerAdmin [email 
    DocumentRoot /var/www/html/example.com
    ServerName example.com
    ErrorLog logs/example.com-error_log
    CustomLog logs/example.com-access_log common
<Location /server-status>
   SetHandler server-status
   Order allow,deny
   Deny from all
   Allow from example.com 
</Location>
</VirtualHost>

“GiňeldilenStatus” sazlamalary, CPU ulanylyşy, sekuntda haýyş, umumy traffik we ş.m. ýaly statistika sahypasyna has köp maglumat goşýar. Ony işletmek üçin şol bir httpd.conf faýly redaktirläň we\Giňeldilen sözüni gözläň we setirden çykma we ExtendedStatus direktiwasy üçin\Işlediň statusyny düzüň.

# ExtendedStatus controls whether Apache will generate "full" status
# information (ExtendedStatus On) or just basic information (ExtendedStatus
# Off) when the "server-status" handler is called. The default is Off.
#
ExtendedStatus On

Indi Apache serwer-status sahypasyny dogry açandygyňyzy we sazlandygyňyzy anyklaň. Şeýle hem aşakdaky buýrugy ulanyp, httpd.conf konfigurasiýasyndaky ýalňyşlyklary barlap bilersiňiz.

 httpd -t

Syntax OK

Sintaksis gowy bolansoň, httpd hyzmatyny täzeden açyp bilersiňiz.

 service httpd restart
OR
 systemctl restart httpd
Stopping httpd:                                          [  OK  ]
Starting httpd:                                          [  OK  ]

Apache status sahypasyna domen adyňyz arkaly aşakdaky URL-de “/ server-status” bilen girip bilersiňiz.

http://serveripaddress/server-status

OR

http://serev-hostname/server-status

“ExtendedStatus” açyk bolan indiki sahypa meňzeş bir zady görersiňiz.

Aboveokardaky suratda, serweriň iş wagty barada ähli maglumatlary görkezýän HTML interfeýsiniň, Id-e degişli müşderisi, girjek bolýan sahypasy bilen işleýändigini görüp bilersiňiz.

Şeýle hem, ýagdaýy has gowy düşünmäge kömek edýän ýagdaýy görkezmek üçin ulanylýan ähli gysgaltmalaryň manysyny we ulanylyşyny görkezýär.

Täzelenen statistiki maglumatlary görmek üçin sahypany her gezek sekuntda (5 sekunt diýiň) täzeläp bilersiňiz. Awtomatlaşdyrylan täzelenmäni bellemek üçin URL-iň soňuna “? Refresh=N” goşmagyňyzy haýyş edýäris. N ýerde sahypaňyzyň täzelenmegini isleýän sekunt sany bilen çalşyp bolar.

http://serveripaddress/server-status/?refresh=5

Şeýle hem, baglanyşyk ýa-da linx diýilýän ýörite buýruk setiri brauzerlerini ulanyp, buýruk setiri interfeýsinden Apache status sahypasyny görüp bilersiňiz. Olary aşakda görkezilişi ýaly yum atly deslapky paket dolandyryjysynyň kömegi bilen gurup bilersiňiz.

# yum install links

OR

# yum install lynx

Bir gezek gurnanyňyzdan soň, aşakdaky buýrugy ulanyp, terminalyňyzda şol bir statistikany alyp bilersiňiz.

 links http://serveripaddress/server-status
OR
 lynx http://serveripaddress/server-status
OR
  /etc/init.d/httpd fullstatus
                     Apache Server Status for localhost
   Server Version: Apache/2.2.15 (Unix) DAV/2 PHP/5.3.3
   Server Built: Aug 13 2013 17:29:28

   --------------------------------------------------------------------------
   Current Time: Tuesday, 14-Jan-2014 04:34:13 EST
   Restart Time: Tuesday, 14-Jan-2014 00:33:05 EST
   Parent Server Generation: 0
   Server uptime: 4 hours 1 minute 7 seconds
   Total accesses: 2748 - Total Traffic: 9.6 MB
   CPU Usage: u.9 s1.06 cu0 cs0 - .0135% CPU load
   .19 requests/sec - 695 B/second - 3658 B/request
   1 requests currently being processed, 4 idle workers
 .__.__W...

   Scoreboard Key:
   "_" Waiting for Connection, "S" Starting up, "R" Reading Request,
   "W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
   "C" Closing connection, "L" Logging, "G" Gracefully finishing,
   "I" Idle cleanup of a worker, "." Open slot with no current process

Srv PID     Acc    M CPU   SS  Req Conn Child Slot     Client        VHost             Request
0-0 -    0/0/428   . 0.30 5572 0   0.0  0.00  1.34 127.0.0.1      5.175.142.66 OPTIONS * HTTP/1.0
                                                                               GET
1-0 5606 0/639/639 _ 0.46 4    0   0.0  2.18  2.18 115.113.134.14 5.175.142.66 /server-status?refresh=5
                                                                               HTTP/1.1
                                                                               GET
2-0 5607 0/603/603 _ 0.43 0    0   0.0  2.09  2.09 115.113.134.14 5.175.142.66 /server-status?refresh=5
                                                                               HTTP/1.1
3-0 -    0/0/337   . 0.23 5573 0   0.0  0.00  1.09 127.0.0.1      5.175.142.66 OPTIONS * HTTP/1.0
                                                                               GET
4-0 5701 0/317/317 _ 0.23 9    0   0.0  1.21  1.21 115.113.134.14 5.175.142.66 /server-status?refresh=5
                                                                               HTTP/1.1
                                                                               GET
5-0 5708 0/212/213 _ 0.15 6    0   0.0  0.85  0.85 115.113.134.14 5.175.142.66 /server-status?refresh=5
                                                                               HTTP/1.1
6-0 5709 0/210/210 W 0.16 0    0   0.0  0.84  0.84 127.0.0.1      5.175.142.66 GET /server-status
                                                                               HTTP/1.1
7-0 -    0/0/1     . 0.00 5574 0   0.0  0.00  0.00 127.0.0.1      5.175.142.66 OPTIONS * HTTP/1.0

   --------------------------------------------------------------------------

    Srv  Child Server number - generation
    PID  OS process ID
    Acc  Number of accesses this connection / this child / this slot
     M   Mode of operation
    CPU  CPU usage, number of seconds
    SS   Seconds since the beginning of the most recent request
    Req  Milliseconds required to process most recent request
   Conn  Kilobytes transferred this connection
   Child Megabytes transferred this child
   Slot  Total megabytes transferred this slot
   --------------------------------------------------------------------------

    Apache/2.2.15 (CentOS) Server at localhost Port 80

Netije

Apache-iň mod_status moduly, web serweriniň işiniň ýerine ýetirilişine gözegçilik etmek üçin örän amatly gözegçilik guraly bolup, meseleleriň özüni görkezip bilýär. Has giňişleýin maglumat üçin has üstünlikli web serweri dolandyryjysy bolmaga kömek edip biljek ýagdaý sahypasyny okaň.

  1. Apache mod_status Baş sahypa

Bularyň hemmesi häzirlikçe mod_status üçin, geljekki okuw sapaklarynda Apache hakda has köp hileler we maslahatlar bereris. Şondan soň Geeky galyp, linux-console.net sahypasyna giriň we gymmatly teswirleriňizi goşmagy ýatdan çykarmaň.