[tor-commits] [tor/maint-0.4.0] Improve logging for 28614.

teor at torproject.org teor at torproject.org
Tue Apr 9 01:38:28 UTC 2019


commit 5613968d57cb07cc5a66e97c58bd39c22b86a50a
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Apr 3 14:30:56 2019 -0400

    Improve logging for 28614.
    
    When we fixed 28614, our answer was "if we failed to load the
    consensus on windows and it had a CRLF, retry it."  But we logged
    the failure at "warn", and we only logged the retry at "info".
    
    Now we log the retry at "notice", with more useful information.
    
    Fixes bug 30004.
---
 changes/bug28614_better_logging      | 6 ++++++
 src/feature/nodelist/networkstatus.c | 7 +++++--
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/changes/bug28614_better_logging b/changes/bug28614_better_logging
new file mode 100644
index 000000000..26d19c3c1
--- /dev/null
+++ b/changes/bug28614_better_logging
@@ -0,0 +1,6 @@
+  o Minor bugfixes (logging):
+    - On Windows, when errors cause us to reload a consensus from disk, tell
+      the user that we are retrying at log level "notice". Previously we only
+      logged this information at "info", which was confusing because the
+      errors themselves were logged at "warning". Improves previous fix for
+      28614.  Fixes bug 30004; bugfix on 0.4.0.2-alpha.
diff --git a/src/feature/nodelist/networkstatus.c b/src/feature/nodelist/networkstatus.c
index 023115978..a988f700f 100644
--- a/src/feature/nodelist/networkstatus.c
+++ b/src/feature/nodelist/networkstatus.c
@@ -1761,8 +1761,11 @@ reload_consensus_from_file(const char *fname,
                                                flavor, flags, source_dir);
 #ifdef _WIN32
   if (rv < 0 && tor_memstr(map->data, map->size, "\r\n")) {
-    log_info(LD_GENERAL, "Found CRLF in consensus file %s; falling back to "
-             "read_file_to_string.", escaped(fname));
+    log_notice(LD_GENERAL, "Looks like the above failures are probably "
+               "because of a CRLF in consensus file %s; falling back to "
+               "read_file_to_string. Nothing to worry about: this file "
+               "was probably saved by an earlier version of Tor.",
+               escaped(fname));
     char *content = read_file_to_str(fname, RFTS_IGNORE_MISSING, NULL);
     rv = networkstatus_set_current_consensus(content, strlen(content),
                                              flavor, flags, source_dir);





More information about the tor-commits mailing list