#!/usr/bin/perl use strict; =comment This script generates a graph of CPU Wait for the past hour. =cut require "graphVM.lib"; my ($logdate) = @ARGV; my $log_in = 'vmstatlog.'.$logdate; my $log_out = 'vmstatlog_out_60.'.$logdate; open (VMSTATS_FILE_OUT, ">$log_out"); #HOUR my $content = `tail -n 720 $log_in`; my $content = `cat $log_in`; my @content_array = split(/\n/,$content); #my $date_month = substr($logdate,0,2); #my $date_day = substr($logdate,2,2); #my $date_year = substr($logdate,4,2); #my $date_today = $date_month.'/'.$date_day.'/'.$date_year; #HOUR my $date_today = `date --date='1 hour ago' +"%D %T"`; my $date_today = `date +"%D"`; chomp($date_today); my $date_new; my $seconds_count = 0; my $line_record; foreach $line_record (@content_array) { $date_new = `date --date='$date_today $seconds_count seconds' +"%D %T"`; chomp($date_new); print VMSTATS_FILE_OUT $date_new.' '; print VMSTATS_FILE_OUT $line_record."\n"; $seconds_count = $seconds_count+5; } close (VMSTATS_FILE_OUT); ###graphs my_graph($log_out, 18, 'CPU/Waiting', 'trident', "./vmstatgraphs/cpu_waiting_60_min_$logdate\.png"); exit 0;