1 | #!/usr/bin/perl
|
---|
2 |
|
---|
3 | # this script read one or more databases and extract how many packets are sent and received respectively.
|
---|
4 | #
|
---|
5 |
|
---|
6 | $sink1 = 2;
|
---|
7 | $sink2 = 8;
|
---|
8 | $sink3 = 12;
|
---|
9 | $sink4 = 16;
|
---|
10 |
|
---|
11 | use Mysql;
|
---|
12 |
|
---|
13 | $hostname = 'idb1.orbit-lab.org';
|
---|
14 | $user = 'orbit';
|
---|
15 | #$database = 'none';
|
---|
16 | $database= @ARGV; #grid_2006_09_06_14_52_08, grid_2006_09_06_15_29_27,grid_2006_09_06_15_39_09
|
---|
17 | $password = 'orbit';
|
---|
18 | $resultfile ='tempres';
|
---|
19 |
|
---|
20 |
|
---|
21 | $table2 = "temp/rx_table";
|
---|
22 |
|
---|
23 | $driver = 'mysql';
|
---|
24 |
|
---|
25 | my $noiselevel = 18;
|
---|
26 | my $now = localtime time;
|
---|
27 | open(res, ">>$resultfile")
|
---|
28 | || die "Can't open result file: $!\n";
|
---|
29 | print res "$now test results are \n";
|
---|
30 | close res;
|
---|
31 |
|
---|
32 | foreach(@ARGV)
|
---|
33 | {
|
---|
34 | dumpDB($_,$table2);
|
---|
35 | }
|
---|
36 |
|
---|
37 | system ("awk '\$1~/node$sink1/' $table2 > temp/sink1");
|
---|
38 | system ("awk '\$1~/node$sink2/' $table2 > temp/sink2");
|
---|
39 | system ("awk '\$1~/node$sink3/' $table2 > temp/sink3");
|
---|
40 | system ("awk '\$1~/node$sink4/' $table2 > temp/sink4");
|
---|
41 |
|
---|
42 | system("gnuplot fairplot.gp");
|
---|
43 | print "Done. check gnuplot_plot1.ps file! \n";
|
---|
44 |
|
---|
45 | #we need a subfunction to read 1 database 2 table and dump to two files
|
---|
46 | sub dumpDB
|
---|
47 | {
|
---|
48 | my ($dbname, $f2) = @_;
|
---|
49 | open (OUTFILE2, "> $f2")
|
---|
50 | || die "Can't open file to save temporary RX data $!\n";
|
---|
51 | my $dbh = Mysql->connect($hostname, $dbname, $user, $password);
|
---|
52 | my $sql_query2="SELECT node_id, sequence_no, pkt_seqno, rcvd_pkt_size_sample_sum, rssi, xmitrate from receiver4_otr_receiverport";
|
---|
53 |
|
---|
54 | my $sth2 = $dbh->query($sql_query2);
|
---|
55 | while(my @record2 = $sth2->FetchRow) {
|
---|
56 | print OUTFILE2 "@record2 \n";
|
---|
57 | }
|
---|
58 | close OUTFILE2;
|
---|
59 | }
|
---|
60 |
|
---|
61 |
|
---|
62 |
|
---|
63 |
|
---|