Xymon Mailing List Archive search

dnsreg script question

list John Tullis
Tue, 24 Mar 2015 18:50:03 +0000
Message-Id: <user-73c0602df3ef@xymon.invalid>

Apologies for resurrecting an old thread.

I added the sleep to the command because I'm running bbcmd on a few hundred domains. The script failed to run and I'm not sure why.

My other issue is that there are a few domains that I want to run individually instead of it running the script on all the domains. Is there a way to kick off a test for a single host?
I tried using "bbcmd hobbitd_alert --test domain.com dnsreg" but that only told me what alert rules applied to this but didn't update anything. Is there some command where I can tell a specific domain to do a fresh dnsreg?

John Tullis


Ok let me tweak it around. What does this line do anyhow? I keep seeing

that pop up and then the error about command being not found


thanks


"status+90000 $DOMAIN.dnsreg $COLOR `date`


From: Dugan, Darin D [EIT] [mailto:user-b33a1547d27a@xymon.invalid<

Sent: Friday, September 21, 2012 10:50 AM

To: Russell Blumenthal; xymon at xymon.com<

Subject: RE: dnsreg script question


Rereading your message, it seems perhaps $XYMON or $XYMDISP are not

populated. Are you running this under xymoncmd to set the environment? I

run from cron daily with:


/home/xymon/server/bin/xymoncmd

--env=/home/xymon/server/etc/xymonserver.cfg

/home/xymon/server/ext/dnsreg


A few other differences in my script:


1.       I'm using $XYMSRV instead of $XYMDISP. Hmm...I don't have a

$XYMDISP anywhere, maybe $BBDISP wasn't updated to $XYMSRV properly?


2.       Added a "sleep 60" command before "done". Whois seems to get

angry with me if I query a bunch of domains in quick succession.


3.       Had to modify the sed commands for EXPIRESTRING:

EXPIRESTRING="`whois $DOMAIN | egrep -i

"Expires.*:|Expiration.*:|Renewal.*:" | head -n 1 | cut -d: -f2 | sed

-e's/^\s*//' | sed -e's/\s.*//'`"


Cheers.


From: Russell Blumenthal [mailto:user-b99daaa10117@xymon.invalid<

Sent: Friday, September 21, 2012 8:09 AM

To: Dugan, Darin D [EIT]; xymon at xymon.com<

Subject: RE: dnsreg script question


I installed  'whois' and I am able to do a manual query 'whois

domain.com'. but unable to run the script manually to test it.


From: Dugan, Darin D [EIT] [mailto:user-b33a1547d27a@xymon.invalid<

Sent: Friday, September 21, 2012 9:05 AM

To: Russell Blumenthal; xymon at xymon.com<

Subject: RE: dnsreg script question


I'm guessing you don't have 'whois' available or in the path.


From: xymon-bounces at xymon.com< [mailto:xymon-bounces at xymon.com< On Behalf

Of Russell Blumenthal

Sent: Thursday, September 20, 2012 4:30 PM

To: xymon at xymon.com<

Subject: [Xymon] dnsreg script question


I am having an issue trying to get the dnsreg script working. I install

it and all and when I go to test it I get this (I took out my domain).

Any help would be appreciated.


Thanks


./dnsreg.sh: line 31: status+90000 mydomain.com.dnsreg red Thu Sep 20

17:27:42 EDT 2012


Domain mydomain.com expires on


: command not found


The script looks like this:


#!/bin/sh


# Check DNS registrations in whois and warn when they are about to

expire.


#


# NOTE: Requires a "whois" command that knows what servers to query.


#       Requires GNU date.


#       Should run only once a day.


NOW=`date "+%s"`


WARNTIME=`expr $NOW + 864000`        # 10 days


ALARMTIME=`expr $NOW + 432000`       # 5 day


/home/xymon/server/bin/xymongrep dnsreg | while read L


do


      set $L


      DOMAIN=$2


      EXPIRESTRING="`whois $DOMAIN | egrep -i

"Expires.*:|Expiration.*:|Renewal.*:" | head -n 1 | cut -d: -f2 | sed

-e's/^[     ]*//'`"


      EXPIRES=`date --date="$EXPIRESTRING" "+%s"`


      if test $EXPIRES -le $ALARMTIME


      then


         COLOR=red


      elif test $EXPIRES -le $WARNTIME


      then


         COLOR=yellow


      else


         COLOR=green


      fi


      $XYMON $XYMDISP "status+90000 $DOMAIN.dnsreg $COLOR `date`


Domain $DOMAIN expires on $EXPIRESTRING


"


done