Gary,

I am not sure that I ever got the health_check.pl script to work properly on 
2.2.1.

The health-check script works much better in the 2.3 series [1], so unless you 
want to dive into the $LIB/VCL/healthcheck.pm and $LIB/VCL/utils.pm perl code, 
you may want to hold off on this until you upgrade to a more recent version of 
the VCL.

The node.js module I wrote may still work on a 2.2.1 system -- I don't believe 
any of the database schema changes from 2.2 -> 2.3 would affect it; I just 
haven't tested it on anything other than 2.3.x.

Aaron

[1] https://issues.apache.org/jira/browse/VCL-468

On Apr 19, 2013, at 6:32 PM, Gary Trail <[email protected]> wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> version 2.2.1 and simply (as root)
> 
>       cd /usr/local/vcl/bin
> running it from the command line
>       ./health_check.pl
> 
> Gary
> 
> 
> Aaron Coburn wrote the following on 4/19/2013 5:33 PM:
>> No, this is definitely not normal output.
>> 
>> What version of the VCL are you using? And how are you invoking the
>> script?
>> 
>> Aaron
>> 
>> On Apr 19, 2013, at 4:32 PM, Gary Trail <[email protected]> wrote:
>> 
>> Thanks Aaron -
>> 
>> I've been meaning to get health_check.pl running but each time I
>> try I get the following warnings and after 10 minutes or so, no
>> output so I deferred until I had more time to delve into the
>> script.
>> 
>> Is this output normal?
>> 
>> Thanks Gary --------------- Prototype mismatch: sub
>> VCL::health_check::help: none vs () at ./health_check.pl line 62
>> (#1) (S prototype) The subroutine being declared or defined had 
>> previously been declared or defined with a different function
>> prototype.
>> 
>> Prototype mismatch: sub VCL::health_check::help: none vs () at 
>> ./health_check.pl line 163 (#1)
>> 
>> Subroutine help redefined at ./health_check.pl line 152 (#2) (W
>> redefine) You redefined a subroutine.  To suppress this warning,
>> say
>> 
>> { no warnings 'redefine'; eval "sub name { ... }"; }
>> 
>> Use of uninitialized value in concatenation (.) or string at 
>> /usr/local/vcl/bin/../lib/VCL/utils.pm line 7651 (#3) (W
>> uninitialized) An undefined value was used as if it were already 
>> defined.  It was interpreted as a "" or a 0, but maybe it was a 
>> mistake. To suppress this warning assign a defined value to your
>> variables.
>> 
>> To help you figure out what was undefined, perl tells you what 
>> operation you used the undefined value in.  Note, however, that
>> perl optimizes your program and the operation displayed in the
>> warning may not necessarily appear literally in your program.  For
>> example, "that $foo" is usually optimized into "that " . $foo, and
>> the warning will refer to the concatenation (.) operator, even
>> though there is no . in your program.
>> 
>> Use of uninitialized value in string eq at
>> 
>> /usr/local/vcl/bin/../lib/VCL/Module/Provisioning/VMware/VMware.pm 
>> line 308 (#3) Use of uninitialized value in pattern match (m//) at 
>> /usr/local/vcl/bin/../lib/VCL/healthcheck.pm line 480 (#3) Use of
>> uninitialized value in concatenation (.) or string at 
>> /usr/local/vcl/bin/../lib/VCL/healthcheck.pm line 494 (#3) Use of
>> uninitialized value in pattern match (m//) at 
>> /usr/local/vcl/bin/../lib/VCL/healthcheck.pm line 283 (#3) Use of
>> uninitialized value in concatenation (.) or string at 
>> /usr/local/vcl/bin/../lib/VCL/healthcheck.pm line 343 (#3) 
>> ----------------
>> 
>> 
>> Aaron Coburn wrote the following on 4/19/2013 11:41 AM:
>>>>> Hi, Folks,
>>>>> 
>>>>> Many of you probably already use the 'health_check.pl' script
>>>>> to monitor your VCL system. If you are not familiar with it,
>>>>> it resides in
>>>>> 
>>>>> $VCL_HOME/bin/health_check.pl
>>>>> 
>>>>> It can be run directly from the command line or set to run on
>>>>> a cron job. It verifies that each computer (for a given
>>>>> management node) is operating properly. It also can be used
>>>>> to power down compute nodes (though I have never used it for
>>>>> this purpose).
>>>>> 
>>>>> The script is really solid, but it can take a long time to 
>>>>> complete, especially if your management nodes each control a
>>>>> large number of machines. In my experience, it typically
>>>>> takes about 10 minutes for every 50 computers. This isn't
>>>>> necessarily a problem, but if I want to just get a quick
>>>>> snapshot of the overall system health, it is sometimes too
>>>>> long to wait.
>>>>> 
>>>>> So, I wrote a node.js module [1] that runs *significantly*
>>>>> faster -- that is, it checks an entire system in only a few
>>>>> seconds. It is also a comparatively much lighter load on the
>>>>> management node (no externally spawned processes, only a
>>>>> single database query, etc).
>>>>> 
>>>>> The module allows you to write a complete monitoring script
>>>>> like so:
>>>>> 
>>>>> ============================== var health = 
>>>>> require('vcl-utils').Health;
>>>>> 
>>>>> health.on('error', function(err) { console.log('ERROR :: ' +
>>>>> err); });
>>>>> 
>>>>> health.on('info', function(msg) { console.log('INFO :: ' +
>>>>> msg); });
>>>>> 
>>>>> health.check(); ==============================
>>>>> 
>>>>> Let me know if you have any questions or if you have ideas
>>>>> for improving this.
>>>>> 
>>>>> Best regards,
>>>>> 
>>>>> Aaron
>>>>> 
>>>>> 
>>>>> [1] https://github.com/acoburn/vcl-utils
>>>>> 
>>>>> 
>>>>> 
>>>>> -- Aaron Coburn Systems Administrator and Programmer Academic
>>>>> Technology Services, Amherst College 
>>>>> [email protected]<mailto:[email protected]>
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>> 
>> 
>> 
> 
> - -- 
> Gary Trail
> Director of Network Services
> Rensselaer Hartford Graduate Center
> 860-548-7869
> [email protected]
> - ----------------------
> Go Green, Keep it on the Screen
> Please Consider the Environment
> Before Printing this Message.
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (MingW32)
> 
> iQEcBAEBAgAGBQJRccYLAAoJENG9onuHOfZFrKkH/1s6FkWAkYPSerrwKdCjfobl
> tgbd9jdYhfyng2uyevquexnwXOTTJwdakmS2omMMLhJ2GqJyUVgaAjGyNA1wPQyk
> iSgirvkLgmntIpEDYV5KM6vS1EJVmpNsClV5Vfww8usFmF+Pqvz76MV/kqybKJlV
> rRGhqxIanIl16+Trfi02E+MO5QAR38XguQBn0674wDB36fKeSISUzOrCLL75aQCz
> h3gDv+i3r6iDHwgJNyADHHR4PjRjKDSfozuVzTHPLZlRGjYm/+EmaHoe9qPl/17T
> 0tINSPx0nQN4+LNPeBsbSCs0B4i768vi44kP8IBD/r/zEFM51by8wf0ktaXb7SQ=
> =kN+w
> -----END PGP SIGNATURE-----

Reply via email to