| [Date Prev] [Date Next] | [Thread Prev] [Thread Next] | [Date Index] [Thread Index] |
Re: [nocol-users] SQLMon
|
On Wed, 19 Jan 2000, Rick Beebe wrote:
> Date: Wed, 19 Jan 2000 12:47:47 -0500
> From: Rick Beebe <richard.beebe@yale.edu>
> To: nocol-users@navya.com
> Subject: Re: [nocol-users] SQLMon
>
> "Nathan Clemons [Staff]" wrote:
> >
> > I made some changes to the SQL monitor provided by Rick. Let me know how
> > this works for you all, seems to work beautifully for me.
>
> There are a few problems with it.
>
> foreach $item (@items ) {
> # ($host,$ipaddr) = split(/\t/,$item);
>
> $rc = 0;
> $failconnect = 0; <-- If you don't initialize this it retains its
> value for
> the next server
Caught that already, still working on this.
>
> print "(debug) dotest: connecting to database
> $data_source{$item} ($username{$item},
> $password{$item})\n" if $debug;
> if ($dbh = DBI->connect($data_source{$item}, $username{$item},
> $password{$item})) {
> print "(debug) dotest: running command $query_string{$item}\n" if
> $debug;
> if (!($rc = $dbh->do($query_string{$item}))) {
> print "(debug) $host : $dbh->errstr" if $debug;
>
> Because of the line commented out above, $host doesn't actually contain
> anything. Uncomment it or use $item. Also, I have trouble with $dbh->errstr
Caught that, too, and uncommented it.
> printing out within quotes. I'm sure there's some special syntax but I
> simply changed the print statement to
>
> print "(debug) $item : ".$dbh->errstr."\n" if $debug;
>
I'll change that locally here too. What about the $DBI::errstr?
> $failconnect = -1;
> }
> } else {
> print "(debug) $host : $DBI::errstr" if $debug; <-- same deal here
> $rc = $failconnect = -1; <-- Change this to -2
> }
>
> Then down a bit further:
> if ($failconnect > -1) { $dbh->disconnect; }
>
> change that to
> if ($failconnect > -2) { $dbh->disconnect; }
>
> We need to differentiate between a failure of DBI->connect (which doesn't
> need a subsequent disconnect) and a failure of $dbh->do (which still needs
> the disconnect).
Good catch, I missed that one completely.
I'm still working on SIGHUP'ing this puppy. Shouldn't take much more.
--Nathan.
____________________________________________________________________
Nathan Clemons, Systems Engineer
WinStar Internet and Hosting Services
800 South Main St. Mansfield, MA 02048
____________________________________________________________________
nclemons@winstar.com www.winstar.com (v) 800-234-0002 ext.1109
nathan@ici.net (f) 508-261-0430
|