web-dev-qa-db-ja.com

netbackupを使用してジョブの書き込み時間を取得する方法

コマンドラインまたはログからNetbackupジョブの書き込み時間を取得する方法を知っている人はいますか? GUIで、ジョブの詳細に移動すると、書き込み時間が表示されます。ただし、bpdbjobs -all_columns'elapsed '列には、ジョブにかかった時間が表示されますが、実際の書き込み時間は表示されません。

1
Kyle Brandt

実際、bpdbjobs -all_columnsから'06/09/0919:41:27のようなフィールドがあります-書き込みを終了します。書き込み時間:000:06:56 '。 1つのジョブで複数回表示される場合があり、常に同じインデックスにあるとは限りません。しかし、すべてのフィールドを反復処理するのは、それらを解析して秒に変換し、すべてを合計するのに十分簡単です。

何かのようなもの:

sub stripLeadZeros {
    my $number = shift;
    $number =~ s/^0+//;
    return $number;
}

sub parseWriteTime {
    my $writeString = shift;
    if ( $writeString =~ /([0-9]{3}):([0-9]{2}):([0-9]{2})/ ) {
        my $hours = stripLeadZeros($1) || 0;
        my $minutes = stripLeadZeros($2) || 0;
        my $seconds = stripLeadZeros($3) || 0;
        my $totalSec = (($hours * 60) * 60) + ($minutes * 60) + $seconds;
        return $totalSec;
    }
    return 0;
}
1
Kyle Brandt