بیشتر سرورهای Linux عملکرد سیستم را با گزارش SAR نظارت می کنند زیرا داده های عملکرد را برای یک هفته جمع می کند. اما می توانید با ایجاد تغییر در پرونده “/etc/sysconfig/sysstat” این کار را به راحتی به چهار هفته افزایش دهید. همچنین ، این دوره می تواند فراتر از یک ماه تمدید شود. اگر مقدار از 28 فراتر رود ، پرونده های گزارش در چند دایرکتوری قرار می گیرند ، یکی برای هر ماه.
برای افزایش مدت زمان پوشش تا 28 روز ، تغییر زیر را در پرونده “/ etc / sysconfig / sysstat” تغییر دهید. پرونده sysstat را ویرایش کنید و HISTORY = 7 را به HISTORY = 28 تغییر دهید. در این مقاله ما سه اسکریپت bash اضافه کرده ایم که به شما کمک می کند تا به طور متوسط میانگین هر پرونده را در یک مکان مشاهده کنید.
این اسکریپت ها ساده و سرراست هستند. برای اهداف آزمایش ، ما فقط دو معیار عملکرد شامل CPU و Memory را درج کرده ایم. می توانید معیارهای عملکرد دیگر را در متن تغییر دهید تا متناسب با نیاز خود استفاده کنید. توجه داشته باشید که کاربران مستقر در Debian باید به جای آن مسیر “var / log / sysstat / sa” را جایگزین کنند. پرونده پیکربندی را می توان در “/ etc / sysstat / config” یافت.
این اسکریپت bash میانگین پردازنده را از هر پرونده داده جمع آوری کرده و آن را در یک صفحه نمایش می دهد. از آنجا که پایان ماه است ، داده های 28 روزه برای آگوست 2019 را نشان می دهد.
vi /opt/scripts/sar-cpu-avg.sh !/bin/sh echo "+----------------------------------------------------------------------------------+" echo "|Average: CPU %user %nice %system %iowait %steal %idle |" echo "+----------------------------------------------------------------------------------+" for file in `ls -tr /var/log/sa/sa* | grep -v sar` do dat=`sar -f $file | head -n 1 | awk '{print $4}'` echo -n $dat وقتی اسکریپت را اجرا کردید ، یک خروجی مانند نسخه زیر دریافت خواهید کرد.
sh /opt/scripts/sar-cpu-avg.sh +----------------------------------------------------------------------------------+ |Average: CPU %user %nice %system %iowait %steal %idle | +----------------------------------------------------------------------------------+ 08/01/2019 all 0.70 0.00 1.19 0.00 0.00 98.10 08/02/2019 all 1.73 0.00 3.16 0.01 0.00 95.10 08/03/2019 all 1.73 0.00 3.16 0.01 0.00 95.11 08/04/2019 all 1.02 0.00 1.80 0.00 0.00 97.18 08/05/2019 all 0.68 0.00 1.08 0.01 0.00 98.24 08/06/2019 all 0.71 0.00 1.17 0.00 0.00 98.12 08/07/2019 all 1.79 0.00 3.17 0.01 0.00 95.03 08/08/2019 all 1.78 0.00 3.14 0.01 0.00 95.08 08/09/2019 all 1.07 0.00 1.82 0.00 0.00 97.10 08/10/2019 all 0.38 0.00 0.50 0.00 0.00 99.12 . . . 08/29/2019 all 1.50 0.00 2.33 0.00 0.00 96.17 08/30/2019 all 2.32 0.00 3.47 0.01 0.00 94.20 +----------------------------------------------------------------------------------+
این اسکریپت bash میانگین حافظه را از هر پرونده داده جمع آوری کرده و آن را در یک صفحه نمایش می دهد. از آنجا که پایان ماه است ، داده های 28 روزه برای آگوست 2019 را نشان می دهد.
vi /opt/scripts/sar-memory-avg.sh !/bin/sh echo "+-------------------------------------------------------------------------------------------------------------------+" echo "|Average: kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty |" echo "+-------------------------------------------------------------------------------------------------------------------+" for file in `ls -tr /var/log/sa/sa* | grep -v sar` do dat=`sar -f $file | head -n 1 | awk '{print $4}'` echo -n $dat sar -r -f $file | grep -i Average | sed "s/Average://" done echo "+-------------------------------------------------------------------------------------------------------------------+" وقتی اسکریپت را اجرا کردید ، یک خروجی مانند نسخه زیر دریافت خواهید کرد.
sh /opt/scripts/sar-memory-avg.sh +--------------------------------------------------------------------------------------------------------------------+ |Average: kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty | +--------------------------------------------------------------------------------------------------------------------+ 08/01/2019 1492331 2388461 61.55 29888 1152142 1560615 12.72 1693031 380472 6 08/02/2019 1493126 2387666 61.53 29888 1147811 1569624 12.79 1696387 373346 3 08/03/2019 1489582 2391210 61.62 29888 1147076 1581711 12.89 1701480 370325 3 08/04/2019 1490403 2390389 61.60 29888 1148206 1569671 12.79 1697654 373484 4 08/05/2019 1484506 2396286 61.75 29888 1152409 1563804 12.75 1702424 374628 4 08/06/2019 1473593 2407199 62.03 29888 1151137 1577491 12.86 1715426 371000 8 08/07/2019 1467150 2413642 62.19 29888 1155639 1596653 13.01 1716900 372574 13 08/08/2019 1451366 2429426 62.60 29888 1162253 1604672 13.08 1725931 376998 5 08/09/2019 1451191 2429601 62.61 29888 1158696 1582192 12.90 1728819 371025 4 08/10/2019 1450050 2430742 62.64 29888 1160916 1579888 12.88 1729975 370844 5 . . . 08/29/2019 1365699 2515093 64.81 29888 1198832 1593567 12.99 1781733 376157 15 08/30/2019 1361920 2518872 64.91 29888 1200785 1595105 13.00 1784556 375641 8 +-------------------------------------------------------------------------------------------------------------------+
این اسکریپت bash به طور متوسط CPU و حافظه را از هر پرونده داده جمع می کند و آنها را در یک صفحه نمایش می دهد. این اسکریپت bash در مقایسه با اسکریپت بالا کمی متفاوت است. این میانگین هر دو (CPU و Memory) را در یک مکان نشان می دهد ، نه داده های دیگر.
vi /opt/scripts/sar-cpu-mem-avg.sh !/bin/bash for file in `ls -tr /var/log/sa/sa* | grep -v sar` do sar -f $file | head -n 1 | awk '{print $4}' echo "-----------" sar -u -f $file | awk '/Average:/{printf("CPU Average: %.2f%\n"), 100 - $8}' sar -r -f $file | awk '/Average:/{printf("Memory Average: %.2f%\n"),(($3-$5-$6)/($2+$3)) * 100 }' printf "\n" done وقتی اسکریپت را اجرا کردید ، یک خروجی مانند نسخه زیر دریافت خواهید کرد.
sh /opt/scripts/sar-cpu-mem-avg.sh 08/01/2019 ----------- CPU Average: 1.90% Memory Average: 31.09% 08/02/2019 ----------- CPU Average: 4.90% Memory Average: 31.18% 08/03/2019 ----------- CPU Average: 4.89% Memory Average: 31.29% 08/04/2019 ----------- CPU Average: 2.82% Memory Average: 31.24% 08/05/2019 ----------- CPU Average: 1.76% Memory Average: 31.28% . . . 08/29/2019 ----------- CPU Average: 3.83% Memory Average: 33.15% 08/30/2019 ----------- CPU Average: 5.80% Memory Average: 33.19%
امیدوارم این مقالع برای شما مفید بوده باشد.
ما را در شتابان هاست دنبال کنید.