[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [hobbit] Slightly OT: External Perl Script



Looks like your shell is processing the html as a command, try enclosing it
in single quotes (') instead of double quotes, like this:

system("$bb $bbhost 'status ${bbhostname}.ups $color $now ${msg}'");

Thanks,
Larry Barber

On 3/1/06, Taylor, Robert <Robert.Taylor (at) hendrickauto.com> wrote:
>
> All,
>
> This may be slightly off topic, but I figured that there is someone here
> that can help.  Over the past weekend I wrote my first Perl script to
> replace a number of aging shell scripts that I had.  What I have done is
> written Perl scripts to query Liebert UPS systems, Netbotz environment
> monitors and Juniper SSL VPN appliances.  Needless to say I am now a
> believer in how much faster Perl is than shell.  My scripts dropped from
> about almost two minutes to run to 8 seconds.
>
> I can see all of the output when I print to screen so I know that it is
> polling everything okay.  The problem that I am having is getting Perl
> to send this data to Hobbit.  It is just a formatting issue as I can
> have it send plain text fine, but I am trying to send HTML to create
> nice looking status pages.  I have looked at previous scripts, but they
> all use the BigBrother.pm module and I would like to get this working
> without that.  I am by no means a programmer but this problem is going
> to bother me until I can get it working.
>
> Perhaps someone could provide just a bit of Perl guidance?  The portion
> of the code that I think it is getting hung up on is the colons in the
> HTML, but I am not sure.
>
> sub sendupdates {
>
> $msg = <<EOM;
> <html><body><center>
> <!-- Created with Version 3 of the Liebert Test Script-->
> <table border=\"0\" align=\"center\" id=\"table1\"
> style=\"height: 197px; width: 649px;\">
>   <tbody>
>     <tr>
>       <th align=\"center\">
>       <hr width=\"100%\"></th>
>     </tr>
>
> < snip other HTML >
>
> </center>
> </body>
> </html>
>
> EOM
>
> my $now = localtime($^T) . "\n";
>
> if ($debug eq "yes"){
>         print "------------------- Time Stamp --------------------\n";
>         print "Time Stamp: $now\n";
>         print "------------------- HTML Output -------------------\n";
>         print $msg;
> }
>
>
> system("$bb $bbhost \"status ${bbhostname}.ups $color $now ${msg}\"");
>
>
> }
>
>
> The error messages that our output to the screen give the following:
>
> bb: incorrect number of arguments
> Format: <IP-ADDR> <DATA>
> sh: line 5: width:: command not found
> sh: line 13: >
>
> then there are also a lot of the following messages:
>
> sh: line 14: > </div>
>       <table id=table2 style=width:: No such file or directory
> sh: line 14: height:: command not found
> sh: line 17: >
>         <tbody>
>           <tr>
>             <th width=267style=font-weight:: command not found
> sh: line 17: text-align:: command not found
> sh: line 18: >Hostname:</th>
>
>
> Thanks in advance for any help.
>
> Robert Taylor
>
>
> To unsubscribe from the hobbit list, send an e-mail to
> hobbit-unsubscribe (at) hswn.dk
>
>
>