Versions Compared

Key

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

...

PingER2 at SLAC resides under /afs/slac/package/pinger/pinger2/share/pinger/. This directory contains all the scripts, needed by PingER2 except for wget, ping, ping6,dig, and other similar standard Linux binaries. The directory contains:

...

  • These files contain the configuration values for pinger2. They are created atomically every 6 hours from the Oracle NODEDETAILS database as a result of running write_offsitenodes.pl from the pinger@pinger.slac.stanford.edu trscronjob. There are actually two files:
  • This file has four parts:
    • Beacon List, containing a list of all the beacon sites.
    • Beacon List Config, containing configuration values for the beacon list. This includes:
      • BeaconListURL: Location of beacon.txt file
      • HttpGetBin: Location of lynx
      • RefreshInterval: Used to determine, when the list should be refreshed.
    • DataDirectory: Indicating where the data gathered by PingER2 should reside.
    • DefaultHost: Values here determine what a default host looks like. For the hostlisthost list, any value that is not in there for a host , is picked up from here.
      • It is advised that DNS Caching  Caching be turned off, to cause PingER2 to do a new dns DNS request every time.
      • PingER2 throws all the error messages at the same time , when the time to the notification is achieved. The default value is 12 hours. If you wish to store this information instead, in a log file, replace the

        Code Block
         <AlarmCmd>echo &quot;%message\n-----------------\n&quot; &gt;&gt; /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger/pinger.log </AlarmCmd>


    • HostList: List of hosts, PingER2 gathers data from.
    • Final Configuration values:

      Code Block
      xml
      xml
      &nbsp; <MaxProcessCount>25</MaxProcessCount>
      &nbsp; <PingV4Cmd>/bin/ping \-n \-w %deadline \-c %count \-i %interval \-s %packetsize %destination</PingV4Cmd>
      &nbsp; <PingV6Cmd>/bin/ping6 \-n \-w %deadline \-c %count \-i %interval \-s %packetsize %destination</PingV6Cmd>
      &nbsp; <SrcName>pinger.slac.stanford.edu</SrcName>
      &nbsp; <Version>2.0.1</Version>
      &nbsp; <dnsV4Cmd>/afs/slac/package/pinger/pinger2/share/pinger/dnsV4Cmd.pl %destination</dnsV4Cmd>
      &nbsp; <dnsV6Cmd>/usr/bin/dig \-t aaaa \+short %destination</dnsV6Cmd>
      &nbsp; <doRandomWait>false</doRandomWait>
      &nbsp; <modifiedTime>Tue Feb&nbsp; 9 17:17:31 2010</modifiedTime>
      &nbsp; <waitInterval>30</waitInterval>
      


...

[slaconly]pinger_startup.pl

       This script , alleviates the need to pass multiple arguments to PingER2 everytime every time it needs to be run. It has some default values, that make the cronjob and the whole running a clean process.

       With out Without this script a typical run would look like this:

Code Block
cd /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger ;
perl /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger/pinger2.pl >
 /afs/slac.stanford.edu/package/pinger/pinger2/share/pinger/pingerCronStat.stdout;

...

dnsV4Cmd.pl

      This Command utilises utilizes the Perl utility gethostbyname() to determine, the ip address of a host, given a hostname.

...