LibraryLogger for implementing an easy generic logger that can be toggled for libraries

This commit is contained in:
2024-09-17 23:39:14 -04:00
parent 7c9a3bddc8
commit f3cec87518
2 changed files with 49 additions and 0 deletions

View File

@@ -187,4 +187,38 @@ namespace jlog {
extern GenericLogger Fatal;
extern GenericLogger Verbose;
extern GenericLogger Debug;
class LibraryLogger {
public:
LibraryLogger(const std::string libname) :
Info {libname + "::" + "info", GlobalLogFile, Colors::Green, Colors::Gray, Colors::Gray, Colors::Green, Colors::White},
Warning {libname + "::" + "warning", GlobalLogFile, Colors::Yellow, Colors::Gray, Colors::Gray, Colors::Yellow, Colors::White},
Error {libname + "::" + "error", GlobalLogFile, Colors::Red, Colors::Gray, Colors::Gray, Colors::Red, Colors::White},
Fatal {libname + "::" + "fatal", GlobalLogFile, Colors::Reds::Crimson, Colors::Gray, Colors::Gray, Colors::Reds::Crimson, Colors::White},
Verbose {libname + "::" + "verbose", GlobalLogFile, Colors::Blue, Colors::Gray, Colors::Gray, Colors::Blue, Colors::White},
Debug {libname + "::" + "debug", GlobalLogFile, Colors::Purples::Purple, Colors::Gray, Colors::Gray, Colors::Purples::Purple, Colors::White}
{}
public:
GenericLogger Info;// {"info", GlobalLogFile, Colors::Green, Colors::Gray, Colors::Gray, Colors::Green, Colors::White};
GenericLogger Warning;// {"warning", GlobalLogFile, Colors::Yellow, Colors::Gray, Colors::Gray, Colors::Yellow, Colors::White};
GenericLogger Error;// {"error", GlobalLogFile, Colors::Red, Colors::Gray, Colors::Gray, Colors::Red, Colors::White};
GenericLogger Fatal;// {"fatal", GlobalLogFile, Colors::Reds::Crimson, Colors::Gray, Colors::Gray, Colors::Reds::Crimson, Colors::White};
GenericLogger Verbose;// {"verbose", GlobalLogFile, Colors::Blue, Colors::Gray, Colors::Gray, Colors::Blue, Colors::White};
GenericLogger Debug;// {"debug", GlobalLogFile, Colors::Purples::Purple, Colors::Gray, Colors::Gray, Colors::Purples::Purple, Colors::White};
public:
void EnableAll(bool b) {
Info.EnableConsole(b);
Info.EnableFile(b);
Warning.EnableConsole(b);
Warning.EnableFile(b);
Error.EnableConsole(b);
Error.EnableFile(b);
Fatal.EnableConsole(b);
Fatal.EnableFile(b);
Verbose.EnableConsole(b);
Verbose.EnableFile(b);
Debug.EnableConsole(b);
Debug.EnableFile(b);
}
};
}

View File

@@ -16,6 +16,21 @@ int main()
jlog::Fatal("dsadsd");
jlog::Verbose("dsadsd");
jlog::Debug("dsadsd");
jlog::LibraryLogger libtest("JLog");
libtest.Info("A");
libtest.Warning("B");
libtest.Debug("C");
libtest.Error("D");
libtest.Fatal("E");
libtest.Verbose("G");
libtest.EnableAll(false);
libtest.Info("A2");
libtest.Warning("B2");
libtest.Debug("C2");
libtest.Error("D2");
libtest.Fatal("E2");
libtest.Verbose("G2");
return 0;
}