Commit a36ec61f authored by Nick Mathewson's avatar Nick Mathewson 🐻
Browse files

r11983@Kushana: nickm | 2007-01-16 10:28:47 -0500

 Be even more clever about severity of messages from eventdns: NOTICE when the first nameserver comes up; INFO on subsequent ones.


svn:r9364
parent 093d7176
...@@ -172,6 +172,8 @@ static void ...@@ -172,6 +172,8 @@ static void
evdns_log_cb(int warn, const char *msg) evdns_log_cb(int warn, const char *msg)
{ {
const char *cp; const char *cp;
static int all_down = 0;
int severity = warn ? LOG_WARN : LOG_INFO;
if (!strcmpstart(msg, "Resolve requested for") && if (!strcmpstart(msg, "Resolve requested for") &&
get_options()->SafeLogging) { get_options()->SafeLogging) {
log(LOG_INFO, LD_EXIT, "eventdns: Resolve requested."); log(LOG_INFO, LD_EXIT, "eventdns: Resolve requested.");
...@@ -185,7 +187,7 @@ evdns_log_cb(int warn, const char *msg) ...@@ -185,7 +187,7 @@ evdns_log_cb(int warn, const char *msg)
/* Don't warn about a single failed nameserver; we'll warn with 'all /* Don't warn about a single failed nameserver; we'll warn with 'all
* nameservers have failed' if we're completely out of nameservers; * nameservers have failed' if we're completely out of nameservers;
* otherwise, the situation is tolerable. */ * otherwise, the situation is tolerable. */
warn = 0; severity = LOG_INFO;
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"NAMESERVER_STATUS NS=%s STATUS=DOWN ERR=%s", "NAMESERVER_STATUS NS=%s STATUS=DOWN ERR=%s",
ns, escaped(err)); ns, escaped(err));
...@@ -193,14 +195,16 @@ evdns_log_cb(int warn, const char *msg) ...@@ -193,14 +195,16 @@ evdns_log_cb(int warn, const char *msg)
} else if (!strcmpstart(msg, "Nameserver ") && } else if (!strcmpstart(msg, "Nameserver ") &&
(cp=strstr(msg, " is back up"))) { (cp=strstr(msg, " is back up"))) {
char *ns = tor_strndup(msg+11, cp-(msg+11)); char *ns = tor_strndup(msg+11, cp-(msg+11));
warn = 0; /* It's never a warning when a nameserver comes back up. */ severity = all_down ? LOG_NOTICE : LOG_INFO;
all_down = 0;
control_event_server_status(LOG_NOTICE, control_event_server_status(LOG_NOTICE,
"NAMESERVER_STATUS NS=%s STATUS=UP", ns); "NAMESERVER_STATUS NS=%s STATUS=UP", ns);
tor_free(ns); tor_free(ns);
} else if (!strcmp(msg, "All nameservers have failed")) { } else if (!strcmp(msg, "All nameservers have failed")) {
control_event_server_status(LOG_WARN, "NAMESERVER_ALL_DOWN"); control_event_server_status(LOG_WARN, "NAMESERVER_ALL_DOWN");
all_down = 1;
} }
log(warn?LOG_WARN:LOG_INFO, LD_EXIT, "eventdns: %s", msg); log(severity, LD_EXIT, "eventdns: %s", msg);
} }
#endif #endif
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment