Thanks Aaron -

We have 2.3 in the works so we'll just until then before implementing.

I'll give the node.js module a try on 2.2.1 and let you know.

Gary

Aaron Coburn wrote the following on 4/19/13 10:13 PM:
> 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