summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 8a43edb)
raw | patch | inline | side by side (parent: 8a43edb)
author | Ton Voon <tonvoon@users.sourceforge.net> | |
Wed, 12 Mar 2003 00:08:19 +0000 (00:08 +0000) | ||
committer | Ton Voon <tonvoon@users.sourceforge.net> | |
Wed, 12 Mar 2003 00:08:19 +0000 (00:08 +0000) |
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@400 f882894a-f735-0410-b71e-b25c423dba1c
plugins/check_dns.c | patch | blob | history |
diff --git a/plugins/check_dns.c b/plugins/check_dns.c
index 7c79893ab7dc4b6ea0d008911254a480160bd7e9..fd798a6042b91b24238eb0a321341496e94c8425 100644 (file)
--- a/plugins/check_dns.c
+++ b/plugins/check_dns.c
char *address = NULL;
char *temp_buffer = NULL;
int result = STATE_UNKNOWN;
+ double elapsed_time;
+ struct timeval tv;
+ int multi_address;
/* Set signal handling and alarm */
if (signal (SIGALRM, popen_timeout_alarm_handler) == SIG_ERR) {
asprintf (&command_line, "%s %s %s", NSLOOKUP_COMMAND, query_address, dns_server);
alarm (timeout_interval);
- time (&start_time);
+ gettimeofday (&tv, NULL);
if (verbose)
printf ("%s\n", command_line);
asprintf(&output, "expected %s but got %s", expected_address, address);
}
- (void) time (&end_time);
+ elapsed_time = delta_time (tv);
- if (result == STATE_OK)
- printf ("DNS ok - %d seconds response time, Address(es) is/are %s\n",
- (int) (end_time - start_time), address);
+ if (result == STATE_OK) {
+ if (strchr (address, ',') == NULL)
+ multi_address = FALSE;
+ else
+ multi_address = TRUE;
+
+ printf ("DNS ok - %-7.3f seconds response time, address%s %s|time=%-7.3f\n",
+ elapsed_time, (multi_address==TRUE ? "es are" : " is"), address, elapsed_time);
+ }
else if (result == STATE_WARNING)
printf ("DNS WARNING - %s\n",
!strcmp (output, "") ? " Probably a non-existent host/domain" : output);