Help with iostat | Unix Linux Forums | AIX

  Go Back    


AIX AIX is IBM's industry-leading UNIX operating system that meets the demands of applications that businesses rely upon in today's marketplace.

Help with iostat

AIX


Tags
awk, iostat, spreadsheet

Closed Thread    
 
Thread Tools Search this Thread Display Modes
    #1  
Old 02-05-2013
oracledba1024 oracledba1024 is offline
Registered User
 
Join Date: Feb 2013
Last Activity: 6 February 2013, 9:08 AM EST
Location: Atlanta, GA
Posts: 2
Thanks: 1
Thanked 0 Times in 0 Posts
Help with iostat

Hello, I support Oracle 11g on AIX 7.1.

Using the command

Code:
$iostat -D hdisk2 hdisk4 hdisk5 5

I get the following output:

Code:
hdisk5         xfer:  %tm_act      bps      tps      bread      bwrtn    
                        44.0      1.4M   178.2        1.4M      14.7K
               read:      rps  avgserv  minserv  maxserv   timeouts      fails
                       174.6      3.0      0.2    279.7           0          0
              write:      wps  avgserv  minserv  maxserv   timeouts      fails
                         3.6      0.4      0.2     11.2           0          0
              queue:  avgtime  mintime  maxtime  avgwqsz    avgsqsz     sqfull
                         0.0      0.0     12.1      0.0        0.0         0.0
hdisk2         xfer:  %tm_act      bps      tps      bread      bwrtn    
                        87.4     14.0M   1544.1       12.1M       1.9M
               read:      rps  avgserv  minserv  maxserv   timeouts      fails
                       1441.0      1.7      0.2    316.7           0          0
              write:      wps  avgserv  minserv  maxserv   timeouts      fails
                       103.1      0.4      0.3     57.9           0          0
              queue:  avgtime  mintime  maxtime  avgwqsz    avgsqsz     sqfull
                         0.4      0.0    123.8      0.0        2.0        89.7
hdisk4         xfer:  %tm_act      bps      tps      bread      bwrtn    
                        93.0      2.8M   319.4        2.7M       1.6K
               read:      rps  avgserv  minserv  maxserv   timeouts      fails
                       319.2      3.0      0.2    312.3           0          0
              write:      wps  avgserv  minserv  maxserv   timeouts      fails
                         0.2      0.3      0.3      5.1           0          0
              queue:  avgtime  mintime  maxtime  avgwqsz    avgsqsz     sqfull
                         0.0      0.0     17.9      0.0        0.0         0.0
--------------------------------------------------------------------------------

I find this difficult to parse using awk or any other tool because for each iteration all the titles are printed again rather than repeating the value for the metric like vmstat does. That's a lot easier to capture the value for the metric.


Code:
kthr    memory              page              faults              cpu          
----- ----------- ------------------------ ------------ -----------------------
 r  b   avm   fre  re  pi  po  fr   sr  cy  in   sy  cs us sy id wa    pc    ec
 6 10 8800952 26424   0   0   0 7461 39909   0 4040 39689 12081 52 14 26  8  4.96  67.0
 5  3 8800817 24651   0   0   0 9434 108818   0 2357 8227 7222 47 12 33  8  4.47  60.4
 7  3 8801897 24468   0   0   0 31695 95003   0 3339 6179 8625 51 19 23  8  5.21  70.3

Does anyone have an idea how to parse this output so that it could be output to a CSV file and loaded into a spreadsheet?

Many thanks.
Moderator's Comments:
Please use code tags

Last edited by jim mcnamara; 02-05-2013 at 08:43 PM..
Sponsored Links
    #2  
Old 02-05-2013
Yoda's Avatar
Yoda Yoda is offline Forum Advisor  
Jedi Master
 
Join Date: Jan 2012
Last Activity: 21 November 2014, 11:17 AM EST
Location: Galactic Empire
Posts: 3,389
Thanks: 235
Thanked 1,210 Times in 1,136 Posts

Code:
iostat -D hdisk2 hdisk4 hdisk5 5 | awk ' BEGIN {
printf "dev,%tm_act,bps,tps,bread,bwrtn,"
printf "read: rps,avgserv,minserv,maxserv,timeouts,fails,"
printf "write: wps,avgserv,minserv,maxserv,timeouts,fails,"
printf "queue: avgtime,mintime,maxtime,avgwqsz,avgsqsz,sqfull"
} {
        for(i=1;i<=NF;i++) {
                if($i~/^hdisk/) {
                        printf "\n%s,", $i;
                }
                else if($i~/^[0-9]/) {
                        printf "%s,", $i;
                }
        }
} END {
        printf "\n";
}'

The Following 2 Users Say Thank You to Yoda For This Useful Post:
jim mcnamara (02-05-2013), oracledba1024 (02-05-2013)
Sponsored Links
    #3  
Old 02-05-2013
oracledba1024 oracledba1024 is offline
Registered User
 
Join Date: Feb 2013
Last Activity: 6 February 2013, 9:08 AM EST
Location: Atlanta, GA
Posts: 2
Thanks: 1
Thanked 0 Times in 0 Posts
Thanks that's really cool.
    #4  
Old 02-07-2013
bakunin bakunin is offline Forum Staff  
Bughunter Extraordinaire
 
Join Date: May 2005
Last Activity: 22 November 2014, 8:40 AM EST
Location: In the leftmost byte of /dev/kmem
Posts: 4,337
Thanks: 45
Thanked 839 Times in 662 Posts
You might also want to consider using the "-l" option, which switches to "long output".

I hope this helps.

bakunin
Sponsored Links
Closed Thread

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
IOSTAT monitoring walnutpony123 Shell Programming and Scripting 4 02-12-2012 10:40 PM
iostat -En errors zaza Solaris 3 10-22-2010 01:32 PM
iostat -Eni mayahari Solaris 3 09-28-2009 06:26 AM
how to identified this iostat value adzuanamir AIX 2 04-30-2009 01:57 AM
Help with iostat ... dj_is Filesystems, Disks and Memory 3 08-12-2007 01:09 PM



All times are GMT -4. The time now is 05:16 PM.