Fixed Tools to work with new logging framework
This commit is contained in:
parent
bf0050e066
commit
be780b380e
@ -39,14 +39,12 @@ set_exe_flags()
|
||||
set(SHARED_SRC
|
||||
../../src/StringCompression.cpp
|
||||
../../src/StringUtils.cpp
|
||||
../../src/Log.cpp
|
||||
../../src/MCLogger.cpp
|
||||
../../src/Listeners.cpp
|
||||
../../src/LogDispacher.cpp
|
||||
)
|
||||
set(SHARED_HDR
|
||||
../../src/ByteBuffer.h
|
||||
../../src/StringUtils.h
|
||||
../../src/Log.h
|
||||
../../src/MCLogger.h
|
||||
)
|
||||
flatten_files(SHARED_SRC)
|
||||
flatten_files(SHARED_HDR)
|
||||
|
@ -5,7 +5,8 @@
|
||||
|
||||
#include "Globals.h"
|
||||
#include "MCADefrag.h"
|
||||
#include "MCLogger.h"
|
||||
#include "LogDispacher.h"
|
||||
#include "Listeners.h"
|
||||
#include "zlib/zlib.h"
|
||||
|
||||
|
||||
@ -21,7 +22,13 @@ static const Byte g_Zeroes[4096] = {0};
|
||||
|
||||
int main(int argc, char ** argv)
|
||||
{
|
||||
new cMCLogger(Printf("Defrag_%08x.log", time(NULL)));
|
||||
Logger::cLoggerListener * consoleLogListener = Logger::MakeConsoleListener();
|
||||
Logger::cLoggerListener * fileLogListener = new Logger::cFileListener();
|
||||
Logger::GetInstance().AttachListener(consoleLogListener);
|
||||
Logger::GetInstance().AttachListener(fileLogListener);
|
||||
|
||||
Logger::InitiateMultithreading();
|
||||
|
||||
cMCADefrag Defrag;
|
||||
if (!Defrag.Init(argc, argv))
|
||||
{
|
||||
@ -30,6 +37,11 @@ int main(int argc, char ** argv)
|
||||
|
||||
Defrag.Run();
|
||||
|
||||
Logger::GetInstance().DetachListener(consoleLogListener);
|
||||
delete consoleLogListener;
|
||||
Logger::GetInstance().DetachListener(fileLogListener);
|
||||
delete fileLogListener;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -34,20 +34,18 @@ set_exe_flags()
|
||||
set(SHARED_SRC
|
||||
../../src/ByteBuffer.cpp
|
||||
../../src/StringUtils.cpp
|
||||
../../src/Log.cpp
|
||||
../../src/MCLogger.cpp
|
||||
../../src/PolarSSL++/AesCfb128Decryptor.cpp
|
||||
../../src/PolarSSL++/AesCfb128Encryptor.cpp
|
||||
../../src/PolarSSL++/CryptoKey.cpp
|
||||
../../src/PolarSSL++/CtrDrbgContext.cpp
|
||||
../../src/PolarSSL++/EntropyContext.cpp
|
||||
../../src/PolarSSL++/RsaPrivateKey.cpp
|
||||
../../src/Listeners.cpp
|
||||
../../src/LogDispacher.cpp
|
||||
)
|
||||
set(SHARED_HDR
|
||||
../../src/ByteBuffer.h
|
||||
../../src/StringUtils.h
|
||||
../../src/Log.h
|
||||
../../src/MCLogger.h
|
||||
../../src/PolarSSL++/AesCfb128Decryptor.h
|
||||
../../src/PolarSSL++/AesCfb128Encryptor.h
|
||||
../../src/PolarSSL++/CryptoKey.h
|
||||
|
@ -43,7 +43,6 @@ SET (SRCS
|
||||
LineBlockTracer.cpp
|
||||
LinearInterpolation.cpp
|
||||
Listeners.cpp
|
||||
Log.cpp
|
||||
LogDispacher.cpp
|
||||
Map.cpp
|
||||
MapManager.cpp
|
||||
@ -109,7 +108,6 @@ SET (HDRS
|
||||
LineBlockTracer.h
|
||||
LinearInterpolation.h
|
||||
LinearUpscale.h
|
||||
Log.h
|
||||
LogDispacher.h
|
||||
Map.h
|
||||
MapManager.h
|
||||
|
169
src/Log.cpp
169
src/Log.cpp
@ -1,169 +0,0 @@
|
||||
|
||||
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
|
||||
|
||||
#include "Log.h"
|
||||
|
||||
#include <fstream>
|
||||
#include <ctime>
|
||||
#include "OSSupport/IsThread.h"
|
||||
|
||||
#if defined(ANDROID_NDK)
|
||||
#include <android/log.h>
|
||||
#include "ToJava.h"
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
cLog* cLog::s_Log = NULL;
|
||||
|
||||
cLog::cLog(const AString & a_FileName)
|
||||
: m_File(NULL)
|
||||
{
|
||||
s_Log = this;
|
||||
|
||||
// create logs directory
|
||||
cFile::CreateFolder(FILE_IO_PREFIX + AString("logs"));
|
||||
|
||||
OpenLog((FILE_IO_PREFIX + AString("logs/") + a_FileName).c_str());
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
cLog::~cLog()
|
||||
{
|
||||
CloseLog();
|
||||
s_Log = NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
cLog * cLog::GetInstance()
|
||||
{
|
||||
if (s_Log != NULL)
|
||||
{
|
||||
return s_Log;
|
||||
}
|
||||
|
||||
new cLog("log.txt");
|
||||
return s_Log;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::CloseLog()
|
||||
{
|
||||
if (m_File)
|
||||
fclose (m_File);
|
||||
m_File = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::OpenLog( const char* a_FileName)
|
||||
{
|
||||
if (m_File) fclose (m_File);
|
||||
#ifdef _MSC_VER
|
||||
fopen_s( &m_File, a_FileName, "a+");
|
||||
#else
|
||||
m_File = fopen(a_FileName, "a+");
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::ClearLog()
|
||||
{
|
||||
#ifdef _MSC_VER
|
||||
if (fopen_s( &m_File, "log.txt", "w") == 0)
|
||||
fclose (m_File);
|
||||
#else
|
||||
m_File = fopen("log.txt", "w");
|
||||
if (m_File)
|
||||
fclose (m_File);
|
||||
#endif
|
||||
m_File = NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::Log(const char * a_Format, va_list argList)
|
||||
{
|
||||
AString Message;
|
||||
AppendVPrintf(Message, a_Format, argList);
|
||||
|
||||
time_t rawtime;
|
||||
time ( &rawtime);
|
||||
|
||||
struct tm* timeinfo;
|
||||
#ifdef _MSC_VER
|
||||
struct tm timeinforeal;
|
||||
timeinfo = &timeinforeal;
|
||||
localtime_s(timeinfo, &rawtime);
|
||||
#else
|
||||
timeinfo = localtime( &rawtime);
|
||||
#endif
|
||||
|
||||
AString Line;
|
||||
#ifdef _DEBUG
|
||||
Printf(Line, "[%04lx|%02d:%02d:%02d] %s", cIsThread::GetCurrentID(), timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec, Message.c_str());
|
||||
#else
|
||||
Printf(Line, "[%02d:%02d:%02d] %s", timeinfo->tm_hour, timeinfo->tm_min, timeinfo->tm_sec, Message.c_str());
|
||||
#endif
|
||||
if (m_File)
|
||||
{
|
||||
fprintf(m_File, "%s\n", Line.c_str());
|
||||
fflush(m_File);
|
||||
}
|
||||
|
||||
// Print to console:
|
||||
#if defined(ANDROID_NDK)
|
||||
// __android_log_vprint(ANDROID_LOG_ERROR, "MCServer", a_Format, argList);
|
||||
__android_log_print(ANDROID_LOG_ERROR, "MCServer", "%s", Line.c_str());
|
||||
// CallJavaFunction_Void_String(g_JavaThread, "AddToLog", Line);
|
||||
#else
|
||||
printf("%s", Line.c_str());
|
||||
#endif
|
||||
|
||||
#if defined (_WIN32) && defined(_DEBUG)
|
||||
// In a Windows Debug build, output the log to debug console as well:
|
||||
OutputDebugStringA((Line + "\n").c_str());
|
||||
#endif // _WIN32
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::Log(const char * a_Format, ...)
|
||||
{
|
||||
va_list argList;
|
||||
va_start(argList, a_Format);
|
||||
Log(a_Format, argList);
|
||||
va_end(argList);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
void cLog::SimpleLog(const char * a_String)
|
||||
{
|
||||
Log("%s", a_String);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
30
src/Log.h
30
src/Log.h
@ -1,30 +0,0 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
class cLog
|
||||
{
|
||||
private:
|
||||
FILE * m_File;
|
||||
static cLog * s_Log;
|
||||
|
||||
public:
|
||||
cLog(const AString & a_FileName);
|
||||
~cLog();
|
||||
void Log(const char * a_Format, va_list argList) FORMATSTRING(2, 0);
|
||||
void Log(const char * a_Format, ...) FORMATSTRING(2, 3);
|
||||
// tolua_begin
|
||||
void SimpleLog(const char * a_String);
|
||||
void OpenLog(const char * a_FileName);
|
||||
void CloseLog();
|
||||
void ClearLog();
|
||||
static cLog* GetInstance();
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,7 +1,6 @@
|
||||
|
||||
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
|
||||
|
||||
#include "Log.h"
|
||||
#include "OSSupport/IsThread.h"
|
||||
|
||||
|
||||
|
@ -2,10 +2,6 @@
|
||||
#pragma once
|
||||
|
||||
|
||||
|
||||
class cLog;
|
||||
|
||||
|
||||
namespace Logger
|
||||
{
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user