Xymon Mailing List Archive search

if statment issue on ext script

list Steve Coile
Thu, 25 Sep 2014 11:07:07 -0400
Message-Id: <CAHr=BSSJsOBYZxMR67cGK_CHvVnzOAfCL+WzTtmAwA=user-2d090df83d7d@xymon.invalid>

It probably does expand, but it's never set because *$IP* never matches any
of the regular expressions.  An *else* statement with an error message will
show this.  Alternatively, in the definition of* $MSG*, give *$HOST* a
default value that makes this condition clear: *${HOST:-none}*.


-- 

*Steve Coile*Senior Network and Systems Engineer, McClatchy Interactive
<http://www.mcclatchyinteractive.com/>;
Office: XXX-XXX-XXXX | Mobile: XXX-XXX-XXXX | Fax: XXX-XXX-XXXX

On Thu, Sep 25, 2014 at 10:54 AM, James Louis <user-518fefde45bd@xymon.invalid> wrote:
His script works fine and he is looking for help in finding out why the
one variable doesn't expand. Once that is answered I'm sure he would be
glad to hear about other scripting advice.

Thanks,
Jim

On Thu, Sep 25, 2014 at 9:27 AM, Root, Paul T <user-76fdb6883669@xymon.invalid>
wrote:
 What’s with all the echos?  They are unnecessary and could be causing
issues. The following works fine:


if [[ $IP =~ ^10.xxx.xxx.1[0-9]; then

     HOST=’server33.test.corp.local’

fi


$ IP=10.5.102.13

$ if [[ $IP =~ ^10.5.10[0-9].13 ]]; then
   echo "$IP is a match"
fi
10.5.102.13 is a match

$ if [[ $IP =~ ^10.5.102.1[0-9] ]]; then    echo "$IP is a match"; fi

10.5.102.13 is a match

$ if [[ $IP =~ ^10.5.102.2[0-9] ]]; then    echo "$IP is a match"; fi


*From:* Xymon [mailto:xymon-bounces at xymon.com] *On Behalf Of *Simioni,
Rodney
*Sent:* Thursday, September 25, 2014 8:20 AM
*To:* James Louis; usa ims
*Cc:* xymon at xymon.com
*Subject:* Re: [Xymon] if statment issue on ext script


Sorry about that.

The issue is that $HOST is not printed in the output next to SERVER.


$BBHOME/bin/bbhostgrep $TESTNAME | while read IP HOSTNAME OTHER; do

  if do_fetch $HOSTNAME $IP | grep "$REGEX" > /dev/null ; then


if [[ `echo "$IP"` =~ ^10.xxx.xxx.1[0-9] ]]; then

HOST=`echo "server33.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.2[0-9] ]]; then

HOST=`echo "server34.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.3[0-9] ]]; then

HOST=`echo "server35.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.4[0-9] ]]; then

HOST=`echo "server36.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.5[0-9] ]]; then

HOST=`echo "server37.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.6[0-9] ]]; then

HOST=`echo "server38.test.corp.local"`


elif [[ `echo "$IP"` =~ ^10.xxx.xxx.7[0-9] ]]; then

HOST=`echo "server39.test.corp.local"`

fi


if [ $(echo "$X < 10" | bc) -ne 0 ]; then

            COL=green

            MSG="

            BIG BROTHER MESSAGE


            DATACENTER : D1

            SERVER : "$HOST"

            STATE : Normal

            STATUS : Green

            TEST : TestProd EchoTest

            RESPONSE SUCCEEDED : "$X" sec

            IP : "$IP"

            EVENT TIME : `date +"%c"`


            "


           $BB $BBDISP "status $HOSTNAME.$TESTNAME $COL

           $MSG"

#########################

Here is the output – notice that server is empty:


XYMON MESSAGE
            DATACENTER : D1
            SERVER :
            STATE : Normal
            STATUS : Green
            TEST : test
            RESPONSE SUCCEEDED : .079411876 sec
            IPADDRESS : 10.xxx.xxx.xxx
            EVENT TIME : Wed 24 Sep 2014 05:48:21 PM EDT


*From:* Xymon [mailto:xymon-bounces at xymon.com <xymon-bounces at xymon.com>] *On
Behalf Of *James Louis
*Sent:* Thursday, September 25, 2014 9:06 AM
*To:* usa ims
*Cc:* xymon at xymon.com
*Subject:* Re: [Xymon] if statment issue on ext script


On Wed, Sep 24, 2014 at 4:55 PM, usa ims via Xymon <xymon at xymon.com>
wrote:

XYMON MESSAGE
            DATACENTER : D1
            SERVER :
            STATE : Normal
            STATUS : Green
            TEST : test
            RESPONSE SUCCEEDED : .079411876 sec
            IPADDRESS : 10.xxx.xxx.xxx
            EVENT TIME : Wed 24 Sep 2014 05:48:21 PM EDT


Why is there more to your MSG than what is in your script?

Jim


--


*     Jim Louis        \\\\||////        \ ~ ~  /        | @ @ |*

*--oOo---(_)---oOo--*

"If a free society cannot help the many who are poor, it cannot save the
few who are rich." ~ John Kennedy
--


*     Jim Louis       \\\\||////       \ ~ ~  /       | @ @ |*


*--oOo---(_)---oOo--*

"If a free society cannot help the many who are poor, it cannot save the
few who are rich." ~ John Kennedy