Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Detailed description can be found at http://maggie.niit.edu.pk/newwebsite/federation_projectdesc2.html

Installation

Note

perhaps you should develop an automated installation script rather than document all of this.

SelectConvSrcDest1.pm

  • Modify the following path to point to the bin directory containing the PingERtoSmokeping.pm
    Code Block
    
    use lib qw(/home/bin);
    
  • Change following paths according to local system. Point this path to the pinger data files directory
    Code Block
    
    my $some_dir="/home/pinger/pingerdata/hep/data";
    
  • Point this path to the directory SRCDEST_FILE
    Code Block
    
    my $srcdest="/home/SRCDEST_FILE";
    

PingERtoSmokeping.pm

  • When installing PingERtoSmokeping, this file has to be adjusted to fit your local system. Two paths have to be changed. These path is located at the begining of PingERtoSmokeping:The $main_path should point to the source folder which contains the PingER files
  • Code Block
    
    my $main_path='/home/PingER_Data_Storage/';
    
  • The $pathofrrdcache should point to the folder RRDCache, which will contain the RRDs
    Code Block
    
    my $pathofrrdcache="/home/RRDCache"; 
    
    Form.cgi
  • Change the mainpath to point to the srcdest.txt file
    Code Block
    
    my $mainpath="/home/SRCDEST_FILE/srcdest.txt";
    
  • Change this path to point to the folder contaning the pinger.new.cf file:
    Code Block
    
    $base_dir="/home/pinger";
    
    mon-lib
  • Add following lines to the current mon-lib, rigth above the if ($type =~ /HISTO/) or use the mon-lib file available with the distribution
    Code Block
    
    if ($type =\~ /SMOKE/) {
    
    $site = "$table\[$i\]\[$nodecolumn-5\]";
     if($FORM{'by'}=~/node/)
     {$more = "&by=node";}
    if($FORM{'by'}=~/site/)
     {$more = "&by=site";}
    
     $label = "";
     $min = "";
     $max="";
     $data = "";
    }
    
    pingtable.pl
  • Add the following line into pingtable.pl
    Code Block
    
    $config{URLCOLUMN0} = "SMOKE http://www.<server>.com/OtherParams2.cgi?src_regexp= ";
    
  • This is to be added above the following line:
    Code Block
    
    $config{URLCOLUMN1} = "COLLECTION http://www.hep.net/cgi-bin/graph_pings.pl?src_regexp= ";
    
    Graph.cgi
  • Change the following path to point to 'rrdtool' installation 
    Code Block
    
    use lib qw( /usr/local/rrdtool-1.2.12/lib/perl );
    
  • Change following link(present on line 36,242) to point to installation of Graph.cgi:
    Code Block
    
    http://www.<path-of-server>.com/cgi-bin/graph.cgi
    
  • also modify the following relative path to GraphCache from folder containg Graph.cgi
    Code Block
    
    my $imgsrc='../GraphCache';
    
    It is used in:
    line (IMG SRC=\'$imgsrc/$destlink1.png\')
    And
    line (IMG SRC=\'$imgsrc/$destlink1"."_mini.png\')
    

     

 

Performance Analysis

 In order to get  list of unique Source Destination pairs (links) SelectSrcDest1.pm used to traverses through all the raw pinger files for the last 120 days and generated the list. This was extremely expensive in terms  of time consumed so we needed to reduce this. This was reduced to one day which made the code 120 times more faster.

...

Code Block
CreateRRD took:38 wallclock secs (19.76 usr&nbsp; 3.99 sys \+&nbsp; 2.57 cusr&nbsp; 0.82 csys = 27.14 CPU)
CreateRRD took:38 wallclock secs (20.06 usr&nbsp; 3.39 sys \+&nbsp; 2.46 cusr&nbsp; 0.84 csys = 26.75 CPU)
CreateRRD took:67 wallclock secs (21.25 usr&nbsp; 9.75 sys \+&nbsp; 2.49 cusr&nbsp; 1.03 csys = 34.52 CPU)
CreateRRD took:66 wallclock secs (21.19 usr&nbsp; 9.06 sys \+&nbsp; 2.73 cusr&nbsp; 0.90 csys = 33.88 CPU)
CreateRRD took:68 wallclock secs (20.97 usr&nbsp; 9.47 sys \+&nbsp; 2.78 cusr&nbsp; 0.74 csys = 33.96 CPU)
CreateRRD took:68 wallclock secs (20.80 usr&nbsp; 9.40 sys \+&nbsp; 2.44 cusr&nbsp; 0.96 csys = 33.60 CPU)
CreateRRD took:23 wallclock secs (19.19 usr&nbsp; 0.86 sys \+&nbsp; 2.27 cusr&nbsp; 0.91 csys = 23.23 CPU)
CreateRRD took:23 wallclock secs (19.09 usr&nbsp; 1.13 sys \+&nbsp; 2.55 cusr&nbsp; 0.92 csys = 23.69 CPU)
CreateRRD took:66 wallclock secs (21.13 usr&nbsp; 8.45 sys \+&nbsp; 2.53 cusr&nbsp; 0.93 csys = 33.04 CPU)
CreateRRD took:67 wallclock secs (21.24 usr&nbsp; 9.61 sys \+&nbsp; 2.23 cusr&nbsp; 0.91 csys = 33.99 CPU)

  

    I created the same 10 RRD files on local disk, clearly its less expensive to write to local disk.

...