Here are some handy commands that I used recently to debug a server performance issue:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
<strong>> sar</strong> Linux 2.4.9-34smp (some.server.net) 07/28/2004 12:00:00 AM CPU %user %nice %system %idle 12:10:00 AM all 12.29 2.00 4.55 81.16 12:20:00 AM all 4.14 0.16 2.58 93.13 12:30:00 AM all 4.46 0.02 2.79 92.74 12:40:01 AM all 3.68 0.04 2.36 93.92 12:50:00 AM all 3.78 0.03 2.47 93.72 01:00:00 AM all 3.89 0.10 2.42 93.59 01:10:00 AM all 6.65 0.62 2.70 90.03 01:20:00 AM all 5.56 0.31 2.85 91.27 01:30:00 AM all 4.04 0.02 2.40 93.53 01:40:00 AM all 4.41 0.58 2.92 92.09 01:50:01 AM all 5.63 0.73 3.13 90.51 02:00:00 AM all 3.58 0.03 2.19 94.19 02:10:00 AM all 8.19 0.03 2.39 89.39 02:20:00 AM all 4.84 0.00 2.90 92.25 02:30:00 AM all 6.77 0.59 2.86 89.78 02:40:01 AM all 4.04 0.02 2.99 92.94 02:50:00 AM all 4.60 0.03 2.83 92.55 03:00:00 AM all 5.67 0.29 2.83 91.21 03:10:00 AM all 4.58 0.13 2.99 92.29 03:20:00 AM all 8.69 0.80 3.46 87.05 03:30:01 AM all 5.32 0.22 3.10 91.36 03:40:01 AM all 4.85 0.06 3.23 91.85 03:50:00 AM all 3.73 0.00 2.72 93.55 04:00:00 AM all 3.40 0.02 2.27 94.31 04:10:00 AM all 40.16 0.09 8.79 50.96 04:20:00 AM all 44.44 0.04 10.07 45.45 04:30:00 AM all 32.32 1.06 10.09 56.53 04:40:00 AM all 38.10 0.04 7.05 54.81 04:50:01 AM all 32.80 0.02 8.07 59.12 05:00:02 AM all 32.89 2.06 13.31 51.74 05:10:00 AM all 42.18 0.49 9.52 47.81 05:20:01 AM all 53.17 2.62 9.76 34.44 05:30:00 AM all 18.56 6.41 16.87 58.15 05:40:00 AM all 38.36 0.04 9.80 51.80 05:50:00 AM all 26.03 0.24 9.35 64.38 06:00:00 AM all 30.65 0.97 9.82 58.56 06:10:01 AM all 44.41 0.07 9.51 46.00 06:20:00 AM all 25.11 0.14 12.42 62.34 06:30:00 AM all 37.65 0.02 12.12 50.21 Average: all 17.02 0.54 5.76 76.68 |
Also “sar -A” give more useful info.
For sar to work, you need a cronjob like this:
1 2 |
# run system activity accounting tool every 10 minutes */10 * * * * root /usr/lib/sa/sa1 1 1 |
The cronjob can go in a file at /etc/cron.d/sysstat on Redhat and similar systems.
Another useful command is “vmstat”:
1 2 3 4 5 6 7 |
<strong>> vmstat 1</strong> procs memory swap io system cpu r b w swpd free buff cache si so bi bo in cs us sy id 0 5 0 44856 3040 50504 273364 1 2 78 107 53 129 20 6 74 1 5 0 44856 3164 50552 274176 0 0 2288 1036 513 766 21 11 68 1 4 0 44856 3056 50556 273496 0 0 3128 116 443 507 7 6 87 2 3 0 44856 3236 50564 274800 0 0 3200 460 557 558 8 7 85 |