58 lines
1.5 KiB
C++
58 lines
1.5 KiB
C++
#include "Socket/Log.hpp"
|
|
#include "precomp.hpp"
|
|
#include "spdlog/spdlog.h"
|
|
|
|
namespace Chattr::log {
|
|
|
|
void critical(gsl::czstring msg, bool bShowDBGMessage) {
|
|
if (!bShowDBGMessage)
|
|
spdlog::critical("{}", msg);
|
|
else {
|
|
#ifdef _WIN32
|
|
gsl::zstring msgbuf = nullptr;
|
|
FormatMessageA(
|
|
FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
|
NULL,
|
|
WSAGetLastError(),
|
|
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
|
msgbuf,
|
|
0,
|
|
NULL);
|
|
spdlog::critical("[{}] {}", msg, msgbuf);
|
|
LocalFree(msgbuf);
|
|
#elif __linux__
|
|
gsl::czstring msgbuf = strerror(errno);
|
|
spdlog::critical("[{}] {}", msg, msgbuf);
|
|
#else
|
|
#error "이 플랫폼은 지원되지 않습니다."
|
|
#endif
|
|
}
|
|
std::exit(EXIT_FAILURE);
|
|
}
|
|
|
|
void error(gsl::czstring msg, bool bShowDBGMessage) {
|
|
if (!bShowDBGMessage)
|
|
spdlog::critical("{}", msg);
|
|
else {
|
|
#ifdef _WIN32
|
|
gsl::zstring msgbuf = nullptr;
|
|
FormatMessageA(
|
|
FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
|
|
NULL,
|
|
WSAGetLastError(),
|
|
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
|
|
msgbuf,
|
|
0,
|
|
NULL);
|
|
spdlog::critical("[{}] {}", msg, msgbuf);
|
|
LocalFree(msgbuf);
|
|
#elif __linux__
|
|
gsl::czstring msgbuf = strerror(errno);
|
|
spdlog::critical("[{}] {}", msg, msgbuf);
|
|
#else
|
|
#error "이 플랫폼은 지원되지 않습니다."
|
|
#endif
|
|
}
|
|
}
|
|
|
|
} |