diff options
-rw-r--r-- | src/or/config.c | 1 | ||||
-rw-r--r-- | src/or/main.c | 6 | ||||
-rw-r--r-- | src/or/or.h | 1 | ||||
-rw-r--r-- | src/or/rephist.c | 2 |
4 files changed, 7 insertions, 3 deletions
diff --git a/src/or/config.c b/src/or/config.c index 4606ac166..43edabb68 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -163,6 +163,7 @@ static config_var_t _config_vars[] = { VAR("LongLivedPorts", CSV, LongLivedPorts, "21,22,706,1863,5050,5190,5222,5223,6667,8300,8888"), VAR("PathlenCoinWeight", DOUBLE, PathlenCoinWeight, "0.3"), VAR("RedirectExit", LINELIST, RedirectExit, NULL), + VAR("RephistTrackTime", INTERVAL, RephistTrackTime, "24 hours"), OBSOLETE("RouterFile"), VAR("RunAsDaemon", BOOL, RunAsDaemon, "0"), VAR("RunTesting", BOOL, RunTesting, "0"), diff --git a/src/or/main.c b/src/or/main.c index f85554e5c..af891fb3c 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -709,7 +709,7 @@ run_scheduled_events(time_t now) } /* Also, take this chance to remove old information from rephist. */ - rep_history_clean(now-24*60*60); + rep_history_clean(now - options->RephistTrackTime); } if (time_to_fetch_running_routers < now) { @@ -873,8 +873,10 @@ second_elapsed_callback(int fd, short event, void *args) current_second = now.tv_sec; /* remember which second it is, for next time */ #if 0 - if (current_second % 60 == 0) + if (current_second % 300 == 0) { + rep_history_clean(now - options->RephistTrackTime); dumpmemusage(get_min_log_level()<LOG_INFO ? get_min_log_level() : LOG_INFO); + } #endif if (evtimer_add(timeout_event, &one_second)) diff --git a/src/or/or.h b/src/or/or.h index 6992750df..0c788904a 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -1173,6 +1173,7 @@ typedef struct { int UseHelperNodes; /**< Boolean: Do we try to enter from a smallish number * of fixed nodes? */ int NumHelperNodes; /**< How many helper nodes do we try to establish? */ + int RephistTrackTime; /**< How many seconds do we keep rephist info? */ } or_options_t; #define MAX_SOCKS_REPLY_LEN 1024 diff --git a/src/or/rephist.c b/src/or/rephist.c index ea8756a72..f208bf95f 100644 --- a/src/or/rephist.c +++ b/src/or/rephist.c @@ -290,7 +290,7 @@ rep_hist_dump_stats(time_t now, int severity) unsigned long upt, downt; routerinfo_t *r; - rep_history_clean(now-24*60*60); + rep_history_clean(now - get_options()->RephistTrackTime); log(severity, "--------------- Dumping history information:"); |