カテゴリー別アーカイブ: Growthforcast




Apachetopコマンドを利用して、TOPコマンドのようにApacheの状態をリアルタイムで確認、ソートまでしてみる手順




投稿日:

Apachetopというコマンドを知ったのでメモしておきます。

このコマンドは、Apacheのログを取り込むことで、top表示でリアルタイムにApacheの状態を把握することが出来ます。では、インストールから利用の手順までを追っていきます。最近はfluentd等を利用してログをリアルタイムに集積することによる監視や解析も流行っていますが、Apachetopコマンドで簡易的に同じ事を実現できそうです。

【インストール】

OSに合わせてダウンロードします。例えば以下。
http://pkgs.org/download/apachetop

今回はcentOS5の環境で EPELからです。

# cd /usr/local/src/
# wget http://dl.fedoraproject.org/pub/epel/5/x86_64/apachetop-0.12.6-6.el5.x86_64.rpm
# rpm -ivh apachetop-0.12.6-6.el5.x86_64.rpm


【実行】

-fでファイルを指定します。

# /usr/bin/apachetop -f /var/log/httpd/access_log


【表示】

TOPコマンドでの表示のように表示がされます。

・直前の30秒の分がデフォルトで読み込まれて、それが5秒毎に更新。
・表示をソート順や特定状態などをフィルター掛けて表示可能。

last hit: 07:01:33         atop runtime:  0 days, 00:01:08             07:01:55
All:           60 reqs (   2.4/sec)        252.9K (   10.1K/sec)    4315.8B/req
2xx:	  10 (16.7%) 3xx:      50 (83.3%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)
R ( 25s):      60 reqs (   2.4/sec)        252.9K (   10.1K/sec)    4315.8B/req
2xx:	  10 (16.7%) 3xx:      50 (83.3%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

 REQS REQ/S    KB KB/S URL
    1  0.04  17.8  0.7*/
    1  0.04   0.0  0.0 /css/top/common.css
    1  0.04   0.0  0.0 /js/jquery/jquery.js
    1  0.04   0.0  0.0 /js/jquery/rollover.js
    1  0.04   0.0  0.0 /js/jquery/lazyload.js

項目の意味は以下の通り。

REQS : あるURLへの同時接続リクエスト数
REQ/S : 1秒ごとに捌かれる同時接続利ウエスト数
KB  :クライアントから送られたデータのサイズ
KB/S :1秒ごとに送られたデータサイズ

実行中に「?」を押すと以下のヘルプが見れます。

ApacheTop version 0.12.6, Copyright (c) 2003-2004, Chris Elsworth

ONE-TOUCH COMMANDS
d : switch item display between urls/referrers/hosts
n : switch numbers display between hits & bytes or return codes
h or ? : this help window
p : (un)pause display (freeze updates)
q : quit ApacheTop
up/down : move marker asterisk up/down
right/left : enter/exit detailed subdisplay mode

SUBMENUS:
s: SORT BY: [the appropriate menu will appear for your display]
r) requests R) reqs/sec b) bytes B) bytes/sec
2) 2xx 3) 3xx 4) 4xx 5) 5xx

t: TOGGLE SUBDISPLAYS ON/OFF:
u) urls r) referrers h) hosts

f: MANIPULATE FILTERS:
a) add/edit menu c) clear all s) show active (not done yet)
a: ADD FILTER SUBMENU
u) to urls r) to referrers h) to hosts

簡単に訳します。

以下は、コマンド実行中に入力します。

d : urls/referrers/hostsを順に切替える。
n : hits & bytes か return codes に表示を切替える。
h or ? : ヘルプウインドウの表示。
p : 表示の一時停止と再開をする。
q : ApacheTopを止める。
up/down : アスタリスクマークの上下移動
right/left : アスタリスクマークの行について詳細表示と通常表示の切替。

以下は、サブメニューと呼ばれるコマンドです。
s or t or f コマンドを入力後に、それぞれのメニューを選んでソートなどが可能です。

s: SORT BY: [the appropriate menu will appear for your display]
r) requests R) reqs/sec b) bytes B) bytes/sec
2) 2xx 3) 3xx 4) 4xx 5) 5xx

t: TOGGLE SUBDISPLAYS ON/OFF:
u) urls r) referrers h) hosts

f: MANIPULATE FILTERS:
a) add/edit menu c) clear all s) show active (not done yet)
a: ADD FILTER SUBMENU
u) to urls r) to referrers h) to hosts



【参考】

Apacheやlighttpdへのアクセス状況をリアルタイムで確認できる「ApacheTop」を使ってみた – 元RX-7乗りの適当な日々
http://d.hatena.ne.jp/rx7/20081012/p2

gwillem/apachetop · GitHub
https://github.com/gwillem/apachetop

↑こちらの使い方も参考になります。