中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

磁盤IO監控腳本

發布時間:2020-07-10 06:31:10 來源:網絡 閱讀:814 作者:ucweb_qiuwc 欄目:移動開發
#!/usr/bin/perl -w
use strict;
use Regexp::Common;
use Getopt::Long;
my %values;
my $result;
my ($iostat,$data,$perfdata);
my ($warning,$critical,$disk);
$result = GetOptions("disk=s"      =>      \$disk,
                     "d=s"         =>      \$disk,
                     "warning=i"   =>      \$warning,
                     "w=i"         =>      \$warning,
                     "critical=i"  =>      \$critical,
                     "c=i"         =>      \$critical,
                     "help"        =>      \&help,
                     );
$warning ||= 75;
$critical ||= 80;
$disk ||= undef;
&main();
sub main(){
        &set_iostat();
        &get_data();
        if ( $values{'%util'} < $warning )
        {
            print "TEST_IO OK - " . "$data| $perfdata\n";
        }
        elsif ( $values{'%util'} >= $warning )
        {
            print "TEST_IO WARNING - " . "$data| $perfdata\n";
        }
        elsif ( $values{'%util'} >= $critical )
        {
            print "TEST_IO CRITICAL - " . "$data| $perfdata\n";
        }
        else #No clue what value is there!
        {
             print "UNKNOWN - Error in command output\n";
        }
}
sub set_iostat(){
        if (defined $disk){
                $iostat = "iostat " . "$disk";
        }else{
                $iostat = "iostat";
        }
}
sub get_data(){
        &set_iostat();
        my $output = `$iostat -d -x 1 3 |tail -n 3`;
        unless($output) {
            print "Error executing iostat command\n";
        }
        $output =~ /Device.*?/gs;
        foreach my $key (qw(rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util)){
                if($output =~ /\G.*?($RE{num}{real})/gs){
                        $data .= sprintf("%s %s ", $key, $1);
                }
        }
        %values = split ' ', $data;
        $data = '';
        foreach my $key(qw(r/s w/s avgqu-sz await svctm %util)){
            $data .= sprintf("%s %s ",$key,$values{$key});
            #排除(await、svctm、%util)的perfdata輸出
            # if( $key eq 'r/s'|| $key eq 'w/s'|| $key eq 'avgqu-sz'){
                $perfdata .= $key . "=" . $values{$key} . " ";
            # }
        }
}
sub help{
    print "Usage: -d|--disk=</path/to/iostat> -w|--warning=<warn> -c|--critical=<crit>\n";
}

#perl check_diskio.pl -d /dev/sda -w 75 -c 80

TEST_IO OK - r/s 0.00 w/s 3.00 avgqu-sz 0.01 await 3.00 svctm 1.00 %util 0.30 | r/s=0.00 w/s=3.00 avgqu-sz=0.01 await=3.00 svctm=1.00 %util=0.30


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

商南县| 拉萨市| 防城港市| 抚宁县| 扎鲁特旗| 太原市| 乌鲁木齐市| 赞皇县| 河间市| 绥阳县| 扶绥县| 宣城市| 凤凰县| 嘉鱼县| 勃利县| 博湖县| 内黄县| 水富县| 广河县| 双柏县| 同心县| 临泽县| 崇礼县| 开远市| 察隅县| 汨罗市| 尉氏县| 金乡县| 江口县| 新丰县| 寿光市| 顺平县| 蛟河市| 安徽省| 通州市| 襄汾县| 青河县| 枣阳市| 吉林市| 炉霍县| 夏津县|