about summary refs log tree commit diff
path: root/src/settings.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/settings.rs')
-rw-r--r--src/settings.rs12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/settings.rs b/src/settings.rs
index 8444bf80eec8..1f205814d1dd 100644
--- a/src/settings.rs
+++ b/src/settings.rs
@@ -4,13 +4,16 @@ use log4rs::append::file::FileAppender;
 use log4rs::config::{Appender, Root};
 use log4rs::encode::pattern::PatternEncoder;
 
-#[derive(Debug, Deserialize)]
+#[derive(Debug, Deserialize, Clone)]
 pub struct Logging {
     #[serde(default = "Logging::default_level")]
     pub level: LevelFilter,
 
     #[serde(default = "Logging::default_file")]
     pub file: String,
+
+    #[serde(default = "Logging::default_print_backtrace")]
+    pub print_backtrace: bool,
 }
 
 impl Default for Logging {
@@ -18,6 +21,7 @@ impl Default for Logging {
         Logging {
             level: LevelFilter::Off,
             file: "debug.log".to_string(),
+            print_backtrace: true,
         }
     }
 }
@@ -44,9 +48,13 @@ impl Logging {
     fn default_file() -> String {
         Logging::default().file
     }
+
+    fn default_print_backtrace() -> bool {
+        Logging::default().print_backtrace
+    }
 }
 
-#[derive(Debug, Deserialize)]
+#[derive(Debug, Deserialize, Clone)]
 pub struct Settings {
     pub seed: Option<u64>,
     pub logging: Logging,