Apachetop 实时监测apache服务器运行状况简介


  • 1.. apapchetop使用

    当执行之后,还有命令可以切换显示状态:

    3. apachetop实例

    apachetop 是一个命令行工具,它的运行原理是通过分析 apache 服务器的日志文件,来向用户展示服务器的运行情况。

    ·        安装与使用 apachetop

    CentOS 为例,输入如下命令:

    1

    yum install apachetop

    ·        使用 apachetop

    安装完成后,可以在命令行中输入:

    1

    Apachetop

    如果成功找到了日志文件,apachetop 就会在命令行中显示类似如下的内容,并且这些内容会自动刷新:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    last hit: 12:17:14         atop runtime:  0 days, 00:00:40             12:17:15

    All:          284 reqs (   7.1/sec)       1012.2K (   25.3K/sec)    3649.8B/req

    2xx:   273 (96.1%) 3xx:      11 ( 3.9%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

    R ( 30s):     220 reqs (   7.3/sec)        686.6K (   22.9K/sec)    3195.9B/req

    2xx:   212 (96.4%) 3xx: 8 ( 3.6%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

     

     REQS REQ/S    KB KB/S URL

       69  2.30  26.5  0.9*/test/ent.php

       58  1.93 149.0  5.0 /test/prom.json

       20  0.69   0.7  0.0 /test/recommend/recommend.php

       15  0.50  10.4  0.3 /test/good/center.php

    上面的命令行输出,向我们展示了 apache 服务器当前的运行状况,我们可以逐行进行分析:

    首先,这行中的 last hit 列出了最后点击(也就是请求)的时间, atop runtime 代表 apachetop 已经运行的时间,这行最后的那个是当前的时间。

    1

    last hit: 12:17:14         atop runtime:  0 days, 00:00:40             12:17:15

    接下来,这行列出了自从 apachetop 开始运行以来所有的请求次数,以及每秒平均的请求次数, 接收到的字节数,每秒接收的字节数,每次请求平均的字节数。第二行代表服务端发出的HTTP响应代码情况,例如,2xx 表示请求成功的响应代码发送的次数,比如 200 响应,4xx 代表比如 404 这类的响应次数。

    1

    2

    All:          284 reqs (   7.1/sec)       1012.2K (   25.3K/sec)    3649.8B/req

    2xx:   273 (96.1%) 3xx:      11 ( 3.9%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

    下面这两行各个属性所表示的含义和上面那两行是一样的,唯一不同的是它们跨越的时段不一样。前两行是统计自从 apachetop 启动以来所有的请求,而这两行默认统计的是 30 秒之内的请求。

    1

    2

    R ( 30s):     220 reqs (   7.3/sec)        686.6K (   22.9K/sec)    3195.9B/req

    2xx:   212 (96.4%) 3xx: 8 ( 3.6%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

    下面这些行就是具体每一个 URL 的请求状况了:

    1

    2

    3

    4

    5

     REQS REQ/S    KB KB/S URL

       69  2.30  26.5  0.9*/test/ent.php

       58  1.93 149.0  5.0 /test/prom.json

       20  0.69   0.7  0.0 /test/recommend/recommend.php

       15  0.50  10.4  0.3 /test/good/center.php

    这里面列出了在指定时段内对每一个 URL 分别的请求数量,每秒的平均请求次数,这些请求的字节数,以及每秒平均的字节数。

    到这里,我们了解了 apachetop 最基本的使用方法,下面我们将更进一步的介绍它更多的特性。

    *apachetop 的各种视图模式

    如果仔细看一下的话,你会发现 URL 列表的第一行多了一个星号:

    1

    2

     REQS REQ/S    KB KB/S URL

       69  2.30  26.5  0.9*/test/ent.php

    这个星号代表你选中了当前这一行,你可以按键盘的上下键来选择其他行,当你选中一行后,按下键,就可以进入该条 URL 的详细信息界面:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    last hit: 13:15:19         atop runtime:  0 days, 00:12:16             13:15:20

    All:         6124 reqs (   8.3/sec)         26.0M (   36.2K/sec)    4450.8B/req

    2xx:    5952 (97.2%) 3xx:     169 ( 2.8%) 4xx:     3 ( 0.0%) 5xx:     0 ( 0.0%)

    R ( 30s):     266 reqs (   8.9/sec)       1078.1K (   35.9K/sec)    4150.4B/req

    2xx:     253 (95.1%) 3xx:      13 ( 4.9%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

     

     REQS REQ/S    KB KB/S

       66  2.20  25.3  0.8 /test/ent.php

                           HOST

        3  0.19   1.2  0.1   1.1.1.1 [1.1.1.1]

        3  0.13   1.2  0.1   1.1.1.2 [1.1.1.2]

        3  0.14   1.2  0.1   1.1.1.3 [1.1.1.3]

        2  0.13   0.8  0.1   1.1.1.4 [1.1.1.4]

        2  0.14   0.8  0.1   1.1.1.5 [1.1.1.5]

        2  0.07   0.8  0.0   1.1.1.6 [1.1.1.6]

    在这个界面中,你可以看到对于该条 URL,请求它的 IP 都是什么。看完这个之后,你可以按下按键,回到列表视图。

    在列表视图中,你可以按 d 键,在 URL/Referrer/Host 这三个列表视图之间进行切换:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    last hit: 13:20:34         atop runtime:  0 days, 00:17:31             13:20:35

    All:         8749 reqs (   8.3/sec)         36.2M (   35.3K/sec)    4341.4B/req

    2xx:    8482 (96.9%) 3xx:     262 ( 3.0%) 4xx:     5 ( 0.1%) 5xx:     0 ( 0.0%)

    R ( 30s):     237 reqs (   7.9/sec)        804.1K (   26.8K/sec)    3474.2B/req

    2xx:     227 (95.8%) 3xx:      10 ( 4.2%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

     

     REQS REQ/S    KB KB/S HOST

       11  0.38 107.2  3.7*1.1.1.1 [1.1.1.1]

       10  0.34 104.9  3.6 1.1.1.2 [1.1.1.2]

       10  0.40 113.2  4.5 1.1.1.3 [1.1.1.3]

        9  0.30  17.5  0.6 1.1.1.4 [1.1.1.4]

    在上面的 HOST 视图中,我们可以看到IP的来源情况,而且可以按下键进入详细视图查看该条 IP 都访问过哪些 URL

    1

    2

    3

    4

    5

    6

    7

    8

    9

    last hit: 13:23:00         atop runtime:  0 days, 00:19:57             13:23:01

    All:         9898 reqs (   8.3/sec)         40.7M (   34.8K/sec)    4306.5B/req

    2xx:    9593 (96.9%) 3xx:     299 ( 3.0%) 4xx:     6 ( 0.1%) 5xx:     0 ( 0.0%)

    R ( 30s):     197 reqs (   6.6/sec)        586.7K (   19.6K/sec)    3049.6B/req

    2xx:     190 (96.4%) 3xx:   7 ( 3.6%) 4xx:     0 ( 0.0%) 5xx:     0 ( 0.0%)

     

     REQS REQ/S    KB KB/S REFERRER

      183  6.10 551.8 18.4*-

       14  2.00  34.9  5.0 www.abc.com/index.php

    在上面的 REFERRER 视图中,我们可以看到各个网站的来源情况,这对于分析链接来源非常有用。

    * URL 列表添加过滤器

    如果你的 URL 列表中的链接太多了,你可以添加一些过滤器来对这个列表进行筛选,从而找到你需要检测的 URL

    URL 列表视图中,按下 f 键,这时你会看到这样一个菜单:

    1

     filters.. a) add/edit menu  c) clear all  s) show active

    再按下 a 键,添加一个过滤器,这时会让你选择过滤器的类型:

    1

     filters: add.. u) to URLS  r) to REFERRERS  h) to HOSTS

    我们按下 u 键,选择 URL 过滤器,然后输入你的过滤条件,再按下回车键,这时候,列表视图中我们就可以看到筛选后的内容了。

    还有一些其他的选项,比如还可以设置如何对列表视图进行排序,我们可以在列表视图中按下 h 键来查看运行时的帮助信息:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    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 键切换视图, f 键添加过滤器,还有一个 s 键,可以用来对列表进行排序等等。

    ·        apachetop 的命令行参数

    ·        默认情况下, apachetop 会在 apache http 服务器的默认日志路径上面来查找日志文件,以便于通过这些日志文件来生成实时检测报告,但如果你的日志文件没有在默认的位置,那么 apachetop 就没办法找到它了。这时候可以使用 -f 参数来明确的指定日志文件的位置:

    1

    apachetop -f /var/logs/httpd.log

    1.      apachetop 的列表视图,默认情况下是不显示出 URL 参数的,如果你还需要显示 URL 参数,那么可以使用 -q 参数:

    1

    apachetop -q

    1.      apachetop 会使用一个缓存区域来存放一定数量的日志记录,以生成最终的实时检测报表,默认情况下会以保存 30 秒之内的请求记录。它提供了两个参数可以让你来控制这个缓存区的大小。

    -H num 以请求数来计算,比如你想让 apachetop 记录 1000 次点击之内的情况:

    1

    apachetop -H 1000

    -T sec 以时间进行来计算,比如记录 20秒之内的请求:

    1

    apachetop -T 20

    还有更多的命令行参数,可以通过 -help 参数来查看:

    1

    apachetop -help

     


你可能感兴趣的:(apache,linux,shell,服务器)