diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/main.cpp | 20 | ||||
-rw-r--r-- | src/socket.cpp | 5 | ||||
-rw-r--r-- | src/socket.h | 2 |
3 files changed, 20 insertions, 7 deletions
diff --git a/src/main.cpp b/src/main.cpp index 75ff569aa..fe1bcd450 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -90,8 +90,6 @@ Profiler *g_profiler = &main_profiler; // Connection std::ostream *dout_con_ptr = &dummyout; std::ostream *derr_con_ptr = &verbosestream; -//std::ostream *dout_con_ptr = &infostream; -//std::ostream *derr_con_ptr = &errorstream; // Server std::ostream *dout_server_ptr = &infostream; @@ -779,8 +777,12 @@ int main(int argc, char *argv[]) "Same as --world (deprecated)")); allowed_options.insert("world", ValueSpec(VALUETYPE_STRING, "Set world path (implies local game)")); - allowed_options.insert("verbose", ValueSpec(VALUETYPE_FLAG, + allowed_options.insert("info", ValueSpec(VALUETYPE_FLAG, "Print more information to console")); + allowed_options.insert("verbose", ValueSpec(VALUETYPE_FLAG, + "Print even more information to console")); + allowed_options.insert("trace", ValueSpec(VALUETYPE_FLAG, + "Print enormous amounts of information to log and console")); allowed_options.insert("logfile", ValueSpec(VALUETYPE_STRING, "Set logfile path ('' = no logging)")); allowed_options.insert("gameid", ValueSpec(VALUETYPE_STRING, @@ -833,9 +835,19 @@ int main(int argc, char *argv[]) Low-level initialization */ + // If trace is enabled, enable logging of certain things + if(cmd_args.getFlag("trace")){ + dstream<<"Enabling trace level debug output"<<std::endl; + dout_con_ptr = &verbosestream; + socket_enable_debug_output = true; + } // In certain cases, output info level on stderr - if(cmd_args.getFlag("verbose") || cmd_args.getFlag("speedtests")) + if(cmd_args.getFlag("info") || cmd_args.getFlag("verbose") || + cmd_args.getFlag("trace") || cmd_args.getFlag("speedtests")) log_add_output(&main_stderr_log_out, LMT_INFO); + // In certain cases, output verbose level on stderr + if(cmd_args.getFlag("verbose") || cmd_args.getFlag("trace")) + log_add_output(&main_stderr_log_out, LMT_VERBOSE); porting::signal_handler_init(); bool &kill = *porting::signal_handler_killstatus(); diff --git a/src/socket.cpp b/src/socket.cpp index ea65ffda3..caf1895fe 100644 --- a/src/socket.cpp +++ b/src/socket.cpp @@ -52,9 +52,8 @@ typedef int socket_t; #include <errno.h> #include "utility.h" -// Debug printing options -// Set to 1 for debug output -#define DP 0 +bool socket_enable_debug_output = false; +#define DP socket_enable_debug_output // This is prepended to everything printed here #define DPS "" diff --git a/src/socket.h b/src/socket.h index fe542dfcc..ac26b575c 100644 --- a/src/socket.h +++ b/src/socket.h @@ -23,6 +23,8 @@ with this program; if not, write to the Free Software Foundation, Inc., #include <ostream> #include "exceptions.h" +extern bool socket_enable_debug_output; + class SocketException : public BaseException { public: |