Browse Source

circuit: Log n_circ_id and global identifier

When we can, log the n circuit id and global identifier for origin circuit.

Signed-off-by: David Goulet <dgoulet@torproject.org>
David Goulet 6 years ago
parent
commit
317dabc57f
2 changed files with 18 additions and 6 deletions
  1. 11 3
      src/or/circuitlist.c
  2. 7 3
      src/or/circuituse.c

+ 11 - 3
src/or/circuitlist.c

@@ -1027,6 +1027,11 @@ circuit_free(circuit_t *circ)
    * "active" checks will be violated. */
   cell_queue_clear(&circ->n_chan_cells);
 
+  log_info(LD_CIRC, "Circuit %u (id: %" PRIu32 ") has been freed.",
+           circ->n_circ_id,
+           CIRCUIT_IS_ORIGIN(circ) ?
+              TO_ORIGIN_CIRCUIT(circ)->global_identifier : 0);
+
   if (should_free) {
     memwipe(mem, 0xAA, memlen); /* poison memory */
     tor_free(mem);
@@ -1913,9 +1918,12 @@ circuit_mark_for_close_, (circuit_t *circ, int reason, int line,
 
   smartlist_add(circuits_pending_close, circ);
 
-  log_info(LD_GENERAL, "Circuit %u marked for close at %s:%d (orig reason: "
-                       "%u, new reason: %u)",
-           circ->n_circ_id, file, line, orig_reason, reason);
+  log_info(LD_GENERAL, "Circuit %u (id: %" PRIu32 ") marked for close at "
+                       "%s:%d (orig reason: %u, new reason: %u)",
+           circ->n_circ_id,
+           CIRCUIT_IS_ORIGIN(circ) ?
+              TO_ORIGIN_CIRCUIT(circ)->global_identifier : 0,
+           file, line, orig_reason, reason);
 }
 
 /** Called immediately before freeing a marked circuit <b>circ</b> from

+ 7 - 3
src/or/circuituse.c

@@ -1752,13 +1752,17 @@ circuit_build_failed(origin_circuit_t *circ)
         already_marked = 1;
       }
       log_info(LD_OR,
-               "Our circuit failed to get a response from the first hop "
-               "(%s). I'm going to try to rotate to a better connection.",
+               "Our circuit %u (id: %" PRIu32 ") failed to get a response "
+               "from the first hop (%s). I'm going to try to rotate to a "
+               "better connection.",
+               TO_CIRCUIT(circ)->n_circ_id, circ->global_identifier,
                channel_get_canonical_remote_descr(n_chan));
       n_chan->is_bad_for_new_circs = 1;
     } else {
       log_info(LD_OR,
-               "Our circuit died before the first hop with no connection");
+               "Our circuit %u (id: %" PRIu32 ") died before the first hop "
+               "with no connection",
+               TO_CIRCUIT(circ)->n_circ_id, circ->global_identifier);
     }
     if (n_chan_id && !already_marked) {
       /* New guard API: we failed. */