Go to the documentation of this file.
17 #ifndef USGOV_bea2100f468b294b47083faa221c8529bb0e719ce9bb9c41938e5e7b9f2a8d7d
18 #define USGOV_bea2100f468b294b47083faa221c8529bb0e719ce9bb9c41938e5e7b9f2a8d7d
20 #include <unordered_map>
28 #include <sys/types.h>
34 namespace us {
namespace dbg {
36 using namespace chrono;
45 void start(
const string& dir,
const string& n);
48 template<
typename... F>
49 void log(
const string&log_level_,
const string&log_class_,
const F&... s) {
50 get_task().log(log_level_, log_class_, s...);
54 void logdump(
const string&log_level_,
const string&log_class_,
const O& o) {
55 get_task().logdump(log_level_, log_class_, o);
59 void logdump(
const string&log_level_,
const string&log_class_,
const string&prefix,
const O& o) {
60 get_task().logdump(log_level_, log_class_, prefix, o);
64 get_task().log_stacktrace();
static void pstart(const string &n)
void logdump(const string &log_level_, const string &log_class_, const O &o)
Definition: thread_logger.h:54
void log_info(ostream &os) const
const task & get_task() const
void log_stacktrace() const
Definition: thread_logger.h:63
void start(const string &dir, const string &n)
uint64_t tsorig
Definition: thread_logger.h:73
void log(const string &log_level_, const string &log_class_, const F &... s)
Definition: thread_logger.h:49
const string & get_logdir() const
#define log_info
Definition: gov.h:88
void logdump(const string &log_level_, const string &log_class_, const string &prefix, const O &o)
Definition: thread_logger.h:59
Definition: client.cpp:417
Definition: thread_logger.h:38
static thread_logger instance
Definition: thread_logger.h:75
us::dbg::thread_logger c
Definition: thread_logger.cpp:26
mutex mx
Definition: thread_logger.h:74
#define LOGDIR
Definition: config.h:12