[packages/nagios-plugin-check_domain] handle .uk domain
glen
glen at pld-linux.org
Fri Mar 8 10:56:14 CET 2013
commit 6e141f7abd5fb373e3d89058557678ce6e8fca89
Author: Elan Ruusamäe <glen at delfi.ee>
Date: Fri Mar 8 11:53:36 2013 +0200
handle .uk domain
check_domain | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
---
diff --git a/check_domain b/check_domain
index 4b9deb5..5cdf920 100755
--- a/check_domain
+++ b/check_domain
@@ -70,6 +70,17 @@ month2moy() {
}'
}
+# convert short month name to month number (Month Of Year)
+mon2moy() {
+ awk -vmonth="$1" 'BEGIN {
+ split("Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec", months, " ");
+ for (i in months) {
+ Month[months[i]] = i;
+ }
+ print Month[month];
+ }'
+}
+
while :; do
case "$1" in
-c|--critical) critical=$2; shift 2;;
@@ -97,6 +108,8 @@ fi
out=$($whois $domain)
+[ -z "$out" ] && die $STATE_UNKNOWN "UNKNOWN - Domain $domain doesn't exist or no WHOIS server available."
+
# Calculate days until expiration
case "$domain" in
*.ru)
@@ -118,12 +131,18 @@ case "$domain" in
set -- "$1" "$(month2moy $2)" "$3"
expiration="$1-$2-$3"
;;
+*.uk)
+ # Expiry date: 05-Dec-2014
+ set -- $(echo "$out" | awk '/Expiry date:/{split($3, a, "-"); printf("%s %s %s\n", a[3], a[2], a[1])}')
+ set -- "$1" "$(mon2moy $2)" "$3"
+ expiration="$1-$2-$3"
+ ;;
*)
expiration=$(echo "$out" | awk -F: '/Expiration Date:/{print substr($0, length($1) + 2)}')
;;
esac
-[ -z "$expiration" ] && die $STATE_UNKNOWN "UNKNOWN - Domain $domain doesn't exist or no WHOIS server available."
+[ -z "$expiration" ] && die $STATE_UNKNOWN "UNKNOWN - Unable to figure out expiration date for $domain Domain."
expseconds=$(date +%s --date="$expiration")
expdate=$(date +'%Y-%m-%d' --date="$expiration")
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/nagios-plugin-check_domain.git/commitdiff/b90816566b56dd69e128c835543567673bce3b46
More information about the pld-cvs-commit
mailing list