+ -
当前位置:首页 → 问答吧 → oracle中infiniband的状态查看

oracle中infiniband的状态查看

时间:2010-08-31

来源:互联网

cat /proc/driver/ics_sdp/stats

cat /proc/driver/ics_sdp/config

cat /proc/driver/rds/info

cat /proc/driver/rds/stats

cat /proc/drivers/ipoib/interfaces/ib1


查看infiniband的rds的流量信息的脚本rdsstat:
  1. #!/usr/bin/perl

  2. #****************************************************************#

  3. # ScriptName: rdsstat.pl

  4. # Author: tangcheng

  5. # Create Date: 2010-07-19

  6. # Modify Author: tangcheng

  7. # Modify Date: 2010-07-19

  8. # Function:

  9. #***


  10. use POSIX qw(strftime);
  11. use Time::Local;

  12. $argc = @ARGV;

  13. if($argc != 2)
  14. {
  15.     usage();
  16.     exit(1);
  17. }


  18. $interval=$ARGV[0];
  19. $count=$ARGV[1];


  20. if($interval <=0 or $count <=0)
  21. {
  22.     usage();
  23.     exit(1);
  24. }

  25. my @rdsstats;
  26. my @prerdsstats;
  27. my $i;
  28. my $strtime;

  29. @prerdsstats=getstats();
  30. print " time Xmit bytes Xmit packets Recv bytes Recv packets\n";
  31. print "------------------- ------------ ------------ ------------ ------------\n";

  32. $i=0;
  33. for(;$i<$count;$i++)
  34. {
  35.     sleep($interval);
  36.     @rdsstats=getstats();
  37.     $strtime= strftime "%Y-%m-%d %H:%M:%S", localtime();
  38.     printf("%19s %12d %12d %12d %12d\n",
  39.            $strtime,
  40.            ($rdsstats[0]-$prerdsstats[0])/$interval,
  41.            ($rdsstats[1]-$prerdsstats[1])/$interval,
  42.            ($rdsstats[2]-$prerdsstats[2])/$interval,
  43.            ($rdsstats[3]-$prerdsstats[3])/$interval);
  44.     $prerdsstats[0]=$rdsstats[0];
  45.     $prerdsstats[1]=$rdsstats[1];
  46.     $prerdsstats[2]=$rdsstats[2];
  47.     $prerdsstats[3]=$rdsstats[3];
  48.     if( ($i+1) % 10 == 0)
  49.     {
  50.         print " time Xmit bytes Xmit packets Recv bytes Recv packets\n";
  51.         print "------------------- ------------ ------------ ------------ ------------\n";
  52.     }
  53. }
  54. exit 0;

  55. sub usage
  56. {
  57.     print "Usage: rdsstat <interval> <count>\n";
  58.     print "Example: rdsstat 1 10000\n";
  59. }


  60. sub getstats
  61. {
  62.     my @res;
  63.     my $rdsinfo;
  64.     my $line;
  65.     my @lines;
  66.     my @cells;
  67.     my $cellcnt;

  68.     $rdsinfo=`cat /proc/driver/rds/stats`;

  69.     @lines = split("\n", $rdsinfo);
  70.     foreach $line(@lines)
  71.     {
  72.         chomp($line);
  73.         $line =~ s/^\s+//;
  74.         $line =~ s/\s+$//;

  75.         @cells=split(/\s+/,$line);
  76.         $cellcnt=@cells;
  77.         if($cellcnt != 3)
  78.         {
  79.          next;
  80.         }
  81.         if($cells[0] eq "Xmit" and $cells[1] eq "bytes")
  82.         {
  83.          $res[0]=$cells[2];
  84.         }
  85.         elsif($cells[0] eq "Xmit" and $cells[1] eq "packets")
  86.         {
  87.          $res[1]=$cells[2];
  88.         }
  89.         elsif($cells[0] eq "Recv" and $cells[1] eq "bytes")
  90.         {
  91.          $res[2]=$cells[2];
  92.         }
  93.         elsif($cells[0] eq "Recv" and $cells[1] eq "packets")
  94.         {
  95.          $res[3]=$cells[2];
  96.         }
  97.     }
  98.     return @res;
  99.    
  100. }
复制代码

作者: osdba   发布时间: 2010-08-31

恩  哥们儿 你是不是贴错版块了

作者: duolanshizhe   发布时间: 2010-08-31

这里是oracle 版

作者: duolanshizhe   发布时间: 2010-08-31