Ubuntuでmod_statusを使用してApacheのパフォーマンスを監視する方法


Apacheログファイルをいつでも確認して、アクティブな接続などのWebサーバーに関する情報を取得できますが、mod_statusモジュールを有効にすると、Webサーバーのパフォーマンスの非常に詳細な概要を取得できます。

mod_statusモジュールはApacheモジュールであり、ユーザーがプレーンHTMLページでApacheのパフォーマンスに関する非常に詳細な情報にアクセスできるようにします。実際、Apacheは、一般に公開するための独自のサーバーステータスページを維持しています。

以下のアドレスにアクセスすると、Apache(Ubuntu)のステータスを表示できます。

Apache mod_statusを使用すると、次のような情報を含むプレーンなHTMLページを提供できます。

  • Server version
  • Current day and time in UTC
  • Server Uptime
  • Server load
  • Total traffic
  • Total number of incoming requests
  • The webserver’s CPU usage
  • PIDs with the respective clients and so much more.

それでは、ギアをシフトして、ApacheWebサーバーに関する最新の統計を取得する方法を見てみましょう。

Operating System: 	Ubuntu 20.04
Application:            Apache HTTP server
Version:                2.4.41
IP address:             34.123.9.111
Document root:          /var/www/html

ApacheUbuntuでmod_statusを有効にする

デフォルトでは、Apacheはmod_statusモジュールがすでに有効になっている状態で出荷されます。これを確認するには、次のようにlsコマンドを実行してmods_enabledディレクトリを確認します。

$ ls /etc/apache2/mods-enabled

status.conf ファイルと status.load ファイルが存在することを確認します。そうでない場合は、次のコマンドを呼び出してmod_statusモジュールを有効にする必要があります。

$ sudo /usr/sbin/a2enmod status

ApacheUbuntuでmod_statusを構成します

前に述べたように、mod_statusはすでに有効になっています。ただし、サーバーステータスページにアクセスするには、追加の調整が必要です。これを行うには、 status.conf ファイルを変更する必要があります。

$ sudo vim /etc/apache2/mods-enabled/status.conf 

サーバーにアクセスするマシンのIPアドレスを反映するようにRequireipディレクティブを設定します。

変更を保存し、Apacheを再起動して変更を有効にし、次のようにステータスを確認します。

$ sudo systemctl restart apache2

次に、Apacheのステータスを確認し、稼働していることを確認します。

$ sudo systemctl status apache2

その後、図のようにWebサーバーのURLを参照します。

http://server-ip/server-status

示されているように、Apacheの情報のホストと統計の配列を表示するステータスHTMLページが表示されます。

注:たとえば5秒など、指定された時間間隔ごとにページを更新するには、URLの最後に“?refresh u003d 5” を追加します。

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

これにより、以前のプレーンな静的HTMLページよりも、サーバーのパフォーマンスの監視能力が向上します。

mod_statusモジュールについてはこれですべてです。詳細については、Tecmintにご注目ください。