mirror of https://github.com/oxen-io/lokinet
commit
ef7d2c8de9
@ -0,0 +1,20 @@
|
||||
#include <util/json_logger.hpp>
|
||||
#include <util/json.hpp>
|
||||
|
||||
namespace llarp
|
||||
{
|
||||
void
|
||||
JSONLogStream::AppendLog(LogLevel lvl, const char* fname, int lineno,
|
||||
const std::string& nodename, const std::string msg)
|
||||
{
|
||||
json::Object obj;
|
||||
obj["time"] = llarp::time_now_ms();
|
||||
obj["nickname"] = nodename;
|
||||
obj["file"] = std::string(fname);
|
||||
obj["line"] = lineno;
|
||||
obj["level"] = LogLevelToString(lvl);
|
||||
obj["message"] = msg;
|
||||
m_Lines.emplace_back(obj.dump());
|
||||
}
|
||||
|
||||
} // namespace llarp
|
@ -0,0 +1,22 @@
|
||||
#ifndef LLARP_UTIL_JSON_LOGGER
|
||||
#define LLARP_UTIL_JSON_LOGGER
|
||||
|
||||
#include <util/file_logger.hpp>
|
||||
|
||||
namespace llarp
|
||||
{
|
||||
struct JSONLogStream : public FileLogStream
|
||||
{
|
||||
JSONLogStream(thread::ThreadPool* disk, FILE* f, llarp_time_t flushInterval,
|
||||
bool closeFile)
|
||||
: FileLogStream(disk, f, flushInterval, closeFile)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
AppendLog(LogLevel lvl, const char* fname, int lineno,
|
||||
const std::string& nodename, const std::string msg) override;
|
||||
};
|
||||
} // namespace llarp
|
||||
|
||||
#endif
|
@ -0,0 +1,22 @@
|
||||
#include <util/loglevel.hpp>
|
||||
|
||||
namespace llarp
|
||||
{
|
||||
std::string
|
||||
LogLevelToString(LogLevel lvl)
|
||||
{
|
||||
switch(lvl)
|
||||
{
|
||||
case eLogDebug:
|
||||
return "DBG";
|
||||
case eLogInfo:
|
||||
return "NFO";
|
||||
case eLogWarn:
|
||||
return "WRN";
|
||||
case eLogError:
|
||||
return "ERR";
|
||||
default:
|
||||
return "???";
|
||||
}
|
||||
}
|
||||
} // namespace llarp
|
Loading…
Reference in New Issue